default for in is deva
[xorg/xkeyboard-config] / symbols / in
1 // $XKeyboardConfig$
2
3 // This layout includes all Indian layouts, including:
4 //     - Bengali
5 //     - Gujarati 
6 //     - Kannada 
7 //     - Malayalam
8 //     - Oriya 
9 //     - Tamil
10 //     - Telugu
11 //     - Urdu
12
13 // Links:
14 // - Indic INSCRIPT keyboard layout diagrams:
15 //     http://java.sun.com/products/jfc/tsc/articles/InputMethod/indiclayout.html
16 // - Ekusheyr Shadhinota (Bengali layouts):
17 //     http://ekushey.org/projects/shadhinota/index.html
18 // - Microsoft Windows XP SP2: Indic Language Standards - an Introduction:
19 //     http://www.bhashaindia.com/MSProducts/XpSp2/Articles/IndicLanguageStandards.aspx
20
21 // based on a keyboard map from an 'xkb/symbols/dev' file
22
23 // Devangari is the default. Kill me if I am wrong:)
24 default partial alphanumeric_keys 
25 xkb_symbols "deva" {
26       name[Group1]= "India";
27
28       key <TLDE> { [      0x100094A, 0x1000912          ]       };
29
30       // Mainly numbers.
31       key <AE01> { [      0x1000967, 0x100090D          ]       };
32       key <AE02> { [      0x1000968, 0x1000945          ]       };
33       key <AE03> { [      0x1000969                     ]       };
34       key <AE04> { [      0x100096A                     ]       };
35       key <AE05> { [      0x100096B                     ]       };
36       key <AE06> { [      0x100096C                     ]       };
37       key <AE07> { [      0x100096D                     ]       };
38       key <AE08> { [      0x100096e                     ]       };
39       key <AE09> { [      0x100096F, parenleft          ]       };
40       key <AE10> { [      0x1000966, parenright         ]       };
41       key <AE11> { [      0x1000903                     ]       };
42       key <AE12> { [      0x1000943, 0x100090B          ]       };
43
44 // Mainly long vowels
45
46       key <AD01> { [      0x100094C,  0x1000914         ]       };
47       key <AD02> { [      0x1000948,  0x1000910         ]       };
48       key <AD03> { [      0x100093E,  0x1000906         ]       };
49       key <AD04> { [      0x1000940,  0x1000908         ]       };
50       key <AD05> { [      0x1000942,  0x100090A         ]       };
51
52 // Mainly voiced consonants
53
54       key <AD06> { [      0x100092C,  0x100092D         ]       };
55       key <AD07> { [      0x1000939,  0x1000919         ]       };
56       key <AD08> { [      0x1000917,  0x1000918         ]       };
57       key <AD09> { [      0x1000926,  0x1000927         ]       };
58       key <AD10> { [      0x100091C,  0x100091D         ]       };
59       key <AD11> { [      0x1000921,  0x1000922         ]       };
60       key <AD12> { [      0x100093C,  0x100091E         ]       };
61
62 // Mainly short vowels
63       key <AC01> { [      0x100094B,  0x1000913         ]       };
64       key <AC02> { [      0x1000947,  0x100090F         ]       };
65       key <AC03> { [      0x100094D,  0x1000905         ]       };
66       key <AC04> { [      0x100093F,  0x1000907         ]       };
67       key <AC05> { [      0x1000941,  0x1000909         ]       };
68
69 // Mainly unvoiced consonants
70
71       key <AC06> { [      0x100092A,  0x100092B         ]       };
72       key <AC07> { [      0x1000930,  0x1000931         ]       };
73       key <AC08> { [      0x1000915,  0x1000916         ]       };
74       key <AC09> { [      0x1000924,  0x1000925         ]       };
75       key <AC10> { [      0x100091A,  0x100091B         ]       };
76       key <AC11> { [      0x100091F,  0x1000920         ]       };
77       key <BKSL> { [      0x1000949,  0x1000911         ]       };
78
79       key <AB01> { [      0x1000946,  0x100090E         ]       };
80       key <AB02> { [      0x1000902,  0x1000901         ]       };
81       key <AB03> { [      0x100092E,  0x1000923         ]       };
82       key <AB04> { [      0x1000928,  0x1000929         ]       };
83       key <AB05> { [      0x1000935,  0x1000934         ]       };
84       key <AB06> { [      0x1000932,  0x1000933         ]       };
85       key <AB07> { [      0x1000938,  0x1000936         ]       };
86       key <AB08> { [      comma,      0x1000937         ]       };
87       key <AB09> { [      period,     0x1000964         ]       };
88       key <AB10> { [      0x100092F,  question          ]       };
89 };
90
91 // based on a keyboard map from an 'xkb/symbols/ben' file
92 //
93 // $XFree86: xc/programs/xkbcomp/symbols/ben,v 1.2 2002/11/22 04:03:28 dawes Exp $
94
95 partial alphanumeric_keys
96 xkb_symbols "ben" {
97     name[Group1]= "India - Bengali";
98
99       // Mainly numbers.
100       key <AE01> { [      0x10009E7             ]       };
101       key <AE02> { [      0x10009E8             ]       };
102       key <AE03> { [      0x10009E9             ]       };
103       key <AE04> { [      0x10009EA             ]       };
104       key <AE05> { [      0x10009EB             ]       };
105       key <AE06> { [      0x10009EC             ]       };
106       key <AE07> { [      0x10009ED             ]       };
107       key <AE08> { [      0x10009EE             ]       };
108       key <AE09> { [      0x10009EF, parenleft  ]       };
109       key <AE10> { [      0x10009E6, parenright ]       };
110       key <AE11> { [      minus, 0x1000983      ]       };
111       key <AE12> { [      0x100098B, 0x10009C3  ]       };
112
113 // Mainly long vowels
114
115       key <AD01> { [      0x10009CC,  0x1000994 ]       };
116       key <AD02> { [      0x10009C8,  0x1000990 ]       };
117       key <AD03> { [      0x10009BE,  0x1000986 ]       };
118       key <AD04> { [      0x10009C0,  0x1000988 ]       };
119       key <AD05> { [      0x10009C2,  0x100098A ]       };
120
121 // Mainly voiced consonants
122
123       key <AD06> { [      0x10009AC,  0x10009AD ]       };
124       key <AD07> { [      0x10009B9,  0x1000999 ]       };
125       key <AD08> { [      0x1000997,  0x1000998 ]       };
126       key <AD09> { [      0x10009A6,  0x10009A7 ]       };
127       key <AD10> { [      0x100099C,  0x100099D ]       };
128       key <AD11> { [      0x10009A1, 0x10009A2  ]       };
129       key <AD12> { [      0x10009BC, 0x100099E  ]       };
130
131 // Mainly short vowels
132       key <AC01> { [      0x10009CB,  0x1000993 ]       };
133       key <AC02> { [      0x10009C7,  0x100098F ]       };
134       key <AC03> { [      0x10009CD,  0x1000985 ]       };
135       key <AC04> { [      0x10009BF,  0x1000987 ]       };
136       key <AC05> { [      0x10009C1,  0x1000989 ]       };
137
138 // Mainly unvoiced consonants
139
140       key <AC06> { [      0x10009AA,  0x10009AB ]       };
141       key <AC07> { [      0x10009B0,  0x10009DD ]       };
142       key <AC08> { [      0x1000995,  0x1000996 ]       };
143       key <AC09> { [      0x10009A4,  0x10009A5 ]       };
144       key <AC10> { [      0x100099A,  0x100099B ]       };
145       key <AC11> { [      0x100099F, 0x10009A0  ]       };
146       key <BKSL> { [      backslash, bar        ]       };
147
148       key <AB01> { [      z, Z                  ]       };
149       key <AB02> { [      0x1000982,  0x1000981 ]       };
150       key <AB03> { [      0x10009AE,  0x10009A3 ]       };
151       key <AB04> { [      0x10009A8,  0x10009A8 ]       };
152       key <AB05> { [      0x10009AC,  0x10009AC ]       };
153       key <AB06> { [      0x10009B2,  0x10009B2 ]       };
154       key <AB07> { [      0x10009B8,  0x10009B6 ]       };
155       key <AB08> { [      comma,      0x10009B7 ]       };
156       key <AB09> { [      period,     0x1000964 ]       };
157       key <AB10> { [      0x10009DF,  0x10009AF ]       };
158 };
159
160 xkb_symbols "ben_probhat" {
161  name[Group1]= "India - Bengali Probhat";
162    key <ESC>  { [ Escape ] };
163
164 // numbers
165    key <TLDE> { [ quoteleft, asciitilde   ] };
166    key <AE01> { [ 0x10009E7, exclam       ] };
167    key <AE02> { [ 0x10009E8, at           ] };
168    key <AE03> { [ 0x10009E9, numbersign   ] };
169    key <AE04> { [ 0x10009EA, 0x10009F3    ] };
170    key <AE05> { [ 0x10009EB, percent      ] };
171    key <AE06> { [ 0x10009EC, asciicircum  ] };
172    key <AE07> { [ 0x10009ED, 0x100099E    ] };
173    key <AE08> { [ 0x10009EE, asterisk     ] };
174    key <AE09> { [ 0x10009EF, parenleft    ] };
175    key <AE10> { [ 0x10009E6, parenright   ] };
176    key <AE11> { [ minus,     0x1000983    ] };
177    key <AE12> { [ 0x100098B, 0x10009C3    ] };
178    key <BKSP> { [ BackSpace               ] };
179
180 // tab, q to ] 
181    key <TAB>  { [   Tab,  ISO_Left_Tab     ] };
182    key <AD01> { [   0x10009A6,  0x10009A7  ] };
183    key <AD02> { [   0x10009C2,  0x100098A  ] };
184    key <AD03> { [   0x10009C0,  0x1000988  ] };
185    key <AD04> { [   0x10009B0,  0x10009DC  ] };
186    key <AD05> { [   0x100099F,  0x10009A0  ] };
187    key <AD06> { [   0x100098F,  0x1000990  ] };
188    key <AD07> { [   0x10009C1,  0x1000989  ] };
189    key <AD08> { [   0x10009BF,  0x1000987  ] };
190    key <AD09> { [   0x1000993,  0x1000994  ] };
191    key <AD10> { [   0x10009AA,  0x10009AB  ] };
192    key <AD11> { [   0x10009C7,  0x10009C8  ] };
193    key <AD12> { [   0x10009CB,  0x10009CC  ] };
194    key <RTRN> { [   Return                 ] };
195
196 // caps, a to ' 
197 //   key <CAPS> { [   Caps_Lock              ] };
198    key <AC01> { [   0x10009BE,  0x1000985  ] };
199    key <AC02> { [   0x10009B8,  0x10009B7  ] };
200    key <AC03> { [   0x10009A1,  0x10009A2  ] };
201    key <AC04> { [   0x10009A4,  0x10009A5  ] };
202    key <AC05> { [   0x1000997,  0x1000998  ] };
203    key <AC06> { [   0x10009B9,  0x1000983  ] };
204    key <AC07> { [   0x100099C,  0x100099D  ] };
205    key <AC08> { [   0x1000995,  0x1000996  ] };
206    key <AC09> { [   0x10009B2,  0x1000982  ] };
207    key <AC10> { [   semicolon,  colon      ] };
208    key <AC11> { [   quoteright, quotedbl   ] };
209
210 // shift, z to /
211 //   key <LFSH> { [   Shift_L                ] };
212    key <AB01> { [   0x10009DF,  0x10009AF  ] };
213    key <AB02> { [   0x10009B6,  0x10009DD  ] };
214    key <AB03> { [   0x100099A,  0x100099B  ] };
215    key <AB04> { [   0x1000986,  0x100098B  ] };
216    key <AB05> { [   0x10009AC,  0x10009AD  ] };
217    key <AB06> { [   0x10009A8,  0x10009A3  ] };
218    key <AB07> { [   0x10009AE,  0x1000999  ] };
219    key <AB08> { [   comma,      0x10009C3  ] };
220    key <AB09> { [   period,     0x1000981  ] };
221    key <AB10> { [   0x10009CD,  question   ] };
222    key <BKSL> { [   backslash,  bar        ] };
223
224 //   key <LCTL> { [   Control_L              ] };
225 //   key <SPCE> { [   space                  ] };
226
227 //   modifier_map Shift  { Shift_L };
228 //   modifier_map Lock   { Caps_Lock };
229 //   modifier_map Control{ Control_L };
230
231 };
232
233 partial alphanumeric_keys 
234 xkb_symbols "guj" {
235       name[Group1]= "India - Gujarati";
236
237       // Mainly numbers.
238       key <AE01> { [      0x1000AE7, 0x1000A8D  ]       };
239       key <AE02> { [      0x1000AE8, 0x1000AC5  ]       };
240       key <AE03> { [      0x1000AE9             ]       };
241       key <AE04> { [      0x1000AEA             ]       };
242       key <AE05> { [      0x1000AEB             ]       };
243       key <AE06> { [      0x1000AEC             ]       };
244       key <AE07> { [      0x1000AED             ]       };
245       key <AE08> { [      0x1000AEE             ]       };
246       key <AE09> { [      0x1000AEF, parenleft  ]       };
247       key <AE10> { [      0x1000AE6, parenright ]       };
248       key <AE11> { [      minus,     0x1000A83  ]       };
249       key <AE12> { [      0x1000A8B, 0x1000AC3  ]       };
250
251 // Mainly long vowels
252
253       key <AD01> { [      0x1000ACC, 0x1000A94  ]       };
254       key <AD02> { [      0x1000AC8, 0x1000A90  ]       };
255       key <AD03> { [      0x1000ABE, 0x1000A86  ]       };
256       key <AD04> { [      0x1000AC0, 0x1000A88  ]       };
257       key <AD05> { [      0x1000AC2, 0x1000A8A  ]       };
258
259 // Mainly voiced consonants
260
261       key <AD06> { [      0x1000AAC, 0x1000AAD  ]       };
262       key <AD07> { [      0x1000AB9, 0x1000A99  ]       };
263       key <AD08> { [      0x1000A97, 0x1000A98  ]       };
264       key <AD09> { [      0x1000AA6, 0x1000AA7  ]       };
265       key <AD10> { [      0x1000A9C, 0x1000A9D  ]       };
266       key <AD11> { [      0x1000AA1, 0x1000AA2  ]       };
267       key <AD12> { [      0x1000ABC, 0x1000A9E  ]       };
268
269 // Mainly short vowels
270       key <AC01> { [      0x1000ACB, 0x1000A93  ]       };
271       key <AC02> { [      0x1000AC7, 0x1000A8F  ]       };
272       key <AC03> { [      0x1000ACD, 0x1000A85  ]       };
273       key <AC04> { [      0x1000ABF, 0x1000A87  ]       };
274       key <AC05> { [      0x1000AC1, 0x1000A89  ]       };
275
276 // Mainly unvoiced consonants
277
278       key <AC06> { [      0x1000AAA, 0x1000AAB  ]       };
279       key <AC07> { [      0x1000AB0, guj_rra    ]       };
280       key <AC08> { [      0x1000A95, 0x1000A96  ]       };
281       key <AC09> { [      0x1000AA4, 0x1000AA5  ]       };
282       key <AC10> { [      0x1000A9A, 0x1000A9B  ]       };
283       key <AC11> { [      0x1000A9F, 0x1000AA0  ]       };
284       key <BKSL> { [      0x1000AC9, 0x1000A91  ]       };
285
286       key <AB01> { [      z        , Z          ]       };
287       key <AB02> { [      0x1000A82, 0x1000A81  ]       };
288       key <AB03> { [      0x1000AAE, 0x1000AA3  ]       };
289       key <AB04> { [      0x1000AA8, guj_nnna   ]       };
290       key <AB05> { [      0x1000AB5, guj_llla   ]       };
291       key <AB06> { [      0x1000AB2, 0x1000AB3  ]       };
292       key <AB07> { [      0x1000AB8, 0x1000AB6  ]       };
293       key <AB08> { [      comma,     0x1000AB7  ]       };
294       key <AB09> { [      period,    0x1000964  ]       };
295       key <AB10> { [      0x1000AAF, question   ]       };
296 };
297
298 partial alphanumeric_keys 
299 xkb_symbols "kan" {
300
301     // Inscript layout for Kannada  
302     // Author : G Karunakar <karunakar@freedomink.org>
303     // Date   : Wed Nov 13 17:22:58 IST 2002
304     // Kannada digits mapped in basic only
305
306     name[Group1]= "India - Kannada";
307
308     key <TLDE> { [  0x01000cca, 0x01000c92      ] };
309     key <AE01> { [  0x01000ce7, 0x01000c8d      ] };
310     key <AE02> { [  0x01000ce8, 0x01000cc5      ] };
311     key <AE03> { [  0x01000ce9                  ] };
312     key <AE04> { [  0x01000cea                  ] };
313     key <AE05> { [  0x01000ceb                  ] };
314     key <AE06> { [  0x01000cec                  ] };
315     key <AE07> { [  0x01000ced                  ] };
316     key <AE08> { [  0x01000cee                  ] };
317     key <AE09> { [  0x01000cef                  ] };
318     key <AE10> { [  0x01000ce6                  ] };
319     key <AE11> { [  0x01000c83                  ] };
320     key <AE12> { [  0x01000cc3, 0x01000c8b      ] };
321
322     key <AD01> { [  0x01000ccc, 0x01000c94      ] };
323     key <AD02> { [  0x01000cc8, 0x01000c90      ] };
324     key <AD03> { [  0x01000cbe, 0x01000c86      ] };
325     key <AD04> { [  0x01000cc0, 0x01000c88      ] };
326     key <AD05> { [  0x01000cc2, 0x01000c8a      ] };
327     key <AD06> { [  0x01000cac, 0x01000cad      ] };
328     key <AD07> { [  0x01000cb9, 0x01000c99      ] };
329     key <AD08> { [  0x01000c97, 0x01000c98      ] };
330     key <AD09> { [  0x01000ca6, 0x01000ca7      ] };
331     key <AD10> { [  0x01000c9c, 0x01000c9d      ] };
332     key <AD11> { [  0x01000ca1, 0x01000ca2      ] };
333     key <AD12> { [  0x01000cbc, 0x01000c9e      ] };
334  
335     key <AC01> { [  0x01000ccb, 0x01000c93      ] };
336     key <AC02> { [  0x01000cc7, 0x01000c8f      ] };
337     key <AC03> { [  0x01000ccd, 0x01000c85      ] };
338     key <AC04> { [  0x01000cbf, 0x01000c87      ] };
339     key <AC05> { [  0x01000cc1, 0x01000c89      ] };
340     key <AC06> { [  0x01000caa, 0x01000cab      ] };
341     key <AC07> { [  0x01000cb0, 0x01000cb1      ] };
342     key <AC08> { [  0x01000c95, 0x01000c96      ] };
343     key <AC09> { [  0x01000ca4, 0x01000ca5      ] };
344     key <AC10> { [  0x01000c9a, 0x01000c9b      ] };
345     key <AC11> { [  0x01000c9f, 0x01000ca0      ] };
346
347     key <AB01> { [  0x01000cc6, 0x01000c8e      ] };
348     key <AB02> { [  0x01000c82, 0x01000c81      ] };
349     key <AB03> { [  0x01000cae, 0x01000ca3      ] };
350     key <AB04> { [  0x01000ca8, 0x01000ca9      ] };
351     key <AB05> { [  0x01000cb5, 0x01000cb4      ] };
352     key <AB06> { [  0x01000cb2, 0x01000cb3      ] };
353     key <AB07> { [  0x01000cb8, 0x01000cb6      ] };
354     key <AB08> { [  comma     , 0x01000cb7      ] };
355     key <AB09> { [  period    , 0x01000ce4      ] };
356     key <AB10> { [  0x01000caf, 0x01000040      ] };
357     key <BKSL> { [  0x01000cc9, 0x01000c91      ] };
358
359     key <RALT> {
360         symbols[Group1] = [ Mode_switch, Multi_key ],
361         virtualMods = AltGr
362     };
363
364 };
365
366 // Description : A keymap for Malayalam
367 // Encoding    : Unicode (http://www.unicode.org)
368 // Author      : Baiju M <baiju@freeshell.org>
369 // Date        : Sat Aug  17 21:10:48 IST 2002
370 // Mapping:
371
372 partial alphanumeric_keys 
373 xkb_symbols "mal" {
374
375     name[Group1] = "India - Malayalam";
376
377     //From grave to backslash (\)
378     
379     key <TLDE> { [ 0x01000d4a , 0x01000d12           ] };
380
381 // svu: 
382 // These lines were in former "mal" variant - 
383 // but the digits are replaced with the ones from 'mal_plusnum' -
384 // for the integrity of all Indian layouts
385 //
386 //    key <AE01> { [1           ,     exclam           ] }; 
387 //    key <AE02> { [2           ,         at           ] };
388 //    key <AE03> { [3           , numbersign           ] };
389 //    key <AE04> { [4           ,     dollar           ] };
390 //    key <AE05> { [5           ,    percent           ] };
391 //    key <AE06> { [6           ,asciicircum           ] };
392 //    key <AE07> { [7           ,  ampersand           ] };
393 //    key <AE08> { [8           , 0x01000d7e           ] };
394 //    key <AE09> { [9           ,  parenleft           ] };
395 //    key <AE10> { [0           , parenright           ] };
396
397       key <AE01> { [ 0x01000d67 ,      exclam ] };
398       key <AE02> { [ 0x01000d68 ,          at ] };
399       key <AE03> { [ 0x01000d69 ,  numbersign ] };
400       key <AE04> { [ 0x01000d6a ,      dollar ] };
401       key <AE05> { [ 0x01000d6b ,     percent ] };
402       key <AE06> { [ 0x01000d6c , asciicircum ] };
403       key <AE07> { [ 0x01000d6d ,   ampersand ] };
404       key <AE08> { [ 0x01000d6e ,  0x01000d7e ] };
405       key <AE09> { [ 0x01000d6f ,   parenleft ] };
406       key <AE10> { [ 0x01000d66 ,  parenright ] };
407
408     key <AE11> { [ minus      , 0x01000d03           ] };
409     key <AE12> { [ 0x01000d43 , 0x01000d0b           ] };
410     key <BKSL> { [ 0x01000d7c                        ] };
411
412     // From 'q' to right bracket (])
413     
414     key <AD01> { [ 0x01000d4c , 0x01000d14 ] };
415     key <AD02> { [ 0x01000d48 , 0x01000d10 ] };
416     key <AD03> { [ 0x01000d3e , 0x01000d06 ] };
417     key <AD04> { [ 0x01000d40 , 0x01000d08 ] };
418     key <AD05> { [ 0x01000d42 , 0x01000d0a ] };
419     key <AD06> { [ 0x01000d2c , 0x01000d2d ] };
420     key <AD07> { [ 0x01000d39 , 0x01000d19 ] };
421     key <AD08> { [ 0x01000d17 , 0x01000d18 ] };
422     key <AD09> { [ 0x01000d26 , 0x01000d27 ] };
423     key <AD10> { [ 0x01000d1c , 0x01000d1d ] };
424     key <AD11> { [ 0x01000d21 , 0x01000d22 ] };
425     key <AD12> { [ 0x0100200d , 0x01000d1e ] };
426
427     // From 'a' to apostrophe (')
428     
429     key <AC01> { [ 0x01000d4b , 0x01000d13 ] };
430     key <AC02> { [ 0x01000d47 , 0x01000d0f ] };
431     key <AC03> { [ 0x01000d4d , 0x01000d05 ] };
432     key <AC04> { [ 0x01000d3f , 0x01000d07 ] };
433     key <AC05> { [ 0x01000d41 , 0x01000d09 ] };
434     key <AC06> { [ 0x01000d2a , 0x01000d2b ] };
435     key <AC07> { [ 0x01000d30 , 0x01000d31 ] };
436     key <AC08> { [ 0x01000d15 , 0x01000d16 ] };
437     key <AC09> { [ 0x01000d24 , 0x01000d25 ] };
438     key <AC10> { [ 0x01000d1a , 0x01000d1b ] };
439     key <AC11> { [ 0x01000d1f , 0x01000d20 ] };
440     
441     // From 'z' to slash (/)
442     
443     key <AB01> { [ 0x01000d46 , 0x01000d0e ] };
444     key <AB02> { [ 0x01000d02 , 0x01000d7a ] };
445     key <AB03> { [ 0x01000d2e , 0x01000d23 ] };
446     key <AB04> { [ 0x01000d28 , 0x01000d7b ] };
447     key <AB05> { [ 0x01000d35 , 0x01000d34 ] };
448     key <AB06> { [ 0x01000d32 , 0x01000d33 ] };
449     key <AB07> { [ 0x01000d38 , 0x01000d36 ] };
450     key <AB08> { [ comma      , 0x01000d37 ] };
451     key <AB09> { [ period     , 0x01000d7d ] };
452     key <AB10> { [ 0x01000d2f , question   ] };
453
454 };
455
456 partial alphanumeric_keys 
457 xkb_symbols "ori" {
458     // Inscript layout for Oriya  
459     // Author: G Karunakar <karunakar@freedomink.org>
460     // Date: Wed Nov 13 18:16:19 IST 2002
461
462     name[Group1]= "India - Oriya";
463     
464     key <TLDE> { [  0x01000b4a, 0x01000b12      ] };
465     key <AE01> { [  0x01000b67, 0x01000b0d      ] };
466     key <AE02> { [  0x01000b68, 0x01000b45      ] };
467     key <AE03> { [  0x01000b69                  ] };
468     key <AE04> { [  0x01000b6a                  ] };
469     key <AE05> { [  0x01000b6b                  ] };
470     key <AE06> { [  0x01000b6c                  ] };
471     key <AE07> { [  0x01000b6d                  ] };
472     key <AE08> { [  0x01000b6e                  ] };
473     key <AE09> { [  0x01000b6f                  ] };
474     key <AE10> { [  0x01000b66                  ] };
475     key <AE11> { [  0x01000b03                  ] };
476     key <AE12> { [  0x01000b43, 0x01000b0b      ] };
477
478     key <AD01> { [  0x01000b4c, 0x01000b14      ] };
479     key <AD02> { [  0x01000b48, 0x01000b10      ] };
480     key <AD03> { [  0x01000b3e, 0x01000b06      ] };
481     key <AD04> { [  0x01000b40, 0x01000b08      ] };
482     key <AD05> { [  0x01000b42, 0x01000b0a      ] };
483     key <AD06> { [  0x01000b2c, 0x01000b2d      ] };
484     key <AD07> { [  0x01000b39, 0x01000b19      ] };
485     key <AD08> { [  0x01000b17, 0x01000b18      ] };
486     key <AD09> { [  0x01000b26, 0x01000b27      ] };
487     key <AD10> { [  0x01000b1c, 0x01000b1d      ] };
488     key <AD11> { [  0x01000b21, 0x01000b22      ] };
489     key <AD12> { [  0x01000b3c, 0x01000b1e      ] };
490  
491     key <AC01> { [  0x01000b4b, 0x01000b13      ] };
492     key <AC02> { [  0x01000b47, 0x01000b0f      ] };
493     key <AC03> { [  0x01000b4d, 0x01000b05      ] };
494     key <AC04> { [  0x01000b3f, 0x01000b07      ] };
495     key <AC05> { [  0x01000b41, 0x01000b09      ] };
496     key <AC06> { [  0x01000b2a, 0x01000b2b      ] };
497     key <AC07> { [  0x01000b30, 0x01000b31      ] };
498     key <AC08> { [  0x01000b15, 0x01000b16      ] };
499     key <AC09> { [  0x01000b24, 0x01000b25      ] };
500     key <AC10> { [  0x01000b1a, 0x01000b1b      ] };
501     key <AC11> { [  0x01000b1f, 0x01000b20      ] };
502  
503     key <AB01> { [  0x01000b46, 0x01000b0e      ] };
504     key <AB02> { [  0x01000b02, 0x01000b01      ] };
505     key <AB03> { [  0x01000b2e, 0x01000b23      ] };
506     key <AB04> { [  0x01000b28, 0x01000b29      ] };
507     key <AB05> { [  0x01000b35, 0x01000b34      ] };
508     key <AB06> { [  0x01000b32, 0x01000b33      ] };
509     key <AB07> { [  0x01000b38, 0x01000b36      ] };
510     key <AB08> { [  comma     , 0x01000b37      ] };
511     key <AB09> { [  period    , 0x01000b64      ] };
512     key <AB10> { [  0x01000b2f, 0x01000040      ] };
513     key <BKSL> { [  0x01000b49, 0x01000b11      ] };
514
515     key <RALT> {
516         symbols[Group1] = [ Mode_switch, Multi_key ],
517         virtualMods = AltGr
518     };
519 };
520
521 partial alphanumeric_keys 
522 xkb_symbols "tam_unicode" {
523     include "lk(tam_unicode)"
524     name[Group1]= "India - Tamil Unicode";
525 };
526
527 partial alphanumeric_keys 
528 xkb_symbols "tam_TSCII" {
529     include "lk(tam_TSCII)"
530     name[Group1]= "India - Tamil TSCII Typewriter";
531 };
532
533 partial alphanumeric_keys 
534 xkb_symbols "tam_TAB" {
535     include "lk(tam_TAB)"
536     name[Group1]= "India - Tamil TAB Typewriter";
537 };
538
539 // INSCRIPT
540 partial alphanumeric_keys 
541 xkb_symbols "tam" {
542       name[Group1]= "India - Tamil";
543
544       key <TLDE> { [      0x1000BCA, 0x1000B92  ]       };
545
546       // Mainly numbers.
547       key <AE01> { [      0x1000BE7             ]       };
548       key <AE02> { [      0x1000BE8             ]       };
549       key <AE03> { [      0x1000BE9             ]       };
550       key <AE04> { [      0x1000BEA             ]       };
551       key <AE05> { [      0x1000BEB             ]       };
552       key <AE06> { [      0x1000BEC             ]       };
553       key <AE07> { [      0x1000BED             ]       };
554       key <AE08> { [      0x1000BEE             ]       };
555       key <AE09> { [      0x1000BEF, parenleft  ]       };
556       key <AE10> { [      0x1000BF0, parenright ]       };
557       key <AE11> { [      0x1000BF1, 0x1000B83  ]       };
558       key <AE12> { [      0x1000BF2, plus       ]       };
559
560 // Mainly long vowels
561
562       key <AD01> { [      0x1000BCC,  0x1000B94 ]       };
563       key <AD02> { [      0x1000BC8,  0x1000B90 ]       };
564       key <AD03> { [      0x1000BBE,  0x1000B86 ]       };
565       key <AD04> { [      0x1000BC0,  0x1000B88 ]       };
566       key <AD05> { [      0x1000BC2,  0x1000B8A ]       };
567
568 // Mainly voiced consonants
569
570       key <AD07> { [      0x1000BB9, 0x1000B99  ]       };
571       key <AD12> { [      0x1000BBC, 0x1000B9E  ]       };
572
573 // Mainly short vowels
574       key <AC01> { [      0x1000BCB,  0x1000B93 ]       };
575       key <AC02> { [      0x1000BC7,  0x1000B8F ]       };
576       key <AC03> { [      0x1000BCD,  0x1000B85 ]       };
577       key <AC04> { [      0x1000BBF,  0x1000B87 ]       };
578       key <AC05> { [      0x1000BC1,  0x1000B89 ]       };
579
580 // Mainly unvoiced consonants
581
582       key <AC06> { [      0x1000BAA             ]       };
583       key <AC07> { [      0x1000BB0,  0x1000BB1 ]       };
584       key <AC08> { [      0x1000B95             ]       };
585       key <AC09> { [      0x1000BA4             ]       };
586       key <AC10> { [      0x1000B9A             ]       };
587       key <AC11> { [      0x1000B9F             ]       };
588       key <BKSL> { [      backslash, bar        ]       };
589
590       key <AB01> { [      0x1000BC6,  0x1000B8E ]       };
591       key <AB02> { [      0x1000B82             ]       };
592       key <AB03> { [      0x1000BAE,  0x1000BA3 ]       };
593       key <AB04> { [      0x1000BA8,  0x1000BA9 ]       };
594       key <AB05> { [      0x1000BB5,  0x1000BB4 ]       };
595       key <AB06> { [      0x1000BB2,  0x1000BB3 ]       };
596       key <AB07> { [      0x1000BB8             ]       };
597       key <AB08> { [      comma,      0x1000BB7 ]       };
598       key <AB09> { [      period,     0x1000964 ]       };
599       key <AB10> { [      0x1000BAF,  question  ]       };
600 };
601
602 partial alphanumeric_keys 
603 xkb_symbols "tel" {
604
605     // Inscript layout for Telugu using Unicode 
606     // Author: G Karunakar <karunakar@freedomink.org>
607     // Date:
608     // See layout at http://www.indlinux.org/keymap/telugu.php
609
610     name[Group1]= "India - Telugu";
611
612     key <TLDE> { [  0x01000c4a, 0x01000c12      ] };
613     key <AE01> { [  0x01000c67, 0x01000c0d      ] };
614     key <AE02> { [  0x01000c68, 0x01000c45      ] };
615     key <AE03> { [  0x01000c69, numbersign      ] };
616     key <AE04> { [  0x01000c6a, dollar          ] };
617     key <AE05> { [  0x01000c6b, percent         ] };
618     key <AE06> { [  0x01000c6c, asciicircum     ] };
619     key <AE07> { [  0x01000c6d, ampersand       ] };
620     key <AE08> { [  0x01000c6e, asterisk        ] };
621     key <AE09> { [  0x01000c6f, parenleft       ] };
622     key <AE10> { [  0x01000c66, parenright      ] };
623     key <AE11> { [  0x01000c03, underscore      ] };
624     key <AE12> { [  0x01000c43, 0x01000c0b      ] };
625     key <BKSP> { [  BackSpace                   ] };    
626  
627     key <AD01> { [  0x01000c4c, 0x01000c14      ] };
628     key <AD02> { [  0x01000c48, 0x01000c10      ] };
629     key <AD03> { [  0x01000c3e, 0x01000c06      ] };
630     key <AD04> { [  0x01000c40, 0x01000c08      ] };
631     key <AD05> { [  0x01000c42, 0x01000c0a      ] };
632     key <AD06> { [  0x01000c2c, 0x01000c2d      ] };
633     key <AD07> { [  0x01000c39, 0x01000c19      ] };
634     key <AD08> { [  0x01000c17, 0x01000c18      ] };
635     key <AD09> { [  0x01000c26, 0x01000c27      ] };
636     key <AD10> { [  0x01000c1c, 0x01000c1d      ] };
637     key <AD11> { [  0x01000c21, 0x01000c22      ] };
638     key <AD12> { [  0x01000c3c, 0x01000c1e      ] };
639   
640     key <AC01> { [  0x01000c4b, 0x01000c13      ] };
641     key <AC02> { [  0x01000c47, 0x01000c0f      ] };
642     key <AC03> { [  0x01000c4d, 0x01000c05      ] };
643     key <AC04> { [  0x01000c3f, 0x01000c07      ] };
644     key <AC05> { [  0x01000c41, 0x01000c09      ] };
645     key <AC06> { [  0x01000c2a, 0x01000c2b      ] };
646     key <AC07> { [  0x01000c30, 0x01000c31      ] };
647     key <AC08> { [  0x01000c15, 0x01000c16      ] };
648     key <AC09> { [  0x01000c24, 0x01000c25      ] };
649     key <AC10> { [  0x01000c1a, 0x01000c1b      ] };
650     key <AC11> { [  0x01000c1f, 0x01000c20      ] };
651  
652     key <AB01> { [  0x01000c46, 0x01000c0e      ] };
653     key <AB02> { [  0x01000c02, 0x01000c01      ] };
654     key <AB03> { [  0x01000c2e, 0x01000c23      ] };
655     key <AB04> { [  0x01000c28, 0x01000c29      ] };
656     key <AB05> { [  0x01000c35, 0x01000c34      ] };
657     key <AB06> { [  0x01000c32, 0x01000c33      ] };
658     key <AB07> { [  0x01000c38, 0x01000c36      ] };
659     key <AB08> { [  comma     , 0x01000c37      ] };
660     key <AB09> { [  period    , 0x01000c64      ] };
661     key <AB10> { [  0x01000c2f, 0x01000040      ] };
662     key <BKSL> { [  0x01000c49, 0x01000c11      ] };
663
664     key <RALT> {        
665         symbols[Group1] = [ Mode_switch, Multi_key ],
666         virtualMods = AltGr
667     };
668 };
669
670 partial alphanumeric_keys 
671 xkb_symbols "urd" {
672     include "pk(urd)"
673     name[Group1]= "India - Urdu";
674 };
675
676 // based on a keyboard map from an 'xkb/symbols/gur' file
677
678 partial alphanumeric_keys
679 xkb_symbols "guru" {
680       name[Group1]= "India - Gurmukhi";
681
682       // Mainly numbers.
683       key <AE01> { [      0x1000A67             ]       };
684       key <AE02> { [      0x1000A68             ]       };
685       key <AE03> { [      0x1000A69             ]       };
686       key <AE04> { [      0x1000A6A             ]       };
687       key <AE05> { [      0x1000A6B             ]       };
688       key <AE06> { [      0x1000A6C             ]       };
689       key <AE07> { [      0x1000A6D             ]       };
690       key <AE08> { [      0x1000A6e             ]       };
691       key <AE09> { [      0x1000A6F, parenleft  ]       };
692       key <AE10> { [      0x1000A66, parenright ]       };
693       key <AE11> { [      gur_visarga           ]       };
694       key <AE12> { [      gur_v_r, gur_v_r_s    ]       };
695
696 // Mainly long vowels
697
698       key <AD01> { [      0x1000A4C, 0x1000A14  ]       };
699       key <AD02> { [      0x1000A48, 0x1000A10  ]       };
700       key <AD03> { [      0x1000A3E, 0x1000A06  ]       };
701       key <AD04> { [      0x1000A40, 0x1000A08  ]       };
702       key <AD05> { [      0x1000A42, 0x1000A0A  ]       };
703
704 // Mainly voiced consonants
705
706       key <AD06> { [      0x1000A2C, 0x1000A2D  ]       };
707       key <AD07> { [      0x1000A39, 0x1000A19  ]       };
708       key <AD08> { [      0x1000A17, 0x1000A18  ]       };
709       key <AD09> { [      0x1000A26, 0x1000A27  ]       };
710       key <AD10> { [      0x1000A1C, 0x1000A1D  ]       };
711       key <AD11> { [      0x1000A21, 0x1000A22  ]       };
712       key <AD12> { [      0x1000A3C, 0x1000A1E  ]       };
713
714 // Mainly short vowels
715       key <AC01> { [      0x1000A4B, 0x1000A13  ]       };
716       key <AC02> { [      0x1000A47, 0x1000A0F  ]       };
717       key <AC03> { [      0x1000A4D, 0x1000A05  ]       };
718       key <AC04> { [      0x1000A3F, 0x1000A07  ]       };
719       key <AC05> { [      0x1000A41, 0x1000A09  ]       };
720
721 // Mainly unvoiced consonants
722
723       key <AC06> { [      0x1000A2A, 0x1000A2B  ]       };
724       key <AC07> { [      0x1000A30, 0x1000A30  ]       };
725       key <AC08> { [      0x1000A15, 0x1000A16  ]       };
726       key <AC09> { [      0x1000A24, 0x1000A25  ]       };
727       key <AC10> { [      0x1000A1A, 0x1000A1B  ]       };
728       key <AC11> { [      0x1000A1F, 0x1000A20  ]       };
729       key <BKSL> { [      backslash, bar        ]       };
730
731       key <AB01> { [              z, Z          ]       };
732       key <AB02> { [      0x1000A02, 0x1000A70  ]       };
733       key <AB03> { [      0x1000A2E, 0x1000A23  ]       };
734       key <AB04> { [      0x1000A28, 0x1000A28  ]       };
735       key <AB05> { [      0x1000A35, 0x1000A35  ]       };
736       key <AB06> { [      0x1000A32, 0x1000A33  ]       };
737       key <AB07> { [      0x1000A38, 0x1000A36  ]       };
738       key <AB08> { [      comma,     less       ]       };
739       key <AB09> { [      period,    0x1000964  ]       };
740       key <AB10> { [      0x1000A2F, question   ]       };
741 };