in revision 20417a1c
1// This layout includes all Indian layouts, including:
2//     - Hindi
3//     - Marathi
4//     - Sanskrit
5//     - Bangla
6//     - Gujarati
7//     - Kannada
8//     - Malayalam
9//     - Ol Chiki
10//     - Oriya
11//     - Tamil
12//     - Telugu
13//     - Urdu
14
15// Links:
16// - Indic INSCRIPT keyboard layout diagrams:
17//     http://java.sun.com/products/jfc/tsc/articles/InputMethod/indiclayout.html
18// - Bangla Baishakhi (Bangla layouts):
19// - Bangla Baishakhi Inscript (Bangla layouts):
20// - Bangla Bornona (Bangla layouts):
21// - Uni Gitanjali (Bangla layouts):
22//     http://nltr.org
23// - Ekusheyr Shadhinota (Bangla layouts):
24//     http://ekushey.org/projects/shadhinota/index.html
25// - Microsoft Windows XP SP2: Indic Language Standards - an Introduction:
26//     http://www.bhashaindia.com/MSProducts/XpSp2/Articles/IndicLanguageStandards.aspx
27// - Ol Chiki:
28//    http://www.unicode.org/L2/L2005/05243r-n2984-ol-chiki.pdf (fig. 9)
29
30// Devangari is the default. Kill me if I am wrong:)
31default partial alphanumeric_keys
32xkb_symbols "deva" {
33	// March 2004 -- David Holl <smyrph+dev_xkb@ece.wpi.edu>
34	name[Group1]="Indian";
35
36	key.type="FOUR_LEVEL";
37
38	key <TLDE> { [ U094a, U0912,   grave, asciitilde  ] };
39	key <AE01> { [ U0967, U090d,       1, exclam      ] };
40	key <AE02> { [ U0968, U0945,       2, at          ] };
41	// Shift+AE0[3-8] really need to return a macro of keys defined by
42	// INSCRIPT in place of the symbols that are here for now.  But this
43	// requires XKB to map 1 key into two to three other key presses.
44	key <AE03> { [ U0969, numbersign,  3, numbersign  ] };
45	key <AE04> { [ U096a, dollar,      4, U20b9       ] }; // Rupee
46	key <AE05> { [ U096b, percent,     5, percent     ] };
47	key <AE06> { [ U096c, asciicircum, 6, asciicircum ] };
48	key <AE07> { [ U096d, ampersand,   7, ampersand   ] };
49	key <AE08> { [ U096e, asterisk,    8, asterisk    ] };
50	key <AE09> { [ U096f, parenleft,   9, parenleft   ] };
51	key <AE10> { [ U0966, parenright,  0, parenright  ] };
52	key <AE11> { [ minus, U0903, minus, underscore    ] };
53	key <AE12> { [ U0943, U090b, U0944, U0960 ] };
54
55	key <AD01> { [ U094c, U0914 ] };
56	key <AD02> { [ U0948, U0910 ] };
57	key <AD03> { [ U093e, U0906 ] };
58	key <AD04> { [ U0940, U0908, U0963, U0961 ] };
59	key <AD05> { [ U0942, U090a ] };
60	key <AD06> { [ U092c, U092d ] };
61	key <AD07> { [ U0939, U0919 ] };
62	key <AD08> { [ U0917, U0918, U095a ] };
63	key <AD09> { [ U0926, U0927 ] };
64	key <AD10> { [ U091c, U091d, U095b ] };
65	key <AD11> { [ U0921, U0922, U095c, U095d ] };
66	key <AD12> { [ U093c, U091e ] };
67	// I added \ / ? | for shell-convenience (file names and piping)
68	key <BKSL> { [ U0949, U0911, U005C, U007C ] };
69
70	key <AC01> { [ U094b, U0913 ] };
71	key <AC02> { [ U0947, U090f ] };
72	key <AC03> { [ U094d, U0905 ] };
73	key <AC04> { [ U093f, U0907, U0962, U090c ] };
74	key <AC05> { [ U0941, U0909 ] };
75	key <AC06> { [ U092a, U092b, NoSymbol, U095e ] };
76	key <AC07> { [ U0930, U0931 ] };
77	key <AC08> { [ U0915, U0916, U0958, U0959 ] };
78	key <AC09> { [ U0924, U0925 ] };
79	key <AC10> { [ U091a, U091b, U0952 ] };
80	key <AC11> { [ U091f, U0920, NoSymbol, U0951 ] };
81
82	key <AB01> { [ U0946, U090e, U0953 ] };
83	key <AB02> { [ U0902, U0901, NoSymbol, U0950 ] };
84	key <AB03> { [ U092e, U0923, U0954 ] };
85	key <AB04> { [ U0928, U0929 ] };
86	key <AB05> { [ U0935, U0934 ] };
87	key <AB06> { [ U0932, U0933 ] };
88	key <AB07> { [ U0938, U0936 ] };
89	key <AB08> { [ comma, U0937, U0970 ] };
90	key <AB09> { [ period, U0964, U0965, U093d ] };
91	// I added \ / ? | for shell-convenience (file names and piping)
92	key <AB10> { [ U092f, U095f, slash, question ] };
93
94	// space, space, Zero-Width-Non-Joiner (ZWNJ), Zero-Width-Joiner (ZWJ):
95	include "nbsp(zwnj3zwj4)"
96        include "level3(ralt_switch)"
97};
98
99//Name		:	Bolnagri (Combined)
100//Description	:	A phonetic keyboard layout for Devnagari(Hindi)
101//			http://www.indlinux.org/wiki/index.php/BolNagri
102//NOTE		: 	This is a combined map of bolnagri_matras and bolnagri_vowels.
103//Inspired by "devrom" keymap by Steve Smith for the windows tool "keyman"
104//Original Author :	Noah Levitt<nlevitt at columbia.edu>
105//Past Authors  : Pramod.R <pramodr at gmail.com> and Ravikant <ravikant at sarai.net>
106//Current Main. : G Karunakar <karunakar@indlinux.org>
107
108partial alphanumeric_keys
109xkb_symbols "bolnagri" {
110     name[Group1] = "Hindi (Bolnagri)";
111     key.type="FOUR_LEVEL";
112
113    // Roman digits
114    key <TLDE>  { [   U0902,	U0901,		grave, 	asciitilde ] }; // grave: anusvara, candrabindu
115    key <AE01>  { [   1,	exclam,		U0967,		exclam	   ] };
116    key <AE02>  { [   2,	at,		U0968,		at	   ] };
117    key <AE03>  { [   3,    	numbersign, 	U0969,		numbersign ] };
118    key <AE04>  { [   4,	dollar,		U096A,		U20B9      ] }; // Rupee
119    key <AE05>  { [   5,	percent,	U096B,		percent    ] };
120    key <AE06>  { [   6,	asciicircum,	U096C,		asciicircum ] };
121    key <AE07>  { [   7,	ampersand,	U096D,		ampersand  ] };
122    key <AE08>  { [   8,	asterisk,	U096E,		asterisk   ] };
123    key <AE09>  { [   9,	parenleft,	U096F,		parenleft  ] };
124    key <AE10>  { [   0,	parenright,	U0966,		parenright ] };
125    key <AE11>	{ [   minus,	underscore	     ] };
126    key <AE12>	{ [   equal,	plus		     ] };
127    key <BKSL>  { [   U0964,	U0965,		U007C,		U005C   ] }; //pipe : danda, double danda
128
129    //Q Row	
130    key <AD01>   { [   U200C, 	U200D   ] };  // Q: ZWNJ, ZWJ
131    key <AD02>   { [   U0935,  	U950	] };  // W: wa, OM
132    key <AD03>   { [   U0947,   U0948,	U090F,	U0910   ] };  // E: e, ai matras
133    key <AD04>   { [   U0930,	U0943,	U0931,  U090B  	] };  // R: ra, vocalic Ri
134    key <AD05>   { [   U0924,   U0925   ] };  // T: ta, tha
135    key <AD06>   { [   U092f,	U091E   ] };  // Y: ya, nya
136    key <AD07>   { [   U0941,   U0942,	U0909,	U090A   ] };  // U: u, uu matras
137    key <AD08>   { [   U093F,   U0940,	U0907,	U0908   ] };  // I: i, ii matras
138    key <AD09>   { [   U094B,   U094C,	U0913,	U0914   ] };  // O: o, au matras
139    key <AD10>   { [   U092A,   U092B   ] };  // P: pa, pha
140    key <AD11>   { [   bracketleft,   braceleft   ] };
141    key <AD12>	 { [   bracketright, braceright   ] };
142
143    //A Row
144    key <AC01>   { [   U093E,	 U0906,	U0905,	U0906  ] };   // A: aa, full A, AA
145    key <AC02>   { [   U0938,    U0937   ] };  // S: sa, ssa
146    key <AC03>   { [   U0926,    U0927   ] };  // D: da, dha
147    key <AC04>   { [   U091F,    U0920   ] };  // F: TA, THA
148    key <AC05>   { [   U0917,    U0918   ] };  // G: ga, gha
149    key <AC06>   { [   U0939,    U0903   ] };  // H: ha, visarg 
150    key <AC07>   { [   U091C,    U091D   ] };  // J: ja, jha
151    key <AC08>   { [   U0915,    U0916   ] };  // K: ka, kha
152    key <AC09>   { [   U0932,	 U0933,	U0962,   U090C   ] };  // L: la, vocalic L or lru matra
153    key <AC10>   { [   semicolon, colon  ] };
154    key <AC11>   { [apostrophe, quotedbl ] };
155
156    //Z Row
157    key <AB01>   { [   U0936,	 U0945, U0936, U090D 	 ] };  // Z: sha, akaar candra
158    key <AB02>   { [   U094D,    U0949, U094D, U0911	 ] };  // X: halant, aakaar candra, chandra A
159    key <AB03>   { [   U091A,    U091B   ] };  // C: ca, cha
160    key <AB04>   { [   U0921,    U0922   ] };  // V: da, dha
161    key <AB05>   { [   U092C,    U092D   ] };  // B: ba, bha
162    key <AB06>   { [   U0928,    U0923   ] };  // N: na, nna
163    key <AB07>   { [   U092E,    U0919,	U092E,	U093D   ] };  // M: ma, nga, avagraha
164    key <AB08>   { [   comma,    U0970	 ] };// comma: comma, dev abbreviation sign
165    key <AB09>   { [   period,   U093C 	 ] };  // period: period, nukta
166    key <AB10>	 { [   slash,   question ] };
167
168//    modifier_map Shift  { Shift_L };
169//    modifier_map Lock   { Caps_Lock };
170//    modifier_map Control{ Control_L };
171//    modifier_map Mod3   { Mode_switch };
172
173    include "level3(ralt_switch)"
174};
175
176partial alphanumeric_keys
177xkb_symbols "ben" {
178    name[Group1]= "Bangla (India)";
179
180      // Mainly numbers.
181      key <AE01> { [      U09E7 		]	};
182      key <AE02> { [      U09E8 		]	};
183      key <AE03> { [      U09E9 		]	};
184      key <AE04> { [      U09EA 		]	};
185      key <AE05> { [      U09EB		]	};
186      key <AE06> { [      U09EC 		]	};
187      key <AE07> { [      U09ED	        ]	};
188      key <AE08> { [      U09EE 		]	};
189      key <AE09> { [      U09EF, parenleft	]	};
190      key <AE10> { [      U09E6, parenright	]	};
191      key <AE11> { [      minus, U0983 	]	};
192      key <AE12> { [      U098B, U09C3	]	};
193
194// Mainly long vowels
195
196      key <AD01> { [      U09CC,  U0994	]	};
197      key <AD02> { [      U09C8,  U0990	]	};
198      key <AD03> { [      U09BE,  U0986	]	};
199      key <AD04> { [      U09C0,  U0988	]	};
200      key <AD05> { [      U09C2,  U098A	]	};
201
202// Mainly voiced consonants
203
204      key <AD06> { [      U09AC,  U09AD	]	};
205      key <AD07> { [      U09B9,  U0999 ]	};
206      key <AD08> { [      U0997,  U0998 ]	};
207      key <AD09> { [      U09A6,  U09A7 ]	};
208      key <AD10> { [      U099C,  U099D ]	};
209      key <AD11> { [      U09A1, U09A2 	]	};
210      key <AD12> { [      U09BC, U099E 	]	};
211
212// Mainly short vowels
213      key <AC01> { [      U09CB,  U0993 ]	};
214      key <AC02> { [      U09C7,  U098F ]	};
215      key <AC03> { [      U09CD,  U0985 ]	};
216      key <AC04> { [      U09BF,  U0987 ]	};
217      key <AC05> { [      U09C1,  U0989 ]	};
218
219
220// Mainly unvoiced consonants
221
222      key <AC06> { [      U09AA,  U09AB ]	};
223      key <AC07> { [      U09B0,  U09DD ]	};
224      key <AC08> { [      U0995,  U0996 ]	};
225      key <AC09> { [      U09A4,  U09A5 ]	};
226      key <AC10> { [      U099A,  U099B ]	};
227      key <AC11> { [      U099F, U09A0 	]	};
228      key <BKSL> { [      U005C, U007C 	]	};
229
230      key <AB01> { [      z, Z  		]       };
231      key <AB02> { [      U0982,  U0981 ]       };
232      key <AB03> { [      U09AE,  U09A3 ]       };
233      key <AB04> { [      U09A8,  U09A8 ]       };
234      key <AB05> { [      U09AC,  U09AC ]       };
235      key <AB06> { [      U09B2,  U09B2 ]       };
236      key <AB07> { [      U09B8,  U09B6 ]       };
237      key <AB08> { [      comma,      U09B7 ]       };
238      key <AB09> { [      period,     U0964 ]       };
239      key <AB10> { [      U09DF,  U09AF	]       };
240
241    include "level3(ralt_switch)"
242    include "rupeesign(4)"
243};
244
245xkb_symbols "ben_probhat" {
246 name[Group1]= "Bangla (India, Probhat)";
247   key.type="FOUR_LEVEL";
248
249   key <ESC>  { [ Escape ] };
250
251// numbers
252   key <TLDE> { [ U200D, asciitilde   ] };
253   key <AE01> { [ U09E7, exclam, U09F4 ] };
254   key <AE02> { [ U09E8, at, U09F5 ] };
255   key <AE03> { [ U09E9, numbersign, U09F6 ] };
256   key <AE04> { [ U09EA, U09F3, U09F7, U09F2 ] };
257   key <AE05> { [ U09EB, percent      ] };
258   key <AE06> { [ U09EC, asciicircum  ] };
259   key <AE07> { [ U09ED, U099E, U09FA ] };
260   key <AE08> { [ U09EE, U09CE    ] };
261   key <AE09> { [ U09EF, parenleft    ] };
262   key <AE10> { [ U09E6, parenright, U09F8, U09F9 ] };
263   key <AE11> { [ minus,     underscore   ] };
264   key <AE12> { [ equal,     plus         ] };
265   key <BKSP> { [ BackSpace               ] };
266
267// tab, q to ] 
268   key <TAB>  { [   Tab,  ISO_Left_Tab     ] };
269   key <AD01> { [   U09A6,  U09A7  ] };
270   key <AD02> { [   U09C2,  U098A  ] };
271   key <AD03> { [   U09C0,  U0988  ] };
272   key <AD04> { [   U09B0,  U09DC  ] };
273   key <AD05> { [   U099F,  U09A0  ] };
274   key <AD06> { [   U098F,  U0990  ] };
275   key <AD07> { [   U09C1,  U0989  ] };
276   key <AD08> { [   U09BF,  U0987  ] };
277   key <AD09> { [   U0993,  U0994  ] };
278   key <AD10> { [   U09AA,  U09AB  ] };
279   key <AD11> { [   U09C7,  U09C8  ] };
280   key <AD12> { [   U09CB,  U09CC, U09D7 ] };
281   key <RTRN> { [   Return                 ] };
282
283// caps, a to ' 
284//   key <CAPS> { [   Caps_Lock              ] };
285   key <AC01> { [   U09BE,  U0985, U098C, U09E0 ] };
286   key <AC02> { [   U09B8,  U09B7, U09E1, U09E3 ] };
287   key <AC03> { [   U09A1,  U09A2, U09C4, U09E2 ] };
288   key <AC04> { [   U09A4,  U09A5  ] };
289   key <AC05> { [   U0997,  U0998  ] };
290   key <AC06> { [   U09B9,  U0983, U09BD ] };
291   key <AC07> { [   U099C,  U099D  ] };
292   key <AC08> { [   U0995,  U0996  ] };
293   key <AC09> { [   U09B2,  U0982  ] };
294   key <AC10> { [   semicolon,  colon      ] };
295   key <AC11> { [   apostrophe, quotedbl   ] };
296
297// shift, z to /
298//   key <LFSH> { [   Shift_L                ] };
299   key <AB01> { [   U09DF,  U09AF  ] };
300   key <AB02> { [   U09B6,  U09DD  ] };
301   key <AB03> { [   U099A,  U099B  ] };
302   key <AB04> { [   U0986,  U098B  ] };
303   key <AB05> { [   U09AC,  U09AD  ] };
304   key <AB06> { [   U09A8,  U09A3  ] };
305   key <AB07> { [   U09AE,  U0999  ] };
306   key <AB08> { [   comma,      U09C3  ] };
307   key <AB09> { [   U0964,  U0981, U09BC ] };
308   key <AB10> { [   U09CD,  question   ] };
309   key <BKSL> { [   U200C,  U0965  ] };
310
311//   key <LCTL> { [   Control_L              ] };
312//   key <SPCE> { [   space                  ] };
313
314//   modifier_map Shift  { Shift_L };
315//   modifier_map Lock   { Caps_Lock };
316//   modifier_map Control{ Control_L };
317
318    include "level3(ralt_switch)"
319    include "rupeesign(4)"
320};
321
322// Bangla Baishakhi, Bangla Baishakhi Inscript, Bangla Bornona, Uni Gitanjali Layouts are added by Promathesh Mandal <promathesh812004@gmail.com>
323
324xkb_symbols "ben_baishakhi" {
325 name[Group1]= "Bangla (India, Baishakhi)";
326   key <ESC>   { [ Escape 					] };
327
328// numbers
329   key <TLDE> { [ 0x100200D, 0x100200C	] };
330   key <AE01> { [ 0x10009E7, exclam		] };
331   key <AE02> { [ 0x10009E8, at		] };
332   key <AE03> { [ 0x10009E9, numbersign	] };
333   key <AE04> { [ 0x10009EA, dollar, 0x10009F2	] };
334   key <AE05> { [ 0x10009EB, percent		] };
335   key <AE06> { [ 0x10009EC, asciicircum, 0x10009D7    ] };
336   key <AE07> { [ 0x10009ED, ampersand ] };
337   key <AE08> { [ 0x10009EE,   asterisk,0x10009FA       		] };
338   key <AE09> { [ 0x10009EF, parenleft    	] };
339   key <AE10> { [ 0x10009E6, parenright   	] };
340   key <AE11> { [ minus, underscore   	] };
341   key <AE12> { [ equal,     plus 	] };
342   key <BKSP> { [ BackSpace               		] };
343
344// tab, q to ] 
345   key <TAB>   { [   Tab,  ISO_Left_Tab		] };
346   key <AD01> { [   0x10009A1,  0x10009A2  ] };
347   key <AD02> { [  0x10009C0 ,  0x10009C2  ] };
348   key <AD03> { [   0x10009C7,  0x100098F, 0x1000990 ] };
349   key <AD04> { [   0x10009B0 , 0x10009C3, 0x100098B             		] };
350   key <AD05> { [   0x100099F,  0x10009A0	] };
351   key <AD06> { [   0x10009AF,  0x10009DF	] };
352   key <AD07> { [   0x10009C1,  0x1000989, 0x100098A  ] };
353   key <AD08> { [   0x10009BF,  0x1000987, 0x1000988  ] };
354   key <AD09> { [   0x10009CB,  0x1000993, 0x1000994	] };
355   key <AD10> { [   0x10009AA,  0x10009AB	] };
356   key <AD11> { [   bracketleft,  braceleft] };
357   key <AD12> { [   bracketright,	braceright	] };
358   key <RTRN> { [   Return                 		] };
359
360// caps, a to ' 
361// key <CAPS> { [   Caps_Lock            		] };
362   key <AC01> { [   0x10009BE,  0x1000985, 0x1000986  ] };
363   key <AC02> { [   0x10009B8,  0x10009B6,  0x10009B7  ] };
364   key <AC03> { [   0x10009A6,  0x10009A7  ] };
365   key <AC04> { [   0x10009A4,   0x10009A5, 0x10009CE  ] };
366   key <AC05> { [   0x1000997,  0x1000998	] };
367   key <AC06> { [   0x10009CD,  0x10009B9, 0x1000983  ] };
368   key <AC07> { [   0x100099C,  0x100099D	] };
369   key <AC08> { [   0x1000995,  0x1000996  	] };
370  key <AC09> { [   0x10009B2,  0x1000964, 0x100098C  ] };
371   key <AC10> { [   semicolon,  colon  	] };
372   key <AC11> { [   apostrophe, quotedbl   	] };
373
374// shift, z to /
375// key <LFSH> { [   Shift_L              			] };
376   key <AB01> { [   0x10009C8, 0x10009CC              		] };
377   key <AB02> { [   0x10009DC, 0x10009DD              		] };
378   key <AB03> { [   0x100099A,  0x100099B  ] };
379   key <AB04> { [   0x10009F1,  0x10009F0	] };
380   key <AB05> { [   0x10009AC,  0x10009AD  ] };
381   key <AB06> { [   0x10009A8,  0x10009A3, 0x100099E  ] };
382   key <AB07> { [   0x10009AE,  0x1000999, 0x1000981  ] };
383   key <AB08> { [   comma,      less	] };
384   key <AB09> { [    period,	greater,0x10009BC 		] };
385   key <AB10> { [   slash,  question, 0x1000982   	] };
386   key <BKSL> { [   backslash,        bar	] };
387
388// third level with right-alt
389    include "level3(ralt_switch)"
390
391//   key <LCTL> { [   Control_L              ] };
392//   key <SPCE> { [   space                  ] };
393
394//   modifier_map Shift  { Shift_L };
395//   modifier_map Lock   { Caps_Lock };
396//   modifier_map Control{ Control_L };
397};
398
399xkb_symbols "ben_inscript" {
400    name[Group1]= "Bangla (India, Baishakhi Inscript)";
401
402      // Mainly numbers.
403      key <TLDE> { [      0x100200D, 0x100200C	] 	};
404      key <AE01> { [      0x10009E7  		]	};
405      key <AE02> { [      0x10009E8 		]	};
406      key <AE03> { [      0x10009E9 		]	};
407      key <AE04> { [      0x10009EA 		]	};
408      key <AE05> { [      0x10009EB		]	};
409      key <AE06> { [      0x10009EC 		]	};
410      key <AE07> { [      0x10009ED	        ]	};
411      key <AE08> { [      0x10009EE 		]	};
412      key <AE09> { [      0x10009EF, parenleft	]	};
413      key <AE10> { [      0x10009E6, parenright	]	};
414      key <AE11> { [      minus, 0x1000983 	]	};
415      key <AE12> { [      0x10009C3, 0x100098B 	]	};
416
417// Mainly long vowels
418
419      key <AD01> { [      0x10009CC,  0x1000994	]	};
420      key <AD02> { [      0x10009C8,  0x1000990	]	};
421      key <AD03> { [      0x10009BE,  0x1000986	]	};
422      key <AD04> { [      0x10009C0,  0x1000988	]	};
423      key <AD05> { [      0x10009C2,  0x100098A	]	};
424
425// Mainly voiced consonants
426
427      key <AD06> { [      0x10009AC,  0x10009AD	]	};
428      key <AD07> { [      0x10009B9,  0x1000999 ]	};
429      key <AD08> { [      0x1000997,  0x1000998 ]	};
430      key <AD09> { [      0x10009A6,  0x10009A7 ]	};
431      key <AD10> { [      0x100099C,  0x100099D ]	};
432      key <AD11> { [      0x10009A1,  0x10009A2 ]	};
433      key <AD12> { [      0x10009BC,  0x100099E ]	};
434
435// Mainly short vowels
436      key <AC01> { [      0x10009CB,  0x1000993 ]	};
437      key <AC02> { [      0x10009C7,  0x100098F ]	};
438      key <AC03> { [      0x10009CD,  0x1000985 ]	};
439      key <AC04> { [      0x10009BF,  0x1000987 ]	};
440      key <AC05> { [      0x10009C1,  0x1000989 ]	};
441
442
443// Mainly unvoiced consonants
444
445      key <AC06> { [      0x10009AA,  0x10009AB ]	};
446      key <AC07> { [      0x10009B0,  0x10009DD ]	};
447      key <AC08> { [      0x1000995,  0x1000996 ]	};
448      key <AC09> { [      0x10009A4,  0x10009A5 ]	};
449      key <AC10> { [      0x100099A,  0x100099B ]	};
450      key <AC11> { [      0x100099F, 0x10009A0 	]	};
451      key <BKSL> { [      backslash, bar 	]	};
452
453      key <AB01> { [      0x10009CE  		]       };
454      key <AB02> { [      0x1000982,  0x1000981 ]       };
455      key <AB03> { [      0x10009AE,  0x10009A3 ]       };
456      key <AB04> { [      0x10009A8,  0x10009A8 ]       };
457      key <AB05> { [      0x10009AC,  0x10009AC ]       };
458      key <AB06> { [      0x10009B2,  0x10009B2 ]       };
459      key <AB07> { [      0x10009B8,  0x10009B6 ]       };
460      key <AB08> { [      comma,      0x10009B7 ]       };
461      key <AB09> { [      period,     0x1000964 ]       };
462      key <AB10> { [      0x10009DF,  0x10009AF	]       };
463};
464
465xkb_symbols "ben_gitanjali" {
466 name[Group1]= "Bangla (India, Gitanjali)";
467   key <ESC>   { [ Escape			] };
468
469// numbers
470   key <TLDE> { [ colon, question	] };
471   key <AE01> { [ 0x10009E7, 0x10009CE	] };
472   key <AE02> { [ 0x10009E8, apostrophe	] };
473   key <AE03> { [ 0x10009E9, numbersign	] };
474   key <AE04> { [ 0x10009EA, 0x10009F3	] };
475   key <AE05> { [ 0x10009EB, slash	] };
476   key <AE06> { [ 0x10009EC, period	] };
477   key <AE07> { [ 0x10009ED, ampersand 	] };
478   key <AE08> { [ 0x10009EE, asterisk 	] };
479   key <AE09> { [ 0x10009EF, parenleft  ] };
480   key <AE10> { [ 0x10009E6, parenright	] };
481   key <AE11> { [ minus, 0x1000983   	] };
482   key <AE12> { [ 0x10009C3, 0x100098B 	] };
483   key <BKSP> { [ BackSpace		] };
484
485// tab, q to ] 
486   key <TAB>   { [   Tab,  ISO_Left_Tab	] };
487   key <AD01> { [   0x10009D7,  0x1000994 ] };
488   key <AD02> { [   0x10009C8,  0x1000990 ] };
489   key <AD03> { [   0x10009BE,  0x1000985 ] };
490   key <AD04> { [   0x10009C0,  0x1000988 ] };
491   key <AD05> { [   0x10009C2,  0x100098A ] };
492   key <AD06> { [   0x10009AC,  0x10009AD ] };
493   key <AD07> { [   0x10009B9,  0x1000999 ] };
494   key <AD08> { [   0x1000997,  0x1000998 ] };
495   key <AD09> { [   0x10009A6,  0x10009A7 ] };
496   key <AD10> { [   0x100099C,  0x100099D ] };
497   key <AD11> { [   0x10009A1,  0x10009A2 ] };
498   key <AD12> { [   0x100200C,  0x100099E ] };
499   key <RTRN> { [   Return		  ] };
500
501// caps, a to ' 
502// key <CAPS> { [   Caps_Lock            		] };
503   key <AC01> { [   0x100200D,  0x1000993 ] };
504   key <AC02> { [   0x10009C7,  0x100098F ] };
505   key <AC03> { [   0x10009CD		  ] };
506   key <AC04> { [   0x10009BF,  0x1000987 ] };
507   key <AC05> { [   0x10009C1,  0x1000989 ] };
508   key <AC06> { [   0x10009AA,  0x10009AB ] };
509   key <AC07> { [   0x10009B0,  0x10009F0 ] };
510   key <AC08> { [   0x1000995,  0x1000996 ] };
511   key <AC09> { [   0x10009A4,  0x10009A5 ] };
512   key <AC10> { [   0x100099A,  0x100099B ] };
513   key <AC11> { [   0x100099F,  0x10009A0 ] };
514
515// shift, z to /
516// key <LFSH> { [   Shift_L              			] };
517   key <AB01> { [   0x10009C7, 0x100098F ] };
518   key <AB02> { [   0x1000982, 0x1000981 ] };
519   key <AB03> { [   0x10009AE, 0x10009A3 ] };
520   key <AB04> { [   0x10009A8, 0x10009DC ] };
521   key <AB05> { [   0x10009F1, 0x10009DD ] };
522   key <AB06> { [   0x10009B2		 ] };
523   key <AB07> { [   0x10009B8, 0x10009B6 ] };
524   key <AB08> { [   comma,     0x10009B7 ] };
525   key <AB09> { [   0x1000964, 0x10009FA ] };
526   key <AB10> { [   0x10009AF, 0x10009DF ] };
527   key <BKSL> { [   backslash, bar	 ] };
528
529// third level with right-win
530//    include "level3(lwin_switch)"
531
532//   key <LCTL> { [   Control_L              ] };
533//   key <SPCE> { [   space                  ] };
534
535//   modifier_map Shift  { Shift_L };
536//   modifier_map Lock   { Caps_Lock };
537//   modifier_map Control{ Control_L };
538};
539
540
541xkb_symbols "ben_bornona" {
542 name[Group1]= "Bangla (India, Bornona)";
543   key <ESC>  { [ Escape 					] };
544
545// numbers
546   key <TLDE> { [ 0x100200D, 0x100200C   	] };
547   key <AE01> { [ 0x10009E7, exclam         	] };
548   key <AE02> { [ 0x10009E8, 0x1000981 	] };
549   key <AE03> { [ 0x10009E9, numbersign   	] };
550   key <AE04> { [ 0x10009EA, 0x10009F3    	] };
551   key <AE05> { [ 0x10009EB, percent      	] };
552   key <AE06> { [ 0x10009EC, 0x1000983    	] };
553   key <AE07> { [ 0x10009ED, 0x10009CE	] };
554   key <AE08> { [ 0x10009EE, asterisk		] };
555   key <AE09> { [ 0x10009EF, parenleft    	] };
556   key <AE10> { [ 0x10009E6, parenright	] };
557   key <AE11> { [ minus,	   underscore	] };
558   key <AE12> { [ equal,          plus			] };
559   key <BKSP> { [ BackSpace               		] };
560
561// tab, q to ] 
562   key <TAB>   { [   Tab,  	ISO_Left_Tab	] };
563   key <AD01> { [   0x1000982,  0x1000999, 0x10009D7	] };
564   key <AD02> { [   0x10009A2,  0x10009A0, 0x100098A ] };
565   key <AD03> { [   0x10009C7,  0x10009C8, 0x1000988	] };
566   key <AD04> { [   0x10009B0,  0x10009C3, 0x100098B	] };
567   key <AD05> { [   0x10009A4,  0x100099F	] };
568   key <AD06> { [   0x10009A7,  0x10009A5, 0x100098F  ] };
569   key <AD07> { [   0x10009C1,  0x10009C2, 0x1000989	] };
570   key <AD08> { [   0x10009BF,  0x10009C0, 0x1000987	] };
571   key <AD09> { [   0x10009CB,  0x10009CC, 0x1000993	] };
572   key <AD10> { [   0x10009AA, 0x1000990, 0x1000994		] };
573   key <AD11> { [   0x100005B,  0x100007B, 0x10009DC  ] };
574   key <AD12> { [   0x100005D,  0x100007D  ] };
575   key <RTRN> { [   Return					] };
576
577// caps, a to ' 
578// key <CAPS> { [   Caps_Lock            		] };
579   key <AC01> { [   0x10009BE,  0x1000985, 0x10009F4  ] };
580   key <AC02> { [   0x10009B8,  0x10009B6, 0x10009F5  ] };
581   key <AC03> { [   0x10009A6,  0x10009A1, 0x10009F8  ] };
582   key <AC04> { [   0x10009AB				] };
583   key <AC05> { [   0x1000997,  0x1000998	] };
584   key <AC06> { [   0x10009CD, 0x10009B9	] };
585   key <AC07> { [   0x100099C,  0x100099D	] };
586   key <AC08> { [   0x1000995,  0x1000996	] };
587   key <AC09> { [   0x10009B2,  0x1000964  ] };
588   key <AC10> { [   semicolon,  0x100003A	] };
589   key <AC11> { [   apostrophe, quotedbl   	] };
590
591// shift, z to /
592// key <LFSH> { [   Shift_L              			] };
593   key <AB01> { [   0x10009AF, 0x10009DC	] };
594   key <AB02> { [   0x10009B7, 0x10009DD, 0x10009FA	] };
595   key <AB03> { [   0x100099A,  0x100099B  ] };
596   key <AB04> { [   0x10009AD				] };
597   key <AB05> { [   0x10009AC,  0x10009DF	] };
598   key <AB06> { [   0x10009A8,  0x10009A3	] };
599   key <AB07> { [   0x10009AE,  0x100099E	] };
600   key <AB08> { [   comma,      0x100003C	] };
601   key <AB09> { [   0x100002E,  0x100003E  ] };
602   key <AB10> { [   0x100002F,  question   	] };
603   key <BKSL> { [   0x10009F1,  0x10009F0	] };
604
605//   key <LCTL> { [   Control_L              ] };
606//   key <SPCE> { [   space                  ] };
607
608//   modifier_map Shift  { Shift_L };
609//   modifier_map Lock   { Caps_Lock };
610//   modifier_map Control{ Control_L };
611// third level with right-alt
612    include "level3(ralt_switch)"
613};
614
615partial alphanumeric_keys
616xkb_symbols "guj" {
617      name[Group1]= "Gujarati";
618
619      // Mainly numbers.
620      key <AE01> { [      U0AE7, U0A8D 	]	};
621      key <AE02> { [      U0AE8, U0AC5 	]	};
622      key <AE03> { [      U0AE9 	 	]	};
623      key <AE04> { [      U0AEA  	 	]	};
624      key <AE05> { [      U0AEB  	 	]	};
625      key <AE06> { [      U0AEC  	 	]	};
626      key <AE07> { [      U0AED 		]	};
627      key <AE08> { [      U0AEE  	 	]	};
628      key <AE09> { [      U0AEF, parenleft 	]	};
629      key <AE10> { [      U0AE6, parenright ]	};
630      key <AE11> { [      minus,     U0A83  ]	};
631      key <AE12> { [      U0A8B, U0AC3 	]	};
632
633// Mainly long vowels
634
635      key <AD01> { [      U0ACC, U0A94  ]	};
636      key <AD02> { [      U0AC8, U0A90  ]	};
637      key <AD03> { [      U0ABE, U0A86  ]	};
638      key <AD04> { [      U0AC0, U0A88  ]	};
639      key <AD05> { [      U0AC2, U0A8A  ]	};
640
641// Mainly voiced consonants
642
643      key <AD06> { [      U0AAC, U0AAD 	]	};
644      key <AD07> { [      U0AB9, U0A99 	]	};
645      key <AD08> { [      U0A97, U0A98 	]	};
646      key <AD09> { [      U0AA6, U0AA7 	]	};
647      key <AD10> { [      U0A9C, U0A9D 	]	};
648      key <AD11> { [      U0AA1, U0AA2 	]	};
649      key <AD12> { [      U0ABC, U0A9E 	]	};
650
651// Mainly short vowels
652      key <AC01> { [      U0ACB, U0A93	]	};
653      key <AC02> { [      U0AC7, U0A8F	]	};
654      key <AC03> { [      U0ACD, U0A85  ]	};
655      key <AC04> { [      U0ABF, U0A87  ]	};
656      key <AC05> { [      U0AC1, U0A89  ]	};
657
658// Mainly unvoiced consonants
659
660      key <AC06> { [      U0AAA, U0AAB 	]	};
661      key <AC07> { [      U0AB0, U0AB0 	]	};
662      key <AC08> { [      U0A95, U0A96 	]	};
663      key <AC09> { [      U0AA4, U0AA5 	]	};
664      key <AC10> { [      U0A9A, U0A9B 	]	};
665      key <AC11> { [      U0A9F, U0AA0 	]	};
666      key <BKSL> { [      U0AC9, U0A91 	]	};
667
668      key <AB01> { [      z        , Z		]       };
669      key <AB02> { [      U0A82, U0A81	]       };
670      key <AB03> { [      U0AAE, U0AA3  ]       };
671      key <AB04> { [      U0AA8, U0AA8   ]       };
672      key <AB05> { [      U0AB5, U0AB5   ]       };
673      key <AB06> { [      U0AB2, U0AB3  ]       };
674      key <AB07> { [      U0AB8, U0AB6  ]       };
675      key <AB08> { [      comma,     U0AB7  ]       };
676      key <AB09> { [      period,    U0964  ]       };
677      key <AB10> { [      U0AAF, question   ]       };
678      include "rupeesign(4)"
679      include "level3(ralt_switch)"
680};
681
682partial alphanumeric_keys
683xkb_symbols "kan" {
684
685    // Inscript layout for Kannada  
686    // Author : G Karunakar <karunakar@freedomink.org>
687    // Date   : Wed Nov 13 17:22:58 IST 2002
688    // Kannada digits mapped in basic only
689
690    name[Group1]= "Kannada";
691
692    key <TLDE> { [  U0cca, U0c92	] };
693    key <AE01> { [  U0ce7			] };
694    key <AE02> { [  U0ce8			] };
695    key <AE03> { [  U0ce9			] };
696    key <AE04> { [  U0cea			] };
697    key <AE05> { [  U0ceb			] };
698    key <AE06> { [  U0cec			] };
699    key <AE07> { [  U0ced			] };
700    key <AE08> { [  U0cee			] };
701    key <AE09> { [  U0cef			] };
702    key <AE10> { [  U0ce6			] };
703    key <AE11> { [  U0c83			] };
704    key <AE12> { [  U0cc3, U0c8b	] };
705
706    key <AD01> { [  U0ccc, U0c94	] };
707    key <AD02> { [  U0cc8, U0c90	] };
708    key <AD03> { [  U0cbe, U0c86	] };
709    key <AD04> { [  U0cc0, U0c88	] };
710    key <AD05> { [  U0cc2, U0c8a	] };
711    key <AD06> { [  U0cac, U0cad	] };
712    key <AD07> { [  U0cb9, U0c99	] };
713    key <AD08> { [  U0c97, U0c98	] };
714    key <AD09> { [  U0ca6, U0ca7	] };
715    key <AD10> { [  U0c9c, U0c9d	] };
716    key <AD11> { [  U0ca1, U0ca2	] };
717    key <AD12> { [  U0cbc, U0c9e	] };
718
719    key <AC01> { [  U0ccb, U0c93	] };
720    key <AC02> { [  U0cc7, U0c8f	] };
721    key <AC03> { [  U0ccd, U0c85	] };
722    key <AC04> { [  U0cbf, U0c87	] };
723    key <AC05> { [  U0cc1, U0c89	] };
724    key <AC06> { [  U0caa, U0cab	] };
725    key <AC07> { [  U0cb0, U0cb1	] };
726    key <AC08> { [  U0c95, U0c96	] };
727    key <AC09> { [  U0ca4, U0ca5	] };
728    key <AC10> { [  U0c9a, U0c9b	] };
729    key <AC11> { [  U0c9f, U0ca0	] };
730
731    key <AB01> { [  U0cc6, U0c8e	] };
732    key <AB02> { [  U0c82			] };
733    key <AB03> { [  U0cae, U0ca3	] };
734    key <AB04> { [  U0ca8			] };
735    key <AB05> { [  U0cb5, U0cb4	] };
736    key <AB06> { [  U0cb2, U0cb3	] };
737    key <AB07> { [  U0cb8, U0cb6	] };
738    key <AB08> { [  comma     , U0cb7	] };
739    key <AB09> { [  period    				] };
740    key <AB10> { [  U0caf, U0040	] };
741
742    key <RALT> {
743	symbols[Group1] = [ Mode_switch, Multi_key ],
744	virtualMods = AltGr
745    };
746    include "rupeesign(4)"
747    include "level3(ralt_switch)"
748};
749
750// Description : A keymap for Malayalam
751// Encoding    : Unicode (http://www.unicode.org)
752// Author      : Baiju M <baiju@freeshell.org>
753// Date        : Sat Aug  17 21:10:48 IST 2002
754// Mapping:
755
756partial alphanumeric_keys
757xkb_symbols "mal" {
758
759    name[Group1] = "Malayalam";
760
761    //From grave to backslash (\)
762
763    key <TLDE> { [ U0d4a , U0d12           ] };
764
765// svu: 
766// These lines were in former "mal" variant - 
767// but the digits are replaced with the ones from 'mal_plusnum' -
768// for the integrity of all Indian layouts
769//
770//    key <AE01> { [1           ,     exclam           ] };
771//    key <AE02> { [2           ,         at           ] };
772//    key <AE03> { [3           , numbersign           ] };
773//    key <AE04> { [4           ,     dollar           ] };
774//    key <AE05> { [5           ,    percent           ] };
775//    key <AE06> { [6           ,asciicircum           ] };
776//    key <AE07> { [7           ,  ampersand           ] };
777//    key <AE08> { [8           , asterisk           ] };
778//    key <AE09> { [9           ,  parenleft           ] };
779//    key <AE10> { [0           , parenright           ] };
780
781      key <AE01> { [ U0d67 ,      exclam ] };
782      key <AE02> { [ U0d68 ,          at ] };
783      key <AE03> { [ U0d69 ,  numbersign ] };
784      key <AE04> { [ U0d6a ,      dollar ] };
785      key <AE05> { [ U0d6b ,     percent ] };
786      key <AE06> { [ U0d6c , asciicircum ] };
787      key <AE07> { [ U0d6d ,   ampersand ] };
788      key <AE08> { [ U0d6e ,  asterisk ] };
789      key <AE09> { [ U0d6f ,   parenleft ] };
790      key <AE10> { [ U0d66 ,  parenright ] };
791
792    key <AE11> { [ minus      , U0d03           ] };
793    key <AE12> { [ U0d43 , U0d0b           ] };
794    key <BKSL>  { [U0200c, U05C ]};//bksl: ZWNJ 
795
796
797    // From 'q' to right bracket (])
798
799    key <AD01> { [ U0d4c , U0d14 ] };
800    key <AD02> { [ U0d48 , U0d10 ] };
801    key <AD03> { [ U0d3e , U0d06 ] };
802    key <AD04> { [ U0d40 , U0d08 ] };
803    key <AD05> { [ U0d42 , U0d0a ] };
804    key <AD06> { [ U0d2c , U0d2d ] };
805    key <AD07> { [ U0d39 , U0d19 ] };
806    key <AD08> { [ U0d17 , U0d18 ] };
807    key <AD09> { [ U0d26 , U0d27 ] };
808    key <AD10> { [ U0d1c , U0d1d ] };
809    key <AD11> { [ U0d21 , U0d22 ] };
810    key <AD12> { [ U0200d , U0d1e ] };
811
812    // From 'a' to apostrophe (')
813
814    key <AC01> { [ U0d4b , U0d13 ] };
815    key <AC02> { [ U0d47 , U0d0f ] };
816    key <AC03> { [ U0d4d , U0d05 ] };
817    key <AC04> { [ U0d3f , U0d07 ] };
818    key <AC05> { [ U0d41 , U0d09 ] };
819    key <AC06> { [ U0d2a , U0d2b ] };
820    key <AC07> { [ U0d30 , U0d31 ] };
821    key <AC08> { [ U0d15 , U0d16 ] };
822    key <AC09> { [ U0d24 , U0d25 ] };
823    key <AC10> { [ U0d1a , U0d1b ] };
824    key <AC11> { [ U0d1f , U0d20 ] };
825
826    // From 'z' to slash (/)
827
828    key <AB01> { [ U0d46 , U0d0e ] };
829    key <AB02> { [ U0d02 , U200b ] };//X:ZWSP
830    key <AB03> { [ U0d2e , U0d23 ] };
831    key <AB04> { [ U0d28 ] };
832    key <AB05> { [ U0d35 , U0d34 ] };
833    key <AB06> { [ U0d32 , U0d33 ] };
834    key <AB07> { [ U0d38 , U0d36 ] };
835    key <AB08> { [ comma      , U0d37 ] };
836    key <AB09> { [ period     , U0200d ] };
837    key <AB10> { [ U0d2f , question   ] };
838
839    include "rupeesign(4)"
840    include "level3(ralt_switch)"
841};
842
843//Name		:	Lalitha
844//Description	:	A transliteration keyboard layout for Malayalam
845//Original Author :	Noah Levitt<nlevitt at columbia.edu>
846//Current Main  : 	Jinesh K.J<jinesh.k@gmail.com>, Swathantra Malayalam Computing (SMC)<smc-discuss@googlegroups.com>
847
848partial alphanumeric_keys
849xkb_symbols "mal_lalitha" {
850     name[Group1] = "Malayalam (Lalitha)";
851     key.type="FOUR_LEVEL";
852
853    // Roman digits
854    key <TLDE>  { [   U0D4D,	U0D02,		grave, 	asciitilde ] }; // grave: virama(chandrakala),anusvara
855    key <AE01>  { [   1,	exclam,	U0D67,		exclam	   ] };
856    key <AE02>  { [   2,	at,		U0D68,		at	   ] };
857    key <AE03>  { [   3,    	numbersign, 	U0D69,		numbersign ] };
858    key <AE04>  { [   4,	dollar,		U0D6A,		U20B9      ] }; // Rupee
859    key <AE05>  { [   5,	percent,	U0D6B,		percent    ] };
860    key <AE06>  { [   6,	asciicircum,	U0D6C,		asciicircum ] };
861    key <AE07>  { [   7,	ampersand,	U0D6D,		ampersand  ] };
862    key <AE08>  { [   8,	asterisk,	U0D6E,		asterisk   ] };
863    key <AE09>  { [   9,	parenleft,	U0D6F,		parenleft  ] };
864    key <AE10>  { [   0,	parenright,	U0D66,		parenright ] };
865    key <AE11>	{ [   minus,	underscore	     ] };
866    key <AE12>	{ [   equal,	plus		     ] };
867    key <BKSL>  { [   U005C,	U007C,		U200C	] };//backslash:pipe,backslash,ZWNJ 
868
869    //Q Row	
870    key <AD01>   { [   U0D48,	U0D4C,	U0D10,	U0D14  ] }; // Q: ai and au matras 
871    key <AD02>   { [   U0D35	] };  // W: wa, OM
872    key <AD03>   { [   U0D46,   U0D47,	U0D0E,	U0D0F   ] };  // E: e,ee matras
873    key <AD04>   { [   U0D30,	U0D31,	U0D43,	U0D0B  	] };  // R: ra,rra, vocalic Ri
874    key <AD05>   { [   U0D24,   U0D25,	U0D1F,	U0D20   ] };  // T: tha, ttha,ta,tta
875    key <AD06>   { [   U0D2f    ] };  // Y: ya
876    key <AD07>   { [   U0D41,   U0D42,	U0D09,	U0D0A   ] };  // U: u, uu matras
877    key <AD08>   { [   U0D3F,   U0D40,	U0D07,	U0D08   ] };  // I: i, ii matras
878    key <AD09>   { [   U0D4A,   U0D4B,	U0D12,	U0D13   ] };  // O: o, oo matras
879    key <AD10>   { [   U0D2A   ] };  // P: pa
880    key <AD11>   { [   bracketleft,   braceleft   ] };//braceleft:   
881    key <AD12>	 { [   bracketright, braceright   ] };//braceright:
882
883    //A Row
884    key <AC01>   { [   U0D3E,	 U0D05,	U0D06,	U0D05  ] };   // A: a,aa
885    key <AC02>   { [   U0D38,    U0D37   ] };  // S: sa, ssa
886    key <AC03>   { [   U0D26,    U0D27,	U0D21,	U0D22   ] };  // D: soft da,soft dda,hard da,hard dda,
887    key <AC04>   { [   U0D2B     ] };  // F: pha
888    key <AC05>   { [   U0D17,    U0D18   ] };  // G: ga, gha
889    key <AC06>   { [   U0D39,    U0D03   ] };  // H: ha, visarg 
890    key <AC07>   { [   U0D1C,    U0D1D   ] };  // J: ja, jha
891    key <AC08>   { [   U0D15,    U0D16   ] };  // K: ka, kha
892    key <AC09>   { [   U0D32,	 U0D33   ] };  // L: la, vocalic L or lru matra`
893    key <AC10>   { [   semicolon, colon  ] };
894    key <AC11>   { [apostrophe, quotedbl ] };
895
896    //Z Row
897    key <AB01>   { [   U0D34,	 U0D36 	 ] };  // Z: sha,zha
898    key <AB02>   { [   U0D4D,	 U200B  ] };  // X: chandrakala,ZWSP
899    key <AB03>   { [   U0D1A,    U0D1B   ] };  // C: ca, cha
900    key <AB04>   { [   U0D35,	 U200D  ] };  // V: va,ZWJ
901    key <AB05>   { [   U0D2C,    U0D2D   ] };  // B: ba, bha
902    key <AB06>   { [   U0D28,    U0D23,	U0D19,	U0D1E   ] };  // N: na, hard na,nga,nha
903    key <AB07>   { [   U0D2E,	 U0D02  ] };  // M: ma
904    key <AB08>   { [   comma,    U003C ] };// comma: comma
905    key <AB09>   { [   period, 	 U003E ] };  // period: period
906    key <AB10>	 { [   slash,   question ] };
907
908//    modifier_map Shift  { Shift_L };
909//    modifier_map Lock   { Caps_Lock };
910//    modifier_map Control{ Control_L };
911//    modifier_map Mod3   { Mode_switch };
912    include "level3(ralt_switch)"
913};
914
915
916partial alphanumeric_keys
917xkb_symbols "olck" {
918
919    // Layout for the Ol Chiki script.
920    // http://www.unicode.org/L2/L2005/05243r-n2984-ol-chiki.pdf (figure 9)
921
922    name[Group1]= "Ol Chiki";
923
924    key <TLDE> { [  grave, U1C7B		] };
925
926    key <AE01> { [  U1C51, exclam		] };
927    key <AE02> { [  U1C52, at			] };
928    key <AE03> { [  U1C53, numbersign		] };
929    key <AE04> { [  U1C54, dollar, U20B9	] };
930    key <AE05> { [  U1C55, percent		] };
931    key <AE06> { [  U1C56, asciicircum		] };
932    key <AE07> { [  U1C57, ampersand		] };
933    key <AE08> { [  U1C58, asterisk		] };
934    key <AE09> { [  U1C59, parenleft		] };
935    key <AE10> { [  U1C50, parenright		] };
936    key <AE11> { [  minus, U1C7C		] };
937    key <AE12> { [  equal, plus			] };
938
939    key <AD01> { [  U1C67			] };
940    key <AD02> { [  U1C63			] };
941    key <AD03> { [  U1C6E			] };
942    key <AD04> { [  U1C68			] };
943    key <AD05> { [  U1C74, U1C5B		] };
944    key <AD06> { [  U1C6D  			] };
945    key <AD07> { [  U1C69			] };
946    key <AD08> { [  U1C64			] };
947    key <AD09> { [  U1C5A, U1C73		] };
948    key <AD10> { [  U1C6F  			] };
949    key <AD11> { [  bracketleft, braceleft	] };
950    key <AD12> { [  bracketright, braceright 	] };
951    key <BKSL> { [  U1C7F, U1C7E		] };
952
953    key <AC01> { [  U1C5F  			] };
954    key <AC02> { [  U1C65			] };
955    key <AC03> { [  U1C70, U1C6B		] };
956    key <AC04> { [  U1C5D  			] };
957    key <AC05> { [  U1C5C			] };
958    key <AC06> { [  U1C66, U1C77		] };
959    key <AC07> { [  U1C61  			] };
960    key <AC08> { [  U1C60			] };
961    key <AC09> { [  U1C5E			] };
962    key <AC10> { [  semicolon, U1C7A		] };
963    key <AC11> { [  apostrophe, quotedbl	] };
964
965    key <AB01> { [  U1C72			] };
966    key <AB02> { [  U1C7D			] };
967    key <AB03> { [  U1C6A			] };
968    key <AB04> { [  U1C76			] };
969    key <AB05> { [  U1C75			] };
970    key <AB06> { [  U1C71, U1C78		] };
971    key <AB07> { [  U1C62, U1C6C		] };
972    key <AB08> { [  comma, less			] };
973    key <AB09> { [  U1C79, greater		] };
974    key <AB10> { [  slash, question		] };
975
976    key <RALT> {
977	symbols[Group1] = [ Mode_switch, Multi_key ],
978	virtualMods = AltGr
979    };
980
981    include "level3(ralt_switch)"
982};
983
984
985partial alphanumeric_keys
986xkb_symbols "ori" {
987    // Inscript layout for Oriya  
988    // Author: G Karunakar <karunakar@freedomink.org>
989    // Date: Wed Nov 13 18:16:19 IST 2002
990
991    name[Group1]= "Oriya";
992
993    key <AE01> { [  U0b67			] };
994    key <AE02> { [  U0b68			] };
995    key <AE03> { [  U0b69			] };
996    key <AE04> { [  U0b6a			] };
997    key <AE05> { [  U0b6b			] };
998    key <AE06> { [  U0b6c			] };
999    key <AE07> { [  U0b6d			] };
1000    key <AE08> { [  U0b6e			] };
1001    key <AE09> { [  U0b6f			] };
1002    key <AE10> { [  U0b66			] };
1003    key <AE11> { [  U0b03			] };
1004    key <AE12> { [  U0b43, U0b0b	] };
1005
1006    key <AD01> { [  U0b4c, U0b14	] };
1007    key <AD02> { [  U0b48, U0b10	] };
1008    key <AD03> { [  U0b3e, U0b06	] };
1009    key <AD04> { [  U0b40, U0b08	] };
1010    key <AD05> { [  U0b42, U0b0a	] };
1011    key <AD06> { [  U0b2c, U0b2d	] };
1012    key <AD07> { [  U0b39, U0b19	] };
1013    key <AD08> { [  U0b17, U0b18	] };
1014    key <AD09> { [  U0b26, U0b27	] };
1015    key <AD10> { [  U0b1c, U0b1d	] };
1016    key <AD11> { [  U0b21, U0b22	] };
1017    key <AD12> { [  U0b3c, U0b1e	] };
1018
1019    key <AC01> { [  U0b4b, U0b13	] };
1020    key <AC02> { [  U0b47, U0b0f	] };
1021    key <AC03> { [  U0b4d, U0b05	] };
1022    key <AC04> { [  U0b3f, U0b07	] };
1023    key <AC05> { [  U0b41, U0b09	] };
1024    key <AC06> { [  U0b2a, U0b2b	] };
1025    key <AC07> { [  U0b30			] };
1026    key <AC08> { [  U0b15, U0b16	] };
1027    key <AC09> { [  U0b24, U0b25	] };
1028    key <AC10> { [  U0b1a, U0b1b	] };
1029    key <AC11> { [  U0b1f, U0b20	] };
1030
1031    key <AB02> { [  U0b02, U0b01	] };
1032    key <AB03> { [  U0b2e, U0b23	] };
1033    key <AB04> { [  U0b28			] };
1034    key <AB05> { [  U0b35			] };
1035    key <AB06> { [  U0b32, U0b33	] };
1036    key <AB07> { [  U0b38, U0b36	] };
1037    key <AB08> { [  comma     , U0b37	] };
1038    key <AB09> { [  period    				] };
1039    key <AB10> { [  U0b2f, U0040	] };
1040
1041    key <RALT> {
1042	symbols[Group1] = [ Mode_switch, Multi_key ],
1043	virtualMods = AltGr
1044    };
1045    include "rupeesign(4)"
1046    include "level3(ralt_switch)"
1047};
1048
1049
1050partial alphanumeric_keys
1051xkb_symbols "tam" {
1052      name[Group1]= "Tamil (Inscript)";
1053
1054      key <TLDE> { [      U0BCA, U0B92	]	};
1055
1056      // Mainly numbers.
1057      key <AE01> { [      U0BE7 		]	};
1058      key <AE02> { [      U0BE8 		]	};
1059      key <AE03> { [      U0BE9 		]	};
1060      key <AE04> { [      U0BEA 		]	};
1061      key <AE05> { [      U0BEB 		]	};
1062      key <AE06> { [      U0BEC 		]	};
1063      key <AE07> { [      U0BED        	]	};
1064      key <AE08> { [      U0BEE 		]	};
1065      key <AE09> { [      U0BEF, parenleft	]	};
1066      key <AE10> { [      U0BF0, parenright	]	};
1067      key <AE11> { [      U0BF1, U0B83  ]	};
1068      key <AE12> { [      U0BF2, plus	] 	};
1069
1070// Mainly long vowels
1071
1072      key <AD01> { [      U0BCC,  U0B94 ]	};
1073      key <AD02> { [      U0BC8,  U0B90 ]	};
1074      key <AD03> { [      U0BBE,  U0B86 ]	};
1075      key <AD04> { [      U0BC0,  U0B88 ]	};
1076      key <AD05> { [      U0BC2,  U0B8A ]	};
1077
1078// Mainly voiced consonants
1079
1080      key <AD07> { [      U0BB9, U0B99	]	};
1081      key <AD10> { [      U0B9c 	]	};
1082      key <AD12> { [      U0B9E				]	};
1083
1084// Mainly short vowels
1085      key <AC01> { [      U0BCB,  U0B93 ]	};
1086      key <AC02> { [      U0BC7,  U0B8F ]	};
1087      key <AC03> { [      U0BCD,  U0B85 ]	};
1088      key <AC04> { [      U0BBF,  U0B87 ]	};
1089      key <AC05> { [      U0BC1,  U0B89 ]	};
1090
1091// Mainly unvoiced consonants
1092
1093      key <AC06> { [      U0BAA 		]	};
1094      key <AC07> { [      U0BB0,  U0BB1 ]	};
1095      key <AC08> { [      U0B95 		]	};
1096      key <AC09> { [      U0BA4 		]	};
1097      key <AC10> { [      U0B9A 		]	};
1098      key <AC11> { [      U0B9F 		]	};
1099      key <BKSL> { [      U005C, U007C	]	};//backslash-bar  - Changed to Unicode
1100
1101      key <AB01> { [      U0BC6,  U0B8E	]	};
1102      key <AB02> { [      U0B82   		]       };
1103      key <AB03> { [      U0BAE,  U0BA3 ]       };
1104      key <AB04> { [      U0BA8,  U0BA9 ]       };
1105      key <AB05> { [      U0BB5,  U0BB4 ]       };
1106      key <AB06> { [      U0BB2,  U0BB3 ]       };
1107      key <AB07> { [      U0BB8,  U0BB6	]       };
1108      key <AB08> { [      comma,      U0BB7 ]       };
1109      key <AB09> { [      period,     U0964 ]       };
1110      key <AB10> { [      U0BAF,  question  ]       };
1111
1112      include "level3(ralt_switch)"
1113      include "rupeesign(4)"
1114};
1115
1116partial alphanumeric_keys
1117xkb_symbols "tam_tamilnet" {
1118
1119// Description: A keymap based on the TamilNet'99 typewriter keyboard 
1120// Encoding: Unicode (http://www.unicode.org)
1121// Author: Thuraiappah Vaseeharan <vasee@ieee.org>
1122// Modifed by: Malathi S <malathiramya@gmail.com>
1123// Secondary contact: Sri Ramadoss M <amachu@au-kbc.org>
1124// Date  : Fri Sep 4 11:32:00 CST 2009
1125// Mapping:
1126
1127    name[Group1]= "Tamil (TamilNet '99)";
1128
1129    // granthas
1130    key <TLDE> {  [ apostrophe, asciitilde ] };
1131    key <AE01> {  [ U0031, exclam ] } ;
1132    key <AE02> {  [ U0032, at ] } ;
1133    key <AE03> {  [ U0033, numbersign ] } ;
1134    key <AE04> {  [ U0034, U0BF9 ] } ;
1135    key <AE05> {  [ U0035, percent ] } ;
1136    key <AE06> {  [ U0036, asciicircum ] } ;
1137    key <AE07> {  [ U0037, ampersand ] } ;
1138    key <AE08> {  [ U0038, asterisk ] } ;
1139    key <AE09> {  [ U0039, parenleft ] } ;
1140    key <AE10> {  [ U0030, parenright ] } ;
1141    key <AE11> {  [ minus, underscore ] };
1142    key <AE12> {  [ equal, plus	] };
1143
1144
1145    // Qrow
1146    key <AD01> {  [ U0B9E, U0BB6 ] };
1147    key <AD02> {  [ U0BB1, U0BB7 ] };
1148    key <AD03> {  [ U0BA8, U0BB8 ] };
1149    key <AD04> {  [ U0B9A, U0BB9 ] };
1150    key <AD05> {  [ U0BB5, U0B9C ] };
1151    key <AD06> {  [ U0BB2 ] };
1152    key <AD07> {  [ U0BB0 ] };
1153    key <AD08> {  [ U0BC8, U0B90 ] };
1154    key <AD09> {  [ U0BCA, U0BCB ] };
1155    key <AD10> {  [ U0BBF, U0BC0 ] };
1156    key <AD11> {  [ U0BC1, U0BC2 ] };
1157
1158    // Arow
1159    key <AC01> { [ U0BAF ] };
1160    key <AC02> { [ U0BB3 ] };
1161    key <AC03> { [ U0BA9 ] };
1162    key <AC04> { [ U0B95 ] };
1163    key <AC05> { [ U0BAA ] };
1164    key <AC06> { [ U0BBE, U0BB4 ] };
1165    key <AC07> { [ U0BA4 ] };
1166    key <AC08> { [ U0BAE ] };
1167    key <AC09> { [ U0B9F ] };
1168    key <AC10> { [ U0BCD, U0B83 ] };
1169    key <AC11> { [ U0B99 ] };
1170
1171    // Zrow
1172    key <AB01> { [ U0BA3 ]  };
1173    key <AB02> { [ U0B92, U0B93 ]  };
1174    key <AB03> { [ U0B89, U0B8A ]  };
1175    key <AB04> { [ U0B8E, U0B8F ]  };
1176    key <AB05> { [ U0BC6, U0BC7 ]  };
1177    key <AB06> { [ U0B94, U0BCC ]  };
1178    key <AB07> { [ U0B85, U0B86 ]  };
1179    key <AB08> { [ U0B87, U0B88 ]  };
1180};
1181
1182partial alphanumeric_keys
1183xkb_symbols "tam_tamilnet_with_tam_nums" {
1184
1185// Description: A keymap based on the TamilNet'99 typewriter keyboard 
1186// Encoding: Unicode (http://www.unicode.org)
1187// Author: Malathi S <malathiramya@gmail.com>
1188// Secondary contact: Sri Ramadoss M <amachu@au-kbc.org>
1189// Date  : Fri Sep 4 11:33:00 CST 2009
1190// Mapping:
1191
1192      name[Group1]= "Tamil (TamilNet '99 with Tamil numerals)";
1193
1194      // Mainly numbers.
1195      key <TLDE> { [ apostrophe, asciitilde ] };
1196      key <AE01> { [ U0BE7, exclam ] };
1197      key <AE02> { [ U0BE8, at ] };
1198      key <AE03> { [ U0BE9, numbersign ] };
1199      key <AE04> { [ U0BEA, U0BF9 ] };
1200      key <AE05> { [ U0BEB, percent ] };
1201      key <AE06> { [ U0BEC, asciicircum ] };
1202      key <AE07> { [ U0BED, ampersand ] };
1203      key <AE08> { [ U0BEE, asterisk ] };
1204      key <AE09> { [ U0BEF, parenleft ] };
1205      key <AE10> { [ U0BE6, parenright ] };
1206      key <AE11> { [ minus, underscore ] };
1207      key <AE12> { [ equal, plus ] };
1208
1209
1210    // Qrow
1211    key <AD01> {  [ U0B9E, U0BB6 ] };
1212    key <AD02> {  [ U0BB1, U0BB7 ] };
1213    key <AD03> {  [ U0BA8, U0BB8 ] };
1214    key <AD04> {  [ U0B9a, U0BB9 ] };
1215    key <AD05> {  [ U0BB5, U0B9c ] };
1216    key <AD06> {  [ U0BB2 ] };
1217    key <AD07> {  [ U0BB0 ] };
1218    key <AD08> {  [ U0BC8, U0B90 ] };
1219    key <AD09> {  [ U0BCA, U0BCB ] };
1220    key <AD10> {  [ U0BBF, U0BC0 ] };
1221    key <AD11> {  [ U0BC1, U0BC2 ] };
1222
1223    // Arow
1224    key <AC01> { [ U0BAF ] };
1225    key <AC02> { [ U0BB3 ] };
1226    key <AC03> { [ U0BA9 ] };
1227    key <AC04> { [ U0B95 ] };
1228    key <AC05> { [ U0BAA ] };
1229    key <AC06> { [ U0BBE, U0BB4 ] };
1230    key <AC07> { [ U0BA4 ] };
1231    key <AC08> { [ U0BAE ] };
1232    key <AC09> { [ U0B9F ] };
1233    key <AC10> { [ U0BCD, U0B83 ] };
1234    key <AC11> { [ U0B99 ] };
1235
1236    // Zrow
1237    key <AB01> { [ U0BA3 ]  };
1238    key <AB02> { [ U0B92, U0B93 ]  };
1239    key <AB03> { [ U0B89, U0B8A ]  };
1240    key <AB04> { [ U0B8E, U0B8F ]  };
1241    key <AB05> { [ U0BC6, U0BC7 ]  };
1242    key <AB06> { [ U0B94, U0BCC ]  };
1243    key <AB07> { [ U0B85, U0B86 ]  };
1244    key <AB08> { [ U0B87, U0B88 ]  };
1245};
1246
1247partial alphanumeric_keys
1248xkb_symbols "tam_tamilnet_TSCII" {
1249
1250// Description	: A Tamil typewrite-style keymap 
1251//		  loosely based on TamilNet'99 reommendations 
1252// Encoding	: TSCII (http://www.tscii.org)
1253// Author	: Thuraiappah Vaseeharan <vasee@ieee.org>
1254// Last Modified: Sat Jan  5 17:11:26 CST 2002
1255
1256    name[Group1]= "Tamil (TamilNet '99, TSCII encoding)";
1257
1258    key <AE01> {  [ 0x10000b7, 0x10000a4 ] }; // aytham
1259    key <AE02> {  [ 0x1000082, 0x10000a5 ] }; // shri
1260    key <AE03> {  [ 0x1000083, 0x1000088 ] }; // ja
1261    key <AE04> {  [ 0x1000084, 0x1000089 ] }; // sha
1262    key <AE05> {  [ 0x1000085, 0x100008a ] }; // sa
1263    key <AE06> {  [ 0x1000086, 0x100008b ] }; // ha
1264    key <AE07> {  [ 0x1000087, 0x100008c ] }; // ksha
1265
1266    // Qrow
1267    key <AD01> {  [ 0x10000bb, 0x100009a ] }; // nja
1268    key <AD02> {  [ 0x10000c8, 0x10000da ] }; // Ra
1269    key <AD03> {  [ 0x10000bf, 0x10000d1 ] }; // NNa
1270    key <AD04> {  [ 0x10000ba, 0x10000cd ] }; // ca
1271    key <AD05> {  [ 0x10000c5, 0x10000d7 ] }; // va
1272    key <AD06> {  [ 0x10000c4, 0x10000d6 ] }; // la
1273    key <AD07> {  [ 0x10000c3, 0x10000d5 ] }; // ra
1274    key <AD08> {  [ 0x10000a8, 0x10000b3 ] }; // sangili, ai
1275    key <AD09> {  [ 0x10000ca, 0x10000cb ] }; // di, dI
1276    key <AD10> {  [ 0x10000a2, 0x10000a3 ] }; // visiri
1277    key <AD11> {  [ dead_acute, 0x10000a3 ] }; // Ukaaram
1278
1279    // Arow
1280    key <AC01> { [ 0x10000c2, 0x10000d4 ] }; // ya
1281    key <AC02> { [ 0x10000c7, 0x10000d9 ] }; // La
1282    key <AC03> { [ 0x10000c9, 0x10000db ] }; // na
1283    key <AC04> { [ 0x10000b8, 0x10000cc ] }; // ka
1284    key <AC05> { [ 0x10000c0, 0x10000d2 ] }; // pa
1285    key <AC06> { [ dead_grave,0x10000a1 ] }; // pulli,aravu
1286    key <AC07> { [ 0x10000be, 0x10000d0 ] }; // tha
1287    key <AC08> { [ 0x10000c1, 0x10000d3 ] }; // ma
1288    key <AC09> { [ 0x10000bc, 0x10000ce ] }; // da
1289    key <AC10> { [ 0x10000c6, 0x10000d8 ] }; // zha
1290    key <AC11> { [ 0x10000b9, 0x1000099 ] }; // nga
1291
1292    // Zrow
1293    key <AB01> { [ 0x10000bd, 0x10000cf ] }; // Na
1294    key <AB02> { [ 0x10000b4, 0x10000b5 ] }; // o, O
1295    key <AB03> { [ 0x10000af, 0x10000b0 ] }; // u, U
1296    key <AB04> { [ 0x10000b1, 0x10000b2 ] }; // e, E
1297    key <AB05> { [ 0x10000a6, 0x10000a7 ] }; // kombus
1298    key <AB06> { [ 0x10000b6, 0x10000aa ] }; // au
1299    key <AB07> { [ 0x10000ab, 0x10000ac ] }; // a, A
1300    key <AB08> { [ 0x10000fe, 0x10000ae ] }; // i, I
1301};
1302
1303partial alphanumeric_keys
1304xkb_symbols "tam_tamilnet_TAB" {
1305
1306// Description: A keymap based on the TamilNet'99 typewriter keyboard 
1307// Encoding: TAB (http://www.tamilnet99.org)
1308// Author: Thuraiappah Vaseeharan <t_vasee@yahoo.com>
1309// Date  : Sun Aug 12 02:23:00 CDT 2001
1310
1311    name[Group1]= "Tamil (TamilNet '99, TAB encoding)";
1312
1313    // numeral row
1314    key <AE01> {  [ 0x10000e7, 0x10000a7 ] } ;
1315    key <AE02> {  [ 0x10000fa, 0x10000a8 ] } ;
1316    key <AE03> {  [ 0x10000fb ] } ;
1317    key <AE04> {  [ 0x10000fc ] } ;
1318    key <AE05> {  [ 0x10000fd ] } ;
1319    key <AE06> {  [ 0x10000fe ] } ;
1320    key <AE07> {  [ 0x10000ff ] } ;
1321
1322    // q-row
1323    key <AD01> {  [ 0x10000eb, 0x10000b3 ] };
1324    key <AD02> {  [ 0x10000f8, 0x10000c1 ] };
1325    key <AD03> {  [ 0x10000ef, 0x10000b8 ] };
1326    key <AD04> {  [ 0x10000ea, 0x10000b2 ] };
1327    key <AD05> {  [ 0x10000f5, 0x10000be ] };
1328    key <AD06> {  [ 0x10000f4, 0x10000bd ] };
1329    key <AD07> {  [ 0x10000f3, 0x10000bc ] };
1330    key <AD08> {  [ 0x10000ac, 0x10000e4 ] };
1331    key <AD09> {  [ 0x10000ae, 0x10000af ] };
1332    key <AD10> {  [ 0x10000a4, 0x10000a6 ] };
1333    key <AD11> {  [ dead_circumflex, 0x10000a6 ] }; // Ukaaram
1334
1335    // a-row
1336    key <AC01> {  [ 0x10000f2, 0x10000bb ] };
1337    key <AC02> {  [ 0x10000f7, 0x10000c0 ] };
1338    key <AC03> {  [ 0x10000f9, 0x10000c2 ] };
1339    key <AC04> {  [ 0x10000e8, 0x10000b0 ] };
1340    key <AC05> {  [ 0x10000f0, 0x10000b9 ] };
1341    key <AC06> {  [ 0x10000a2, 0x10000a3 ] };
1342    key <AC07> {  [ 0x10000ee, 0x10000b6 ] };
1343    key <AC08> {  [ 0x10000f1, 0x10000ba ] };
1344    key <AC09> {  [ 0x10000ec, 0x10000b4 ] };
1345    key <AC10> {  [ 0x10000f6, 0x10000bf ] };
1346    key <AC11> {  [ 0x10000e9, 0x10000b1 ] };
1347
1348    // z-row
1349    key <AB01> {  [ 0x10000ed, 0x10000b5 ] };
1350    key <AB02> {  [ 0x10000e5, 0x10000e6 ] };
1351    key <AB03> {  [ 0x10000e0, 0x10000e1 ] };
1352    key <AB04> {  [ 0x10000e2, 0x10000e3 ] };
1353    key <AB05> {  [ 0x10000aa, 0x10000ab ] };
1354    key <AB06> {  [ 0x10000ac, 0x10000a3 ] };
1355    key <AB07> {  [ 0x10000dc, 0x10000dd ] };
1356    key <AB08> {  [ 0x10000de, 0x10000df ] };
1357};
1358
1359partial alphanumeric_keys
1360xkb_symbols "tel" {
1361
1362    // Inscript layout for Telugu using Unicode 
1363    // Author: G Karunakar <karunakar@freedomink.org>
1364    // Date:
1365    // See layout at http://www.indlinux.org/keymap/telugu.php
1366
1367    name[Group1]= "Telugu";
1368
1369    key <TLDE> { [  U0c4a, U0c12	] };
1370    key <AE01> { [  U0c67			] };
1371    key <AE02> { [  U0c68			] };
1372    key <AE03> { [  U0c69, numbersign	] };
1373    key <AE04> { [  U0c6a, dollar		] };
1374    key <AE05> { [  U0c6b, percent		] };
1375    key <AE06> { [  U0c6c, asciicircum	] };
1376    key <AE07> { [  U0c6d, ampersand	] };
1377    key <AE08> { [  U0c6e, asterisk	] };
1378    key <AE09> { [  U0c6f, parenleft	] };
1379    key <AE10> { [  U0c66, parenright	] };
1380    key <AE11> { [  U0c03, underscore	] };
1381    key <AE12> { [  U0c43, U0c0b	] };
1382    key <BKSP> { [  BackSpace			] };
1383
1384    key <AD01> { [  U0c4c, U0c14	] };
1385    key <AD02> { [  U0c48, U0c10	] };
1386    key <AD03> { [  U0c3e, U0c06	] };
1387    key <AD04> { [  U0c40, U0c08	] };
1388    key <AD05> { [  U0c42, U0c0a	] };
1389    key <AD06> { [  U0c2c, U0c2d	] };
1390    key <AD07> { [  U0c39, U0c19	] };
1391    key <AD08> { [  U0c17, U0c18	] };
1392    key <AD09> { [  U0c26, U0c27	] };
1393    key <AD10> { [  U0c1c, U0c1d	] };
1394    key <AD11> { [  U0c21, U0c22	] };
1395    key <AD12> { [  U0c1e			] };
1396
1397    key <AC01> { [  U0c4b, U0c13	] };
1398    key <AC02> { [  U0c47, U0c0f	] };
1399    key <AC03> { [  U0c4d, U0c05	] };
1400    key <AC04> { [  U0c3f, U0c07	] };
1401    key <AC05> { [  U0c41, U0c09	] };
1402    key <AC06> { [  U0c2a, U0c2b	] };
1403    key <AC07> { [  U0c30, U0c31	] };
1404    key <AC08> { [  U0c15, U0c16	] };
1405    key <AC09> { [  U0c24, U0c25	] };
1406    key <AC10> { [  U0c1a, U0c1b	] };
1407    key <AC11> { [  U0c1f, U0c20	] };
1408
1409    key <AB01> { [  U0c46, U0c0e	] };
1410    key <AB02> { [  U0c02, U0c01	] };
1411    key <AB03> { [  U0c2e, U0c23	] };
1412    key <AB04> { [  U0c28			] };
1413    key <AB05> { [  U0c35			] };
1414    key <AB06> { [  U0c32, U0c33	] };
1415    key <AB07> { [  U0c38, U0c36	] };
1416    key <AB08> { [  comma     , U0c37	] };
1417    key <AB09> { [  period    				] };
1418    key <AB10> { [  U0c2f, U0040	] };
1419
1420    key <RALT> {        
1421        symbols[Group1] = [ Mode_switch, Multi_key ],
1422        virtualMods = AltGr
1423    };
1424    include "rupeesign(4)"
1425    include "level3(ralt_switch)"
1426};
1427
1428//Name                  :       Sarala
1429//Description           :       This is an adaptation of the Sarala keyboard (http://www.medhajananam.org/sarala/) developed 
1430//                              by Krishna Dhullipalla. Because of the way keyboard shortcuts are laid out in KDE, the keyboard
1431//                              modifiers had to be changed. The layout does not take any part of the original Sarala keyboard 
1432//                              code however. It has been developed from scratch, so the experience may differ.
1433//			        
1434//                              There is a ibus-m17n version of Sarala layout developed by Satya Pothamsetti <potham@gmail.com> on 
1435//                              http://www.medhajananam.org/.
1436//Standard		:	Supports Unicode 9.0.	 
1437//Help			:	This layout differs slightly from the layout on Medhajenanam. The layout has been depicted in the 
1438//				pdf file attached to this post on Sarala google group.
1439//				(https://groups.google.com/forum/#!topic/sarala-keyboard/-gsa90dUFcs).
1440//
1441//Layout Developed by   :       Krishna Dhullipalla <krishnadvr@yahoo.com> (http://www.medhajananam.org/)
1442//Author                :       Venkat R Akkineni <venkatram.akkineni@india.com>
1443//Date			:	Apr 28 2017
1444partial alphanumeric_keys
1445xkb_symbols "tel-sarala"
1446{
1447    name[Group1] = "Telugu (Sarala)";
1448    key.type="FOUR_LEVEL";
1449    // sequence 									  base, shift, alt, alt + shift
1450    key <AB01> { [          U0C4A,          U0C12                                 ] }; // ొ ఒ
1451    key <AB02> { [          U0C42,          U0C0A                                 ] }; // ూ ఊ
1452    key <AB03> { [          U0C21,          U0C22                                 ] }; // డ ఢ
1453    key <AB04> { [          U0C35,          U0C39                                 ] }; // వ హ
1454    key <AB05> { [          U0C2C,          U0C2D                                 ] }; // బ భ
1455    key <AB06> { [          U0C28,          U0C23                                 ] }; // న ణ
1456    key <AB07> { [          U0C2E,          U0C01                                 ] }; // మ ఁ
1457    key <AB08> { [         U002C,          U0C1E,      leftcaret 	    	  ] }; // , ఞ <
1458    key <AB09> { [         U002E,          U0C19,     rightcaret              	  ] }; // . ఙ >
1459    key <AB10> { [          U0C36,       question,      KP_Divide                 ] }; // శ ? /
1460    key <AC01> { [          U0C2F,          U0C3D           			  ] }; // య ఽ
1461    key <AC02> { [          U0C02,          U0C03                                 ] }; // ం ః
1462    key <AC03> { [          U0C26,          U0C27                                 ] }; // ద ధ
1463    key <AC04> { [          U0C4D,          U0C05                                 ] }; // ్ అ
1464    key <AC05> { [          U0C17,          U0C18                                 ] }; // గ ఘ
1465    key <AC06> { [          U0C1A,          U0C1B,          U0C58,          U0C59 ] }; // చ ఛ ౘ ౙ
1466    key <AC07> { [          U0C3E,          U0C06                                 ] }; // ా ఆ
1467    key <AC08> { [          U0C15,          U0C16,          U0C62,          U0C63 ] }; // క ఖ ౢ ౣ
1468    key <AC09> { [          U0C32,          U0C33,          U0C0C,          U0C61 ] }; // ల ళ ఌ ౡ
1469    key <AC10> { [          U0C1F,          U0C20,      semicolon,          colon ] }; // ట ఠ ; :
1470    key <AC11> { [     quoteright,       quotedbl	    	    		  ] }; // ' " 
1471    key <AD01> { [          U0C46,          U0C0E,          U0C44,          U0C34 ] }; // ె ఎ ౄ ఴ
1472    key <AD02> { [          U0C38,          U0C37,          U0C44                 ] }; // స ష ౄ
1473    key <AD03> { [          U0C47,          U0C0F,          U0C44                 ] }; // ే ఏ ౄ
1474    key <AD04> { [          U0C30,          U0C31,          U0C44,          U0C60 ] }; // ర ఱ ౄ ౠ
1475    key <AD05> { [          U0C24,          U0C25                                 ] }; // త థ
1476    key <AD06> { [          U0C40,          U0C08                                 ] }; // ీ ఈ
1477    key <AD07> { [          U0C41,          U0C09                                 ] }; // ు ఉ
1478    key <AD08> { [          U0C3F,          U0C07                                 ] }; // ి ఇ
1479    key <AD09> { [          U0C4B,          U0C13                                 ] }; // ో ఓ
1480    key <AD10> { [          U0C2A,          U0C2B                                 ] }; // ప ఫ
1481    key <AD11> { [          U0C1C,          U0C1D,    bracketleft,      braceleft ] }; // జ ఝ [ {
1482    key <AD12> { [          U0C48,          U0C10,   bracketright,     braceright ] }; // ై ఐ ] }
1483    key <AE01> { [           KP_1,         exclam,          U0C67,          U0C78 ] }; // 1 ! ౦ ౸
1484    key <AE02> { [           KP_2,             at,          U0C68,          U0C79 ] }; // 2 @ ౨ ౹
1485    key <AE03> { [           KP_3,     numbersign,          U0C69,          U0C7A ] }; // 3 # ౩ ౺
1486    key <AE04> { [           KP_4,         dollar,          U0C6A,          U0C7B ] }; // 4 $ ౪ ౻
1487    key <AE05> { [           KP_5,        percent,          U0C6B,          U0C7C ] }; // 5 % ౫ ౼
1488    key <AE06> { [           KP_6,    asciicircum,          U0C6C,          U0C7D ] }; // 6 ^ ౬ ౽
1489    key <AE07> { [           KP_7,      ampersand,          U0C6D,          U0C7E ] }; // 7 & ౭ ౾
1490    key <AE08> { [           KP_8,    KP_Multiply,          U0C6E,          U0C7F ] }; // 8 * ౮ ౿
1491    key <AE09> { [           KP_9,         U0028,           U0C6F,          U20B9 ] }; // 9 ( ౯ ₹
1492    key <AE10> { [           KP_0,         U0029,           U0C66,          U0C55 ] }; // 0 ) ౦ ౕ
1493    key <AE11> { [    KP_Subtract,       underbar,       NoSymbol,          U0C56 ] }; // - _  ౖ
1494    key <AE12> { [       KP_Equal,         KP_Add                                 ] }; // = +
1495    key <BKSL> { [          U0C4C,          U0C14,          U0964,          U0965 ] }; // ౌ ఔ । ॥
1496    key <TLDE> { [          U0C43,          U0C0B,      quoteleft,     asciitilde ] }; // ృ ఋ ` ~
1497    
1498    include "level3(ralt_switch)" 
1499};
1500
1501partial alphanumeric_keys 
1502xkb_symbols "urd-phonetic" {
1503    include "pk(urd-phonetic)"
1504    name[Group1]= "Urdu (phonetic)";
1505};
1506
1507partial alphanumeric_keys
1508xkb_symbols "urd-phonetic3" {
1509    include "pk(urd-crulp)"
1510    name[Group1]= "Urdu (alt. phonetic)";
1511};
1512
1513partial alphanumeric_keys
1514xkb_symbols "urd-winkeys" {
1515    include "pk(urd-nla)"
1516    name[Group1]= "Urdu (Windows)";
1517};
1518
1519partial alphanumeric_keys
1520xkb_symbols "guru" {
1521      name[Group1]= "Punjabi (Gurmukhi)";
1522
1523      // Mainly numbers.
1524      key <AE01> { [      U0A67 		]	};
1525      key <AE02> { [      U0A68		]	};
1526      key <AE03> { [      U0A69, U0A71	]	};
1527      key <AE04> { [      U0A6A, U0A74	 	]	};
1528      key <AE05> { [      U0A6B, U262C		]	};
1529      key <AE06> { [      U0A6C  	 	]	};
1530      key <AE07> { [      U0A6D 		]	};
1531      key <AE08> { [      U0A6e  	 	]	};
1532      key <AE09> { [      U0A6F, parenleft 	]	};
1533      key <AE10> { [      U0A66, parenright ]	};
1534      key <AE11> { [      U0A03 	 	]	};
1535      key <AE12> { [      equal,	plus 	]	};
1536
1537// Mainly long vowels
1538
1539      key <AD01> { [      U0A4C, U0A14  ]	};
1540      key <AD02> { [      U0A48, U0A10  ]	};
1541      key <AD03> { [      U0A3E, U0A06  ]	};
1542      key <AD04> { [      U0A40, U0A08  ]	};
1543      key <AD05> { [      U0A42, U0A0A  ]	};
1544
1545// Mainly voiced consonants
1546
1547      key <AD06> { [      U0A2C, U0A2D 	]	};
1548      key <AD07> { [      U0A39, U0A19 	]	};
1549      key <AD08> { [      U0A17, U0A18 	]	};
1550      key <AD09> { [      U0A26, U0A27 	]	};
1551      key <AD10> { [      U0A1C, U0A1D 	]	};
1552      key <AD11> { [      U0A21, U0A22 	]	};
1553      key <AD12> { [      U0A3C, U0A1E 	]	};
1554
1555// Mainly short vowels
1556      key <AC01> { [      U0A4B, U0A13  ]	};
1557      key <AC02> { [      U0A47, U0A0F  ]	};
1558      key <AC03> { [      U0A4D, U0A05  ]	};
1559      key <AC04> { [      U0A3F, U0A07  ]	};
1560      key <AC05> { [      U0A41, U0A09  ]	};
1561
1562// Mainly unvoiced consonants
1563
1564      key <AC06> { [      U0A2A, U0A2B 	]	};
1565      key <AC07> { [      U0A30, U0A5C 	]	};
1566      key <AC08> { [      U0A15, U0A16 	]	};
1567      key <AC09> { [      U0A24, U0A25 	]	};
1568      key <AC10> { [      U0A1A, U0A1B 	]	};
1569      key <AC11> { [      U0A1F, U0A20 	]	};
1570      key <BKSL> { [      U005C, U007C	]	};
1571
1572      key <AB01> { [      z, 	 U0A01	]       };
1573      key <AB02> { [      U0A02, U0A70, U0A71  ]       };
1574      key <AB03> { [      U0A2E, U0A23  ]       };
1575      key <AB04> { [      U0A28, U0A28  ]       };
1576      key <AB05> { [      U0A35, U0A35  ]       };
1577      key <AB06> { [      U0A32, U0A33  ]       };
1578      key <AB07> { [      U0A38, U0A36  ]       };
1579      key <AB08> { [      comma,     less       ]       };
1580      key <AB09> { [      period,    U0964  ]       };
1581      key <AB10> { [      U0A2F, question   ]       };
1582
1583    include "rupeesign(4)"
1584    include "level3(ralt_switch)"
1585};
1586
1587//Name		:	Jhelum (Refind Inscript)
1588//Description	:	A Jhelum keyboard layout for Gurmukhi (Punjabi)
1589//			http://www.satluj.org/Jhelum.html
1590//Modified for Inscript to make
1591//Original Author :	Amanpreet Singh Alam <apreet.alam@gmail.com
1592
1593partial alphanumeric_keys
1594xkb_symbols "jhelum" {
1595      name[Group1] = "Punjabi (Gurmukhi Jhelum)";
1596          key.type="FOUR_LEVEL";
1597
1598     // Roman digits
1599     key <TLDE>  { [  grave, asciitilde, U0A02,U0A01 ] }; // grave: anusvara, candrabindu
1600     key <AE01>  { [   1,exclam,	U0A67,	exclam	   ] };
1601     key <AE02>  { [   2,at,	U0A68,	at	   ] };
1602     key <AE03>  { [   3,numbersign, U0A69,	numbersign ] };
1603     key <AE04>  { [   4,dollar,	U0A6A		 ] };
1604     key <AE05>  { [   5,percent,U0A6B,	percent    ] };
1605     key <AE06>  { [   6,U0A73, U0A6C,asciicircum ] };
1606     key <AE07>  { [   7,U0A72,U0A6D,ampersand  ] };
1607     key <AE08>  { [   8,asterisk,U0A6E,	asterisk   ] };
1608     key <AE09>  { [   9,parenleft,U0A6F,parenleft  ] };
1609     key <AE10>  { [   0,parenright,U0A66,parenright ] };
1610     key <AE11>	{ [   minus,underscore] };
1611     key <AE12>	{ [   equal,plus] };
1612     key <BKSL>  { [   U0964,U0965,U007C,U005C] }; //pipe : danda, double danda
1613
1614     //Q Row	
1615     key <AD01>   { [   U0A4C, 	U0A14   ] };  // Q: oo, ooh
1616     key <AD02>   { [   U0A48,  	U0A10	] };  // W: ee, ae
1617     key <AD03>   { [   U0A3E,   U0A06  ] };  // E: a, aa
1618     key <AD04>   { [   U0A40,	U0A08, U20B9  	] };  // R: ee, ai, rupeesign
1619     key <AD05>   { [   U0A42,   U0A0A   ] };  // T: u, uu
1620     key <AD06>   { [   U0A30,	U0A5C   ] };  // Y: ra, raa
1621     key <AD07>   { [   U0A26,   U0A27   ] };  // U: tha, thha
1622     key <AD08>   { [   U0A17,   U0A18, U0A5A   ] };  // I:ga, gha
1623     key <AD09>   { [   U0A24,   U0A1F   ] };  // O: ta, tha
1624     key <AD10>   { [   U0A2A,   U0A5E, VoidSymbol,U0A5E  ] };  // P: pa, pha
1625     key <AD11>   { [   U0A21,   U0A22,   bracketleft,   braceleft   ] };
1626     key <AD12>	 { [   U0A19,   U0A1E,   bracketright, braceright   ] };
1627
1628     //A Row
1629     key <AC01>   { [   U0A4B,	 U0A13  ] };   // A: o, oo
1630     key <AC02>   { [   U0A47,    U0A0F   ] };  // S: e, ee
1631     key <AC03>   { [   U0A4D,    U0A05   ] };  // D: halant, aa
1632     key <AC04>   { [   U0A3F,    U0A07   ] };  // F: i, aa
1633     key <AC05>   { [   U0A41,    U0A09   ] };  // G: u, uh
1634     key <AC06>   { [   U0A39,    U0A20   ] };  // H: ha, thha
1635     key <AC07>   { [   U0A1C,    U0A1D, U0A5B   ] };  // J: ja, jha
1636     key <AC08>   { [   U0A15,    U0A16,VoidSymbol ,U0A59   ] };  // K: ka, kha
1637     key <AC09>   { [   U0A32,	 U0A25, U0A33   ] };  // L: la, tha
1638     key <AC10>   { [   U0A38,   colon, U0A36  ] }; //; sa
1639     key <AC11>   { [apostrophe, quotedbl ] };
1640
1641     //Z Row
1642     key <AB01>   { [   U0A71,	 U0A3C 	 ] };  // Z: addak, par bindi
1643     key <AB02>   { [   U0A02,    U0A70	 ] };  // X: bindi, tippi
1644     key <AB03>   { [   U0A1A,    U0A1B   ] };  // C: ca, cha
1645     key <AB04>   { [   U0A35,    U0A2F   ] };  // V: va, ya
1646     key <AB05>   { [   U0A2C,    U0A2D   ] };  // B: ba, bha
1647     key <AB06>   { [   U0A28,    U0A23   ] };  // N: na, nha
1648     key <AB07>   { [   U0A2E, U0A2E       ] };  // M: ma
1649     key <AB08>   { [   comma,    U262C	 ] };// comma: comma, dev abbreviation sign
1650     key <AB09>   { [   period,   U0A74 	 ] };  // period: period, nukta
1651     key <AB10>   { [   slash,   question ] };
1652
1653//    modifier_map Shift  { Shift_L };
1654//    modifier_map Lock   { Caps_Lock };
1655//    modifier_map Control{ Control_L };
1656//    modifier_map Mod3   { Mode_switch };
1657    include "level3(ralt_switch)"
1658};
1659
1660partial alphanumeric_keys
1661xkb_symbols "olpc" {
1662
1663// Contact: Walter Bender <walter@laptop.org>
1664
1665  include "in(deva)"
1666
1667  key <TLDE> { [	U094A,	U0912 ] }; // DEVANAGARI VOWEL SIGN SHORT O; DEVANAGARI LETTER SHORT O
1668  key <AE01> { [	U0967,	U090D ] }; // DEVANAGARI DIGIT ONE; DEVANAGARI LETTER CANDRA E
1669  key <AE02> { [	U0968,	U0945 ] }; // DEVANAGARI DIGIT TWO; DEVANAGARI VOWEL SIGN CANDRA E
1670  key <AE03> { [	U0969	 ] }; // DEVANAGARI DIGIT THREE;
1671  key <AE04> { [	U096A	 ] }; // DEVANAGARI DIGIT FOUR;
1672  key <AE05> { [	U096B	 ] }; // DEVANAGARI DIGIT FIVE;
1673  key <AE06> { [	U096C	 ] }; // DEVANAGARI DIGIT SIX;
1674  key <AE07> { [	U096D	 ] }; // DEVANAGARI DIGIT SEVEN;
1675  key <AE08> { [	U096E	 ] }; // DEVANAGARI DIGIT EIGHT;
1676  key <AE09> { [	U096F,	parenleft ] }; // DEVANAGARI DIGIT NINE;
1677  key <AE10> { [	U0966,	parenright ] }; // DEVANAGARI DIGIT ZERO;
1678  key <AE11> { [	minus,		U0903 ] }; // DEVANAGARI SIGN VISARGA;
1679  key <AE12> { [	U0943,	U090B ] }; // DEVANAGARI VOWEL SIGN VOCALIC R; DEVANAGARI LETTER VOCALIC R
1680
1681  key <AD01> { [	U094C,	U0914 ] }; // DEVANAGARI VOWEL SIGN AU; DEVANAGARI LETTER AU
1682  key <AD02> { [	U0948,	U0910 ] }; // DEVANAGARI VOWEL SIGN AI; DEVANAGARI LETTER AI
1683  key <AD03> { [	U093E,	U0906 ] }; // DEVANAGARI VOWEL SIGN AA; DEVANAGARI LETTER AA
1684  key <AD04> { [	U0940,	U0908 ] }; // DEVANAGARI VOWEL SIGN II; DEVANAGARI LETTER II
1685  key <AD05> { [	U0942,	U090A ] }; // DEVANAGARI VOWEL SIGN UU; DEVANAGARI LETTER UU
1686  key <AD06> { [	U092C,	U092D ] }; // DEVANAGARI LETTER BA; DEVANAGARI LETTER BHA
1687  key <AD07> { [	U0939,	U0919 ] }; // DEVANAGARI LETTER HA; DEVANAGARI LETTER NGA
1688  key <AD08> { [	U0917,	U0918 ] }; // DEVANAGARI LETTER GA; DEVANAGARI LETTER GHA
1689  key <AD09> { [	U0926,	U0927 ] }; // DEVANAGARI LETTER DA; DEVANAGARI LETTER DHA
1690  key <AD10> { [	U091C,	U091D ] }; // DEVANAGARI LETTER JA; DEVANAGARI LETTER JHA
1691  key <AD11> { [	U0921,	U0922 ] }; // DEVANAGARI LETTER DDA; DEVANAGARI LETTER DDHA
1692  key <AD12> { [	U093C,	U091E ] }; // DEVANAGARI SIGN NUKTA; DEVANAGARI LETTER NYA
1693
1694  key <BKSL> { [	U0949,	U0911 ] }; // DEVANAGARI VOWEL SIGN CANDRA O; DEVANAGARI LETTER CANDRA O
1695
1696  key <AC01> { [	U094B,	U0913 ] }; // DEVANAGARI VOWEL SIGN O; DEVANAGARI LETTER O
1697  key <AC02> { [	U0947,	U090F ] }; // DEVANAGARI VOWEL SIGN E; DEVANAGARI LETTER E
1698  key <AC03> { [	U094D,	U0905 ] }; // DEVANAGARI SIGN VIRAMA; DEVANAGARI LETTER A
1699  key <AC04> { [	U093F,	U0907 ] }; // DEVANAGARI VOWEL SIGN I; DEVANAGARI LETTER I
1700  key <AC05> { [	U0941,	U0909 ] }; // DEVANAGARI VOWEL SIGN U; DEVANAGARI LETTER U
1701  key <AC06> { [	U092A,	U092B ] }; // DEVANAGARI LETTER PA; DEVANAGARI LETTER PHA
1702  key <AC07> { [	U0930,	U0931 ] }; // DEVANAGARI LETTER RA; DEVANAGARI LETTER RRA
1703  key <AC08> { [	U0915,	U0916 ] }; // DEVANAGARI LETTER KA; DEVANAGARI LETTER KHA
1704  key <AC09> { [	U0924,	U0925 ] }; // DEVANAGARI LETTER TA; DEVANAGARI LETTER THA
1705  key <AC10> { [	U091A,	U091B ] }; // DEVANAGARI LETTER CA; DEVANAGARI LETTER CHA
1706  key <AC11> { [	U091F,	U0920 ] }; // DEVANAGARI LETTER TTA; DEVANAGARI LETTER TTHA
1707
1708  key <AB01> { [	U0946,	U090E ] }; // DEVANAGARI VOWEL SIGN SHORT E; DEVANAGARI LETTER SHORT E
1709  key <AB02> { [	U0902,	U0901 ] }; // DEVANAGARI SIGN ANUSVARA; DEVANAGARI SIGN CANDRABINDU
1710  key <AB03> { [	U092E,	U0923 ] }; // DEVANAGARI LETTER MA; DEVANAGARI LETTER NNA
1711  key <AB04> { [	U0928,	U0929 ] }; // DEVANAGARI LETTER NA; DEVANAGARI LETTER NNNA
1712  key <AB05> { [	U0935,	U0934 ] }; // DEVANAGARI LETTER VA; DEVANAGARI LETTER LLLA
1713  key <AB06> { [	U0932,	U0933 ] }; // DEVANAGARI LETTER LA; DEVANAGARI LETTER LLA
1714  key <AB07> { [	U0938,	U0936 ] }; // DEVANAGARI LETTER SA; DEVANAGARI LETTER SHA
1715  key <AB08> { [	comma,		U0937 ] }; // DEVANAGARI LETTER SSA
1716  key <AB09> { [	period,		U0964 ] }; // DEVANAGARI DANDA
1717  key <AB10> { [	U092F,	U095F ] }; // DEVANAGARI LETTER YA; DEVANAGARI LETTER YYA
1718
1719  // space, space, Zero-Width-Non-Joiner (ZWNJ), Zero-Width-Joiner (ZWJ):
1720  include "nbsp(zwnj3zwj4)"
1721
1722  include "group(olpc)"
1723};
1724
1725partial alphanumeric_keys
1726xkb_symbols "hin-wx" {
1727
1728    name[Group1]= "Hindi (Wx)";
1729
1730      key <TLDE> {	 [     grave, asciitilde, 2, 3    ]	};
1731
1732      key <AE01> {	 [      0x1000967, exclam 		]	};
1733      key <AE02> {	 [      0x1000968, at 		]	};
1734      key <AE03> {	 [      0x1000969 , numbersign	 		]	};
1735      key <AE04> {	 [      0x100096A , dollar		]	};
1736      key <AE05> {	 [      0x100096B , percent 	 		]	};
1737      key <AE06> {	 [      0x100096C , asciicircum	 		]	};
1738      key <AE07> {	 [      0x100096D , ampersand                       ]	};
1739      key <AE08> {	 [      0x100096e , asterisk 	 		]	};
1740      key <AE09> {	 [      0x100096F, parenleft 		]	};
1741      key <AE10> {	 [      0x1000966, parenright 		]	};
1742      key <AE11> {	 [      minus, underscore 	 		]	};
1743      key <AE12> {	 [      equal, plus 		]	};
1744
1745
1746      key <AD01> {	 [      0x1000943,  0x1000944, 0x100090B, 0x1000960]	};
1747      key <AD02> {	 [      0x1000924,  0x1000925       	]	};
1748      key <AD03> {	 [      0x1000947,  0x1000948, 0x100090F, 0x1000910]	};
1749      key <AD04> {	 [      0x1000930,  0x1000937       	]	};
1750      key <AD05> {	 [      0x100091F,  0x1000920       	]	};
1751
1752
1753      key <AD06> {	 [      0x100092F 		]	};
1754      key <AD07> {	 [      0x1000941,  0x1000942, 0x1000909, 0x100090A ]	};
1755      key <AD08> {	 [      0x100093F,  0x1000940, 0x1000907, 0x1000908 ]	};
1756      key <AD09> {	 [      0x100094B,  0x100094C, 0x1000913, 0x1000914]	};
1757      key <AD10> {	 [      0x100092A,  0x100092B 		]	};
1758      key <AD11> {	 [      bracketleft, braceleft  		]	};
1759      key <AD12> {	 [      bracketright, braceright  		]	};
1760      key <BKSL> {       [      backslash, bar, 0x1000964, 0x1000965 ] };
1761
1762      key <AC01> {	 [      0x100094D,  0x100093E, 0x1000905,0x1000906 ] 	};
1763      key <AC02> {	 [      0x1000938,  0x1000936       	]	};
1764      key <AC03> {	 [      0x1000921,  0x1000922       	]	};
1765      key <AC04> {	 [      0x1000919,  0x100091E       	]	};
1766      key <AC05> {	 [      0x1000917,  0x1000918       	]	};
1767
1768
1769      key <AC06> {	 [      0x1000939,  0x1000903 		]	};
1770      key <AC07> {	 [      0x100091C,  0x100091D 		]	};
1771      key <AC08> {	 [      0x1000915,  0x1000916 		]	};
1772      key <AC09> {	 [      0x1000932,  0x1000962, 0x1000933, 0x100090C]	};
1773      key <AC10> {	 [      semicolon, colon  		]	};
1774      key <AC11> {	 [      apostrophe, quotedbl 		]	};
1775
1776      key <AB01> {	 [      0x1000901,   0x100093C, 0x100093D, 0x1000950]   };
1777      key <AB02> {       [      0x1000926,   0x1000927      ]       };
1778      key <AB03> {       [      0x100091A,   0x100091B         ]       };
1779      key <AB04> {       [      0x1000935                      ]       };
1780      key <AB05> {       [      0x100092C,   0x100092D        ]       };
1781      key <AB06> {       [      0x1000928,   0x1000923         ]       };
1782      key <AB07> {       [      0x100092E,   0x1000902         ]       };
1783      key <AB08> {       [      comma,       less         ]       };
1784      key <AB09> {       [      period,      greater       ]       };
1785      key <AB10> {       [      slash,      question        ]       };
1786
1787    include "level3(ralt_switch)"
1788    include "rupeesign(4)"
1789};
1790
1791partial alphanumeric_keys
1792xkb_symbols "eng" {
1793
1794    include "us(basic)"
1795    name[Group1]= "English (India, with rupee)";
1796
1797    include "rupeesign(4)"
1798    include "level3(ralt_switch)"
1799};
1800
1801
1802// Description : Enhanced INSCRIPT keymap for Malayalam
1803// Encoding    : Unicode (http://www.unicode.org)
1804// Author      : Mahesh T Pai <paivakil@gmail.com>
1805// Date        : March, 2011
1806// Source      : http://www.nongnu.org/smc/docs/images/ml_inscript_layout.jpg
1807// Comment     : Based on the Inscript Keyboard created by M Baiju
1808// Mapping:
1809
1810partial alphanumeric_keys
1811xkb_symbols "mal_enhanced" {
1812
1813    name[Group1] = "Malayalam (enhanced Inscript, with rupee)";
1814
1815   //From grave to backslash (\)
1816
1817      key <TLDE> { [ U0d4a ,       U0d12 ] };
1818      key <AE01> { [ U0d67 ,      exclam ] };
1819      key <AE02> { [ U0d68 ,          at ] };
1820      key <AE03> { [ U0d69 ,  numbersign ] };
1821      key <AE04> { [ U0d6a ,      dollar ] };
1822      key <AE05> { [ U0d6b ,     percent ] };
1823      key <AE06> { [ U0d6c , asciicircum ] };
1824      key <AE07> { [ U0d6d ,   ampersand ] };
1825      key <AE08> { [ U0d6e ,       U0d7e ] };
1826      key <AE09> { [ U0d6f ,   parenleft ] };
1827      key <AE10> { [ U0d66 ,  parenright ] };
1828
1829      key <AE11> { [ minus , U0d03       ] };
1830      key <AE12> { [ U0d43 , U0d0b       ] };
1831      key <BKSL> { [ U0d7c , U05C        ] }; //bksl: chillu RR 
1832
1833
1834  // From 'q' to right bracket (])
1835
1836    key <AD01> { [ U0d57 , U0d14 ] };
1837    key <AD02> { [ U0d48 , U0d10 ] };
1838    key <AD03> { [ U0d3e , U0d06 ] };
1839    key <AD04> { [ U0d40 , U0d08 ] };
1840    key <AD05> { [ U0d42 , U0d0a ] };
1841    key <AD06> { [ U0d2c , U0d2d ] };
1842    key <AD07> { [ U0d39 , U0d19 ] };
1843    key <AD08> { [ U0d17 , U0d18 ] };
1844    key <AD09> { [ U0d26 , U0d27 ] };
1845    key <AD10> { [ U0d1c , U0d1d ] };
1846    key <AD11> { [ U0d21 , U0d22 ] };
1847    key <AD12> { [ U0200d , U0d1e ] };
1848
1849    // From 'a' to apostrophe (')
1850
1851    key <AC01> { [ U0d4b , U0d13 ] };
1852    key <AC02> { [ U0d47 , U0d0f ] };
1853    key <AC03> { [ U0d4d , U0d05 ] };
1854    key <AC04> { [ U0d3f , U0d07 ] };
1855    key <AC05> { [ U0d41 , U0d09 ] };
1856    key <AC06> { [ U0d2a , U0d2b ] };
1857    key <AC07> { [ U0d30 , U0d31 ] };
1858    key <AC08> { [ U0d15 , U0d16 ] };
1859    key <AC09> { [ U0d24 , U0d25 ] };
1860    key <AC10> { [ U0d1a , U0d1b ] };
1861    key <AC11> { [ U0d1f , U0d20 ] };
1862
1863    // From 'z' to slash (/)
1864
1865    key <AB01> { [ U0d46 , U0d0e ] };
1866    key <AB02> { [ U0d02 , U0d7a ] };
1867    key <AB03> { [ U0d2e , U0d23 ] };
1868    key <AB04> { [ U0d28 , U0d7b ] };
1869    key <AB05> { [ U0d35 , U0d34 ] };
1870    key <AB06> { [ U0d32 , U0d33 ] };
1871    key <AB07> { [ U0d38 , U0d36 ] };
1872    key <AB08> { [ comma , U0d37 ] };
1873    key <AB09> { [ period , U0d7d ] }; //chillu l
1874    key <AB10> { [ U0d2f , question ] };
1875
1876    include "rupeesign(4)"
1877    include "level3(ralt_switch)"
1878};
1879
1880
1881// ---- BEGIN Hindi KaGaPa phonetic ----
1882// Name:        KaGaPa phonetic
1883// Brief:       Devanagari layout (Hindi, Sanskrit, Nepali, Marathi, etc.)
1884// Diagram:     (Original)[http://baraha.com/help/Keyboards/dev_brhkbd.htm]
1885//              (This layout)[http://bdsatish.in/lang/dev-kagapa.png]
1886//
1887// Description: Based on KaGaPa layout (also called Baraha layout or Nudi layout)
1888//              which is a modified layout of the specification by Dr. K. P. Rao.
1889//              This is a phonetic layout with the following features:
1890//              [1] All letters are mapped to phonetically-similar English keys
1891//                  as much as possible.
1892//              [2] The independent vowel (svara) and its dependent vowel (maatra)
1893//                  use the same key (depending upon SHIFT, ALTGR or ALTGR + SHIFT).
1894//              [3] Consonant conjuncts are produced by explicitly invoking the
1895//                  'viraama' (key f). The 'short a' maatra is implicit in all
1896//                  consonants.
1897//              [4] Zero width non-joiner and joiner are on keys 6 and 7
1898//                  respectively. These are absolutely essential for alternative
1899//                  glyph renderings of consonant half-forms.
1900//              [5] Rigvedic accent marks, visarga variants.
1901//
1902// Author:      Satish BD <bdsatish@gmail.com>
1903//
1904partial alphanumeric_keys
1905xkb_symbols "hin-kagapa" {
1906     name[Group1] = "Hindi (KaGaPa, phonetic)";
1907     key.type="FOUR_LEVEL";
1908
1909    // Roman digits
1910    key <TLDE>  { [   grave,   asciitilde,   U201C          ] };  // U201C: left double quotation mark
1911    key <AE01>  { [   1,            exclam,       U0967          ] };
1912    key <AE02>  { [   2,            at,           U0968,  U20A8  ] };  // U20A8: generic rupee sign (Rs)
1913    key <AE03>  { [   3,            numbersign,   U0969          ] };
1914    key <AE04>  { [   4,            dollar,       U096A,  U20B9  ] };  // U20B9: new Indian rupee sign
1915    key <AE05>  { [   5,            percent,      U096B          ] };
1916    key <AE06>  { [   6,            asciicircum,  U096C,  U200C  ] };  // ZWNJ
1917    key <AE07>  { [   7,            ampersand,    U096D,  U200D  ] };  // ZWJ
1918    key <AE08>  { [   8,            asterisk,     U096E,  U0901  ] };  // U0901: Devanagari candrabindu
1919    key <AE09>  { [   9,            parenleft,    U096F          ] };
1920    key <AE10>  { [   0,            parenright,   U0966,  U0970  ] };  // U0970: Devanagari abbreviation sign
1921    key <AE11>  { [   minus,        underscore,   U0952          ] };  // U0952: Devanagari stress sign anudatta
1922    key <AE12>  { [   equal,        plus                         ] };
1923    key <BKSL>  { [   U005C,        U007C,        U0964,  U0965  ] };  // backslash, pipe, danda, double danda
1924
1925    //Q Row
1926    key <AD01>  { [   U091F,         U0920                       ] };  // Q: retroflex Ta, Tha
1927    key <AD02>  { [   U0921,         U0922,      U095C,  U095D   ] };  // W: retroflex Da, Dha, Da-nukta, Dha-nukta
1928    key <AD03>  { [   U0946,         U0947,      U090E,  U090F   ] };  // E: matras, short E, long E
1929    key <AD04>  { [   U0930,         U0943,      U090B,  U0931   ] };  // R: ra, vocalic R matra, vocalic R, ra-nukta
1930    key <AD05>  { [   U0924,         U0925                       ] };  // T: dental ta, tha
1931    key <AD06>  { [   U092F,         U0948,      U0910,  U095F   ] };  // Y: ya, ai matra, ai, ya-nukta
1932    key <AD07>  { [   U0941,         U0942,      U0909,  U090A   ] };  // U: matras, u, uu
1933    key <AD08>  { [   U093F,         U0940,      U0907,  U0908   ] };  // I: matras, i, ii
1934    key <AD09>  { [   U094A,         U094B,      U0912,  U0913   ] };  // O: matras, short o, long o
1935    key <AD10>  { [   U092A,         U092B,      U095E           ] };  // P: pa, pha, pha-nukta
1936    key <AD11>  { [   bracketleft,   braceleft                   ] };
1937    key <AD12>  { [   bracketright,  braceright                  ] };
1938
1939    //A Row
1940    key <AC01>  { [   U093E,        U0906,     U0905,    U0972   ] };  // A: aa matra, aa, short a, candra a
1941    key <AC02>  { [   U0938,        U0936                        ] };  // S: sa, sha
1942    key <AC03>  { [   U0926,        U0927                        ] };  // D: dental da, dha
1943    key <AC04>  { [   U094D,        U0944,     U0960             ] };  // F: virama, vocalic RR matra, vocalic RR
1944    key <AC05>  { [   U0917,        U0918,     U095A             ] };  // G: ga, gha, ga-nukta
1945    key <AC06>  { [   U0939,        U0903,     U1CF5,    U1CF6   ] };  // H: ha, visarga, jihvamuliya, upadhmaniya
1946    key <AC07>  { [   U091C,        U091D,     U095B             ] };  // J: ja, jha, ja-nukta
1947    key <AC08>  { [   U0915,        U0916,     U0958,    U0959   ] };  // K: ka, kha, ka-nukta, kha-nukta
1948    key <AC09>  { [   U0932,        U0933,     U0962,    U090C   ] };  // L: la, lla, vocalic L matra, vocalic L
1949    key <AC10>  { [   semicolon,    colon,     U1CF2,    U1CF3   ] };  // U1CF2/3: ardhavisarga/rotated ardhavisarga
1950    key <AC11>  { [   apostrophe,   quotedbl,  U0951,    U201D   ] };  // U0951: Devanagari stress sign udatta
1951                                                                       // U201D: Right double quotation mark
1952    //Z Row
1953    key <AB01>  { [   U091E,   U0919                   ] };  // Z: nya, nga
1954    key <AB02>  { [   U0937,   U093C,  U0934           ] };  // X: ssa, nukta below, lla-nukta
1955    key <AB03>  { [   U091A,   U091B                   ] };  // C: ca, cha
1956    key <AB04>  { [   U0935,   U094C,  U0914           ] };  // V: va, matra au, au
1957    key <AB05>  { [   U092C,   U092D                   ] };  // B: ba, bha
1958    key <AB06>  { [   U0928,   U0923,  U0929           ] };  // N: na, nna, nnna
1959    key <AB07>  { [   U092E,   U0902,  U093D,  U0950   ] };  // M: ma, anusvara, avagraha, Devanagari OM
1960    key <AB08>  { [   comma,   U003C,  U0945,  U090D   ] };  // comma: comma, less than, matra, candra e
1961    key <AB09>  { [   period,  U003E,  U0949,  U0911   ] };  // period: period, greater than, matra, candra o
1962    key <AB10>  { [   slash,   question                ] };
1963
1964    include "level3(ralt_switch)"
1965};
1966// ---- END Hindi KaGaPa ----
1967
1968// Sanskrit uses Devanagari layout of Hindi
1969partial alphanumeric_keys
1970xkb_symbols "san-kagapa" {
1971  include "in(hin-kagapa)"
1972  name[Group1] = "Sanskrit (KaGaPa, phonetic)";
1973};
1974
1975// Marathi uses Devanagari layout of Hindi
1976partial alphanumeric_keys
1977xkb_symbols "mar-kagapa" {
1978  include "in(hin-kagapa)"
1979  name[Group1] = "Marathi (KaGaPa, phonetic)";
1980};
1981
1982
1983// ---- BEGIN Kannada KaGaPa phonetic ----
1984// Name:        Kannada KaGaPa phonetic
1985// Diagram:     (Original)[http://www.baraha.com/help/Keyboards/kan_brhkbd.htm]
1986//              (This layout)[http://bdsatish.in/lang/kan-kagapa.png]
1987//
1988// Description: Based on KaGaPa layout (also called Baraha layout or Nudi layout).
1989//              See the description to "hin-kagapa" above.
1990//              Certain punctuation characters from Devanagari block are
1991//              retained for compatibility.
1992//
1993// Author:      Satish BD <bdsatish@gmail.com>
1994//
1995partial alphanumeric_keys
1996xkb_symbols "kan-kagapa" {
1997    name[Group1] = "Kannada (KaGaPa, phonetic)";
1998    key.type="FOUR_LEVEL";
1999
2000    // Roman digits
2001    key <TLDE>  { [   grave,   asciitilde,   U201C          ] };  // U201C: left double quotation mark
2002    key <AE01>  { [   1,            exclam,       U0CE7          ] };
2003    key <AE02>  { [   2,            at,           U0CE8,  U20A8  ] };  // U20A8: generic rupee sign (Rs)
2004    key <AE03>  { [   3,            numbersign,   U0CE9          ] };
2005    key <AE04>  { [   4,            dollar,       U0CEA,  U20B9  ] };  // U20B9: new Indian rupee sign
2006    key <AE05>  { [   5,            percent,      U0CEB          ] };
2007    key <AE06>  { [   6,            asciicircum,  U0CEC,  U200C  ] };  // ZWNJ
2008    key <AE07>  { [   7,            ampersand,    U0CED,  U200D  ] };  // ZWJ
2009    key <AE08>  { [   8,            asterisk,     U0CEE,  U0901  ] };  // U0901: Devanagari candrabindu
2010    key <AE09>  { [   9,            parenleft,    U0CEF          ] };
2011    key <AE10>  { [   0,            parenright,   U0CE6          ] };
2012    key <AE11>  { [   minus,        underscore,   U0952          ] };  // U0952: Devanagari stress sign anudatta
2013    key <AE12>  { [   equal,        plus                         ] };
2014    key <BKSL>  { [   U005C,        U007C,        U0964,  U0965  ] };  // backslash, pipe, danda, double danda
2015
2016    //Q Row
2017    key <AD01>  { [   U0C9F,         U0CA0                       ] };  // Q: retroflex Ta, Tha
2018    key <AD02>  { [   U0CA1,         U0CA2                       ] };  // W: retroflex Da, Dha
2019    key <AD03>  { [   U0CC6,         U0CC7,      U0C8E,  U0C8F   ] };  // E: matras, short E, long E
2020    key <AD04>  { [   U0CB0,         U0CC3,      U0C8B,  U0CB1   ] };  // R: ra, vocalic R matra, vocalic R, RRA
2021    key <AD05>  { [   U0CA4,         U0CA5                       ] };  // T: dental ta, tha
2022    key <AD06>  { [   U0CAF,         U0CC8,      U0C90           ] };  // Y: ya, ai matra, ai
2023    key <AD07>  { [   U0CC1,         U0CC2,      U0C89,  U0C8A   ] };  // U: matras, u, uu
2024    key <AD08>  { [   U0CBF,         U0CC0,      U0C87,  U0C88   ] };  // I: matras, i, ii
2025    key <AD09>  { [   U0CCA,         U0CCB,      U0C92,  U0C93   ] };  // O: matras, short o, long o
2026    key <AD10>  { [   U0CAA,         U0CAB                       ] };  // P: pa, pha
2027    key <AD11>  { [   bracketleft,   braceleft                   ] };
2028    key <AD12>  { [   bracketright,  braceright                  ] };
2029
2030    //A Row
2031    key <AC01>  { [   U0CBE,        U0C86,     U0C85             ] };  // A: aa matra, aa, short a
2032    key <AC02>  { [   U0CB8,        U0CB6                        ] };  // S: sa, sha
2033    key <AC03>  { [   U0CA6,        U0CA7                        ] };  // D: dental da, dha
2034    key <AC04>  { [   U0CCD,        U0CC4,     U0CE0             ] };  // F: virama, vocalic RR matra, vocalic RR
2035    key <AC05>  { [   U0C97,        U0C98                        ] };  // G: ga, gha
2036    key <AC06>  { [   U0CB9,        U0C83,     U0CF1,    U0CF2   ] };  // H: ha, visarga, jihvanuliya, upadhmaniya
2037    key <AC07>  { [   U0C9C,        U0C9D                        ] };  // J: ja, jha
2038    key <AC08>  { [   U0C95,        U0C96                        ] };  // K: ka, kha
2039    key <AC09>  { [   U0CB2,        U0CB3,     U0CE2,    U0C8C   ] };  // L: la, lla, vocalic L matra, vocalic L
2040    key <AC10>  { [   semicolon,    colon                        ] };
2041    key <AC11>  { [   apostrophe,   quotedbl,  U0951,    U201D   ] };  // U0951: Devanagari stress sign udatta
2042                                                                       // U201D: Right double quotation mark
2043    //Z Row
2044    key <AB01>  { [   U0C9E,   U0C99                   ] };  // Z: nya, nga
2045    key <AB02>  { [   U0CB7,   U0CBC,  U0CDE           ] };  // X: ssa, nukta below, LLLA
2046    key <AB03>  { [   U0C9A,   U0C9B                   ] };  // C: ca, cha
2047    key <AB04>  { [   U0CB5,   U0CCC,  U0C94           ] };  // V: va, matra au, au
2048    key <AB05>  { [   U0CAC,   U0CAD                   ] };  // B: ba, bha
2049    key <AB06>  { [   U0CA8,   U0CA3                   ] };  // N: na, nna
2050    key <AB07>  { [   U0CAE,   U0C82,  U0CBD,  U0950   ] };  // M: ma, anusvara, avagraha, Devanagari OM
2051    key <AB08>  { [   comma,   U003C,  U0CB1           ] };  // comma: comma, less than, RRA
2052    key <AB09>  { [   period,  U003E,  U0CDE           ] };  // period: period, greater than, LLLA
2053    key <AB10>  { [   slash,   question                ] };
2054
2055    include "level3(ralt_switch)"
2056};
2057// ---- END Kannada KaGaPa ----
2058
2059
2060// ---- BEGIN Telugu KaGaPa phonetic ----
2061// Name:        Telugu KaGaPa phonetic
2062// Diagram:     (Original)[http://www.baraha.com/help/Keyboards/tel_brhkbd.htm]
2063//              (This layout)[http://bdsatish.in/lang/tel-kagapa.png]
2064//
2065// Description: Based on KaGaPa layout (also called Baraha layout or Nudi layout).
2066//              See the description to "hin-kagapa" above.
2067//              Certain punctuation characters from Devanagari block are
2068//              retained for compatibility.
2069//
2070// Author:      Satish BD <bdsatish@gmail.com>
2071//
2072partial alphanumeric_keys
2073xkb_symbols "tel-kagapa" {
2074    name[Group1] = "Telugu (KaGaPa, phonetic)";
2075    key.type="FOUR_LEVEL";
2076
2077    // Roman digits
2078    key <TLDE>  { [   grave,   asciitilde,   U201C          ] };  // U201C: left double quotation mark
2079    key <AE01>  { [   1,            exclam,       U0C67          ] };
2080    key <AE02>  { [   2,            at,           U0C68,  U20A8  ] };  // U20A8: generic rupee sign (Rs)
2081    key <AE03>  { [   3,            numbersign,   U0C69          ] };
2082    key <AE04>  { [   4,            dollar,       U0C6A,  U20B9  ] };  // U20B9: new Indian rupee sign
2083    key <AE05>  { [   5,            percent,      U0C6B          ] };
2084    key <AE06>  { [   6,            asciicircum,  U0C6C,  U200C  ] };  // ZWNJ
2085    key <AE07>  { [   7,            ampersand,    U0C6D,  U200D  ] };  // ZWJ
2086    key <AE08>  { [   8,            asterisk,     U0C6E,  U0C01  ] };  // U0C01: Telugu arasunna
2087    key <AE09>  { [   9,            parenleft,    U0C6F          ] };
2088    key <AE10>  { [   0,            parenright,   U0C66          ] };
2089    key <AE11>  { [   minus,        underscore,   U0952          ] };  // U0952: Devanagari stress sign anudatta
2090    key <AE12>  { [   equal,        plus                         ] };
2091    key <BKSL>  { [   U005C,        U007C,        U0964,  U0965  ] };  // backslash, pipe, danda, double danda
2092
2093    //Q Row
2094    key <AD01>  { [   U0C1F,         U0C20                       ] };  // Q: retroflex Ta, Tha
2095    key <AD02>  { [   U0C21,         U0C22                       ] };  // W: retroflex Da, Dha
2096    key <AD03>  { [   U0C46,         U0C47,      U0C0E,  U0C0F   ] };  // E: matras, short E, long E
2097    key <AD04>  { [   U0C30,         U0C43,      U0C0B,  U0C31   ] };  // R: ra, vocalic R matra, vocalic R, RRA
2098    key <AD05>  { [   U0C24,         U0C25                       ] };  // T: dental ta, tha
2099    key <AD06>  { [   U0C2F,         U0C48,      U0C10           ] };  // Y: ya, ai matra, ai
2100    key <AD07>  { [   U0C41,         U0C42,      U0C09,  U0C0A   ] };  // U: matras, u, uu
2101    key <AD08>  { [   U0C3F,         U0C40,      U0C07,  U0C08   ] };  // I: matras, i, ii
2102    key <AD09>  { [   U0C4A,         U0C4B,      U0C12,  U0C13   ] };  // O: matras, short o, long o
2103    key <AD10>  { [   U0C2A,         U0C2B                       ] };  // P: pa, pha
2104    key <AD11>  { [   bracketleft,   braceleft                   ] };
2105    key <AD12>  { [   bracketright,  braceright                  ] };
2106
2107    //A Row
2108    key <AC01>  { [   U0C3E,        U0C06,     U0C05             ] };  // A: aa matra, aa, short a
2109    key <AC02>  { [   U0C38,        U0C36                        ] };  // S: sa, sha
2110    key <AC03>  { [   U0C26,        U0C27                        ] };  // D: dental da, dha
2111    key <AC04>  { [   U0C4D,        U0C44,     U0C60             ] };  // F: virama, vocalic RR matra, vocalic RR
2112    key <AC05>  { [   U0C17,        U0C18                        ] };  // G: ga, gha
2113    key <AC06>  { [   U0C39,        U0C03                        ] };  // H: ha, visarga
2114    key <AC07>  { [   U0C1C,        U0C1D                        ] };  // J: ja, jha
2115    key <AC08>  { [   U0C15,        U0C16                        ] };  // K: ka, kha
2116    key <AC09>  { [   U0C32,        U0C33,     U0C62,    U0C0C   ] };  // L: la, lla, vocalic L matra, vocalic L
2117    key <AC10>  { [   semicolon,    colon                        ] };
2118    key <AC11>  { [   apostrophe,   quotedbl,  U0951,    U201D   ] };  // U0951: Devanagari stress sign udatta
2119                                                                       // U201D: Right double quotation mark
2120    //Z Row
2121    key <AB01>  { [   U0C1E,   U0C19                   ] };  // Z: nya, nga
2122    key <AB02>  { [   U0C37                            ] };  // X: ssa
2123    key <AB03>  { [   U0C1A,   U0C1B                   ] };  // C: ca, cha
2124    key <AB04>  { [   U0C35,   U0C4C,  U0C14           ] };  // V: va, matra au, au
2125    key <AB05>  { [   U0C2C,   U0C2D                   ] };  // B: ba, bha
2126    key <AB06>  { [   U0C28,   U0C23                   ] };  // N: na, nna
2127    key <AB07>  { [   U0C2E,   U0C02,  U0C3D,  U0950   ] };  // M: ma, anusvara, avagraha, Devanagari OM
2128    key <AB08>  { [   comma,   U003C,  U0C58           ] };  // comma: comma, less than, TSA
2129    key <AB09>  { [   period,  U003E,  U0C59           ] };  // period: period, greater than, DZA
2130    key <AB10>  { [   slash,   question                ] };
2131
2132    include "level3(ralt_switch)"
2133};
2134
2135// Description 	: Keymap for Manipuri language (Meetei mayek script)
2136// Encoding    	: Unicode (http://www.unicode.org)
2137// Author      	: Santosh Heigrujam <santosh.tomba@gmail.com>
2138// Date        	: December, 2013
2139// Source	: 
2140// Comment	:
2141	
2142partial alphanumeric_keys modifier_keys
2143xkb_symbols "eeyek" {
2144
2145    name[Group1]= "Manipuri (Eeyek)";
2146
2147    key <TLDE> {	[     grave,	asciitilde	]	};
2148    key <AE01> {	[	  Uabf1,	exclam 		]	};
2149    key <AE02> {	[	  Uabf2,	at		]	};
2150    key <AE03> {	[	  Uabf3,	numbersign	]	};
2151    key <AE04> {	[	  Uabf4,	dollar		]	};
2152    key <AE05> {	[	  Uabf5,	percent		]	};
2153    key <AE06> {	[	  Uabf6,	asciicircum	]	};
2154    key <AE07> {	[	  Uabf7,	ampersand	]	};
2155    key <AE08> {	[	  Uabf8,	asterisk	]	};
2156    key <AE09> {	[	  Uabf9,	parenleft	]	};
2157    key <AE10> {	[	  Uabf0,	parenright	]	};
2158    key <AE11> {	[     minus,	underscore	]	};
2159    key <AE12> {	[     equal,	plus		]	};
2160
2161    key <AD01> {	[	  Uabc8,	Uabd8 		]	};
2162    key <AD02> {	[	  Uabcb,	Uabcb		]	};
2163    key <AD03> {	[	  Uabcf,	Uabe2		]	};
2164    key <AD04> {	[	  Uabd4,	Uabd4		]	};
2165    key <AD05> {	[	  Uabc7,	Uabe0		]	};
2166    key <AD06> {	[	  Uabcc,	Uabe6		]	};
2167    key <AD07> {	[	  Uabce,	Uabe8		]	};
2168    key <AD08> {	[	  Uabe4,	Uabe9		]	};
2169    key <AD09> {	[	  Uabe3,	Uabe7		]	};
2170    key <AD10> {	[	  Uabc4,	Uabde		]	};
2171    key <AD11> {	[ bracketleft,	braceleft	]	};
2172    key <AD12> {	[ bracketright,	braceright	]	};
2173
2174    key <AC01> {	[	  Uabd1,	Uabe5 		]	};
2175    key <AC02> {	[	  Uabc1,	Uabd3		]	};
2176    key <AC03> {	[	  Uabd7,	Uabd9		]	};
2177    key <AC04> {	[	  Uabd0,	Uabda		]	};
2178    key <AC05> {	[	  Uabd2,	Uabd8		]	};
2179    key <AC06> {	[	  Uabcd,	Uabea		]	};
2180    key <AC07> {	[	  Uabd6,	Uabd3		]	};
2181    key <AC08> {	[	  Uabc0,	Uabdb		]	};
2182    key <AC09> {	[	  Uabc2,	Uabdc		]	};
2183    key <AC10> {	[ semicolon,	colon		]	};
2184    key <AC11> {	[ apostrophe,	quotedbl	]	};
2185
2186    key <AB01> {	[	  Uabc9,	Uabe1 		]	};
2187    key <AB02> {	[	  Uabca,	Uabd9		]	};
2188    key <AB03> {	[	  Uabc6,	Uabeb		]	};
2189    key <AB04> {	[	  Uabda,	Uabed		]	};
2190    key <AB05> {	[	  Uabd5,	Uabec		]	};
2191    key <AB06> {	[	  Uabc5,	Uabdf		]	};
2192    key <AB07> {	[	  Uabc3,	Uabdd		]	};
2193    key <AB08> {	[     comma,	less		]	};
2194    key <AB09> {	[    period,	greater		]	};
2195    key <AB10> {	[     slash,	question	]	};
2196
2197    key <BKSL> {	[ backslash,         bar	]	};
2198    
2199    include "level3(ralt_switch)"
2200};
2201
2202// This layout is developed by Niranjan Tambe in July 2019
2203// for typing Indic languages in International Phonetic Alphabet (IPA).
2204// Contact - niranjanvikastambe@gmail.com
2205
2206partial alphanumeric_keys modifier_keys
2207xkb_symbols "iipa" {
2208
2209    name[Group1]= "Indic IPA";
2210    key <AE01>	{ [	1,		exclam]	};
2211    key <AE02>	{ [	2,		at]	};
2212    key <AE03>	{ [	3,		numbersign]	};
2213    key <AE04>	{ [	4,		U20B9]	};
2214    key <AE05>	{ [	5,		percent]	};
2215    key <AE06>	{ [	6,		asciicircum] };
2216    key <AE07>	{ [	7,		ampersand]	};
2217    key <AE08>	{ [	8,		asterisk]	};
2218    key <AE09>	{ [	9,		parenleft]	};
2219    key <AE10>	{ [	0,		parenright]	};
2220    key <AE11>	{ [	minus,	underscore]	};
2221    key <AE12>	{ [	equal,       plus]	};
2222
2223    key <AD01>	{ [	U02B0,		U02B1]	}; // [ʰ], [ʱ]
2224    key <AD02>	{ [	U00E6,		q]	}; // [æ], [q] found in Urdu
2225    key <AD03>	{ [	a,			U028B]	}; // [a], [ʋ]
2226    key <AD04>	{ [	i,			U026A]	}; // [i] [ɪ]
2227    key <AD05>	{ [	u,			U026F]	}; // [u] [ɯ] found in Tamil
2228    key <AD06>	{ [	b,			Y]	}; // [b]
2229    key <AD07>	{ [	h,			U014B]	}; // [h], [ŋ]
2230    key <AD08>	{ [	g,			U0263]	}; // [g], [ɣ] found in Urdu
2231    key <AD09>	{ [	d,			U00F0]	}; // [d], [ð] found in Malayalam
2232    key <AD10>	{ [	U02A4,		U02A3]	}; // [ʤ], [ʣ] found in Marathi
2233    key <AD11>	{ [	U0256,		U027D]	}; // [ɖ], [ɽ]
2234    key <AD12>	{ [	bracketleft,	bracketright]	}; // "[", "]" needed for denoting phonetic symbols
2235
2236    key <AC01>	{ [	o,		U0254]	}; // [o], [ɔ] found in Bangla
2237    key <AC02>	{ [	e,		U025B]	}; // [e], [ɛ]
2238    key <AC03>	{ [	U0259,	U0361]	}; // [ə], [   ͡  ]
2239    key <AC04>	{ [	i,		U026A]	}; // [i], [ɪ]
2240    key <AC05>	{ [	u,		U026F]	}; // [u], [ɯ]
2241    key <AC06>	{ [	p,		f]	}; // [p], [f]
2242    key <AC07>	{ [	U027E,	r]	}; // [ɾ], [r]
2243    key <AC08>	{ [	k,		x]	}; // [k], [x] found in Urdu
2244    key <AC09>	{ [	t,		U03B8]	}; // [t], [θ]
2245    key <AC10>	{ [	U02A7,	U02A6]	}; // [ʧ], [ʦ] found in Marathi
2246    key <AC11>	{ [	U0288,	quotedbl]	}; // [ʈ]
2247    key <TLDE>	{ [	grave, 	asciitilde]	};
2248
2249    key <BKSL>	{ [	backslash,	bar]	};
2250    key <AB01>	{ [	U032A,		U0303]	}; // [ ̪], [ ̃] Dental mark, nasalisation mark
2251    key <AB02>	{ [	U0306,		X]	}; // [  ̆] Short sound
2252    key <AB03>	{ [	m,			U0273]	}; // [m], [ɳ]
2253    key <AB04>	{ [	n,			v]	}; // [n], [v]
2254    key <AB05>	{ [	w,			z] }; // [w], [z]
2255    key <AB06>	{ [	l,			U026D]	}; // [l], [ɭ]
2256    key <AB07>	{ [	s,			U0283]	}; // [s], [ʃ]
2257    key <AB08>	{ [	comma,		U0282]	}; // [ʂ]
2258    key <AB09>	{ [	period,		U02D0]	}; // [ː] Long sound
2259    key <AB10>	{ [	j,			slash] }; // [j]
2260};
2261
2262// This layout is developed by Niranjan Tambe in July 2019
2263// for typing Marathi language with some necessary symbols.
2264// Contact - niranjanvikastambe@gmail.com
2265
2266xkb_symbols "marathi" {
2267	name[Group1]="Marathi (enhanced Inscript)";
2268	key <TLDE> { [ U0962, U090C,   grave, asciitilde  ] }; // Added  ॢ & ऌ
2269	key <AE01> { [ U0967, exclam,       1, exclam      ] }; // Added exclamation mark
2270	key <AE02> { [ U0968, U0945,       2, at          ] }; // Added ॅ
2271	key <AE03> { [ U0969, U093D,  3, numbersign  ] }; // Added ऽ
2272	key <AE04> { [ U096a, U20B9,      4		  ] }; // Added ₹
2273	key <AE05> { [ U096b, percent,     5, percent     ] }; 
2274	key <AE06> { [ U096c, asciicircum, 6, asciicircum ] }; 
2275	key <AE07> { [ U096d, U0970,   7, ampersand   ] }; // Added ॰
2276	key <AE08> { [ U096e, U0950,    8, asterisk    ] };
2277	key <AE09> { [ U096f, parenleft,   9, parenleft   ] };
2278	key <AE10> { [ U0966, parenright,  0, parenright  ] };
2279	key <AE11> { [ minus, U0903, minus, underscore    ] };
2280	key <AE12> { [ U0943, U090b, U0944, U0960 ] };
2281
2282	key <AD01> { [ U094c, U0914 ] };
2283	key <AD02> { [ U0948, U0910 ] };
2284	key <AD03> { [ U093e, U0906 ] };
2285	key <AD04> { [ U0940, U0908, U0963, U0961 ] };
2286	key <AD05> { [ U0942, U090a ] };
2287	key <AD06> { [ U092c, U092d ] };
2288	key <AD07> { [ U0939, U0919 ] };
2289	key <AD08> { [ U0917, U0918, U095a ] };
2290	key <AD09> { [ U0926, U0927 ] };
2291	key <AD10> { [ U091c, U091d, U095b ] };
2292	key <AD11> { [ U0921, U0922, U095c, U095d ] };
2293	key <AD12> { [ U093c, U091e ] };
2294	key <BKSL> { [ U0949, U0911, U005C, U007C ] };
2295
2296	key <AC01> { [ U094b, U0913 ] };
2297	key <AC02> { [ U0947, U090f ] };
2298	key <AC03> { [ U094d, U0905 ] };
2299	key <AC04> { [ U093f, U0907, U0962, U090c ] };
2300	key <AC05> { [ U0941, U0909 ] };
2301	key <AC06> { [ U092a, U092b, NoSymbol, U095e ] };
2302	key <AC07> { [ U0930, U0931 ] };
2303	key <AC08> { [ U0915, U0916, U0958, U0959 ] };
2304	key <AC09> { [ U0924, U0925 ] };
2305	key <AC10> { [ U091a, U091b, U0952 ] };
2306	key <AC11> { [ U091f, U0920, NoSymbol, U0951 ] };
2307
2308	key <AB01> { [ apostrophe, U0972, U0953 ] }; // Added apostrophe & ॲ
2309	key <AB02> { [ U0902, U0901, NoSymbol, U0950 ] }; 
2310	key <AB03> { [ U092e, U0923, U0954 ] };
2311	key <AB04> { [ U0928, quotedbl ] }; // Added "
2312	key <AB05> { [ U0935, UA8FB ] }; // Added headstroke
2313	key <AB06> { [ U0932, U0933 ] };
2314	key <AB07> { [ U0938, U0936 ] };
2315	key <AB08> { [ comma, U0937, U0970 ] };
2316	key <AB09> { [ period, U0964, U0965, U093d ] };
2317	key <AB10> { [ U092f, question, slash, question ] };
2318};
2319// EXTRAS:
2320// Vedic and Miscellaneous symbols
2321// This layout covers 'Extended Devanagari' and 'Vedic Extensions' Unicode blocks.
2322// This is helpful for including all the required symbols when typing complex texts such as those from Samaveda and Yajurveda.
2323// This layout only includes signs and symbols. Text needs to be typed seperately.
2324// Created by : Abhishek Deshpande     <abhishekdeshpande128@gmail.com>
2325// Date : 27th October, 2020
2326partial alphanumeric_keys
2327xkb_symbols "san-misc" {
2328     name[Group1] = "Sanskrit symbols";
2329     key.type="FOUR_LEVEL";
2330
2331    // Roman digits
2332    key <TLDE>  { [   U1CD0,  UA8FA  ] };
2333    key <AE01>  { [   UA8E1,  U1CD1  ] };
2334    key <AE02>  { [   UA8E2,  UA8F2  ] };
2335    key <AE03>  { [   UA8E3,  UA8F3  ] };
2336    key <AE04>  { [   UA8E4,  UA8F4  ] };
2337    key <AE05>  { [   UA8E5,  UA8F5  ] };
2338    key <AE06>  { [   UA8E6,  UA8F6  ] };
2339    key <AE07>  { [   UA8E7,  UA8F7  ] };
2340    key <AE08>  { [   UA8E8,  UA8F8  ] };
2341    key <AE09>  { [   UA8E9,  UA8F9  ] };
2342    key <AE10>  { [   UA8E0,  UA8FC  ] };
2343    key <AE11>  { [   UA8FB,  U1CD2  ] };
2344    key <AE12>  { [   U1CF2,  U1CF3   ] };
2345    key <BKSL>  { [   U1CF8,  U1CF9   ] };
2346
2347    //Q Row
2348    key <AD01>  { [   U1CD4,  U1CD5  ] };
2349    key <AD02>  { [   U1CD6,  U1CD7  ] };
2350    key <AD03>  { [   U1CD8,  U1CD9  ] };
2351    key <AD04>  { [   UA8EF  ] };
2352    key <AD05>  { [   U1CDA,  U1CDB  ] };
2353    key <AD06>  { [   UA8FE,   UA8FF  ] };
2354    key <AD07>  { [   UA8EB  ] };
2355    key <AD08>  { [   U1CDC,  U1CDD ] };
2356    key <AD09>  { [   U1CDE,  U1CDF  ] };
2357    key <AD10>  { [   UA8EE  ] };
2358    key <AD11>  { [   U1CE0  ] };
2359    key <AD12>  { [   U1CE1  ] };
2360
2361    //A Row
2362    key <AC01>  { [   UA8EA  ] };
2363    key <AC02>  { [   UA8F1  ] };
2364    key <AC03>  { [   U1CE2  ] };
2365    key <AC04>  { [   U1CE3,  U1CE4  ] };
2366    key <AC05>  { [   U1CE5,  U1CE6  ] };
2367    key <AC06>  { [   U1CE7,  U1CE8  ] };
2368    key <AC07>  { [   U1CE9,  U1CEA  ] };
2369    key <AC08>  { [   UA8EC  ] };
2370    key <AC09>  { [   U1CEB,  U1CEC  ] };
2371    key <AC10>  { [   U1CEE,  U1CEF  ] };
2372    key <AC11>  { [   U1CF0,  U1CF1  ] };
2373    
2374    //Z Row
2375    key <AB01>  { [   U1CED  ] };
2376    key <AB02>  { [   U1CF4  ] };
2377    key <AB03>  { [   U1CF5  ] };
2378    key <AB04>  { [   UA8F0  ] };
2379    key <AB05>  { [   U1CF6  ] }; 
2380    key <AB06>  { [   UA8ED  ] };
2381    key <AB07>  { [   U0950,  UA8FD  ] };
2382    key <AB08>  { [   U1CF7,  U093D  ] };
2383    key <AB09>  { [   U1CFA,  U2638  ] };
2384    key <AB10>  { [   U0FD5,  U2740  ] };
2385
2386    include "rupeesign(4)"
2387    include "level3(ralt_switch)"
2388};
2389//           Modi is an ancient Indian script that is used to write texts in Marathi, Hindi and Sanskrit. It is most commonly used to write Marathi language in Maharashtra.
2390//           This keyboard layout is Based on Marathi KaGaPa phonetic layout. Just the characters which are not applicable in Modi, are ommited.
2391//
2392//           Created by : Abhishek Deshpande     <abhishekdeshpande128@gmail.com>
2393//           Date : 9th February, 2020
2394// 
2395partial alphanumeric_keys
2396xkb_symbols "modi-kagapa" {
2397     name[Group1] = "Modi (KaGaPa phonetic)";
2398     key.type="FOUR_LEVEL";
2399
2400 // Roman digits
2401    key <TLDE>  { [   grave,   asciitilde,   U201C           ] };  // U201C: left double quotation mark
2402    key <AE01>  { [   1,            exclam,       U11651          ] };
2403    key <AE02>  { [   2,            at,           U11652,  U20A8  ] };  // U20A8: generic rupee sign (Rs)
2404    key <AE03>  { [   3,            numbersign,   U11653          ] };
2405    key <AE04>  { [   4,            dollar,       U11654,  U20B9  ] };  // U20B9: new Indian rupee sign
2406    key <AE05>  { [   5,            percent,      U11655          ] };
2407    key <AE06>  { [   6,            asciicircum,  U11656,  U200C  ] };  // ZWNJ
2408    key <AE07>  { [   7,            ampersand,    U11657,  U200D  ] };  // ZWJ
2409    key <AE08>  { [   8,            asterisk,     U11658          ] };  
2410    key <AE09>  { [   9,            parenleft,    U11659          ] };
2411    key <AE10>  { [   0,            parenright,   U11650,  U11643 ] };  // U11643: Modi abbreviation sign
2412    key <AE11>  { [   minus,        underscore                    ] };  
2413    key <AE12>  { [   equal,        plus                          ] };
2414    key <BKSL>  { [   U005C,        U007C,        U11641,  U11642 ] };  // backslash, pipe, Modi danda, Modi double danda
2415
2416    //Q Row
2417    key <AD01>  { [   U11618,         U11619                      ] };  // Q: retroflex Modi letter Ta, Tha
2418    key <AD02>  { [   U1161A,         U1161B                      ] };  // W: retroflex Modi letter Da, Dha 
2419    key <AD03>  { [   U11639,         U1160A,    U1160B           ] };  // E: Modi vovel sign E, Modi letter E, letter ai
2420    key <AD04>  { [   U11628,         U11635,    U11606           ] };  // R: Modi ra, Modi vowel sign vocalic R, vocalic letter R 
2421    key <AD05>  { [   U1161D,         U1161E                      ] };  // T: dental Modi letter ta, tha
2422    key <AD06>  { [   U11627,         U1163A                      ] };  // Y: Modi letter ya, Modi vowel sign ai
2423    key <AD07>  { [   U11633,         U11634,    U11604,  U11605  ] };  // U: Modi vowel sign u, uu, Modi letter u, uu
2424    key <AD08>  { [   U11631,         U11632,    U11602,  U11603  ] };  // I: Modi vowel sign i, ii, Modi letter i, ii
2425    key <AD09>  { [   U1163B,         U1160C                      ] };  // O: Modi vowel sign o, Modi letter o
2426    key <AD10>  { [   U11622,         U11623                      ] };  // P: Modi letter pa, pha 
2427    key <AD11>  { [   bracketleft,   braceleft                    ] };
2428    key <AD12>  { [   bracketright,  braceright                   ] };
2429
2430    //A Row
2431    key <AC01>  { [   U11630,       U11601,     U11600           ] };  // A: Modi vowel sign aa, Modi letter aa, Modi letter a
2432    key <AC02>  { [   U1162D,       U1162B                       ] };  // S: Modi letter sa, sha
2433    key <AC03>  { [   U1161F,       U11620                       ] };  // D: dental Modi letter da, dha
2434    key <AC04>  { [   U1163F,       U11636,     U11607           ] };  // F: Modi sign virama, Modi vowel sign vocalic RR, letter vocalic RR
2435    key <AC05>  { [   U11610,       U11611                       ] };  // G: Modi letter ga, gha
2436    key <AC06>  { [   U1162E,       U1163E                       ] };  // H: Modi letter ha, Modi visarga
2437    key <AC07>  { [   U11615,       U11616                       ] };  // J: Modi letter ja, jha
2438    key <AC08>  { [   U1160E,       U1160F                       ] };  // K: Modi letter ka, kha
2439    key <AC09>  { [   U11629,       U1162F,     U11637,  U11608  ] };  // L: Modi letter la, lla, Modi vowel sign vocalic L, letter vocalic L
2440    key <AC10>  { [   semicolon,    colon                        ] };
2441    key <AC11>  { [   apostrophe,   quotedbl                     ] }; 
2442                                                                       
2443    //Z Row
2444    key <AB01>  { [   U11617,    U11612                     ] };  // Z: Modi letter nya, nga
2445    key <AB02>  { [   U1162C,    U11609,   U11638           ] };  // X: Modi letter ssa, Modi letter vocalic ll, Modi vowel sign vocalic ll 
2446    key <AB03>  { [   U11613,    U11614                     ] };  // C: Modi letter ca, cha
2447    key <AB04>  { [   U1162A,    U1163C,   U1160D           ] };  // V: Modi letter va, Modi vowel sign au, Modi letter au
2448    key <AB05>  { [   U11624,    U11625                     ] };  // B: Modi letter ba, bha
2449    key <AB06>  { [   U11621,    U1161C                     ] };  // N: Modi letter na, nna
2450    key <AB07>  { [   U11626,    U1163D,   U093D,    U0950  ] };  // M: Modi ma, Modi anusvara, avagraha, Devanagari OM (Avagraha & OM commonly occur in Marathi texts, so they are mapped here for convenience.)
2451    key <AB08>  { [   comma,     U003C,    U11640,   U11644 ] };  // comma: comma, less than, Modi chandrabindu, Modi sign huva
2452    key <AB09>  { [   period,    U003E                      ] };  // period: period, greater than
2453    key <AB10>  { [   slash,     question                   ] };
2454
2455    include "level3(ralt_switch)"
2456};
2457