all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* improve tamil input method (keys and docstring)
@ 2011-09-26  4:50 Kenichi Handa
  0 siblings, 0 replies; only message in thread
From: Kenichi Handa @ 2011-09-26  4:50 UTC (permalink / raw)
  To: emacs-devel; +Cc: kjambunathan

[-- Attachment #1: Type: text/plain, Size: 645 bytes --]

I'm now discussing with Jambunathan K
<kjambunathan@gmail.com> on the improvement of tamil input
method.  There are two issues; one is to add new keys for
characters that can't be input by the current tamil-itrans
input method, another is to improve the docstring of
tamil-itrans.  Changes for both of them are fairly simple
and safe.  Yidong and Stefan, may I commit that change to
trunk?

Attached is the current version of the patch.  But, for the
improvement of docstring (change to leim/quail/indian.el),
we are now discussing with Jambunathan about the final
result, and thus it may have different form.

---
Kenichi Handa
handa@m17n.org


[-- Attachment #2: temp.diff --]
[-- Type: text/x-diff, Size: 7209 bytes --]

=== modified file 'leim/ChangeLog'
--- leim/ChangeLog	2011-09-06 16:34:41 +0000
+++ leim/ChangeLog	2011-09-22 02:32:25 +0000
@@ -1,3 +1,10 @@
+2011-09-22  Kenichi Handa  <handa@m17n.org>
+
+	* quail/indian.el (quail-tamil-itrans-syllable-table)
+	(quail-tamil-itrans-misc-table): New variables.
+	("tamil-itrans"): Improve the docstring by showing the values of
+	above variables (Bug#9336).
+
 2011-09-06  Paul Eggert  <eggert@cs.ucla.edu>
 
 	* Makefile.in (install): install-sh is now in build-aux (Bug#9169).

=== modified file 'leim/quail/indian.el'
--- leim/quail/indian.el	2011-01-26 08:36:39 +0000
+++ leim/quail/indian.el	2011-09-22 02:07:57 +0000
@@ -118,11 +118,138 @@
  indian-mlm-itrans-v5-hash "malayalam-itrans" "Malayalam" "MlmIT"
  "Malayalam transliteration by ITRANS method.")
 
+(defvar quail-tamil-itrans-syllable-table
+  (let ((vowels
+	 '(("அ" nil "a")
+	   ("ஆ" "ா" "A")
+	   ("இ" "ி" "i")
+	   ("ஈ" "ீ" "I")
+	   ("உ" "ு" "u")
+	   ("ஊ" "ூ" "U")
+	   ("எ" "ெ" "e")
+	   ("ஏ" "ே" "E")
+	   ("ஐ" "ை" "ai")
+	   ("ஒ" "ொ" "o")
+	   ("ஓ" "ோ" "O")
+	   ("ஔ" "ௌ" "au")))
+	(consonants
+	 '(("க" "k")			; U+0B95
+	   ("ங" "N^")			; U+0B99
+	   ("ச" "ch")			; U+0B9A
+	   ("ஞ" "JN")			; U+0B9E
+	   ("ட" "T")			; U+0B9F
+	   ("ண" "N")			; U+0BA3
+	   ("த" "t")			; U+0BA4
+	   ("ந" "n")			; U+0BA8
+	   ("ப" "p")			; U+0BAA
+	   ("ம" "m")			; U+0BAE
+	   ("ய" "y")			; U+0BAF
+	   ("ர" "r")			; U+0BB0
+	   ("ல" "l")			; U+0BB2
+	   ("வ" "v")			; U+0BB5
+	   ("ழ" "z")			; U+0BB4
+	   ("ள" "L")			; U+0BB3
+	   ("ற" "rh")			; U+0BB1
+	   ("ன" "nh")			; U+0BA9
+	   ("ஜ" "j")			; U+0B9C
+	   ("ஷ" "Sh")			; U+0BB7
+	   ("ஸ" "s")			; U+0BB8
+	   ("ஹ" "h")			; U+0BB9
+	   ("க்ஷ" "x" )			; U+0B95
+	   ))
+	(virama #x0BCD)
+	clm)
+    (with-temp-buffer
+      (insert "    +")
+      (insert-char ?- 74)
+      (insert "\n    |")
+      (setq clm 6)
+      (dolist (v vowels)
+	(insert (propertize "\t" 'display (list 'space :align-to clm))
+		(car v))
+	(setq clm (+ clm 6)))
+      (insert "\n    |")
+      (setq clm 6)
+      (dolist (v vowels)
+	(insert (propertize "\t" 'display (list 'space :align-to clm))
+		(nth 2 v))
+	(setq clm (+ clm 6)))
+      (insert "\n----+")
+      (insert-char ?- 74)
+      (insert "\n")
+      (dolist (c consonants)
+	(insert (car c) virama
+		(propertize "\t" 'display '(space :align-to 4))
+		"|")
+	(setq clm 6)
+	(dolist (v vowels)
+	  (insert (propertize "\t" 'display (list 'space :align-to clm))
+		  (car c) (or (nth 1 v) ""))
+	  (setq clm (+ clm 6)))
+	(insert "\n" (nth 1 c)
+		(propertize "\t" 'display '(space :align-to 4))
+		"|")
+	(setq clm 6)
+	(dolist (v vowels)
+	  (insert (propertize "\t" 'display (list 'space :align-to clm))
+		  (nth 1 c) (nth 2 v))
+	  (setq clm (+ clm 6)))
+	(insert "\n"))
+      (insert "----+")
+      (insert-char ?- 74)
+      (insert "\n\n"
+	      "  Ex: To enter வணக்கம், type vaNakkam.\n")
+      (buffer-string))))
+
+(defvar quail-tamil-itrans-misc-table
+  (let ((symbols '((?ஃ . "H") (?ஂ . "M") (?் . ".h")))
+	(digits "௦௧௨௩௪௫௬௭௮௯")
+	clm)
+    (with-temp-buffer
+      (insert "----------+------------------------------\n")
+      (insert " symbols  |            digits            \n")
+      (insert "----------+------------------------------\n")
+      (setq clm 1)
+      (dolist (elm symbols)
+	(insert (propertize "\t" 'display (list 'space :align-to clm))
+		(car elm))
+	(setq clm (+ clm 3)))
+      (insert (propertize "\t" 'display '(space :align-to 10)) "|")
+      (setq clm 12)
+      (dotimes (i 10)
+	(insert (propertize "\t" 'display (list 'space :align-to clm))
+		(aref digits i))
+	(setq clm (+ clm 3)))
+      (insert "\n")
+      (setq clm 1)
+      (dolist (elm symbols)
+	(insert (propertize "\t" 'display (list 'space :align-to clm))
+		(cdr elm))
+	(setq clm (+ clm 3)))
+      (insert (propertize "\t" 'display '(space :align-to 10)) "|")
+      (setq clm 12)
+      (dotimes (i 10)
+	(insert (propertize "\t" 'display (list 'space :align-to clm))
+		(format "%d" i))
+	(setq clm (+ clm 3)))
+      (insert "\n----------+------------------------------\n")
+      (buffer-string))))
+
 (if nil
     (quail-define-package "tamil-itrans" "Tamil" "TmlIT" t "Tamil ITRANS"))
 (quail-define-indian-trans-package
  indian-tml-itrans-v5-hash "tamil-itrans" "Tamil" "TmlIT"
- "Tamil transliteration by ITRANS method.")
+ "Tamil transliteration by ITRANS method.
+
+### Basic syllables (consonants + vowels) ###
+
+\\<quail-tamil-itrans-syllable-table>
+
+### Symbols, etc. ###
+
+\\<quail-tamil-itrans-misc-table>
+
+Full key sequences are listed below:")
 
 
 ;;;

