b5cab176d289fb5d22dad21e48fc31f3ad8e4556
[m17n/m17n-contrib.git] / im / bn-itrans.mim
1 ;; bn-itrans.mim -- Bengali input method with ITRANS method
2 ;; Copyright (C) 2003, 2004, 2005, 2006
3 ;;   National Institute of Advanced Industrial Science and Technology (AIST)
4 ;;   Registration Number H15PRO112
5
6 ;; This file is part of the m17n contrib; a sub-part of the m17n
7 ;; library.
8
9 ;; The m17n library is free software; you can redistribute it and/or
10 ;; modify it under the terms of the GNU Lesser General Public License
11 ;; as published by the Free Software Foundation; either version 2.1 of
12 ;; the License, or (at your option) any later version.
13
14 ;; The m17n library is distributed in the hope that it will be useful,
15 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 ;; Lesser General Public License for more details.
18
19 ;; You should have received a copy of the GNU Lesser General Public
20 ;; License along with the m17n library; if not, write to the Free
21 ;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22 ;; Boston, MA 02110-1301, USA.
23
24 (input-method bn itrans)
25
26 (description "Bengali input method by ITRANS transliteration.
27
28 Itrans Bengali Keymap Layout created by Avinash Chopde in accordance with the details in the following link:
29
30 http://www.aczoom.com/itrans/beng/node4.html
31
32 Key Summary:
33
34 The consonant alphabets are represented as half-characters by default i.e. k = ক্ . To complete the character please use 'a' representing 'অ' i.e. ka=ক. Consonant conjuncts can be created by writing the consonant characters in sequential order. To complete the conjunct either 'অ' or any other dependent vowel [অ (a), া(aa), ি(i), ী(ii), ু(u), ূ(uu), ে(e), ৈ(ai), ো (o), ৌ (au)] needs to be added at the end.
35
36 E.g. ক্রিয়া = k+r+i+Y+A
37
38 To write 'Khaanda-ta' (ৎ) use the key combination : t.h
39
40 Detailed instructions for typing are available at the above mentioned link
41 ")
42
43 (title "ক")
44
45 (map
46  (starter
47   (".") ("~") ("#") ("$") ("^") ("*") ((S-\ )) ((C-@))
48   ("0") ("1") ("2") ("3") ("4")
49   ("5") ("6") ("7") ("8") ("9")
50   ("A") ("C") ("D") ("G") ("H") ("I") ("J") ("K") ("L")
51   ("M") ("N") ("O") ("R") ("S") ("T") ("U") ("Y")
52   ("a") ("b") ("c") ("d") ("e") ("f") ("g") ("h") ("i")
53   ("j") ("k") ("l") ("m") ("n") ("o") ("p") ("q") ("r")
54   ("s") ("t") ("u") ("v") ("w") ("x") ("y") ("z"))
55
56  (consonant
57   ("k" "ক্")
58   ("kh" "খ্")
59   ("g" "গ্")
60   ("gh" "ঘ্")
61   ("~N" "ঙ্")
62   ("N^" "ঙ্")
63   ("ch" "চ্")
64   ("chh" "ছ্")
65   ("Ch" "ছ্")                               ; not in ITRANS Bengali table
66   ("j" "জ্")
67   ("jh" "ঝ্")
68   ("~n" "ঞ্")
69   ("n^" "ঞ্")
70   ("JN" "ঞ্")                               ; not in ITRANS Bengali table
71   ("T" "ট্")
72   ("Th" "ঠ্")
73   ("D" "ড্")
74   ("Dh" "ঢ্")
75   ("N" "ণ্")
76   ("t" "ত্")
77   ("th" "থ্")
78   ("d" "দ্")
79   ("dh" "ধ্")
80   ("n" "ন্")
81   ("p" "প্")
82   ("ph" "ফ্")
83   ("b" "ব্")
84   ("bh" "ভ্")
85   ("m" "ম্")
86   ("J" "য্")
87   ("y" "য্")
88   ("r" "র্")
89   ("l" "ল্")
90   ("sh" "শ্")
91   ("Sh" "ষ্")
92   ("shh" "ষ্")                              ; not in ITRANS Bengali table
93   ("s" "স্")
94   ("h" "হ্")
95   (".D" "ড়্")
96   (".Dh" "ঢ়্")
97   ("Y" "য়্")
98   ("yh" "য়্")                               ; not in ITRANS Bengali table
99   ("GY" "জ্ঞ্")
100   ("dny" "জ্ঞ্")                        ; not in ITRANS Bengali table
101   ("x" "ক্ষ্"))
102
103  (independent
104   ("a" "অ")
105   ("aa" "আ")
106   ("A" "আ")
107   ("i" "ই")
108   ("ii" "ঈ")
109   ("I" "ঈ")
110   ("u" "উ")
111   ("uu" "ঊ")
112   ("U" "ঊ")
113   ("RRi" "ঋ")
114   ("R^i" "ঋ")
115   ("e" "এ")
116   ("ai" "ঐ")
117   ("o" "ও")
118   ("au" "ঔ")
119   (".N" "ঁ")
120   (".n" "ং")
121   ("M" "ং")                           ; not in ITRANS Bengali table
122   ("H" "ঃ")
123   (".h" "্")
124   ("t.h" "ৎ")
125   ("0" "০")
126   ("1" "১")
127   ("2" "২")
128   ("3" "৩")
129   ("4" "৪")
130   ("5" "৫")
131   ("6" "৬")
132   ("7" "৭")
133   ("8" "৮")
134   ("9" "৯")
135   ("]" "়")                           ; not in ITRANS Bengali table
136   ((S-\ ) "‌")                                ; not in ITRANS Bengali table
137   ((C-@) "‍"))                                ; not in ITRANS Bengali table
138
139  (dependent
140   ("a" (delete @-) "")
141   ("aa" (delete @-) "া")
142   ("A" (delete @-) "া")
143   ("i" (delete @-) "ি")
144   ("ii" (delete @-) "ী")
145   ("I" (delete @-) "ী")
146   ("u" (delete @-) "ু")
147   ("uu" (delete @-) "ূ")
148   ("U" (delete @-) "ূ")
149   ("RRi" (delete @-) "ৃ")
150   ("R^i" (delete @-) "ৃ")
151   ("e" (delete @-) "ে")
152   ("ai" (delete @-) "ৈ")
153   ("o" (delete @-) "ো")
154   ("au" (delete @-) "ৌ"))
155
156  (return
157   ((Return)))
158
159  (backspace
160   ((BackSpace) (undo))))
161
162 (state
163  (init
164   (starter (pushback 1) (shift intermediate)))
165
166  (intermediate
167   (consonant (shift second))
168   (independent (shift init))
169   (backspace)
170   (return (shift init)))
171
172  (second
173   (consonant)
174   (dependent (shift init))
175   (backspace)
176   (return (shift init))))
177
178 ;; Local Variables:
179 ;; coding: utf-8
180 ;; mode: emacs-lisp
181 ;; End: