aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenichi Handa2011-09-27 11:15:28 +0900
committerKenichi Handa2011-09-27 11:15:28 +0900
commitdd7aa8dd07c456d5519194c279a808213b63cb3d (patch)
treecd6c79e42c1e48ee7817b31494fb0c9638569509
parentf84e2fe26c96da1e9091bbdffebb55304c9b44c8 (diff)
downloademacs-dd7aa8dd07c456d5519194c279a808213b63cb3d.tar.gz
emacs-dd7aa8dd07c456d5519194c279a808213b63cb3d.zip
Improve tamil-itrans input method.
-rw-r--r--leim/ChangeLog14
-rw-r--r--leim/quail/indian.el174
-rw-r--r--lisp/ChangeLog7
-rw-r--r--lisp/language/ind-util.el23
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 @@
12011-09-27 Jambunathan K <kjambunathan@gmail.com>
2
3 * quail/indian.el (quail-tamil-itrans-misc-table): Delete it.
4 (quail-tamil-itrans-numerics-and-symbols-table)
5 (quail-tamil-itrans-various-signs-and-digits-table): New variables.
6 ("tamil-itrans"): Show the values of above variables (Bug#9336).
7
82011-09-22 Kenichi Handa <handa@m17n.org>
9
10 * quail/indian.el (quail-tamil-itrans-syllable-table)
11 (quail-tamil-itrans-misc-table): New variables.
12 ("tamil-itrans"): Improve the docstring by showing the values of
13 above variables (Bug#9336).
14
12011-09-06 Paul Eggert <eggert@cs.ucla.edu> 152011-09-06 Paul Eggert <eggert@cs.ucla.edu>
2 16
3 * Makefile.in (install): install-sh is now in build-aux (Bug#9169). 17 * 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 @@
118 indian-mlm-itrans-v5-hash "malayalam-itrans" "Malayalam" "MlmIT" 118 indian-mlm-itrans-v5-hash "malayalam-itrans" "Malayalam" "MlmIT"
119 "Malayalam transliteration by ITRANS method.") 119 "Malayalam transliteration by ITRANS method.")
120 120
121(defvar quail-tamil-itrans-syllable-table
122 (let ((vowels
123 '(("அ" nil "a")
124 ("ஆ" "ா" "A")
125 ("இ" "ி" "i")
126 ("ஈ" "ீ" "I")
127 ("உ" "ு" "u")
128 ("ஊ" "ூ" "U")
129 ("எ" "ெ" "e")
130 ("ஏ" "ே" "E")
131 ("ஐ" "ை" "ai")
132 ("ஒ" "ொ" "o")
133 ("ஓ" "ோ" "O")
134 ("ஔ" "ௌ" "au")))
135 (consonants
136 '(("க" "k") ; U+0B95
137 ("ங" "N^") ; U+0B99
138 ("ச" "ch") ; U+0B9A
139 ("ஞ" "JN") ; U+0B9E
140 ("ட" "T") ; U+0B9F
141 ("ண" "N") ; U+0BA3
142 ("த" "t") ; U+0BA4
143 ("ந" "n") ; U+0BA8
144 ("ப" "p") ; U+0BAA
145 ("ம" "m") ; U+0BAE
146 ("ய" "y") ; U+0BAF
147 ("ர" "r") ; U+0BB0
148 ("ல" "l") ; U+0BB2
149 ("வ" "v") ; U+0BB5
150 ("ழ" "z") ; U+0BB4
151 ("ள" "L") ; U+0BB3
152 ("ற" "rh") ; U+0BB1
153 ("ன" "nh") ; U+0BA9
154 ("ஜ" "j") ; U+0B9C
155 ("ஶ" nil) ; U+0BB6
156 ("ஷ" "Sh") ; U+0BB7
157 ("ஸ" "s") ; U+0BB8
158 ("ஹ" "h") ; U+0BB9
159 ("க்ஷ" "x" ) ; U+0B95
160 ))
161 (virama #x0BCD)
162 clm)
163 (with-temp-buffer
164 (insert "\n")
165 (insert " +")
166 (insert-char ?- 74)
167 (insert "\n |")
168 (setq clm 6)
169 (dolist (v vowels)
170 (insert (propertize "\t" 'display (list 'space :align-to clm))
171 (car v))
172 (setq clm (+ clm 6)))
173 (insert "\n |")
174 (setq clm 6)
175 (dolist (v vowels)
176 (insert (propertize "\t" 'display (list 'space :align-to clm))
177 (nth 2 v))
178 (setq clm (+ clm 6)))
179 (dolist (c consonants)
180 (insert "\n----+")
181 (insert-char ?- 74)
182 (insert "\n")
183 (insert (car c) virama
184 (propertize "\t" 'display '(space :align-to 4))
185 "|")
186 (setq clm 6)
187 (dolist (v vowels)
188 (insert (propertize "\t" 'display (list 'space :align-to clm))
189 (car c) (or (nth 1 v) ""))
190 (setq clm (+ clm 6)))
191 (insert "\n" (or (nth 1 c) "")
192 (propertize "\t" 'display '(space :align-to 4))
193 "|")
194 (setq clm 6)
195
196 (dolist (v vowels)
197 (apply 'insert (propertize "\t" 'display (list 'space :align-to clm))
198 (if (nth 1 c) (list (nth 1 c) (nth 2 v)) (list "")))
199 (setq clm (+ clm 6))))
200 (insert "\n")
201 (insert "----+")
202 (insert-char ?- 74)
203 (insert "\n")
204 (buffer-string))))
205
206(defvar quail-tamil-itrans-numerics-and-symbols-table
207 (let ((numerics '((?௰ "பத்து") (?௱ "நூறு") (?௲ "ஆயிரம்")))
208 (symbols '((?௳ "நாள்") (?௴ "மாதம்") (?௵ "வருடம்")
209 (?௶ "பற்று") (?௷ "வரவு") (?௸ "மேற்படி")
210 (?௹ "ரூபாய்") (?௺ "எண்")))
211 clm)
212 (with-temp-buffer
213 (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n")
214 (insert
215 (propertize "\t" 'display '(space :align-to 5)) "numerics"
216 (propertize "\t" 'display '(space :align-to 18)) "|"
217 (propertize "\t" 'display '(space :align-to 45)) "symbols")
218 (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n")
219 (dotimes (i 2)
220 (setq clm 0)
221 (dolist (elm numerics)
222 (if (> clm 0)
223 (insert (propertize "\t" 'display (list 'space :align-to clm))))
224 (insert (nth i elm))
225 (setq clm (+ clm 5)))
226 (insert (propertize "\t" 'display '(space :align-to 18)) "|")
227 (setq clm 19)
228 (dolist (elm symbols)
229 (if (> clm 19)
230 (insert (propertize "\t" 'display (list 'space :align-to clm))))
231 (insert (nth i elm))
232 (setq clm (+ clm 8)))
233 (insert "\n"))
234 (insert (make-string 18 ?-) "+" (make-string 60 ?-) "\n")
235 (insert "\n")
236 (buffer-string))))
237
238(defvar quail-tamil-itrans-various-signs-and-digits-table
239 (let ((various '((?ஃ . "H") ("ஸ்ரீ" . "srii") (?ௐ)))
240 (digits "௦௧௨௩௪௫௬௭௮௯")
241 (width 6) clm)
242 (with-temp-buffer
243 (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n")
244 (insert
245 (propertize "\t" 'display '(space :align-to 5)) "various"
246 (propertize "\t" 'display '(space :align-to 18)) "|"
247 (propertize "\t" 'display '(space :align-to 45)) "digits")
248
249 (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n")
250 (setq clm 0 )
251
252 (dotimes (i (length various))
253 (insert (propertize "\t" 'display (list 'space :align-to clm))
254 (car (nth i various)))
255 (setq clm (+ clm width)))
256 (insert (propertize "\t" 'display '(space :align-to 18)) "|")
257 (setq clm 20)
258 (dotimes (i 10)
259 (insert (propertize "\t" 'display (list 'space :align-to clm))
260 (aref digits i))
261 (setq clm (+ clm width)))
262 (insert "\n")
263 (setq clm 0)
264 (dotimes (i (length various))
265 (insert (propertize "\t" 'display (list 'space :align-to clm))
266 (or (cdr (nth i various)) ""))
267 (setq clm (+ clm width)))
268 (insert (propertize "\t" 'display '(space :align-to 18)) "|")
269 (setq clm 20)
270 (dotimes (i 10)
271 (insert (propertize "\t" 'display (list 'space :align-to clm))
272 (format "%d" i))
273 (setq clm (+ clm width)))
274 (insert "\n" (make-string 18 ?-) "+" (make-string 60 ?-) "\n")
275 (buffer-string))))
276
121(if nil 277(if nil
122 (quail-define-package "tamil-itrans" "Tamil" "TmlIT" t "Tamil ITRANS")) 278 (quail-define-package "tamil-itrans" "Tamil" "TmlIT" t "Tamil ITRANS"))
123(quail-define-indian-trans-package 279(quail-define-indian-trans-package
124 indian-tml-itrans-v5-hash "tamil-itrans" "Tamil" "TmlIT" 280 indian-tml-itrans-v5-hash "tamil-itrans" "Tamil" "TmlIT"
125 "Tamil transliteration by ITRANS method.") 281 "Tamil transliteration by ITRANS method.
282
283You can input characters using the following mapping tables.
284 Example: To enter வணக்கம், type vaNakkam.
285
286### Basic syllables (consonants + vowels) ###
287\\<quail-tamil-itrans-syllable-table>
288
289### Miscellaneous (various signs + digits) ###
290\\<quail-tamil-itrans-various-signs-and-digits-table>
291
292### Others (numerics + symbols) ###
293
294Characters below have no ITRANS method associated with them.
295Their descriptions are included for easy reference.
296\\<quail-tamil-itrans-numerics-and-symbols-table>
126 297
298Full key sequences are listed below:")
127 299
128;;; 300;;;
129;;; Input by Inscript 301;;; 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 @@
12011-09-22 Kenichi Handa <handa@m17n.org>
2
3 * language/ind-util.el (indian-tml-base-table): Add TAMIL DIGIT
4 ZERO.
5 (indian-itrans-v5-table-for-tamil): New variable.
6 (indian-tml-itrans-v5-hash): Use the above variable (Bug#9336).
7
12011-09-20 Lawrence Mitchell <wence@gmx.li> 82011-09-20 Lawrence Mitchell <wence@gmx.li>
2 9
3 * progmodes/f90.el (f90-break-line): If breaking inside comment delete 10 * 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 @@
271 (;; Misc Symbols 271 (;; Misc Symbols
272 nil ?$,1<"(B ?$,1<#(B nil ?$,1<m(B nil nil) 272 nil ?$,1<"(B ?$,1<#(B nil ?$,1<m(B nil nil)
273 (;; Digits 273 (;; Digits
274 nil ?$,1='(B ?$,1=((B ?$,1=)(B ?$,1=*(B ?$,1=+(B ?$,1=,(B ?$,1=-(B ?$,1=.(B ?$,1=/(B) 274 ?$,1=&(B ?$,1='(B ?$,1=((B ?$,1=)(B ?$,1=*(B ?$,1=+(B ?$,1=,(B ?$,1=-(B ?$,1=.(B ?$,1=/(B)
275 (;; Inscript-extra (4) (#, $, ^, *, ]) 275 (;; Inscript-extra (4) (#, $, ^, *, ])
276 "$,1<m<P(B" "$,1<P<m(B" "$,1<D<m<P(B" nil nil))) 276 "$,1<m<P(B" "$,1<P<m(B" "$,1<D<m<P(B" nil nil)))
277 277
@@ -305,6 +305,25 @@
305 (;; misc -- 7 305 (;; misc -- 7
306 ".N" (".n" "M") "H" ".a" ".h" ("AUM" "OM") ".."))) 306 ".N" (".n" "M") "H" ".a" ".h" ("AUM" "OM") "..")))
307 307
308(defvar indian-itrans-v5-table-for-tamil
309 '(;; for encode/decode
310 (;; vowels -- 18
311 "a" ("aa" "A") "i" ("ii" "I") "u" ("uu" "U")
312 ("RRi" "R^i") ("LLi" "L^i") (".c" "e.c") "E" "e" "ai"
313 "o.c" "O" "o" "au" ("RRI" "R^I") ("LLI" "L^I"))
314 (;; consonants -- 40
315 "k" "kh" "g" "gh" ("~N" "N^")
316 "ch" ("Ch" "chh") "j" "jh" ("~n" "JN")
317 "T" "Th" "D" "Dh" "N"
318 "t" "th" "d" "dh" "n" "nh"
319 "p" "ph" "b" "bh" "m"
320 "y" "r" "rh" "l" ("L" "ld") ("J" "z") ("v" "w")
321 "sh" ("Sh" "shh") "s" "h"
322 "q" "K" "G" nil ".D" ".Dh" "f" ("Y" "yh")
323 ("GY" "dny") "x")
324 (;; misc -- 7
325 ".N" (".n" "M") "H" ".a" ".h" ("AUM" "OM") "..")))
326
308(defvar indian-kyoto-harvard-table 327(defvar indian-kyoto-harvard-table
309 '(;; for encode/decode 328 '(;; for encode/decode
310 (;; vowel 329 (;; vowel
@@ -508,7 +527,7 @@
508 527
509(defvar indian-tml-itrans-v5-hash 528(defvar indian-tml-itrans-v5-hash
510 (indian-make-hash indian-tml-base-table 529 (indian-make-hash indian-tml-base-table
511 indian-itrans-v5-table)) 530 indian-itrans-v5-table-for-tamil))
512) 531)
513 532
514(defmacro indian-translate-region (from to hashtable encode-p) 533(defmacro indian-translate-region (from to hashtable encode-p)