in revision 1.15 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:)
31 default partial alphanumeric_keys
32 xkb_symbols "deva" {
33 // March 2004 -- David Holl <smyrph+dev_xkb (a] 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 (a] indlinux.org>
107
108 partial alphanumeric_keys
109 xkb_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
176 partial alphanumeric_keys
177 xkb_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
245 xkb_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 (a] gmail.com>
323
324 xkb_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
399 xkb_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
465 xkb_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
541 xkb_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
615 partial alphanumeric_keys
616 xkb_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
682 partial alphanumeric_keys
683 xkb_symbols "kan" {
684
685 // Inscript layout for Kannada
686 // Author : G Karunakar <karunakar (a] 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 (a] freeshell.org>
753 // Date : Sat Aug 17 21:10:48 IST 2002
754 // Mapping:
755
756 partial alphanumeric_keys
757 xkb_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 (a] gmail.com>, Swathantra Malayalam Computing (SMC)<smc-discuss (a] googlegroups.com>
847
848 partial alphanumeric_keys
849 xkb_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
916 partial alphanumeric_keys
917 xkb_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
985 partial alphanumeric_keys
986 xkb_symbols "ori" {
987 // Inscript layout for Oriya
988 // Author: G Karunakar <karunakar (a] 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
1050 partial alphanumeric_keys
1051 xkb_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
1116 partial alphanumeric_keys
1117 xkb_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 (a] ieee.org>
1122 // Modifed by: Malathi S <malathiramya (a] gmail.com>
1123 // Secondary contact: Sri Ramadoss M <amachu (a] 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
1182 partial alphanumeric_keys
1183 xkb_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 (a] gmail.com>
1188 // Secondary contact: Sri Ramadoss M <amachu (a] 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
1247 partial alphanumeric_keys
1248 xkb_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 (a] 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
1303 partial alphanumeric_keys
1304 xkb_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 (a] 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
1359 partial alphanumeric_keys
1360 xkb_symbols "tel" {
1361
1362 // Inscript layout for Telugu using Unicode
1363 // Author: G Karunakar <karunakar (a] 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 (a] 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 (a] yahoo.com> (http://www.medhajananam.org/)
1442 //Author : Venkat R Akkineni <venkatram.akkineni (a] india.com>
1443 //Date : Apr 28 2017
1444 partial alphanumeric_keys
1445 xkb_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
1501 partial alphanumeric_keys
1502 xkb_symbols "urd-phonetic" {
1503 include "pk(urd-phonetic)"
1504 name[Group1]= "Urdu (phonetic)";
1505 };
1506
1507 partial alphanumeric_keys
1508 xkb_symbols "urd-phonetic3" {
1509 include "pk(urd-crulp)"
1510 name[Group1]= "Urdu (alt. phonetic)";
1511 };
1512
1513 partial alphanumeric_keys
1514 xkb_symbols "urd-winkeys" {
1515 include "pk(urd-nla)"
1516 name[Group1]= "Urdu (Windows)";
1517 };
1518
1519 partial alphanumeric_keys
1520 xkb_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 (a] gmail.com
1592
1593 partial alphanumeric_keys
1594 xkb_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
1660 partial alphanumeric_keys
1661 xkb_symbols "olpc" {
1662
1663 // Contact: Walter Bender <walter (a] 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
1725 partial alphanumeric_keys
1726 xkb_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
1791 partial alphanumeric_keys
1792 xkb_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 (a] 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
1810 partial alphanumeric_keys
1811 xkb_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 (a] gmail.com>
1903 //
1904 partial alphanumeric_keys
1905 xkb_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
1969 partial alphanumeric_keys
1970 xkb_symbols "san-kagapa" {
1971 include "in(hin-kagapa)"
1972 name[Group1] = "Sanskrit (KaGaPa, phonetic)";
1973 };
1974
1975 // Marathi uses Devanagari layout of Hindi
1976 partial alphanumeric_keys
1977 xkb_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 (a] gmail.com>
1994 //
1995 partial alphanumeric_keys
1996 xkb_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 (a] gmail.com>
2071 //
2072 partial alphanumeric_keys
2073 xkb_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 (a] gmail.com>
2138 // Date : December, 2013
2139 // Source :
2140 // Comment :
2141
2142 partial alphanumeric_keys modifier_keys
2143 xkb_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 (a] gmail.com
2205
2206 partial alphanumeric_keys modifier_keys
2207 xkb_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 (a] gmail.com
2265
2266 xkb_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 (a] gmail.com>
2325 // Date : 27th October, 2020
2326 partial alphanumeric_keys
2327 xkb_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 (a] gmail.com>
2393 // Date : 9th February, 2020
2394 //
2395 partial alphanumeric_keys
2396 xkb_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