3 // This layout includes all Indian layouts, including:
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
21 // based on a keyboard map from an 'xkb/symbols/dev' file
23 // Devangari is the default. Kill me if I am wrong:)
24 default partial alphanumeric_keys
26 // March 2004 -- David Holl <smyrph+dev_xkb@ece.wpi.edu>
29 key.type="FOUR_LEVEL";
31 key <TLDE> { [ U094a, U0912, grave, asciitilde ] };
32 key <AE01> { [ U0967, U090d, 1, exclam ] };
33 key <AE02> { [ U0968, U0945, 2, at ] };
34 // Shift+AE0[3-8] really need to return a macro of keys defined by
35 // INSCRIPT in place of the symbols that are here for now. But this
36 // requires XKB to map 1 key into two to three other key presses.
37 key <AE03> { [ U0969, numbersign, 3, numbersign ] };
38 key <AE04> { [ U096a, dollar, 4, dollar ] };
39 key <AE05> { [ U096b, percent, 5, percent ] };
40 key <AE06> { [ U096c, asciicircum, 6, asciicircum ] };
41 key <AE07> { [ U096d, ampersand, 7, ampersand ] };
42 key <AE08> { [ U096e, asterisk, 8, asterisk ] };
43 key <AE09> { [ U096f, parenleft, 9, parenleft ] };
44 key <AE10> { [ U0966, parenright, 0, parenright ] };
45 key <AE11> { [ minus, U0903, minus, underscore ] };
46 key <AE12> { [ U0943, U090b, U0944, U0960 ] };
48 key <AD01> { [ U094c, U0914 ] };
49 key <AD02> { [ U0948, U0910 ] };
50 key <AD03> { [ U093e, U0906 ] };
51 key <AD04> { [ U0940, U0908, U0963, U0961 ] };
52 key <AD05> { [ U0942, U090a ] };
53 key <AD06> { [ U092c, U092d ] };
54 key <AD07> { [ U0939, U0919 ] };
55 key <AD08> { [ U0917, U0918, U095a ] };
56 key <AD09> { [ U0926, U0927 ] };
57 key <AD10> { [ U091c, U091d, U095b ] };
58 key <AD11> { [ U0921, U0922, U095c, U095d ] };
59 key <AD12> { [ U093c, U091e ] };
60 // I added \ / ? | for shell-convenience (file names and piping)
61 key <BKSL> { [ U0949, U0911, backslash, bar ] };
63 key <AC01> { [ U094b, U0913 ] };
64 key <AC02> { [ U0947, U090f ] };
65 key <AC03> { [ U094d, U0905 ] };
66 key <AC04> { [ U093f, U0907, U0962, U090c ] };
67 key <AC05> { [ U0941, U0909 ] };
68 key <AC06> { [ U092a, U092b, NoSymbol, U095e ] };
69 key <AC07> { [ U0930, U0931 ] };
70 key <AC08> { [ U0915, U0916, U0958, U0959 ] };
71 key <AC09> { [ U0924, U0925 ] };
72 key <AC10> { [ U091a, U091b, U0952 ] };
73 key <AC11> { [ U091f, U0920, NoSymbol, U0951 ] };
75 key <AB01> { [ U0946, U090e, U0953 ] };
76 key <AB02> { [ U0902, U0901, NoSymbol, U0950 ] };
77 key <AB03> { [ U092e, U0923, U0954 ] };
78 key <AB04> { [ U0928, U0929 ] };
79 key <AB05> { [ U0935, U0934 ] };
80 key <AB06> { [ U0932, U0933 ] };
81 key <AB07> { [ U0938, U0936 ] };
82 key <AB08> { [ comma, U0937, U0970 ] };
83 key <AB09> { [ period, U0964, U0965, U093d ] };
84 // I added \ / ? | for shell-convenience (file names and piping)
85 key <AB10> { [ U092f, U095f, slash, question ] };
87 // space, space, Zero-Width-Non-Joiner (ZWNJ), Zero-Width-Joiner (ZWJ):
88 key <SPCE> { [ space, space, U200c, U200d ] };
91 // based on a keyboard map from an 'xkb/symbols/ben' file
93 // $XFree86: xc/programs/xkbcomp/symbols/ben,v 1.2 2002/11/22 04:03:28 dawes Exp $
95 partial alphanumeric_keys
97 name[Group1]= "India - Bengali";
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 ] };
113 // Mainly long vowels
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 ] };
121 // Mainly voiced consonants
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 ] };
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 ] };
138 // Mainly unvoiced consonants
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 ] };
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 ] };
160 xkb_symbols "ben_probhat" {
161 name[Group1]= "India - Bengali Probhat";
162 key <ESC> { [ Escape ] };
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, 0x10009CE ] };
174 key <AE09> { [ 0x10009EF, parenleft ] };
175 key <AE10> { [ 0x10009E6, parenright ] };
176 key <AE11> { [ 0x100200C, underscore ] };
177 key <AE12> { [ equal, 0x100200D ] };
178 key <BKSP> { [ BackSpace ] };
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 ] };
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 ] };
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> { [ 0x1000964, 0x1000981 ] };
221 key <AB10> { [ 0x10009CD, question ] };
222 key <BKSL> { [ backslash, 0x1000965 ] };
224 // key <LCTL> { [ Control_L ] };
225 // key <SPCE> { [ space ] };
227 // modifier_map Shift { Shift_L };
228 // modifier_map Lock { Caps_Lock };
229 // modifier_map Control{ Control_L };
233 partial alphanumeric_keys
235 name[Group1]= "India - Gujarati";
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 ] };
251 // Mainly long vowels
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 ] };
259 // Mainly voiced consonants
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 ] };
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 ] };
276 // Mainly unvoiced consonants
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 ] };
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 ] };
298 partial alphanumeric_keys
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
306 name[Group1]= "India - Kannada";
308 key <TLDE> { [ 0x01000cca, 0x01000c92 ] };
309 key <AE01> { [ 0x01000ce7 ] };
310 key <AE02> { [ 0x01000ce8 ] };
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 ] };
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 ] };
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 ] };
347 key <AB01> { [ 0x01000cc6, 0x01000c8e ] };
348 key <AB02> { [ 0x01000c82 ] };
349 key <AB03> { [ 0x01000cae, 0x01000ca3 ] };
350 key <AB04> { [ 0x01000ca8 ] };
351 key <AB05> { [ 0x01000cb5, 0x01000cb4 ] };
352 key <AB06> { [ 0x01000cb2, 0x01000cb3 ] };
353 key <AB07> { [ 0x01000cb8, 0x01000cb6 ] };
354 key <AB08> { [ comma , 0x01000cb7 ] };
355 key <AB09> { [ period ] };
356 key <AB10> { [ 0x01000caf, 0x01000040 ] };
359 symbols[Group1] = [ Mode_switch, Multi_key ],
365 // Description : A keymap for Malayalam
366 // Encoding : Unicode (http://www.unicode.org)
367 // Author : Baiju M <baiju@freeshell.org>
368 // Date : Sat Aug 17 21:10:48 IST 2002
371 partial alphanumeric_keys
374 name[Group1] = "India - Malayalam";
376 //From grave to backslash (\)
378 key <TLDE> { [ 0x01000d4a , 0x01000d12 ] };
381 // These lines were in former "mal" variant -
382 // but the digits are replaced with the ones from 'mal_plusnum' -
383 // for the integrity of all Indian layouts
385 // key <AE01> { [1 , exclam ] };
386 // key <AE02> { [2 , at ] };
387 // key <AE03> { [3 , numbersign ] };
388 // key <AE04> { [4 , dollar ] };
389 // key <AE05> { [5 , percent ] };
390 // key <AE06> { [6 ,asciicircum ] };
391 // key <AE07> { [7 , ampersand ] };
392 // key <AE08> { [8 , asterisk ] };
393 // key <AE09> { [9 , parenleft ] };
394 // key <AE10> { [0 , parenright ] };
396 key <AE01> { [ 0x01000d67 , exclam ] };
397 key <AE02> { [ 0x01000d68 , at ] };
398 key <AE03> { [ 0x01000d69 , numbersign ] };
399 key <AE04> { [ 0x01000d6a , dollar ] };
400 key <AE05> { [ 0x01000d6b , percent ] };
401 key <AE06> { [ 0x01000d6c , asciicircum ] };
402 key <AE07> { [ 0x01000d6d , ampersand ] };
403 key <AE08> { [ 0x01000d6e , asterisk ] };
404 key <AE09> { [ 0x01000d6f , parenleft ] };
405 key <AE10> { [ 0x01000d66 , parenright ] };
407 key <AE11> { [ minus , 0x01000d03 ] };
408 key <AE12> { [ 0x01000d43 , 0x01000d0b ] };
410 // From 'q' to right bracket (])
412 key <AD01> { [ 0x01000d4c , 0x01000d14 ] };
413 key <AD02> { [ 0x01000d48 , 0x01000d10 ] };
414 key <AD03> { [ 0x01000d3e , 0x01000d06 ] };
415 key <AD04> { [ 0x01000d40 , 0x01000d08 ] };
416 key <AD05> { [ 0x01000d42 , 0x01000d0a ] };
417 key <AD06> { [ 0x01000d2c , 0x01000d2d ] };
418 key <AD07> { [ 0x01000d39 , 0x01000d19 ] };
419 key <AD08> { [ 0x01000d17 , 0x01000d18 ] };
420 key <AD09> { [ 0x01000d26 , 0x01000d27 ] };
421 key <AD10> { [ 0x01000d1c , 0x01000d1d ] };
422 key <AD11> { [ 0x01000d21 , 0x01000d22 ] };
423 key <AD12> { [ 0x0100200d , 0x01000d1e ] };
425 // From 'a' to apostrophe (')
427 key <AC01> { [ 0x01000d4b , 0x01000d13 ] };
428 key <AC02> { [ 0x01000d47 , 0x01000d0f ] };
429 key <AC03> { [ 0x01000d4d , 0x01000d05 ] };
430 key <AC04> { [ 0x01000d3f , 0x01000d07 ] };
431 key <AC05> { [ 0x01000d41 , 0x01000d09 ] };
432 key <AC06> { [ 0x01000d2a , 0x01000d2b ] };
433 key <AC07> { [ 0x01000d30 , 0x01000d31 ] };
434 key <AC08> { [ 0x01000d15 , 0x01000d16 ] };
435 key <AC09> { [ 0x01000d24 , 0x01000d25 ] };
436 key <AC10> { [ 0x01000d1a , 0x01000d1b ] };
437 key <AC11> { [ 0x01000d1f , 0x01000d20 ] };
439 // From 'z' to slash (/)
441 key <AB01> { [ 0x01000d46 , 0x01000d0e ] };
442 key <AB02> { [ 0x01000d02 ] };
443 key <AB03> { [ 0x01000d2e , 0x01000d23 ] };
444 key <AB04> { [ 0x01000d28 ] };
445 key <AB05> { [ 0x01000d35 , 0x01000d34 ] };
446 key <AB06> { [ 0x01000d32 , 0x01000d33 ] };
447 key <AB07> { [ 0x01000d38 , 0x01000d36 ] };
448 key <AB08> { [ comma , 0x01000d37 ] };
449 key <AB09> { [ period ] };
450 key <AB10> { [ 0x01000d2f , question ] };
454 partial alphanumeric_keys
456 // Inscript layout for Oriya
457 // Author: G Karunakar <karunakar@freedomink.org>
458 // Date: Wed Nov 13 18:16:19 IST 2002
460 name[Group1]= "India - Oriya";
462 key <AE01> { [ 0x01000b67 ] };
463 key <AE02> { [ 0x01000b68 ] };
464 key <AE03> { [ 0x01000b69 ] };
465 key <AE04> { [ 0x01000b6a ] };
466 key <AE05> { [ 0x01000b6b ] };
467 key <AE06> { [ 0x01000b6c ] };
468 key <AE07> { [ 0x01000b6d ] };
469 key <AE08> { [ 0x01000b6e ] };
470 key <AE09> { [ 0x01000b6f ] };
471 key <AE10> { [ 0x01000b66 ] };
472 key <AE11> { [ 0x01000b03 ] };
473 key <AE12> { [ 0x01000b43, 0x01000b0b ] };
475 key <AD01> { [ 0x01000b4c, 0x01000b14 ] };
476 key <AD02> { [ 0x01000b48, 0x01000b10 ] };
477 key <AD03> { [ 0x01000b3e, 0x01000b06 ] };
478 key <AD04> { [ 0x01000b40, 0x01000b08 ] };
479 key <AD05> { [ 0x01000b42, 0x01000b0a ] };
480 key <AD06> { [ 0x01000b2c, 0x01000b2d ] };
481 key <AD07> { [ 0x01000b39, 0x01000b19 ] };
482 key <AD08> { [ 0x01000b17, 0x01000b18 ] };
483 key <AD09> { [ 0x01000b26, 0x01000b27 ] };
484 key <AD10> { [ 0x01000b1c, 0x01000b1d ] };
485 key <AD11> { [ 0x01000b21, 0x01000b22 ] };
486 key <AD12> { [ 0x01000b3c, 0x01000b1e ] };
488 key <AC01> { [ 0x01000b4b, 0x01000b13 ] };
489 key <AC02> { [ 0x01000b47, 0x01000b0f ] };
490 key <AC03> { [ 0x01000b4d, 0x01000b05 ] };
491 key <AC04> { [ 0x01000b3f, 0x01000b07 ] };
492 key <AC05> { [ 0x01000b41, 0x01000b09 ] };
493 key <AC06> { [ 0x01000b2a, 0x01000b2b ] };
494 key <AC07> { [ 0x01000b30 ] };
495 key <AC08> { [ 0x01000b15, 0x01000b16 ] };
496 key <AC09> { [ 0x01000b24, 0x01000b25 ] };
497 key <AC10> { [ 0x01000b1a, 0x01000b1b ] };
498 key <AC11> { [ 0x01000b1f, 0x01000b20 ] };
500 key <AB02> { [ 0x01000b02, 0x01000b01 ] };
501 key <AB03> { [ 0x01000b2e, 0x01000b23 ] };
502 key <AB04> { [ 0x01000b28 ] };
503 key <AB05> { [ 0x01000b35 ] };
504 key <AB06> { [ 0x01000b32, 0x01000b33 ] };
505 key <AB07> { [ 0x01000b38, 0x01000b36 ] };
506 key <AB08> { [ comma , 0x01000b37 ] };
507 key <AB09> { [ period ] };
508 key <AB10> { [ 0x01000b2f, 0x01000040 ] };
511 symbols[Group1] = [ Mode_switch, Multi_key ],
516 // based on a keyboard map from an 'xkb/symbols/tml' file
518 // $XFree86: xc/programs/xkbcomp/symbols/tml,v 1.2 2002/11/22 04:03:28 dawes Exp $
520 partial alphanumeric_keys
522 name[Group1]= "India - Tamil";
524 key <TLDE> { [ 0x1000BCA, 0x1000B92 ] };
527 key <AE01> { [ 0x1000BE7 ] };
528 key <AE02> { [ 0x1000BE8 ] };
529 key <AE03> { [ 0x1000BE9 ] };
530 key <AE04> { [ 0x1000BEA ] };
531 key <AE05> { [ 0x1000BEB ] };
532 key <AE06> { [ 0x1000BEC ] };
533 key <AE07> { [ 0x1000BED ] };
534 key <AE08> { [ 0x1000BEE ] };
535 key <AE09> { [ 0x1000BEF, parenleft ] };
536 key <AE10> { [ 0x1000BF0, parenright ] };
537 key <AE11> { [ 0x1000BF1, 0x1000B83 ] };
538 key <AE12> { [ 0x1000BF2, plus ] };
540 // Mainly long vowels
542 key <AD01> { [ 0x1000BCC, 0x1000B94 ] };
543 key <AD02> { [ 0x1000BC8, 0x1000B90 ] };
544 key <AD03> { [ 0x1000BBE, 0x1000B86 ] };
545 key <AD04> { [ 0x1000BC0, 0x1000B88 ] };
546 key <AD05> { [ 0x1000BC2, 0x1000B8A ] };
548 // Mainly voiced consonants
550 key <AD07> { [ 0x1000BB9, 0x1000B99 ] };
551 key <AD12> { [ 0x1000B9E ] };
553 // Mainly short vowels
554 key <AC01> { [ 0x1000BCB, 0x1000B93 ] };
555 key <AC02> { [ 0x1000BC7, 0x1000B8F ] };
556 key <AC03> { [ 0x1000BCD, 0x1000B85 ] };
557 key <AC04> { [ 0x1000BBF, 0x1000B87 ] };
558 key <AC05> { [ 0x1000BC1, 0x1000B89 ] };
560 // Mainly unvoiced consonants
562 key <AC06> { [ 0x1000BAA ] };
563 key <AC07> { [ 0x1000BB0, 0x1000BB1 ] };
564 key <AC08> { [ 0x1000B95 ] };
565 key <AC09> { [ 0x1000BA4 ] };
566 key <AC10> { [ 0x1000B9A ] };
567 key <AC11> { [ 0x1000B9F ] };
568 key <BKSL> { [ backslash, bar ] };
570 key <AB01> { [ 0x1000BC6, 0x1000B8E ] };
571 key <AB02> { [ 0x1000B82 ] };
572 key <AB03> { [ 0x1000BAE, 0x1000BA3 ] };
573 key <AB04> { [ 0x1000BA8, 0x1000BA9 ] };
574 key <AB05> { [ 0x1000BB5, 0x1000BB4 ] };
575 key <AB06> { [ 0x1000BB2, 0x1000BB3 ] };
576 key <AB07> { [ 0x1000BB8 ] };
577 key <AB08> { [ comma, 0x1000BB7 ] };
578 key <AB09> { [ period, 0x1000964 ] };
579 key <AB10> { [ 0x1000BAF, question ] };
582 partial alphanumeric_keys
583 xkb_symbols "tam_unicode" {
585 // Description: A keymap based on the TamilNet'99 typewriter keyboard
586 // Encoding: Unicode (http://www.unicode.org)
587 // Author: Thuraiappah Vaseeharan <vasee@ieee.org>
588 // Date : Sat Feb 9 21:10:48 CST 2002
591 name[Group1]= "India - Tamil Unicode";
594 key <AE01> { [ 0x1000b83 ] } ;
595 key <AE03> { [ 0x1000b9c ] } ;
596 key <AE04> { [ 0x1000bb7 ] } ;
597 key <AE05> { [ 0x1000bb8 ] } ;
598 key <AE06> { [ 0x1000bb9 ] } ;
601 key <AD01> { [ 0x1000b9e ] };
602 key <AD02> { [ 0x1000bb1 ] };
603 key <AD03> { [ 0x1000ba8 ] };
604 key <AD04> { [ 0x1000b9a ] };
605 key <AD05> { [ 0x1000bb5 ] };
606 key <AD06> { [ 0x1000bb2 ] };
607 key <AD07> { [ 0x1000bb0 ] };
608 key <AD08> { [ 0x1000bc8, 0x1000b90 ] };
609 key <AD09> { [ 0x1000bca, 0x1000bcb ] };
610 key <AD10> { [ 0x1000bbf, 0x1000bc0 ] };
611 key <AD11> { [ 0x1000bc1, 0x1000bc2 ] };
614 key <AC01> { [ 0x1000baf ] };
615 key <AC02> { [ 0x1000bb3 ] };
616 key <AC03> { [ 0x1000ba9 ] };
617 key <AC04> { [ 0x1000b95 ] };
618 key <AC05> { [ 0x1000baa ] };
619 key <AC06> { [ 0x1000bbe, 0x1000bb4 ] };
620 key <AC07> { [ 0x1000ba4 ] };
621 key <AC08> { [ 0x1000bae ] };
622 key <AC09> { [ 0x1000b9f ] };
623 key <AC10> { [ 0x1000bcd ] };
624 key <AC11> { [ 0x1000b99 ] };
627 key <AB01> { [ 0x1000ba3 ] };
628 key <AB02> { [ 0x1000b92, 0x1000b93 ] };
629 key <AB03> { [ 0x1000b89, 0x1000b8a ] };
630 key <AB04> { [ 0x1000b8e, 0x1000b8f ] };
631 key <AB05> { [ 0x1000bc6, 0x1000bc7 ] };
632 key <AB06> { [ 0x1000b94, 0x1000bcc ] };
633 key <AB07> { [ 0x1000b85, 0x1000b86 ] };
634 key <AB08> { [ 0x1000b87, 0x1000b88 ] };
637 partial alphanumeric_keys
638 xkb_symbols "tam_TSCII" {
640 // Description : A Tamil typewrite-style keymap
641 // loosely based on TamilNet'99 reommendations
642 // Encoding : TSCII (http://www.tscii.org)
643 // Author : Thuraiappah Vaseeharan <vasee@ieee.org>
644 // Last Modified: Sat Jan 5 17:11:26 CST 2002
646 name[Group1]= "India - Tamil TSCII Typewriter";
648 key <AE01> { [ 0x10000b7, 0x10000a4 ] }; // aytham
649 key <AE02> { [ 0x1000082, 0x10000a5 ] }; // shri
650 key <AE03> { [ 0x1000083, 0x1000088 ] }; // ja
651 key <AE04> { [ 0x1000084, 0x1000089 ] }; // sha
652 key <AE05> { [ 0x1000085, 0x100008a ] }; // sa
653 key <AE06> { [ 0x1000086, 0x100008b ] }; // ha
654 key <AE07> { [ 0x1000087, 0x100008c ] }; // ksha
657 key <AD01> { [ 0x10000bb, 0x100009a ] }; // nja
658 key <AD02> { [ 0x10000c8, 0x10000da ] }; // Ra
659 key <AD03> { [ 0x10000bf, 0x10000d1 ] }; // NNa
660 key <AD04> { [ 0x10000ba, 0x10000cd ] }; // ca
661 key <AD05> { [ 0x10000c5, 0x10000d7 ] }; // va
662 key <AD06> { [ 0x10000c4, 0x10000d6 ] }; // la
663 key <AD07> { [ 0x10000c3, 0x10000d5 ] }; // ra
664 key <AD08> { [ 0x10000a8, 0x10000b3 ] }; // sangili, ai
665 key <AD09> { [ 0x10000ca, 0x10000cb ] }; // di, dI
666 key <AD10> { [ 0x10000a2, 0x10000a3 ] }; // visiri
667 key <AD11> { [ dead_acute, 0x10000a3 ] }; // Ukaaram
670 key <AC01> { [ 0x10000c2, 0x10000d4 ] }; // ya
671 key <AC02> { [ 0x10000c7, 0x10000d9 ] }; // La
672 key <AC03> { [ 0x10000c9, 0x10000db ] }; // na
673 key <AC04> { [ 0x10000b8, 0x10000cc ] }; // ka
674 key <AC05> { [ 0x10000c0, 0x10000d2 ] }; // pa
675 key <AC06> { [ dead_grave,0x10000a1 ] }; // pulli,aravu
676 key <AC07> { [ 0x10000be, 0x10000d0 ] }; // tha
677 key <AC08> { [ 0x10000c1, 0x10000d3 ] }; // ma
678 key <AC09> { [ 0x10000bc, 0x10000ce ] }; // da
679 key <AC10> { [ 0x10000c6, 0x10000d8 ] }; // zha
680 key <AC11> { [ 0x10000b9, 0x1000099 ] }; // nga
683 key <AB01> { [ 0x10000bd, 0x10000cf ] }; // Na
684 key <AB02> { [ 0x10000b4, 0x10000b5 ] }; // o, O
685 key <AB03> { [ 0x10000af, 0x10000b0 ] }; // u, U
686 key <AB04> { [ 0x10000b1, 0x10000b2 ] }; // e, E
687 key <AB05> { [ 0x10000a6, 0x10000a7 ] }; // kombus
688 key <AB06> { [ 0x10000b6, 0x10000aa ] }; // au
689 key <AB07> { [ 0x10000ab, 0x10000ac ] }; // a, A
690 key <AB08> { [ 0x10000fe, 0x10000ae ] }; // i, I
694 partial alphanumeric_keys
695 xkb_symbols "tam_TAB" {
697 // Description: A keymap based on the TamilNet'99 typewriter keyboard
698 // Encoding: TAB (http://www.tamilnet99.org)
699 // Author: Thuraiappah Vaseeharan <t_vasee@yahoo.com>
700 // Date : Sun Aug 12 02:23:00 CDT 2001
702 name[Group1]= "India - Tamil TAB Typewriter";
705 key <AE01> { [ 0x10000e7, 0x10000a7 ] } ;
706 key <AE02> { [ 0x10000fa, 0x10000a8 ] } ;
707 key <AE03> { [ 0x10000fb ] } ;
708 key <AE04> { [ 0x10000fc ] } ;
709 key <AE05> { [ 0x10000fd ] } ;
710 key <AE06> { [ 0x10000fe ] } ;
711 key <AE07> { [ 0x10000ff ] } ;
714 key <AD01> { [ 0x10000eb, 0x10000b3 ] };
715 key <AD02> { [ 0x10000f8, 0x10000c1 ] };
716 key <AD03> { [ 0x10000ef, 0x10000b8 ] };
717 key <AD04> { [ 0x10000ea, 0x10000b2 ] };
718 key <AD05> { [ 0x10000f5, 0x10000be ] };
719 key <AD06> { [ 0x10000f4, 0x10000bd ] };
720 key <AD07> { [ 0x10000f3, 0x10000bc ] };
721 key <AD08> { [ 0x10000ac, 0x10000e4 ] };
722 key <AD09> { [ 0x10000ae, 0x10000af ] };
723 key <AD10> { [ 0x10000a4, 0x10000a6 ] };
724 key <AD11> { [ dead_circumflex, 0x10000a6 ] }; // Ukaaram
727 key <AC01> { [ 0x10000f2, 0x10000bb ] };
728 key <AC02> { [ 0x10000f7, 0x10000c0 ] };
729 key <AC03> { [ 0x10000f9, 0x10000c2 ] };
730 key <AC04> { [ 0x10000e8, 0x10000b0 ] };
731 key <AC05> { [ 0x10000f0, 0x10000b9 ] };
732 key <AC06> { [ 0x10000a2, 0x10000a3 ] };
733 key <AC07> { [ 0x10000ee, 0x10000b6 ] };
734 key <AC08> { [ 0x10000f1, 0x10000ba ] };
735 key <AC09> { [ 0x10000ec, 0x10000b4 ] };
736 key <AC10> { [ 0x10000f6, 0x10000bf ] };
737 key <AC11> { [ 0x10000e9, 0x10000b1 ] };
740 key <AB01> { [ 0x10000ed, 0x10000b5 ] };
741 key <AB02> { [ 0x10000e5, 0x10000e6 ] };
742 key <AB03> { [ 0x10000e0, 0x10000e1 ] };
743 key <AB04> { [ 0x10000e2, 0x10000e3 ] };
744 key <AB05> { [ 0x10000aa, 0x10000ab ] };
745 key <AB06> { [ 0x10000ac, 0x10000a3 ] };
746 key <AB07> { [ 0x10000dc, 0x10000dd ] };
747 key <AB08> { [ 0x10000de, 0x10000df ] };
750 partial alphanumeric_keys
753 // Inscript layout for Telugu using Unicode
754 // Author: G Karunakar <karunakar@freedomink.org>
756 // See layout at http://www.indlinux.org/keymap/telugu.php
758 name[Group1]= "India - Telugu";
760 key <TLDE> { [ 0x01000c4a, 0x01000c12 ] };
761 key <AE01> { [ 0x01000c67 ] };
762 key <AE02> { [ 0x01000c68 ] };
763 key <AE03> { [ 0x01000c69, numbersign ] };
764 key <AE04> { [ 0x01000c6a, dollar ] };
765 key <AE05> { [ 0x01000c6b, percent ] };
766 key <AE06> { [ 0x01000c6c, asciicircum ] };
767 key <AE07> { [ 0x01000c6d, ampersand ] };
768 key <AE08> { [ 0x01000c6e, asterisk ] };
769 key <AE09> { [ 0x01000c6f, parenleft ] };
770 key <AE10> { [ 0x01000c66, parenright ] };
771 key <AE11> { [ 0x01000c03, underscore ] };
772 key <AE12> { [ 0x01000c43, 0x01000c0b ] };
773 key <BKSP> { [ BackSpace ] };
775 key <AD01> { [ 0x01000c4c, 0x01000c14 ] };
776 key <AD02> { [ 0x01000c48, 0x01000c10 ] };
777 key <AD03> { [ 0x01000c3e, 0x01000c06 ] };
778 key <AD04> { [ 0x01000c40, 0x01000c08 ] };
779 key <AD05> { [ 0x01000c42, 0x01000c0a ] };
780 key <AD06> { [ 0x01000c2c, 0x01000c2d ] };
781 key <AD07> { [ 0x01000c39, 0x01000c19 ] };
782 key <AD08> { [ 0x01000c17, 0x01000c18 ] };
783 key <AD09> { [ 0x01000c26, 0x01000c27 ] };
784 key <AD10> { [ 0x01000c1c, 0x01000c1d ] };
785 key <AD11> { [ 0x01000c21, 0x01000c22 ] };
786 key <AD12> { [ 0x01000c1e ] };
788 key <AC01> { [ 0x01000c4b, 0x01000c13 ] };
789 key <AC02> { [ 0x01000c47, 0x01000c0f ] };
790 key <AC03> { [ 0x01000c4d, 0x01000c05 ] };
791 key <AC04> { [ 0x01000c3f, 0x01000c07 ] };
792 key <AC05> { [ 0x01000c41, 0x01000c09 ] };
793 key <AC06> { [ 0x01000c2a, 0x01000c2b ] };
794 key <AC07> { [ 0x01000c30, 0x01000c31 ] };
795 key <AC08> { [ 0x01000c15, 0x01000c16 ] };
796 key <AC09> { [ 0x01000c24, 0x01000c25 ] };
797 key <AC10> { [ 0x01000c1a, 0x01000c1b ] };
798 key <AC11> { [ 0x01000c1f, 0x01000c20 ] };
800 key <AB01> { [ 0x01000c46, 0x01000c0e ] };
801 key <AB02> { [ 0x01000c02, 0x01000c01 ] };
802 key <AB03> { [ 0x01000c2e, 0x01000c23 ] };
803 key <AB04> { [ 0x01000c28 ] };
804 key <AB05> { [ 0x01000c35 ] };
805 key <AB06> { [ 0x01000c32, 0x01000c33 ] };
806 key <AB07> { [ 0x01000c38, 0x01000c36 ] };
807 key <AB08> { [ comma , 0x01000c37 ] };
808 key <AB09> { [ period ] };
809 key <AB10> { [ 0x01000c2f, 0x01000040 ] };
812 symbols[Group1] = [ Mode_switch, Multi_key ],
817 partial alphanumeric_keys
820 name[Group1]= "India - Urdu";
823 // based on a keyboard map from an 'xkb/symbols/gur' file
825 partial alphanumeric_keys
827 name[Group1]= "India - Gurmukhi";
830 key <AE01> { [ 0x1000A67 ] };
831 key <AE02> { [ 0x1000A68 ] };
832 key <AE03> { [ 0x1000A69 ] };
833 key <AE04> { [ 0x1000A6A ] };
834 key <AE05> { [ 0x1000A6B ] };
835 key <AE06> { [ 0x1000A6C ] };
836 key <AE07> { [ 0x1000A6D ] };
837 key <AE08> { [ 0x1000A6e ] };
838 key <AE09> { [ 0x1000A6F, parenleft ] };
839 key <AE10> { [ 0x1000A66, parenright ] };
840 key <AE11> { [ gur_visarga ] };
841 key <AE12> { [ gur_v_r, gur_v_r_s ] };
843 // Mainly long vowels
845 key <AD01> { [ 0x1000A4C, 0x1000A14 ] };
846 key <AD02> { [ 0x1000A48, 0x1000A10 ] };
847 key <AD03> { [ 0x1000A3E, 0x1000A06 ] };
848 key <AD04> { [ 0x1000A40, 0x1000A08 ] };
849 key <AD05> { [ 0x1000A42, 0x1000A0A ] };
851 // Mainly voiced consonants
853 key <AD06> { [ 0x1000A2C, 0x1000A2D ] };
854 key <AD07> { [ 0x1000A39, 0x1000A19 ] };
855 key <AD08> { [ 0x1000A17, 0x1000A18 ] };
856 key <AD09> { [ 0x1000A26, 0x1000A27 ] };
857 key <AD10> { [ 0x1000A1C, 0x1000A1D ] };
858 key <AD11> { [ 0x1000A21, 0x1000A22 ] };
859 key <AD12> { [ 0x1000A3C, 0x1000A1E ] };
861 // Mainly short vowels
862 key <AC01> { [ 0x1000A4B, 0x1000A13 ] };
863 key <AC02> { [ 0x1000A47, 0x1000A0F ] };
864 key <AC03> { [ 0x1000A4D, 0x1000A05 ] };
865 key <AC04> { [ 0x1000A3F, 0x1000A07 ] };
866 key <AC05> { [ 0x1000A41, 0x1000A09 ] };
868 // Mainly unvoiced consonants
870 key <AC06> { [ 0x1000A2A, 0x1000A2B ] };
871 key <AC07> { [ 0x1000A30, 0x1000A30 ] };
872 key <AC08> { [ 0x1000A15, 0x1000A16 ] };
873 key <AC09> { [ 0x1000A24, 0x1000A25 ] };
874 key <AC10> { [ 0x1000A1A, 0x1000A1B ] };
875 key <AC11> { [ 0x1000A1F, 0x1000A20 ] };
876 key <BKSL> { [ backslash, bar ] };
878 key <AB01> { [ z, Z ] };
879 key <AB02> { [ 0x1000A02, 0x1000A70 ] };
880 key <AB03> { [ 0x1000A2E, 0x1000A23 ] };
881 key <AB04> { [ 0x1000A28, 0x1000A28 ] };
882 key <AB05> { [ 0x1000A35, 0x1000A35 ] };
883 key <AB06> { [ 0x1000A32, 0x1000A33 ] };
884 key <AB07> { [ 0x1000A38, 0x1000A36 ] };
885 key <AB08> { [ comma, less ] };
886 key <AB09> { [ period, 0x1000964 ] };
887 key <AB10> { [ 0x1000A2F, question ] };