From dd7aa8dd07c456d5519194c279a808213b63cb3d Mon Sep 17 00:00:00 2001 From: Kenichi Handa Date: Tue, 27 Sep 2011 11:15:28 +0900 Subject: [PATCH] Improve tamil-itrans input method. --- leim/ChangeLog | 14 ++++ leim/quail/indian.el | 174 +++++++++++++++++++++++++++++++++++++++++++++- lisp/ChangeLog | 7 ++ lisp/language/ind-util.el | 23 +++++- 4 files changed, 215 insertions(+), 3 deletions(-) diff --git a/leim/ChangeLog b/leim/ChangeLog index 23050bf791a..c6ee6d7bbbd 100644 --- a/leim/ChangeLog +++ b/leim/ChangeLog @@ -1,3 +1,17 @@ +2011-09-27 Jambunathan K + + * quail/indian.el (quail-tamil-itrans-misc-table): Delete it. + (quail-tamil-itrans-numerics-and-symbols-table) + (quail-tamil-itrans-various-signs-and-digits-table): New variables. + ("tamil-itrans"): Show the values of above variables (Bug#9336). + +2011-09-22 Kenichi Handa + + * 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 * Makefile.in (install): install-sh is now in build-aux (Bug#9169). diff --git a/leim/quail/indian.el b/leim/quail/indian.el index a3f3963e31d..8bdac3f5842 100644 --- a/leim/quail/indian.el +++ b/leim/quail/indian.el @@ -118,12 +118,184 @@ 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 + ("ஶ" nil) ; U+0BB6 + ("ஷ" "Sh") ; U+0BB7 + ("ஸ" "s") ; U+0BB8 + ("ஹ" "h") ; U+0BB9 + ("க்ஷ" "x" ) ; U+0B95 + )) + (virama #x0BCD) + clm) + (with-temp-buffer + (insert "\n") + (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))) + (dolist (c consonants) + (insert "\n----+") + (insert-char ?- 74) + (insert "\n") + (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" (or (nth 1 c) "") + (propertize "\t" 'display '(space :align-to 4)) + "|") + (setq clm 6) + + (dolist (v vowels) + (apply 'insert (propertize "\t" 'display (list 'space :align-to clm)) + (if (nth 1 c) (list (nth 1 c) (nth 2 v)) (list ""))) + (setq clm (+ clm 6)))) + (insert "\n") + (insert "----+") + (insert-char ?- 74) + (insert "\n") + (buffer-string)))) + +(defvar quail-tamil-itrans-numerics-and-symbols-table + (let ((numerics '((?௰ "பத்து") (?௱ "நூறு") (?௲ "ஆயிரம்"))) + (symbols '((?௳ "நாள்") (?௴ "மாதம்") (?௵ "வருடம்") + (?௶ "பற்று") (?௷ "வரவு") (?௸ "மேற்படி") + (?௹ "ரூபாய்") (?௺ "எண்"))) + clm) + (with-temp-buffer + (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n") + (insert + (propertize "\t" 'display '(space :align-to 5)) "numerics" + (propertize "\t" 'display '(space :align-to 18)) "|" + (propertize "\t" 'display '(space :align-to 45)) "symbols") + (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n") + (dotimes (i 2) + (setq clm 0) + (dolist (elm numerics) + (if (> clm 0) + (insert (propertize "\t" 'display (list 'space :align-to clm)))) + (insert (nth i elm)) + (setq clm (+ clm 5))) + (insert (propertize "\t" 'display '(space :align-to 18)) "|") + (setq clm 19) + (dolist (elm symbols) + (if (> clm 19) + (insert (propertize "\t" 'display (list 'space :align-to clm)))) + (insert (nth i elm)) + (setq clm (+ clm 8))) + (insert "\n")) + (insert (make-string 18 ?-) "+" (make-string 60 ?-) "\n") + (insert "\n") + (buffer-string)))) + +(defvar quail-tamil-itrans-various-signs-and-digits-table + (let ((various '((?ஃ . "H") ("ஸ்ரீ" . "srii") (?ௐ))) + (digits "௦௧௨௩௪௫௬௭௮௯") + (width 6) clm) + (with-temp-buffer + (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n") + (insert + (propertize "\t" 'display '(space :align-to 5)) "various" + (propertize "\t" 'display '(space :align-to 18)) "|" + (propertize "\t" 'display '(space :align-to 45)) "digits") + + (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n") + (setq clm 0 ) + + (dotimes (i (length various)) + (insert (propertize "\t" 'display (list 'space :align-to clm)) + (car (nth i various))) + (setq clm (+ clm width))) + (insert (propertize "\t" 'display '(space :align-to 18)) "|") + (setq clm 20) + (dotimes (i 10) + (insert (propertize "\t" 'display (list 'space :align-to clm)) + (aref digits i)) + (setq clm (+ clm width))) + (insert "\n") + (setq clm 0) + (dotimes (i (length various)) + (insert (propertize "\t" 'display (list 'space :align-to clm)) + (or (cdr (nth i various)) "")) + (setq clm (+ clm width))) + (insert (propertize "\t" 'display '(space :align-to 18)) "|") + (setq clm 20) + (dotimes (i 10) + (insert (propertize "\t" 'display (list 'space :align-to clm)) + (format "%d" i)) + (setq clm (+ clm width))) + (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\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. + +You can input characters using the following mapping tables. + Example: To enter வணக்கம், type vaNakkam. + +### Basic syllables (consonants + vowels) ### +\\ + +### Miscellaneous (various signs + digits) ### +\\ + +### Others (numerics + symbols) ### + +Characters below have no ITRANS method associated with them. +Their descriptions are included for easy reference. +\\ +Full key sequences are listed below:") ;;; ;;; Input by Inscript diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2f4f7051250..150d2ecb30e 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2011-09-22 Kenichi Handa + + * 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 * progmodes/f90.el (f90-break-line): If breaking inside comment delete diff --git a/lisp/language/ind-util.el b/lisp/language/ind-util.el index 56893af1479..0e548420383 100644 --- a/lisp/language/ind-util.el +++ b/lisp/language/ind-util.el @@ -271,7 +271,7 @@ (;; Misc Symbols nil ?$,1<"(B ?$,1<#(B nil ?$,1