=== modified file 'lisp/ChangeLog'
--- lisp/ChangeLog	2011-09-20 04:12:05 +0000
+++ lisp/ChangeLog	2011-09-22 02:14:54 +0000
@@ -1,3 +1,10 @@
+2011-09-22  Kenichi Handa  <handa@m17n.org>
+
+	* language/ind-util.el (indian-tml-base-table): Add TAMIL DIGIT
+	ZERO.
+	(indian-itrans-v5-table-for-tamil): New variable.
+	(indian-tml-itrans-v5-hash): Use the above variable (Bug#9336).
+
 2011-09-20  Lawrence Mitchell  <wence@gmx.li>
 
 	* progmodes/f90.el (f90-break-line): If breaking inside comment delete

=== modified file 'lisp/language/ind-util.el'
--- lisp/language/ind-util.el	2011-01-26 08:36:39 +0000
+++ lisp/language/ind-util.el	2011-09-22 02:07:09 +0000
@@ -271,7 +271,7 @@
     (;; Misc Symbols
      nil ?^[$,1<"^[(B ?^[$,1<#^[(B nil ?^[$,1<m^[(B nil nil)
     (;; Digits
-     nil ?^[$,1='^[(B ?^[$,1=(^[(B ?^[$,1=)^[(B ?^[$,1=*^[(B ?^[$,1=+^[(B ?^[$,1=,^[(B ?^[$,1=-^[(B ?^[$,1=.^[(B ?^[$,1=/^[(B)
+     ?^[$,1=&^[(B ?^[$,1='^[(B ?^[$,1=(^[(B ?^[$,1=)^[(B ?^[$,1=*^[(B ?^[$,1=+^[(B ?^[$,1=,^[(B ?^[$,1=-^[(B ?^[$,1=.^[(B ?^[$,1=/^[(B)
     (;; Inscript-extra (4)  (#, $, ^, *, ])
      "^[$,1<m<P^[(B" "^[$,1<P<m^[(B" "^[$,1<D<m<P^[(B" nil nil)))
 
@@ -305,6 +305,25 @@
     (;; misc -- 7
      ".N" (".n" "M") "H" ".a" ".h" ("AUM" "OM") "..")))
 
+(defvar indian-itrans-v5-table-for-tamil
+  '(;; for encode/decode
+    (;; vowels -- 18
+     "a" ("aa" "A") "i" ("ii" "I") "u" ("uu" "U")
+     ("RRi" "R^i") ("LLi" "L^i") (".c" "e.c") "E" "e" "ai"
+     "o.c"  "O"   "o"   "au"  ("RRI" "R^I") ("LLI" "L^I"))
+    (;; consonants -- 40
+     "k"   "kh"  "g"   "gh"  ("~N" "N^")
+     "ch" ("Ch" "chh") "j" "jh" ("~n" "JN")
+     "T"   "Th"  "D"   "Dh"  "N"
+     "t"   "th"  "d"   "dh"  "n"   "nh"
+     "p"   "ph"  "b"   "bh"  "m"
+     "y"   "r"   "rh"  "l"   ("L" "ld") ("J" "z")  ("v" "w")
+     "sh" ("Sh" "shh") "s" "h"
+     "q" "K" "G" nil ".D" ".Dh" "f" ("Y" "yh")
+     ("GY" "dny") "x")
+    (;; misc -- 7
+     ".N" (".n" "M") "H" ".a" ".h" ("AUM" "OM") "..")))
+
 (defvar indian-kyoto-harvard-table
   '(;; for encode/decode
     (;; vowel
@@ -508,7 +527,7 @@
 
 (defvar indian-tml-itrans-v5-hash
   (indian-make-hash indian-tml-base-table
-			  indian-itrans-v5-table))
+			  indian-itrans-v5-table-for-tamil))
 )
 
 (defmacro indian-translate-region (from to hashtable encode-p)


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2011-09-26  4:50 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-26  4:50 improve tamil input method (keys and docstring) Kenichi Handa

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.