Home | History | Annotate | Line # | Download | only in symbols
in revision 1.7
      1 // This layout includes all Indian layouts, including:
      2 //     - Bengali
      3 //     - Gujarati 
      4 //     - Kannada 
      5 //     - Malayalam
      6 //     - Oriya 
      7 //     - Tamil
      8 //     - Telugu
      9 //     - Urdu
     10 
     11 // Links:
     12 // - Indic INSCRIPT keyboard layout diagrams:
     13 //     http://java.sun.com/products/jfc/tsc/articles/InputMethod/indiclayout.html
     14 // - Bengali Baishakhi (Bengali layouts):
     15 // - Bengali Baishakhi Inscript (Bengali layouts):
     16 // - Bengali Bornona (Bengali layouts):
     17 // - Uni Gitanjali (Bengali layouts):
     18 //     http://nltr.org
     19 // - Ekusheyr Shadhinota (Bengali layouts):
     20 //     http://ekushey.org/projects/shadhinota/index.html
     21 // - Microsoft Windows XP SP2: Indic Language Standards - an Introduction:
     22 //     http://www.bhashaindia.com/MSProducts/XpSp2/Articles/IndicLanguageStandards.aspx
     23 
     24 // based on a keyboard map from an 'xkb/symbols/dev' file
     25 
     26 // Devangari is the default. Kill me if I am wrong:)
     27 default partial alphanumeric_keys
     28 xkb_symbols "deva" {
     29 	// March 2004 -- David Holl <smyrph+dev_xkb (a] ece.wpi.edu>
     30 	name[Group1]="Indian";
     31 
     32 	key.type="FOUR_LEVEL";
     33 
     34 	key <TLDE> { [ U094a, U0912,   grave, asciitilde  ] };
     35 	key <AE01> { [ U0967, U090d,       1, exclam      ] };
     36 	key <AE02> { [ U0968, U0945,       2, at          ] };
     37 	// Shift+AE0[3-8] really need to return a macro of keys defined by
     38 	// INSCRIPT in place of the symbols that are here for now.  But this
     39 	// requires XKB to map 1 key into two to three other key presses.
     40 	key <AE03> { [ U0969, numbersign,  3, numbersign  ] };
     41 	key <AE04> { [ U096a, dollar,      4		  ] };
     42 	key <AE05> { [ U096b, percent,     5, percent     ] };
     43 	key <AE06> { [ U096c, asciicircum, 6, asciicircum ] };
     44 	key <AE07> { [ U096d, ampersand,   7, ampersand   ] };
     45 	key <AE08> { [ U096e, asterisk,    8, asterisk    ] };
     46 	key <AE09> { [ U096f, parenleft,   9, parenleft   ] };
     47 	key <AE10> { [ U0966, parenright,  0, parenright  ] };
     48 	key <AE11> { [ minus, U0903, minus, underscore    ] };
     49 	key <AE12> { [ U0943, U090b, U0944, U0960 ] };
     50 
     51 	key <AD01> { [ U094c, U0914 ] };
     52 	key <AD02> { [ U0948, U0910 ] };
     53 	key <AD03> { [ U093e, U0906 ] };
     54 	key <AD04> { [ U0940, U0908, U0963, U0961 ] };
     55 	key <AD05> { [ U0942, U090a ] };
     56 	key <AD06> { [ U092c, U092d ] };
     57 	key <AD07> { [ U0939, U0919 ] };
     58 	key <AD08> { [ U0917, U0918, U095a ] };
     59 	key <AD09> { [ U0926, U0927 ] };
     60 	key <AD10> { [ U091c, U091d, U095b ] };
     61 	key <AD11> { [ U0921, U0922, U095c, U095d ] };
     62 	key <AD12> { [ U093c, U091e ] };
     63 	// I added \ / ? | for shell-convenience (file names and piping)
     64 	key <BKSL> { [ U0949, U0911, U005C, U007C ] };
     65 
     66 	key <AC01> { [ U094b, U0913 ] };
     67 	key <AC02> { [ U0947, U090f ] };
     68 	key <AC03> { [ U094d, U0905 ] };
     69 	key <AC04> { [ U093f, U0907, U0962, U090c ] };
     70 	key <AC05> { [ U0941, U0909 ] };
     71 	key <AC06> { [ U092a, U092b, NoSymbol, U095e ] };
     72 	key <AC07> { [ U0930, U0931 ] };
     73 	key <AC08> { [ U0915, U0916, U0958, U0959 ] };
     74 	key <AC09> { [ U0924, U0925 ] };
     75 	key <AC10> { [ U091a, U091b, U0952 ] };
     76 	key <AC11> { [ U091f, U0920, NoSymbol, U0951 ] };
     77 
     78 	key <AB01> { [ U0946, U090e, U0953 ] };
     79 	key <AB02> { [ U0902, U0901, NoSymbol, U0950 ] };
     80 	key <AB03> { [ U092e, U0923, U0954 ] };
     81 	key <AB04> { [ U0928, U0929 ] };
     82 	key <AB05> { [ U0935, U0934 ] };
     83 	key <AB06> { [ U0932, U0933 ] };
     84 	key <AB07> { [ U0938, U0936 ] };
     85 	key <AB08> { [ comma, U0937, U0970 ] };
     86 	key <AB09> { [ period, U0964, U0965, U093d ] };
     87 	// I added \ / ? | for shell-convenience (file names and piping)
     88 	key <AB10> { [ U092f, U095f, slash, question ] };
     89 
     90 	// space, space, Zero-Width-Non-Joiner (ZWNJ), Zero-Width-Joiner (ZWJ):
     91 	include "nbsp(zwnj3zwj4)"
     92         include "rupeesign(4)"
     93         include "level3(ralt_switch)"
     94 };
     95 
     96 //Name		:	Bolnagri (Combined)
     97 //Description	:	A phonetic keyboard layout for Devnagari(Hindi)
     98 //			http://www.indlinux.org/wiki/index.php/BolNagri
     99 //NOTE		: 	This is a combined map of bolnagri_matras and bolnagri_vowels.
    100 //Inspired by "devrom" keymap by Steve Smith for the windows tool "keyman"
    101 //Original Author :	Noah Levitt<nlevitt at columbia.edu>
    102 //Past Authors  : Pramod.R <pramodr at gmail.com> and Ravikant <ravikant at sarai.net>
    103 //Current Main. : G Karunakar <karunakar (a] indlinux.org>
    104 
    105 partial alphanumeric_keys
    106 xkb_symbols "bolnagri" {
    107      name[Group1] = "Hindi (Bolnagri)";
    108      key.type="FOUR_LEVEL";
    109     //Top Alphanumeric row
    110     // Roman digits
    111     key <TLDE>  { [   U0902,	U0901,		apostrophe, 	asciitilde ] }; // apostrophe: anusvara, candrabindu
    112     key <AE01>  { [   1,	exclam,		U0967,		exclam	   ] };
    113     key <AE02>  { [   2,	at,		U0968,		at	   ] };
    114     key <AE03>  { [   3,    	numbersign, 	U0969,		numbersign ] };
    115     key <AE04>  { [   4,	dollar,		U096A			    ] }; // Rupee symbol on AltGr+4
    116     key <AE05>  { [   5,	percent,	U096B,		percent    ] };
    117     key <AE06>  { [   6,	asciicircum,	U096C,		asciicircum ] };
    118     key <AE07>  { [   7,	ampersand,	U096D,		ampersand  ] };
    119     key <AE08>  { [   8,	asterisk,	U096E,		asterisk   ] };
    120     key <AE09>  { [   9,	parenleft,	U096F,		parenleft  ] };
    121     key <AE10>  { [   0,	parenright,	U0966,		parenright ] };
    122     key <AE11>	{ [   minus,	underscore	     ] };
    123     key <AE12>	{ [   equal,	plus		     ] };
    124     key <BKSL>  { [   U0964,	U0965,		U007C,		U005C   ] }; //pipe : danda, double danda
    125 
    126     //Q Row	
    127     key <AD01>   { [   U200C, 	U200D   ] };  // Q: ZWNJ, ZWJ
    128     key <AD02>   { [   U0935,  	U950	] };  // W: wa, OM
    129     key <AD03>   { [   U0947,   U0948,	U090F,	U0910   ] };  // E: e, ai matras
    130     key <AD04>   { [   U0930,	U0943,	U0931,  U090B  	] };  // R: ra, vocalic Ri
    131     key <AD05>   { [   U0924,   U0925   ] };  // T: ta, tha
    132     key <AD06>   { [   U092f,	U091E   ] };  // Y: ya, nya
    133     key <AD07>   { [   U0941,   U0942,	U0909,	U090A   ] };  // U: u, uu matras
    134     key <AD08>   { [   U093F,   U0940,	U0907,	U0908   ] };  // I: i, ii matras
    135     key <AD09>   { [   U094B,   U094C,	U0913,	U0914   ] };  // O: o, au matras
    136     key <AD10>   { [   U092A,   U092B   ] };  // P: pa, pha
    137     key <AD11>   { [   bracketleft,   braceleft   ] };  
    138     key <AD12>	 { [   bracketright, braceright   ] };
    139     
    140     //A Row
    141     key <AC01>   { [   U093E,	 U0906,	U0905,	U0906  ] };   // A: aa, full A, AA
    142     key <AC02>   { [   U0938,    U0937   ] };  // S: sa, ssa
    143     key <AC03>   { [   U0926,    U0927   ] };  // D: da, dha
    144     key <AC04>   { [   U091F,    U0920   ] };  // F: TA, THA
    145     key <AC05>   { [   U0917,    U0918   ] };  // G: ga, gha
    146     key <AC06>   { [   U0939,    U0903   ] };  // H: ha, visarg 
    147     key <AC07>   { [   U091C,    U091D   ] };  // J: ja, jha
    148     key <AC08>   { [   U0915,    U0916   ] };  // K: ka, kha
    149     key <AC09>   { [   U0932,	 U0933,	U0962,   U090C   ] };  // L: la, vocalic L or lru matra
    150     key <AC10>   { [   semicolon, colon  ] }; 
    151     key <AC11>   { [apostrophe, quotedbl ] };
    152 
    153     //Z Row
    154     key <AB01>   { [   U0936,	 U0945, U0936, U090D 	 ] };  // Z: sha, akaar candra
    155     key <AB02>   { [   U094D,    U0949, U094D, U0911	 ] };  // X: halant, aakaar candra, chandra A
    156     key <AB03>   { [   U091A,    U091B   ] };  // C: ca, cha
    157     key <AB04>   { [   U0921,    U0922   ] };  // V: da, dha
    158     key <AB05>   { [   U092C,    U092D   ] };  // B: ba, bha
    159     key <AB06>   { [   U0928,    U0923   ] };  // N: na, nna
    160     key <AB07>   { [   U092E,    U0919,	U092E,	U093D   ] };  // M: ma, nga, avagraha
    161     key <AB08>   { [   comma,    U0970	 ] };// comma: comma, dev abbreviation sign
    162     key <AB09>   { [   period,   U093C 	 ] };  // period: period, nukta
    163     key <AB10>	 { [   slash,   question ] };
    164 
    165    // begin modifier mappings
    166 //    modifier_map Shift  { Shift_L };
    167 //    modifier_map Lock   { Caps_Lock };
    168 //    modifier_map Control{ Control_L };
    169 //    modifier_map Mod3   { Mode_switch };
    170 
    171     include "level3(ralt_switch)"
    172     include "rupeesign(4)"
    173 };
    174 
    175 // based on a keyboard map from an 'xkb/symbols/ben' file
    176 
    177 partial alphanumeric_keys
    178 xkb_symbols "ben" {
    179     name[Group1]= "Bengali (India)";
    180 
    181       // Mainly numbers.
    182       key <AE01> { [      U09E7 		]	};
    183       key <AE02> { [      U09E8 		]	};
    184       key <AE03> { [      U09E9 		]	};
    185       key <AE04> { [      U09EA 		]	};
    186       key <AE05> { [      U09EB		]	};
    187       key <AE06> { [      U09EC 		]	};
    188       key <AE07> { [      U09ED	        ]	};
    189       key <AE08> { [      U09EE 		]	};
    190       key <AE09> { [      U09EF, parenleft	]	};
    191       key <AE10> { [      U09E6, parenright	]	};
    192       key <AE11> { [      minus, U0983 	]	};
    193       key <AE12> { [      U098B, U09C3	]	};
    194 
    195 // Mainly long vowels
    196 
    197       key <AD01> { [      U09CC,  U0994	]	};
    198       key <AD02> { [      U09C8,  U0990	]	};
    199       key <AD03> { [      U09BE,  U0986	]	};
    200       key <AD04> { [      U09C0,  U0988	]	};
    201       key <AD05> { [      U09C2,  U098A	]	};
    202 
    203 // Mainly voiced consonants
    204 
    205       key <AD06> { [      U09AC,  U09AD	]	};
    206       key <AD07> { [      U09B9,  U0999 ]	};
    207       key <AD08> { [      U0997,  U0998 ]	};
    208       key <AD09> { [      U09A6,  U09A7 ]	};
    209       key <AD10> { [      U099C,  U099D ]	};
    210       key <AD11> { [      U09A1, U09A2 	]	};
    211       key <AD12> { [      U09BC, U099E 	]	};
    212 
    213 // Mainly short vowels
    214       key <AC01> { [      U09CB,  U0993 ]	};
    215       key <AC02> { [      U09C7,  U098F ]	};
    216       key <AC03> { [      U09CD,  U0985 ]	};
    217       key <AC04> { [      U09BF,  U0987 ]	};
    218       key <AC05> { [      U09C1,  U0989 ]	};
    219 
    220 
    221 // Mainly unvoiced consonants
    222 
    223       key <AC06> { [      U09AA,  U09AB ]	};
    224       key <AC07> { [      U09B0,  U09DD ]	};
    225       key <AC08> { [      U0995,  U0996 ]	};
    226       key <AC09> { [      U09A4,  U09A5 ]	};
    227       key <AC10> { [      U099A,  U099B ]	};
    228       key <AC11> { [      U099F, U09A0 	]	};
    229       key <BKSL> { [      U005C, U007C 	]	};
    230 
    231       key <AB01> { [      z, Z  		]       };
    232       key <AB02> { [      U0982,  U0981 ]       };
    233       key <AB03> { [      U09AE,  U09A3 ]       };
    234       key <AB04> { [      U09A8,  U09A8 ]       };
    235       key <AB05> { [      U09AC,  U09AC ]       };
    236       key <AB06> { [      U09B2,  U09B2 ]       };
    237       key <AB07> { [      U09B8,  U09B6 ]       };
    238       key <AB08> { [      comma,      U09B7 ]       };
    239       key <AB09> { [      period,     U0964 ]       };
    240       key <AB10> { [      U09DF,  U09AF	]       };
    241 
    242     include "level3(ralt_switch)"
    243     include "rupeesign(4)"
    244 };
    245 
    246 xkb_symbols "ben_probhat" {
    247  name[Group1]= "Bengali (India, Probhat)";
    248    key <ESC>  { [ Escape ] };
    249 
    250 // numbers
    251    key <TLDE> { [ U200D, asciitilde   ] };
    252    key <AE01> { [ U09E7, exclam       ] };
    253    key <AE02> { [ U09E8, at           ] };
    254    key <AE03> { [ U09E9, numbersign   ] };
    255    key <AE04> { [ U09EA, U09F3    ] };
    256    key <AE05> { [ U09EB, percent      ] };
    257    key <AE06> { [ U09EC, asciicircum  ] };
    258    key <AE07> { [ U09ED, U099E    ] };
    259    key <AE08> { [ U09EE, U09CE    ] };
    260    key <AE09> { [ U09EF, parenleft    ] };
    261    key <AE10> { [ U09E6, parenright   ] };
    262    key <AE11> { [ minus,     underscore   ] };
    263    key <AE12> { [ equal,     plus         ] };
    264    key <BKSP> { [ BackSpace               ] };
    265 
    266 // tab, q to ] 
    267    key <TAB>  { [   Tab,  ISO_Left_Tab     ] };
    268    key <AD01> { [   U09A6,  U09A7  ] };
    269    key <AD02> { [   U09C2,  U098A  ] };
    270    key <AD03> { [   U09C0,  U0988  ] };
    271    key <AD04> { [   U09B0,  U09DC  ] };
    272    key <AD05> { [   U099F,  U09A0  ] };
    273    key <AD06> { [   U098F,  U0990  ] };
    274    key <AD07> { [   U09C1,  U0989  ] };
    275    key <AD08> { [   U09BF,  U0987  ] };
    276    key <AD09> { [   U0993,  U0994  ] };
    277    key <AD10> { [   U09AA,  U09AB  ] };
    278    key <AD11> { [   U09C7,  U09C8  ] };
    279    key <AD12> { [   U09CB,  U09CC  ] };
    280    key <RTRN> { [   Return                 ] };
    281 
    282 // caps, a to ' 
    283 //   key <CAPS> { [   Caps_Lock              ] };
    284    key <AC01> { [   U09BE,  U0985  ] };
    285    key <AC02> { [   U09B8,  U09B7  ] };
    286    key <AC03> { [   U09A1,  U09A2  ] };
    287    key <AC04> { [   U09A4,  U09A5  ] };
    288    key <AC05> { [   U0997,  U0998  ] };
    289    key <AC06> { [   U09B9,  U0983  ] };
    290    key <AC07> { [   U099C,  U099D  ] };
    291    key <AC08> { [   U0995,  U0996  ] };
    292    key <AC09> { [   U09B2,  U0982  ] };
    293    key <AC10> { [   semicolon,  colon      ] };
    294    key <AC11> { [   quoteright, quotedbl   ] };
    295 
    296 // shift, z to /
    297 //   key <LFSH> { [   Shift_L                ] };
    298    key <AB01> { [   U09DF,  U09AF  ] };
    299    key <AB02> { [   U09B6,  U09DD  ] };
    300    key <AB03> { [   U099A,  U099B  ] };
    301    key <AB04> { [   U0986,  U098B  ] };
    302    key <AB05> { [   U09AC,  U09AD  ] };
    303    key <AB06> { [   U09A8,  U09A3  ] };
    304    key <AB07> { [   U09AE,  U0999  ] };
    305    key <AB08> { [   comma,      U09C3  ] };
    306    key <AB09> { [   U0964,  U0981  ] };
    307    key <AB10> { [   U09CD,  question   ] };
    308    key <BKSL> { [   U200C,  U0965  ] };
    309 
    310 //   key <LCTL> { [   Control_L              ] };
    311 //   key <SPCE> { [   space                  ] };
    312 
    313 //   modifier_map Shift  { Shift_L };
    314 //   modifier_map Lock   { Caps_Lock };
    315 //   modifier_map Control{ Control_L };
    316 
    317     include "level3(ralt_switch)"
    318     include "rupeesign(4)"
    319 };
    320 
    321 // Bengali Baishakhi, Bengali Baishakhi Inscript, Bengali Bornona, Uni Gitanjali Layouts are added by Promathesh Mandal <promathesh812004 (a] gmail.com>
    322 
    323 xkb_symbols "ben_baishakhi" {
    324  name[Group1]= "Bengali (India, Baishakhi)";
    325    key <ESC>   { [ Escape 					] };
    326 
    327 // numbers
    328    key <TLDE> { [ 0x100200D, 0x100200C	] };
    329    key <AE01> { [ 0x10009E7, exclam		] };
    330    key <AE02> { [ 0x10009E8, at		] };
    331    key <AE03> { [ 0x10009E9, numbersign	] };
    332    key <AE04> { [ 0x10009EA, dollar, 0x10009F2	] };
    333    key <AE05> { [ 0x10009EB, percent		] };
    334    key <AE06> { [ 0x10009EC, asciicircum, 0x10009D7    ] };
    335    key <AE07> { [ 0x10009ED, ampersand ] };
    336    key <AE08> { [ 0x10009EE,   asterisk,0x10009FA       		] };
    337    key <AE09> { [ 0x10009EF, parenleft    	] };
    338    key <AE10> { [ 0x10009E6, parenright   	] };
    339    key <AE11> { [ minus, underscore   	] };
    340    key <AE12> { [ equal,     plus 	] };
    341    key <BKSP> { [ BackSpace               		] };
    342 
    343 // tab, q to ] 
    344    key <TAB>   { [   Tab,  ISO_Left_Tab		] };
    345    key <AD01> { [   0x10009A1,  0x10009A2  ] };
    346    key <AD02> { [  0x10009C0 ,  0x10009C2  ] };
    347    key <AD03> { [   0x10009C7,  0x100098F, 0x1000990 ] };
    348    key <AD04> { [   0x10009B0 , 0x10009C3, 0x100098B             		] };
    349    key <AD05> { [   0x100099F,  0x10009A0	] };
    350    key <AD06> { [   0x10009AF,  0x10009DF	] };
    351    key <AD07> { [   0x10009C1,  0x1000989, 0x100098A  ] };
    352    key <AD08> { [   0x10009BF,  0x1000987, 0x1000988  ] };
    353    key <AD09> { [   0x10009CB,  0x1000993, 0x1000994	] };
    354    key <AD10> { [   0x10009AA,  0x10009AB	] };
    355    key <AD11> { [   bracketleft,  braceleft] };
    356    key <AD12> { [   bracketright,	braceright	] };
    357    key <RTRN> { [   Return                 		] };
    358 
    359 // caps, a to ' 
    360 // key <CAPS> { [   Caps_Lock            		] };
    361    key <AC01> { [   0x10009BE,  0x1000985, 0x1000986  ] };
    362    key <AC02> { [   0x10009B8,  0x10009B6,  0x10009B7  ] };
    363    key <AC03> { [   0x10009A6,  0x10009A7  ] };
    364    key <AC04> { [   0x10009A4,   0x10009A5, 0x10009CE  ] };
    365    key <AC05> { [   0x1000997,  0x1000998	] };
    366    key <AC06> { [   0x10009CD,  0x10009B9, 0x1000983  ] };
    367    key <AC07> { [   0x100099C,  0x100099D	] };
    368    key <AC08> { [   0x1000995,  0x1000996  	] };
    369   key <AC09> { [   0x10009B2,  0x1000964, 0x100098C  ] };
    370    key <AC10> { [   semicolon,  colon  	] };
    371    key <AC11> { [   quoteright, quotedbl   	] };
    372 
    373 // shift, z to /
    374 // key <LFSH> { [   Shift_L              			] };
    375    key <AB01> { [   0x10009C8, 0x10009CC              		] };
    376    key <AB02> { [   0x10009DC, 0x10009DD              		] };
    377    key <AB03> { [   0x100099A,  0x100099B  ] };
    378    key <AB04> { [   0x10009F1,  0x10009F0	] };
    379    key <AB05> { [   0x10009AC,  0x10009AD  ] };
    380    key <AB06> { [   0x10009A8,  0x10009A3, 0x100099E  ] };
    381    key <AB07> { [   0x10009AE,  0x1000999, 0x1000981  ] };
    382    key <AB08> { [   comma,      less	] };
    383    key <AB09> { [    period,	greater,0x10009BC 		] };
    384    key <AB10> { [   slash,  question, 0x1000982   	] };
    385    key <BKSL> { [   backslash,        bar	] };
    386 
    387 // third level with right-alt
    388     include "level3(ralt_switch)"
    389 
    390 //   key <LCTL> { [   Control_L              ] };
    391 //   key <SPCE> { [   space                  ] };
    392 
    393 //   modifier_map Shift  { Shift_L };
    394 //   modifier_map Lock   { Caps_Lock };
    395 //   modifier_map Control{ Control_L };
    396 
    397 
    398 };
    399 
    400 xkb_symbols "ben_inscript" {
    401     name[Group1]= "Bengali (India, Baishakhi Inscript)";
    402 
    403       // Mainly numbers.
    404       key <TLDE> { [      0x100200D, 0x100200C	] 	};
    405       key <AE01> { [      0x10009E7  		]	};
    406       key <AE02> { [      0x10009E8 		]	};
    407       key <AE03> { [      0x10009E9 		]	};
    408       key <AE04> { [      0x10009EA 		]	};
    409       key <AE05> { [      0x10009EB		]	};
    410       key <AE06> { [      0x10009EC 		]	};
    411       key <AE07> { [      0x10009ED	        ]	};
    412       key <AE08> { [      0x10009EE 		]	};
    413       key <AE09> { [      0x10009EF, parenleft	]	};
    414       key <AE10> { [      0x10009E6, parenright	]	};
    415       key <AE11> { [      minus, 0x1000983 	]	};
    416       key <AE12> { [      0x10009C3, 0x100098B 	]	};
    417 
    418 // Mainly long vowels
    419 
    420       key <AD01> { [      0x10009CC,  0x1000994	]	};
    421       key <AD02> { [      0x10009C8,  0x1000990	]	};
    422       key <AD03> { [      0x10009BE,  0x1000986	]	};
    423       key <AD04> { [      0x10009C0,  0x1000988	]	};
    424       key <AD05> { [      0x10009C2,  0x100098A	]	};
    425 
    426 // Mainly voiced consonants
    427 
    428       key <AD06> { [      0x10009AC,  0x10009AD	]	};
    429       key <AD07> { [      0x10009B9,  0x1000999 ]	};
    430       key <AD08> { [      0x1000997,  0x1000998 ]	};
    431       key <AD09> { [      0x10009A6,  0x10009A7 ]	};
    432       key <AD10> { [      0x100099C,  0x100099D ]	};
    433       key <AD11> { [      0x10009A1,  0x10009A2 ]	};
    434       key <AD12> { [      0x10009BC,  0x100099E ]	};
    435 
    436 // Mainly short vowels
    437       key <AC01> { [      0x10009CB,  0x1000993 ]	};
    438       key <AC02> { [      0x10009C7,  0x100098F ]	};
    439       key <AC03> { [      0x10009CD,  0x1000985 ]	};
    440       key <AC04> { [      0x10009BF,  0x1000987 ]	};
    441       key <AC05> { [      0x10009C1,  0x1000989 ]	};
    442 
    443 
    444 // Mainly unvoiced consonants
    445 
    446       key <AC06> { [      0x10009AA,  0x10009AB ]	};
    447       key <AC07> { [      0x10009B0,  0x10009DD ]	};
    448       key <AC08> { [      0x1000995,  0x1000996 ]	};
    449       key <AC09> { [      0x10009A4,  0x10009A5 ]	};
    450       key <AC10> { [      0x100099A,  0x100099B ]	};
    451       key <AC11> { [      0x100099F, 0x10009A0 	]	};
    452       key <BKSL> { [      backslash, bar 	]	};
    453 
    454       key <AB01> { [      0x10009CE  		]       };
    455       key <AB02> { [      0x1000982,  0x1000981 ]       };
    456       key <AB03> { [      0x10009AE,  0x10009A3 ]       };
    457       key <AB04> { [      0x10009A8,  0x10009A8 ]       };
    458       key <AB05> { [      0x10009AC,  0x10009AC ]       };
    459       key <AB06> { [      0x10009B2,  0x10009B2 ]       };
    460       key <AB07> { [      0x10009B8,  0x10009B6 ]       };
    461       key <AB08> { [      comma,      0x10009B7 ]       };
    462       key <AB09> { [      period,     0x1000964 ]       };
    463       key <AB10> { [      0x10009DF,  0x10009AF	]       };
    464 };
    465 
    466 xkb_symbols "ben_gitanjali" {
    467  name[Group1]= "Bengali (India, Uni Gitanjali)";
    468    key <ESC>   { [ Escape			] };
    469 
    470 // numbers
    471    key <TLDE> { [ colon, question	] };
    472    key <AE01> { [ 0x10009E7, 0x10009CE	] };
    473    key <AE02> { [ 0x10009E8, quoteright	] };
    474    key <AE03> { [ 0x10009E9, numbersign	] };
    475    key <AE04> { [ 0x10009EA, 0x10009F3	] };
    476    key <AE05> { [ 0x10009EB, slash	] };
    477    key <AE06> { [ 0x10009EC, period	] };
    478    key <AE07> { [ 0x10009ED, ampersand 	] };
    479    key <AE08> { [ 0x10009EE, asterisk 	] };
    480    key <AE09> { [ 0x10009EF, parenleft  ] };
    481    key <AE10> { [ 0x10009E6, parenright	] };
    482    key <AE11> { [ minus, 0x1000983   	] };
    483    key <AE12> { [ 0x10009C3, 0x100098B 	] };
    484    key <BKSP> { [ BackSpace		] };
    485 
    486 // tab, q to ] 
    487    key <TAB>   { [   Tab,  ISO_Left_Tab	] };
    488    key <AD01> { [   0x10009D7,  0x1000994 ] };
    489    key <AD02> { [   0x10009C8,  0x1000990 ] };
    490    key <AD03> { [   0x10009BE,  0x1000985 ] };
    491    key <AD04> { [   0x10009C0,  0x1000988 ] };
    492    key <AD05> { [   0x10009C2,  0x100098A ] };
    493    key <AD06> { [   0x10009AC,  0x10009AD ] };
    494    key <AD07> { [   0x10009B9,  0x1000999 ] };
    495    key <AD08> { [   0x1000997,  0x1000998 ] };
    496    key <AD09> { [   0x10009A6,  0x10009A7 ] };
    497    key <AD10> { [   0x100099C,  0x100099D ] };
    498    key <AD11> { [   0x10009A1,  0x10009A2 ] };
    499    key <AD12> { [   0x100200C,  0x100099E ] };
    500    key <RTRN> { [   Return		  ] };
    501 
    502 // caps, a to ' 
    503 // key <CAPS> { [   Caps_Lock            		] };
    504    key <AC01> { [   0x100200D,  0x1000993 ] };
    505    key <AC02> { [   0x10009C7,  0x100098F ] };
    506    key <AC03> { [   0x10009CD		  ] };
    507    key <AC04> { [   0x10009BF,  0x1000987 ] };
    508    key <AC05> { [   0x10009C1,  0x1000989 ] };
    509    key <AC06> { [   0x10009AA,  0x10009AB ] };
    510    key <AC07> { [   0x10009B0,  0x10009F0 ] };
    511    key <AC08> { [   0x1000995,  0x1000996 ] };
    512    key <AC09> { [   0x10009A4,  0x10009A5 ] };
    513    key <AC10> { [   0x100099A,  0x100099B ] };
    514    key <AC11> { [   0x100099F,  0x10009A0 ] };
    515 
    516 // shift, z to /
    517 // key <LFSH> { [   Shift_L              			] };
    518    key <AB01> { [   0x10009C7, 0x100098F ] };
    519    key <AB02> { [   0x1000982, 0x1000981 ] };
    520    key <AB03> { [   0x10009AE, 0x10009A3 ] };
    521    key <AB04> { [   0x10009A8, 0x10009DC ] };
    522    key <AB05> { [   0x10009F1, 0x10009DD ] };
    523    key <AB06> { [   0x10009B2		 ] };
    524    key <AB07> { [   0x10009B8, 0x10009B6 ] };
    525    key <AB08> { [   comma,     0x10009B7 ] };
    526    key <AB09> { [   0x1000964, 0x10009FA ] };
    527    key <AB10> { [   0x10009AF, 0x10009DF ] };
    528    key <BKSL> { [   backslash, bar	 ] };
    529 
    530 // third level with right-win
    531 //    include "level3(lwin_switch)"
    532 
    533 //   key <LCTL> { [   Control_L              ] };
    534 //   key <SPCE> { [   space                  ] };
    535 
    536 //   modifier_map Shift  { Shift_L };
    537 //   modifier_map Lock   { Caps_Lock };
    538 //   modifier_map Control{ Control_L };
    539 
    540 
    541 };
    542 
    543 
    544 xkb_symbols "ben_bornona" {
    545  name[Group1]= "Bengali (India, Bornona)";
    546    key <ESC>  { [ Escape 					] };
    547 
    548 // numbers
    549    key <TLDE> { [ 0x100200D, 0x100200C   	] };
    550    key <AE01> { [ 0x10009E7, exclam         	] };
    551    key <AE02> { [ 0x10009E8, 0x1000981 	] };
    552    key <AE03> { [ 0x10009E9, numbersign   	] };
    553    key <AE04> { [ 0x10009EA, 0x10009F3    	] };
    554    key <AE05> { [ 0x10009EB, percent      	] };
    555    key <AE06> { [ 0x10009EC, 0x1000983    	] };
    556    key <AE07> { [ 0x10009ED, 0x10009CE	] };
    557    key <AE08> { [ 0x10009EE, asterisk		] };
    558    key <AE09> { [ 0x10009EF, parenleft    	] };
    559    key <AE10> { [ 0x10009E6, parenright	] };
    560    key <AE11> { [ minus,	   underscore	] };
    561    key <AE12> { [ equal,          plus			] };
    562    key <BKSP> { [ BackSpace               		] };
    563 
    564 // tab, q to ] 
    565    key <TAB>   { [   Tab,  	ISO_Left_Tab	] };
    566    key <AD01> { [   0x1000982,  0x1000999, 0x10009D7	] };
    567    key <AD02> { [   0x10009A2,  0x10009A0, 0x100098A ] };
    568    key <AD03> { [   0x10009C7,  0x10009C8, 0x1000988	] };
    569    key <AD04> { [   0x10009B0,  0x10009C3, 0x100098B	] };
    570    key <AD05> { [   0x10009A4,  0x100099F	] };
    571    key <AD06> { [   0x10009A7,  0x10009A5, 0x100098F  ] };
    572    key <AD07> { [   0x10009C1,  0x10009C2, 0x1000989	] };
    573    key <AD08> { [   0x10009BF,  0x10009C0, 0x1000987	] };
    574    key <AD09> { [   0x10009CB,  0x10009CC, 0x1000993	] };
    575    key <AD10> { [   0x10009AA, 0x1000990, 0x1000994		] };
    576    key <AD11> { [   0x100005B,  0x100007B, 0x10009DC  ] };
    577    key <AD12> { [   0x100005D,  0x100007D  ] };
    578    key <RTRN> { [   Return					] };
    579 
    580 // caps, a to ' 
    581 // key <CAPS> { [   Caps_Lock            		] };
    582    key <AC01> { [   0x10009BE,  0x1000985, 0x10009F4  ] };
    583    key <AC02> { [   0x10009B8,  0x10009B6, 0x10009F5  ] };
    584    key <AC03> { [   0x10009A6,  0x10009A1, 0x10009F8  ] };
    585    key <AC04> { [   0x10009AB				] };
    586    key <AC05> { [   0x1000997,  0x1000998	] };
    587    key <AC06> { [   0x10009CD, 0x10009B9	] };
    588    key <AC07> { [   0x100099C,  0x100099D	] };
    589    key <AC08> { [   0x1000995,  0x1000996	] };
    590    key <AC09> { [   0x10009B2,  0x1000964  ] };
    591    key <AC10> { [   semicolon,  0x100003A	] };
    592    key <AC11> { [   quoteright, quotedbl   	] };
    593 
    594 // shift, z to /
    595 // key <LFSH> { [   Shift_L              			] };
    596    key <AB01> { [   0x10009AF, 0x10009DC	] };
    597    key <AB02> { [   0x10009B7, 0x10009DD, 0x10009FA	] };
    598    key <AB03> { [   0x100099A,  0x100099B  ] };
    599    key <AB04> { [   0x10009AD				] };
    600    key <AB05> { [   0x10009AC,  0x10009DF	] };
    601    key <AB06> { [   0x10009A8,  0x10009A3	] };
    602    key <AB07> { [   0x10009AE,  0x100099E	] };
    603    key <AB08> { [   comma,      0x100003C	] };
    604    key <AB09> { [   0x100002E,  0x100003E  ] };
    605    key <AB10> { [   0x100002F,  question   	] };
    606    key <BKSL> { [   0x10009F1,  0x10009F0	] };
    607 
    608 //   key <LCTL> { [   Control_L              ] };
    609 //   key <SPCE> { [   space                  ] };
    610 
    611 //   modifier_map Shift  { Shift_L };
    612 //   modifier_map Lock   { Caps_Lock };
    613 //   modifier_map Control{ Control_L };
    614 // third level with right-alt
    615     include "level3(ralt_switch)"
    616 
    617 };
    618 
    619 partial alphanumeric_keys 
    620 xkb_symbols "guj" {
    621       name[Group1]= "Gujarati";
    622 
    623       // Mainly numbers.
    624       key <AE01> { [      U0AE7, U0A8D 	]	};
    625       key <AE02> { [      U0AE8, U0AC5 	]	};
    626       key <AE03> { [      U0AE9 	 	]	};
    627       key <AE04> { [      U0AEA  	 	]	};
    628       key <AE05> { [      U0AEB  	 	]	};
    629       key <AE06> { [      U0AEC  	 	]	};
    630       key <AE07> { [      U0AED 		]	};
    631       key <AE08> { [      U0AEE  	 	]	};
    632       key <AE09> { [      U0AEF, parenleft 	]	};
    633       key <AE10> { [      U0AE6, parenright ]	};
    634       key <AE11> { [      minus,     U0A83  ]	};
    635       key <AE12> { [      U0A8B, U0AC3 	]	};
    636 
    637 // Mainly long vowels
    638 
    639       key <AD01> { [      U0ACC, U0A94  ]	};
    640       key <AD02> { [      U0AC8, U0A90  ]	};
    641       key <AD03> { [      U0ABE, U0A86  ]	};
    642       key <AD04> { [      U0AC0, U0A88  ]	};
    643       key <AD05> { [      U0AC2, U0A8A  ]	};
    644 
    645 // Mainly voiced consonants
    646 
    647       key <AD06> { [      U0AAC, U0AAD 	]	};
    648       key <AD07> { [      U0AB9, U0A99 	]	};
    649       key <AD08> { [      U0A97, U0A98 	]	};
    650       key <AD09> { [      U0AA6, U0AA7 	]	};
    651       key <AD10> { [      U0A9C, U0A9D 	]	};
    652       key <AD11> { [      U0AA1, U0AA2 	]	};
    653       key <AD12> { [      U0ABC, U0A9E 	]	};
    654 
    655 // Mainly short vowels
    656       key <AC01> { [      U0ACB, U0A93	]	};
    657       key <AC02> { [      U0AC7, U0A8F	]	};
    658       key <AC03> { [      U0ACD, U0A85  ]	};
    659       key <AC04> { [      U0ABF, U0A87  ]	};
    660       key <AC05> { [      U0AC1, U0A89  ]	};
    661 
    662 // Mainly unvoiced consonants
    663 
    664       key <AC06> { [      U0AAA, U0AAB 	]	};
    665       key <AC07> { [      U0AB0, U0AB0 	]	};
    666       key <AC08> { [      U0A95, U0A96 	]	};
    667       key <AC09> { [      U0AA4, U0AA5 	]	};
    668       key <AC10> { [      U0A9A, U0A9B 	]	};
    669       key <AC11> { [      U0A9F, U0AA0 	]	};
    670       key <BKSL> { [      U0AC9, U0A91 	]	};
    671 
    672       key <AB01> { [      z        , Z		]       };
    673       key <AB02> { [      U0A82, U0A81	]       };
    674       key <AB03> { [      U0AAE, U0AA3  ]       };
    675       key <AB04> { [      U0AA8, U0AA8   ]       };
    676       key <AB05> { [      U0AB5, U0AB5   ]       };
    677       key <AB06> { [      U0AB2, U0AB3  ]       };
    678       key <AB07> { [      U0AB8, U0AB6  ]       };
    679       key <AB08> { [      comma,     U0AB7  ]       };
    680       key <AB09> { [      period,    U0964  ]       };
    681       key <AB10> { [      U0AAF, question   ]       };
    682       include "rupeesign(4)"
    683       include "level3(ralt_switch)"
    684 };
    685 
    686 partial alphanumeric_keys 
    687 xkb_symbols "kan" {
    688 
    689     // Inscript layout for Kannada  
    690     // Author : G Karunakar <karunakar (a] freedomink.org>
    691     // Date   : Wed Nov 13 17:22:58 IST 2002
    692     // Kannada digits mapped in basic only
    693 
    694     name[Group1]= "Kannada";
    695 
    696     key <TLDE> { [  U0cca, U0c92	] };
    697     key <AE01> { [  U0ce7			] };
    698     key <AE02> { [  U0ce8			] };
    699     key <AE03> { [  U0ce9			] };
    700     key <AE04> { [  U0cea			] };
    701     key <AE05> { [  U0ceb			] };
    702     key <AE06> { [  U0cec			] };
    703     key <AE07> { [  U0ced			] };
    704     key <AE08> { [  U0cee			] };
    705     key <AE09> { [  U0cef			] };
    706     key <AE10> { [  U0ce6			] };
    707     key <AE11> { [  U0c83			] };
    708     key <AE12> { [  U0cc3, U0c8b	] };
    709 
    710     key <AD01> { [  U0ccc, U0c94	] };
    711     key <AD02> { [  U0cc8, U0c90	] };
    712     key <AD03> { [  U0cbe, U0c86	] };
    713     key <AD04> { [  U0cc0, U0c88	] };
    714     key <AD05> { [  U0cc2, U0c8a	] };
    715     key <AD06> { [  U0cac, U0cad	] };
    716     key <AD07> { [  U0cb9, U0c99	] };
    717     key <AD08> { [  U0c97, U0c98	] };
    718     key <AD09> { [  U0ca6, U0ca7	] };
    719     key <AD10> { [  U0c9c, U0c9d	] };
    720     key <AD11> { [  U0ca1, U0ca2	] };
    721     key <AD12> { [  U0cbc, U0c9e	] };
    722  
    723     key <AC01> { [  U0ccb, U0c93	] };
    724     key <AC02> { [  U0cc7, U0c8f	] };
    725     key <AC03> { [  U0ccd, U0c85	] };
    726     key <AC04> { [  U0cbf, U0c87	] };
    727     key <AC05> { [  U0cc1, U0c89	] };
    728     key <AC06> { [  U0caa, U0cab	] };
    729     key <AC07> { [  U0cb0, U0cb1	] };
    730     key <AC08> { [  U0c95, U0c96	] };
    731     key <AC09> { [  U0ca4, U0ca5	] };
    732     key <AC10> { [  U0c9a, U0c9b	] };
    733     key <AC11> { [  U0c9f, U0ca0	] };
    734 
    735     key <AB01> { [  U0cc6, U0c8e	] };
    736     key <AB02> { [  U0c82			] };
    737     key <AB03> { [  U0cae, U0ca3	] };
    738     key <AB04> { [  U0ca8			] };
    739     key <AB05> { [  U0cb5, U0cb4	] };
    740     key <AB06> { [  U0cb2, U0cb3	] };
    741     key <AB07> { [  U0cb8, U0cb6	] };
    742     key <AB08> { [  comma     , U0cb7	] };
    743     key <AB09> { [  period    				] };
    744     key <AB10> { [  U0caf, U0040	] };
    745 
    746     key <RALT> {
    747 	symbols[Group1] = [ Mode_switch, Multi_key ],
    748 	virtualMods = AltGr
    749     };
    750     include "rupeesign(4)"
    751     include "level3(ralt_switch)"
    752 };
    753 
    754 // Description : A keymap for Malayalam
    755 // Encoding    : Unicode (http://www.unicode.org)
    756 // Author      : Baiju M <baiju (a] freeshell.org>
    757 // Date        : Sat Aug  17 21:10:48 IST 2002
    758 // Mapping:
    759 
    760 partial alphanumeric_keys 
    761 xkb_symbols "mal" {
    762 
    763     name[Group1] = "Malayalam";
    764 
    765     //From grave to backslash (\)
    766     
    767     key <TLDE> { [ U0d4a , U0d12           ] };
    768 
    769 // svu: 
    770 // These lines were in former "mal" variant - 
    771 // but the digits are replaced with the ones from 'mal_plusnum' -
    772 // for the integrity of all Indian layouts
    773 //
    774 //    key <AE01> { [1           ,     exclam           ] }; 
    775 //    key <AE02> { [2           ,         at           ] };
    776 //    key <AE03> { [3           , numbersign           ] };
    777 //    key <AE04> { [4           ,     dollar           ] };
    778 //    key <AE05> { [5           ,    percent           ] };
    779 //    key <AE06> { [6           ,asciicircum           ] };
    780 //    key <AE07> { [7           ,  ampersand           ] };
    781 //    key <AE08> { [8           , asterisk           ] };
    782 //    key <AE09> { [9           ,  parenleft           ] };
    783 //    key <AE10> { [0           , parenright           ] };
    784 
    785       key <AE01> { [ U0d67 ,      exclam ] };
    786       key <AE02> { [ U0d68 ,          at ] };
    787       key <AE03> { [ U0d69 ,  numbersign ] };
    788       key <AE04> { [ U0d6a ,      dollar ] };
    789       key <AE05> { [ U0d6b ,     percent ] };
    790       key <AE06> { [ U0d6c , asciicircum ] };
    791       key <AE07> { [ U0d6d ,   ampersand ] };
    792       key <AE08> { [ U0d6e ,  asterisk ] };
    793       key <AE09> { [ U0d6f ,   parenleft ] };
    794       key <AE10> { [ U0d66 ,  parenright ] };
    795 
    796     key <AE11> { [ minus      , U0d03           ] };
    797     key <AE12> { [ U0d43 , U0d0b           ] };
    798     key <BKSL>  { [U0200c, U05C ]};//bksl: ZWNJ 
    799 
    800   
    801     // From 'q' to right bracket (])
    802     
    803     key <AD01> { [ U0d4c , U0d14 ] };
    804     key <AD02> { [ U0d48 , U0d10 ] };
    805     key <AD03> { [ U0d3e , U0d06 ] };
    806     key <AD04> { [ U0d40 , U0d08 ] };
    807     key <AD05> { [ U0d42 , U0d0a ] };
    808     key <AD06> { [ U0d2c , U0d2d ] };
    809     key <AD07> { [ U0d39 , U0d19 ] };
    810     key <AD08> { [ U0d17 , U0d18 ] };
    811     key <AD09> { [ U0d26 , U0d27 ] };
    812     key <AD10> { [ U0d1c , U0d1d ] };
    813     key <AD11> { [ U0d21 , U0d22 ] };
    814     key <AD12> { [ U0200d , U0d1e ] };
    815 
    816     // From 'a' to apostrophe (')
    817     
    818     key <AC01> { [ U0d4b , U0d13 ] };
    819     key <AC02> { [ U0d47 , U0d0f ] };
    820     key <AC03> { [ U0d4d , U0d05 ] };
    821     key <AC04> { [ U0d3f , U0d07 ] };
    822     key <AC05> { [ U0d41 , U0d09 ] };
    823     key <AC06> { [ U0d2a , U0d2b ] };
    824     key <AC07> { [ U0d30 , U0d31 ] };
    825     key <AC08> { [ U0d15 , U0d16 ] };
    826     key <AC09> { [ U0d24 , U0d25 ] };
    827     key <AC10> { [ U0d1a , U0d1b ] };
    828     key <AC11> { [ U0d1f , U0d20 ] };
    829     
    830     // From 'z' to slash (/)
    831     
    832     key <AB01> { [ U0d46 , U0d0e ] };
    833     key <AB02> { [ U0d02 , U200b ] };//X:ZWSP
    834     key <AB03> { [ U0d2e , U0d23 ] };
    835     key <AB04> { [ U0d28 ] };
    836     key <AB05> { [ U0d35 , U0d34 ] };
    837     key <AB06> { [ U0d32 , U0d33 ] };
    838     key <AB07> { [ U0d38 , U0d36 ] };
    839     key <AB08> { [ comma      , U0d37 ] };
    840     key <AB09> { [ period     , U0200d ] };
    841     key <AB10> { [ U0d2f , question   ] };
    842 
    843     include "rupeesign(4)"
    844     include "level3(ralt_switch)"
    845 
    846 };
    847 
    848 //Name		:	Lalitha
    849 //Description	:	A transliteration keyboard layout for Malayalam
    850 //Original Author :	Noah Levitt<nlevitt at columbia.edu>
    851 //Current Main  : 	Jinesh K.J<jinesh.k (a] gmail.com>, Swathantra Malayalam Computing (SMC)<smc-discuss (a] googlegroups.com>
    852 
    853 partial alphanumeric_keys
    854 xkb_symbols "mal_lalitha" {
    855      name[Group1] = "Malayalam (Lalitha)";
    856      key.type="FOUR_LEVEL";
    857     //Top Alphanumeric row
    858     // Roman digits
    859     key <TLDE>  { [   U0D4D,	U0D02,		apostrophe, 	asciitilde ] }; // apostrophe: virama(chandrakala),anusvara
    860     key <AE01>  { [   1,	exclam,	U0D67,		exclam	   ] };
    861     key <AE02>  { [   2,	at,		U0D68,		at	   ] };
    862     key <AE03>  { [   3,    	numbersign, 	U0D69,		numbersign ] };
    863     key <AE04>  { [   4,	dollar,		U0D6A			     ] };
    864     key <AE05>  { [   5,	percent,	U0D6B,		percent    ] };
    865     key <AE06>  { [   6,	asciicircum,	U0D6C,		asciicircum ] };
    866     key <AE07>  { [   7,	ampersand,	U0D6D,		ampersand  ] };
    867     key <AE08>  { [   8,	asterisk,	U0D6E,		asterisk   ] };
    868     key <AE09>  { [   9,	parenleft,	U0D6F,		parenleft  ] };
    869     key <AE10>  { [   0,	parenright,	U0D66,		parenright ] };
    870     key <AE11>	{ [   minus,	underscore	     ] };
    871     key <AE12>	{ [   equal,	plus		     ] };
    872     key <BKSL>  { [   U005C,	U007C,		U200C	] };//backslash:pipe,backslash,ZWNJ 
    873 
    874     //Q Row	
    875     key <AD01>   { [   U0D48,	U0D4C,	U0D10,	U0D14  ] }; // Q: ai and au matras 
    876     key <AD02>   { [   U0D35	] };  // W: wa, OM
    877     key <AD03>   { [   U0D46,   U0D47,	U0D0E,	U0D0F   ] };  // E: e,ee matras
    878     key <AD04>   { [   U0D30,	U0D31,	U0D43,	U0D0B  	] };  // R: ra,rra, vocalic Ri
    879     key <AD05>   { [   U0D24,   U0D25,	U0D1F,	U0D20   ] };  // T: tha, ttha,ta,tta
    880     key <AD06>   { [   U0D2f    ] };  // Y: ya
    881     key <AD07>   { [   U0D41,   U0D42,	U0D09,	U0D0A   ] };  // U: u, uu matras
    882     key <AD08>   { [   U0D3F,   U0D40,	U0D07,	U0D08   ] };  // I: i, ii matras
    883     key <AD09>   { [   U0D4A,   U0D4B,	U0D12,	U0D13   ] };  // O: o, oo matras
    884     key <AD10>   { [   U0D2A   ] };  // P: pa
    885     key <AD11>   { [   bracketleft,   braceleft   ] };//braceleft:   
    886     key <AD12>	 { [   bracketright, braceright   ] };//braceright:
    887     
    888     //A Row
    889     key <AC01>   { [   U0D3E,	 U0D05,	U0D06,	U0D05  ] };   // A: a,aa
    890     key <AC02>   { [   U0D38,    U0D37   ] };  // S: sa, ssa
    891     key <AC03>   { [   U0D26,    U0D27,	U0D21,	U0D22   ] };  // D: soft da,soft dda,hard da,hard dda,
    892     key <AC04>   { [   U0D2B     ] };  // F: pha
    893     key <AC05>   { [   U0D17,    U0D18   ] };  // G: ga, gha
    894     key <AC06>   { [   U0D39,    U0D03   ] };  // H: ha, visarg 
    895     key <AC07>   { [   U0D1C,    U0D1D   ] };  // J: ja, jha
    896     key <AC08>   { [   U0D15,    U0D16   ] };  // K: ka, kha
    897     key <AC09>   { [   U0D32,	 U0D33   ] };  // L: la, vocalic L or lru matra`
    898     key <AC10>   { [   semicolon, colon  ] }; 
    899     key <AC11>   { [apostrophe, quotedbl ] };
    900 
    901     //Z Row
    902     key <AB01>   { [   U0D34,	 U0D36 	 ] };  // Z: sha,zha
    903     key <AB02>   { [   U0D4D,	 U200B  ] };  // X: chandrakala,ZWSP
    904     key <AB03>   { [   U0D1A,    U0D1B   ] };  // C: ca, cha
    905     key <AB04>   { [   U0D35,	 U200D  ] };  // V: va,ZWJ
    906     key <AB05>   { [   U0D2C,    U0D2D   ] };  // B: ba, bha
    907     key <AB06>   { [   U0D28,    U0D23,	U0D19,	U0D1E   ] };  // N: na, hard na,nga,nha
    908     key <AB07>   { [   U0D2E,	 U0D02  ] };  // M: ma
    909     key <AB08>   { [   comma,    U003C ] };// comma: comma
    910     key <AB09>   { [   period, 	 U003E ] };  // period: period
    911     key <AB10>	 { [   slash,   question ] };
    912 
    913    // begin modifier mappings
    914 //    modifier_map Shift  { Shift_L };
    915 //    modifier_map Lock   { Caps_Lock };
    916 //    modifier_map Control{ Control_L };
    917 //    modifier_map Mod3   { Mode_switch };
    918     include "level3(ralt_switch)"
    919     include "rupeesign(4)"
    920 };
    921 
    922 
    923 partial alphanumeric_keys 
    924 xkb_symbols "ori" {
    925     // Inscript layout for Oriya  
    926     // Author: G Karunakar <karunakar (a] freedomink.org>
    927     // Date: Wed Nov 13 18:16:19 IST 2002
    928 
    929     name[Group1]= "Oriya";
    930     
    931     key <AE01> { [  U0b67			] };
    932     key <AE02> { [  U0b68			] };
    933     key <AE03> { [  U0b69			] };
    934     key <AE04> { [  U0b6a			] };
    935     key <AE05> { [  U0b6b			] };
    936     key <AE06> { [  U0b6c			] };
    937     key <AE07> { [  U0b6d			] };
    938     key <AE08> { [  U0b6e			] };
    939     key <AE09> { [  U0b6f			] };
    940     key <AE10> { [  U0b66			] };
    941     key <AE11> { [  U0b03			] };
    942     key <AE12> { [  U0b43, U0b0b	] };
    943 
    944     key <AD01> { [  U0b4c, U0b14	] };
    945     key <AD02> { [  U0b48, U0b10	] };
    946     key <AD03> { [  U0b3e, U0b06	] };
    947     key <AD04> { [  U0b40, U0b08	] };
    948     key <AD05> { [  U0b42, U0b0a	] };
    949     key <AD06> { [  U0b2c, U0b2d	] };
    950     key <AD07> { [  U0b39, U0b19	] };
    951     key <AD08> { [  U0b17, U0b18	] };
    952     key <AD09> { [  U0b26, U0b27	] };
    953     key <AD10> { [  U0b1c, U0b1d	] };
    954     key <AD11> { [  U0b21, U0b22	] };
    955     key <AD12> { [  U0b3c, U0b1e	] };
    956  
    957     key <AC01> { [  U0b4b, U0b13	] };
    958     key <AC02> { [  U0b47, U0b0f	] };
    959     key <AC03> { [  U0b4d, U0b05	] };
    960     key <AC04> { [  U0b3f, U0b07	] };
    961     key <AC05> { [  U0b41, U0b09	] };
    962     key <AC06> { [  U0b2a, U0b2b	] };
    963     key <AC07> { [  U0b30			] };
    964     key <AC08> { [  U0b15, U0b16	] };
    965     key <AC09> { [  U0b24, U0b25	] };
    966     key <AC10> { [  U0b1a, U0b1b	] };
    967     key <AC11> { [  U0b1f, U0b20	] };
    968  
    969     key <AB02> { [  U0b02, U0b01	] };
    970     key <AB03> { [  U0b2e, U0b23	] };
    971     key <AB04> { [  U0b28			] };
    972     key <AB05> { [  U0b35			] };
    973     key <AB06> { [  U0b32, U0b33	] };
    974     key <AB07> { [  U0b38, U0b36	] };
    975     key <AB08> { [  comma     , U0b37	] };
    976     key <AB09> { [  period    				] };
    977     key <AB10> { [  U0b2f, U0040	] };
    978 
    979     key <RALT> {
    980 	symbols[Group1] = [ Mode_switch, Multi_key ],
    981 	virtualMods = AltGr
    982     };
    983     include "rupeesign(4)"
    984     include "level3(ralt_switch)"
    985 };
    986 
    987 // based on a keyboard map from an 'xkb/symbols/tml' file
    988 // INSCRIPT
    989 partial alphanumeric_keys 
    990 xkb_symbols "tam" {
    991       name[Group1]= "Tamil";
    992 
    993       key <TLDE> { [      U0BCA, U0B92	]	};
    994 
    995       // Mainly numbers.
    996       key <AE01> { [      U0BE7 		]	};
    997       key <AE02> { [      U0BE8 		]	};
    998       key <AE03> { [      U0BE9 		]	};
    999       key <AE04> { [      U0BEA 		]	};
   1000       key <AE05> { [      U0BEB 		]	};
   1001       key <AE06> { [      U0BEC 		]	};
   1002       key <AE07> { [      U0BED        	]	};
   1003       key <AE08> { [      U0BEE 		]	};
   1004       key <AE09> { [      U0BEF, parenleft	]	};
   1005       key <AE10> { [      U0BF0, parenright	]	};
   1006       key <AE11> { [      U0BF1, U0B83  ]	};
   1007       key <AE12> { [      U0BF2, plus	] 	};
   1008 
   1009 // Mainly long vowels
   1010 
   1011       key <AD01> { [      U0BCC,  U0B94 ]	};
   1012       key <AD02> { [      U0BC8,  U0B90 ]	};
   1013       key <AD03> { [      U0BBE,  U0B86 ]	};
   1014       key <AD04> { [      U0BC0,  U0B88 ]	};
   1015       key <AD05> { [      U0BC2,  U0B8A ]	};
   1016 
   1017 // Mainly voiced consonants
   1018 
   1019       key <AD07> { [      U0BB9, U0B99	]	};
   1020       key <AD10> { [      U0B9c 	]	}; 
   1021       key <AD12> { [      U0B9E				]	};
   1022 
   1023 // Mainly short vowels
   1024       key <AC01> { [      U0BCB,  U0B93 ]	};
   1025       key <AC02> { [      U0BC7,  U0B8F ]	};
   1026       key <AC03> { [      U0BCD,  U0B85 ]	};
   1027       key <AC04> { [      U0BBF,  U0B87 ]	};
   1028       key <AC05> { [      U0BC1,  U0B89 ]	};
   1029 
   1030 // Mainly unvoiced consonants
   1031 
   1032       key <AC06> { [      U0BAA 		]	};
   1033       key <AC07> { [      U0BB0,  U0BB1 ]	};
   1034       key <AC08> { [      U0B95 		]	};
   1035       key <AC09> { [      U0BA4 		]	};
   1036       key <AC10> { [      U0B9A 		]	};
   1037       key <AC11> { [      U0B9F 		]	};
   1038       key <BKSL> { [      U005C, U007C	]	};//backslash-bar  - Changed to Unicode
   1039 
   1040       key <AB01> { [      U0BC6,  U0B8E	]	};
   1041       key <AB02> { [      U0B82   		]       };
   1042       key <AB03> { [      U0BAE,  U0BA3 ]       };
   1043       key <AB04> { [      U0BA8,  U0BA9 ]       };
   1044       key <AB05> { [      U0BB5,  U0BB4 ]       };
   1045       key <AB06> { [      U0BB2,  U0BB3 ]       };
   1046       key <AB07> { [      U0BB8,  U0BB6	]       };
   1047       key <AB08> { [      comma,      U0BB7 ]       };
   1048       key <AB09> { [      period,     U0964 ]       };
   1049       key <AB10> { [      U0BAF,  question  ]       };
   1050 
   1051       include "level3(ralt_switch)"
   1052       include "rupeesign(4)"
   1053 };
   1054 
   1055 partial alphanumeric_keys 
   1056 xkb_symbols "tam_unicode" {
   1057 
   1058 // Description: A keymap based on the TamilNet'99 typewriter keyboard 
   1059 // Encoding: Unicode (http://www.unicode.org)
   1060 // Author: Thuraiappah Vaseeharan <vasee (a] ieee.org>
   1061 // Modifed by: Malathi S <malathiramya (a] gmail.com>
   1062 // Secondary contact: Sri Ramadoss M <amachu (a] au-kbc.org>
   1063 // Date  : Fri Sep 4 11:32:00 CST 2009
   1064 // Mapping:
   1065   
   1066     name[Group1]= "Tamil (Unicode)";
   1067 
   1068     // granthas
   1069     key <TLDE> {  [ apostrophe, asciitilde ] };
   1070     key <AE01> {  [ U0031, exclam ] } ;
   1071     key <AE02> {  [ U0032, at ] } ;
   1072     key <AE03> {  [ U0033, numbersign ] } ;
   1073     key <AE04> {  [ U0034, U0BF9 ] } ;
   1074     key <AE05> {  [ U0035, percent ] } ;
   1075     key <AE06> {  [ U0036, asciicircum ] } ;
   1076     key <AE07> {  [ U0037, ampersand ] } ;
   1077     key <AE08> {  [ U0038, asterisk ] } ;
   1078     key <AE09> {  [ U0039, parenleft ] } ;
   1079     key <AE10> {  [ U0030, parenright ] } ;
   1080     key <AE11> {  [ minus, underscore ] };
   1081     key <AE12> {  [ equal, plus	] };
   1082 
   1083 
   1084     // Qrow
   1085     key <AD01> {  [ U0B9E, U0BB6 ] };
   1086     key <AD02> {  [ U0BB1, U0BB7 ] };
   1087     key <AD03> {  [ U0BA8, U0BB8 ] };
   1088     key <AD04> {  [ U0B9A, U0BB9 ] };
   1089     key <AD05> {  [ U0BB5, U0B9C ] };
   1090     key <AD06> {  [ U0BB2 ] };
   1091     key <AD07> {  [ U0BB0 ] };
   1092     key <AD08> {  [ U0BC8, U0B90 ] };
   1093     key <AD09> {  [ U0BCA, U0BCB ] };
   1094     key <AD10> {  [ U0BBF, U0BC0 ] };
   1095     key <AD11> {  [ U0BC1, U0BC2 ] };
   1096 
   1097     // Arow
   1098     key <AC01> { [ U0BAF ] };
   1099     key <AC02> { [ U0BB3 ] };
   1100     key <AC03> { [ U0BA9 ] };
   1101     key <AC04> { [ U0B95 ] };
   1102     key <AC05> { [ U0BAA ] };
   1103     key <AC06> { [ U0BBE, U0BB4 ] };
   1104     key <AC07> { [ U0BA4 ] };
   1105     key <AC08> { [ U0BAE ] };
   1106     key <AC09> { [ U0B9F ] };
   1107     key <AC10> { [ U0BCD, U0B83 ] };
   1108     key <AC11> { [ U0B99 ] };
   1109     
   1110     // Zrow
   1111     key <AB01> { [ U0BA3 ]  };
   1112     key <AB02> { [ U0B92, U0B93 ]  };
   1113     key <AB03> { [ U0B89, U0B8A ]  };
   1114     key <AB04> { [ U0B8E, U0B8F ]  };
   1115     key <AB05> { [ U0BC6, U0BC7 ]  };
   1116     key <AB06> { [ U0B94, U0BCC ]  };
   1117     key <AB07> { [ U0B85, U0B86 ]  };
   1118     key <AB08> { [ U0B87, U0B88 ]  };
   1119 };
   1120 
   1121 partial alphanumeric_keys
   1122 xkb_symbols "tam_keyboard_with_numerals" {
   1123 
   1124 // Description: A keymap based on the TamilNet'99 typewriter keyboard 
   1125 // Encoding: Unicode (http://www.unicode.org)
   1126 // Author: Malathi S <malathiramya (a] gmail.com>
   1127 // Secondary contact: Sri Ramadoss M <amachu (a] au-kbc.org>
   1128 // Date  : Fri Sep 4 11:33:00 CST 2009
   1129 // Mapping:
   1130 
   1131       name[Group1]= "Tamil (keyboard with numerals)";
   1132 
   1133       // Mainly numbers.
   1134       key <TLDE> { [ apostrophe, asciitilde ] };
   1135       key <AE01> { [ U0BE7, exclam ] };
   1136       key <AE02> { [ U0BE8, at ] };
   1137       key <AE03> { [ U0BE9, numbersign ] };
   1138       key <AE04> { [ U0BEA, U0BF9 ] };
   1139       key <AE05> { [ U0BEB, percent ] };
   1140       key <AE06> { [ U0BEC, asciicircum ] };
   1141       key <AE07> { [ U0BED, ampersand ] };
   1142       key <AE08> { [ U0BEE, asterisk ] };
   1143       key <AE09> { [ U0BEF, parenleft ] };
   1144       key <AE10> { [ U0BE6, parenright ] };
   1145       key <AE11> { [ minus, underscore ] };
   1146       key <AE12> { [ equal, plus ] };
   1147 
   1148 
   1149     // Qrow
   1150     key <AD01> {  [ U0B9E, U0BB6 ] };
   1151     key <AD02> {  [ U0BB1, U0BB7 ] };
   1152     key <AD03> {  [ U0BA8, U0BB8 ] };
   1153     key <AD04> {  [ U0B9a, U0BB9 ] };
   1154     key <AD05> {  [ U0BB5, U0B9c ] };
   1155     key <AD06> {  [ U0BB2 ] };
   1156     key <AD07> {  [ U0BB0 ] };
   1157     key <AD08> {  [ U0BC8, U0B90 ] };
   1158     key <AD09> {  [ U0BCA, U0BCB ] };
   1159     key <AD10> {  [ U0BBF, U0BC0 ] };
   1160     key <AD11> {  [ U0BC1, U0BC2 ] };
   1161 
   1162     // Arow
   1163     key <AC01> { [ U0BAF ] };
   1164     key <AC02> { [ U0BB3 ] };
   1165     key <AC03> { [ U0BA9 ] };
   1166     key <AC04> { [ U0B95 ] };
   1167     key <AC05> { [ U0BAA ] };
   1168     key <AC06> { [ U0BBE, U0BB4 ] };
   1169     key <AC07> { [ U0BA4 ] };
   1170     key <AC08> { [ U0BAE ] };
   1171     key <AC09> { [ U0B9F ] };
   1172     key <AC10> { [ U0BCD, U0B83 ] };
   1173     key <AC11> { [ U0B99 ] };
   1174 
   1175     // Zrow
   1176     key <AB01> { [ U0BA3 ]  };
   1177     key <AB02> { [ U0B92, U0B93 ]  };
   1178     key <AB03> { [ U0B89, U0B8A ]  };
   1179     key <AB04> { [ U0B8E, U0B8F ]  };
   1180     key <AB05> { [ U0BC6, U0BC7 ]  };
   1181     key <AB06> { [ U0B94, U0BCC ]  };
   1182     key <AB07> { [ U0B85, U0B86 ]  };
   1183     key <AB08> { [ U0B87, U0B88 ]  };
   1184 };
   1185 
   1186 partial alphanumeric_keys 
   1187 xkb_symbols "tam_TSCII" {
   1188 
   1189 // Description	: A Tamil typewrite-style keymap 
   1190 //		  loosely based on TamilNet'99 reommendations 
   1191 // Encoding	: TSCII (http://www.tscii.org)
   1192 // Author	: Thuraiappah Vaseeharan <vasee (a] ieee.org>
   1193 // Last Modified: Sat Jan  5 17:11:26 CST 2002
   1194 
   1195     name[Group1]= "Tamil (TSCII typewriter)";
   1196 
   1197     key <AE01> {  [ 0x10000b7, 0x10000a4 ] }; // aytham
   1198     key <AE02> {  [ 0x1000082, 0x10000a5 ] }; // shri
   1199     key <AE03> {  [ 0x1000083, 0x1000088 ] }; // ja
   1200     key <AE04> {  [ 0x1000084, 0x1000089 ] }; // sha
   1201     key <AE05> {  [ 0x1000085, 0x100008a ] }; // sa
   1202     key <AE06> {  [ 0x1000086, 0x100008b ] }; // ha
   1203     key <AE07> {  [ 0x1000087, 0x100008c ] }; // ksha
   1204 	
   1205     // Qrow
   1206     key <AD01> {  [ 0x10000bb, 0x100009a ] }; // nja
   1207     key <AD02> {  [ 0x10000c8, 0x10000da ] }; // Ra
   1208     key <AD03> {  [ 0x10000bf, 0x10000d1 ] }; // NNa
   1209     key <AD04> {  [ 0x10000ba, 0x10000cd ] }; // ca
   1210     key <AD05> {  [ 0x10000c5, 0x10000d7 ] }; // va
   1211     key <AD06> {  [ 0x10000c4, 0x10000d6 ] }; // la
   1212     key <AD07> {  [ 0x10000c3, 0x10000d5 ] }; // ra
   1213     key <AD08> {  [ 0x10000a8, 0x10000b3 ] }; // sangili, ai
   1214     key <AD09> {  [ 0x10000ca, 0x10000cb ] }; // di, dI
   1215     key <AD10> {  [ 0x10000a2, 0x10000a3 ] }; // visiri
   1216     key <AD11> {  [ dead_acute, 0x10000a3 ] }; // Ukaaram
   1217 
   1218     // Arow
   1219     key <AC01> { [ 0x10000c2, 0x10000d4 ] }; // ya
   1220     key <AC02> { [ 0x10000c7, 0x10000d9 ] }; // La
   1221     key <AC03> { [ 0x10000c9, 0x10000db ] }; // na
   1222     key <AC04> { [ 0x10000b8, 0x10000cc ] }; // ka
   1223     key <AC05> { [ 0x10000c0, 0x10000d2 ] }; // pa
   1224     key <AC06> { [ dead_grave,0x10000a1 ] }; // pulli,aravu
   1225     key <AC07> { [ 0x10000be, 0x10000d0 ] }; // tha
   1226     key <AC08> { [ 0x10000c1, 0x10000d3 ] }; // ma
   1227     key <AC09> { [ 0x10000bc, 0x10000ce ] }; // da
   1228     key <AC10> { [ 0x10000c6, 0x10000d8 ] }; // zha
   1229     key <AC11> { [ 0x10000b9, 0x1000099 ] }; // nga
   1230     
   1231     // Zrow
   1232     key <AB01> { [ 0x10000bd, 0x10000cf ] }; // Na
   1233     key <AB02> { [ 0x10000b4, 0x10000b5 ] }; // o, O
   1234     key <AB03> { [ 0x10000af, 0x10000b0 ] }; // u, U
   1235     key <AB04> { [ 0x10000b1, 0x10000b2 ] }; // e, E
   1236     key <AB05> { [ 0x10000a6, 0x10000a7 ] }; // kombus
   1237     key <AB06> { [ 0x10000b6, 0x10000aa ] }; // au
   1238     key <AB07> { [ 0x10000ab, 0x10000ac ] }; // a, A
   1239     key <AB08> { [ 0x10000fe, 0x10000ae ] }; // i, I
   1240 
   1241 };
   1242 
   1243 partial alphanumeric_keys 
   1244 xkb_symbols "tam_TAB" {
   1245 
   1246 // Description: A keymap based on the TamilNet'99 typewriter keyboard 
   1247 // Encoding: TAB (http://www.tamilnet99.org)
   1248 // Author: Thuraiappah Vaseeharan <t_vasee (a] yahoo.com>
   1249 // Date  : Sun Aug 12 02:23:00 CDT 2001
   1250 
   1251     name[Group1]= "Tamil (TAB typewriter)";
   1252 
   1253     // numeral row
   1254     key <AE01> {  [ 0x10000e7, 0x10000a7 ] } ;
   1255     key <AE02> {  [ 0x10000fa, 0x10000a8 ] } ;
   1256     key <AE03> {  [ 0x10000fb ] } ;
   1257     key <AE04> {  [ 0x10000fc ] } ;
   1258     key <AE05> {  [ 0x10000fd ] } ;
   1259     key <AE06> {  [ 0x10000fe ] } ;
   1260     key <AE07> {  [ 0x10000ff ] } ;
   1261 	
   1262     // q-row
   1263     key <AD01> {  [ 0x10000eb, 0x10000b3 ] };
   1264     key <AD02> {  [ 0x10000f8, 0x10000c1 ] };
   1265     key <AD03> {  [ 0x10000ef, 0x10000b8 ] };
   1266     key <AD04> {  [ 0x10000ea, 0x10000b2 ] };
   1267     key <AD05> {  [ 0x10000f5, 0x10000be ] };
   1268     key <AD06> {  [ 0x10000f4, 0x10000bd ] };
   1269     key <AD07> {  [ 0x10000f3, 0x10000bc ] };
   1270     key <AD08> {  [ 0x10000ac, 0x10000e4 ] };
   1271     key <AD09> {  [ 0x10000ae, 0x10000af ] };
   1272     key <AD10> {  [ 0x10000a4, 0x10000a6 ] };
   1273     key <AD11> {  [ dead_circumflex, 0x10000a6 ] }; // Ukaaram
   1274 
   1275     // a-row
   1276     key <AC01> {  [ 0x10000f2, 0x10000bb ] };
   1277     key <AC02> {  [ 0x10000f7, 0x10000c0 ] };
   1278     key <AC03> {  [ 0x10000f9, 0x10000c2 ] };
   1279     key <AC04> {  [ 0x10000e8, 0x10000b0 ] };
   1280     key <AC05> {  [ 0x10000f0, 0x10000b9 ] };
   1281     key <AC06> {  [ 0x10000a2, 0x10000a3 ] };
   1282     key <AC07> {  [ 0x10000ee, 0x10000b6 ] };
   1283     key <AC08> {  [ 0x10000f1, 0x10000ba ] };
   1284     key <AC09> {  [ 0x10000ec, 0x10000b4 ] };
   1285     key <AC10> {  [ 0x10000f6, 0x10000bf ] };
   1286     key <AC11> {  [ 0x10000e9, 0x10000b1 ] };
   1287     
   1288     // z-row
   1289     key <AB01> {  [ 0x10000ed, 0x10000b5 ] };
   1290     key <AB02> {  [ 0x10000e5, 0x10000e6 ] };
   1291     key <AB03> {  [ 0x10000e0, 0x10000e1 ] };
   1292     key <AB04> {  [ 0x10000e2, 0x10000e3 ] };
   1293     key <AB05> {  [ 0x10000aa, 0x10000ab ] };
   1294     key <AB06> {  [ 0x10000ac, 0x10000a3 ] };
   1295     key <AB07> {  [ 0x10000dc, 0x10000dd ] };
   1296     key <AB08> {  [ 0x10000de, 0x10000df ] };
   1297 };
   1298 
   1299 partial alphanumeric_keys 
   1300 xkb_symbols "tel" {
   1301 
   1302     // Inscript layout for Telugu using Unicode 
   1303     // Author: G Karunakar <karunakar (a] freedomink.org>
   1304     // Date:
   1305     // See layout at http://www.indlinux.org/keymap/telugu.php
   1306 
   1307     name[Group1]= "Telugu";
   1308 
   1309     key <TLDE> { [  U0c4a, U0c12	] };
   1310     key <AE01> { [  U0c67			] };
   1311     key <AE02> { [  U0c68			] };
   1312     key <AE03> { [  U0c69, numbersign	] };
   1313     key <AE04> { [  U0c6a, dollar		] };
   1314     key <AE05> { [  U0c6b, percent		] };
   1315     key <AE06> { [  U0c6c, asciicircum	] };
   1316     key <AE07> { [  U0c6d, ampersand	] };
   1317     key <AE08> { [  U0c6e, asterisk	] };
   1318     key <AE09> { [  U0c6f, parenleft	] };
   1319     key <AE10> { [  U0c66, parenright	] };
   1320     key <AE11> { [  U0c03, underscore	] };
   1321     key <AE12> { [  U0c43, U0c0b	] };
   1322     key <BKSP> { [  BackSpace			] };    
   1323  
   1324     key <AD01> { [  U0c4c, U0c14	] };
   1325     key <AD02> { [  U0c48, U0c10	] };
   1326     key <AD03> { [  U0c3e, U0c06	] };
   1327     key <AD04> { [  U0c40, U0c08	] };
   1328     key <AD05> { [  U0c42, U0c0a	] };
   1329     key <AD06> { [  U0c2c, U0c2d	] };
   1330     key <AD07> { [  U0c39, U0c19	] };
   1331     key <AD08> { [  U0c17, U0c18	] };
   1332     key <AD09> { [  U0c26, U0c27	] };
   1333     key <AD10> { [  U0c1c, U0c1d	] };
   1334     key <AD11> { [  U0c21, U0c22	] };
   1335     key <AD12> { [  U0c1e			] };
   1336   
   1337     key <AC01> { [  U0c4b, U0c13	] };
   1338     key <AC02> { [  U0c47, U0c0f	] };
   1339     key <AC03> { [  U0c4d, U0c05	] };
   1340     key <AC04> { [  U0c3f, U0c07	] };
   1341     key <AC05> { [  U0c41, U0c09	] };
   1342     key <AC06> { [  U0c2a, U0c2b	] };
   1343     key <AC07> { [  U0c30, U0c31	] };
   1344     key <AC08> { [  U0c15, U0c16	] };
   1345     key <AC09> { [  U0c24, U0c25	] };
   1346     key <AC10> { [  U0c1a, U0c1b	] };
   1347     key <AC11> { [  U0c1f, U0c20	] };
   1348  
   1349     key <AB01> { [  U0c46, U0c0e	] };
   1350     key <AB02> { [  U0c02, U0c01	] };
   1351     key <AB03> { [  U0c2e, U0c23	] };
   1352     key <AB04> { [  U0c28			] };
   1353     key <AB05> { [  U0c35			] };
   1354     key <AB06> { [  U0c32, U0c33	] };
   1355     key <AB07> { [  U0c38, U0c36	] };
   1356     key <AB08> { [  comma     , U0c37	] };
   1357     key <AB09> { [  period    				] };
   1358     key <AB10> { [  U0c2f, U0040	] };
   1359 
   1360     key <RALT> {        
   1361         symbols[Group1] = [ Mode_switch, Multi_key ],
   1362         virtualMods = AltGr
   1363     };
   1364     include "rupeesign(4)"
   1365     include "level3(ralt_switch)"
   1366 };
   1367 
   1368 partial alphanumeric_keys 
   1369 xkb_symbols "urd-phonetic" {
   1370     include "pk(urd-phonetic)"
   1371     name[Group1]= "Urdu (phonetic)";
   1372 };
   1373 
   1374 partial alphanumeric_keys 
   1375 xkb_symbols "urd-phonetic3" {
   1376     include "pk(urd-crulp)"
   1377     name[Group1]= "Urdu (alternative phonetic)";
   1378 };
   1379 
   1380 partial alphanumeric_keys 
   1381 xkb_symbols "urd-winkeys" {
   1382     include "pk(urd-nla)"
   1383     name[Group1]= "Urdu (WinKeys)";
   1384 };
   1385 
   1386 // based on a keyboard map from an 'xkb/symbols/gur' file
   1387 
   1388 partial alphanumeric_keys
   1389 xkb_symbols "guru" {
   1390       name[Group1]= "Punjabi (Gurmukhi)";
   1391 
   1392       // Mainly numbers.
   1393       key <AE01> { [      U0A67 		]	};
   1394       key <AE02> { [      U0A68		]	};
   1395       key <AE03> { [      U0A69, U0A71	]	};
   1396       key <AE04> { [      U0A6A, U0A74	 	]	};
   1397       key <AE05> { [      U0A6B, U262C		]	};
   1398       key <AE06> { [      U0A6C  	 	]	};
   1399       key <AE07> { [      U0A6D 		]	};
   1400       key <AE08> { [      U0A6e  	 	]	};
   1401       key <AE09> { [      U0A6F, parenleft 	]	};
   1402       key <AE10> { [      U0A66, parenright ]	};
   1403       key <AE11> { [      gur_visarga 	 	]	};
   1404       key <AE12> { [      equal,	plus 	]	};
   1405 
   1406 // Mainly long vowels
   1407 
   1408       key <AD01> { [      U0A4C, U0A14  ]	};
   1409       key <AD02> { [      U0A48, U0A10  ]	};
   1410       key <AD03> { [      U0A3E, U0A06  ]	};
   1411       key <AD04> { [      U0A40, U0A08  ]	};
   1412       key <AD05> { [      U0A42, U0A0A  ]	};
   1413 
   1414 // Mainly voiced consonants
   1415 
   1416       key <AD06> { [      U0A2C, U0A2D 	]	};
   1417       key <AD07> { [      U0A39, U0A19 	]	};
   1418       key <AD08> { [      U0A17, U0A18 	]	};
   1419       key <AD09> { [      U0A26, U0A27 	]	};
   1420       key <AD10> { [      U0A1C, U0A1D 	]	};
   1421       key <AD11> { [      U0A21, U0A22 	]	};
   1422       key <AD12> { [      U0A3C, U0A1E 	]	};
   1423 
   1424 // Mainly short vowels
   1425       key <AC01> { [      U0A4B, U0A13  ]	};
   1426       key <AC02> { [      U0A47, U0A0F  ]	};
   1427       key <AC03> { [      U0A4D, U0A05  ]	};
   1428       key <AC04> { [      U0A3F, U0A07  ]	};
   1429       key <AC05> { [      U0A41, U0A09  ]	};
   1430 
   1431 // Mainly unvoiced consonants
   1432 
   1433       key <AC06> { [      U0A2A, U0A2B 	]	};
   1434       key <AC07> { [      U0A30, U0A5C 	]	};
   1435       key <AC08> { [      U0A15, U0A16 	]	};
   1436       key <AC09> { [      U0A24, U0A25 	]	};
   1437       key <AC10> { [      U0A1A, U0A1B 	]	};
   1438       key <AC11> { [      U0A1F, U0A20 	]	};
   1439       key <BKSL> { [      U005C, U007C	]	};
   1440 
   1441       key <AB01> { [      z, 	 U0A01	]       };
   1442       key <AB02> { [      U0A02, U0A70, U0A71  ]       };
   1443       key <AB03> { [      U0A2E, U0A23  ]       };
   1444       key <AB04> { [      U0A28, U0A28  ]       };
   1445       key <AB05> { [      U0A35, U0A35  ]       };
   1446       key <AB06> { [      U0A32, U0A33  ]       };
   1447       key <AB07> { [      U0A38, U0A36  ]       };
   1448       key <AB08> { [      comma,     less       ]       };
   1449       key <AB09> { [      period,    U0964  ]       };
   1450       key <AB10> { [      U0A2F, question   ]       };
   1451 
   1452     include "rupeesign(4)"
   1453     include "level3(ralt_switch)"
   1454 };
   1455 
   1456 //Name		:	Jhelum (Refind Inscript)
   1457 //Description	:	A Jhelum keyboard layout for Gurmukhi (Punjabi)
   1458 //			http://www.satluj.org/Jhelum.html
   1459 //Modified for Inscript to make
   1460 //Original Author :	Amanpreet Singh Alam <apreet.alam (a] gmail.com
   1461  
   1462 partial alphanumeric_keys
   1463 xkb_symbols "jhelum" {
   1464       name[Group1] = "Punjabi (Gurmukhi Jhelum)";
   1465           key.type="FOUR_LEVEL";
   1466      //Top Alphanumeric row
   1467      // Roman digits
   1468      key <TLDE>  { [  apostrophe, asciitilde, U0A02,U0A01 ] }; // apostrophe: anusvara, candrabindu
   1469      key <AE01>  { [   1,exclam,	U0A67,	exclam	   ] };
   1470      key <AE02>  { [   2,at,	U0A68,	at	   ] };
   1471      key <AE03>  { [   3,numbersign, U0A69,	numbersign ] };
   1472      key <AE04>  { [   4,dollar,	U0A6A		 ] };
   1473      key <AE05>  { [   5,percent,U0A6B,	percent    ] };
   1474      key <AE06>  { [   6,U0A73, U0A6C,asciicircum ] };
   1475      key <AE07>  { [   7,U0A72,U0A6D,ampersand  ] };
   1476      key <AE08>  { [   8,asterisk,U0A6E,	asterisk   ] };
   1477      key <AE09>  { [   9,parenleft,U0A6F,parenleft  ] };
   1478      key <AE10>  { [   0,parenright,U0A66,parenright ] };
   1479      key <AE11>	{ [   minus,underscore] };
   1480      key <AE12>	{ [   equal,plus] };
   1481      key <BKSL>  { [   U0964,U0965,U007C,U005C] }; //pipe : danda, double danda
   1482  
   1483      //Q Row	
   1484      key <AD01>   { [   U0A4C, 	U0A14   ] };  // Q: oo, ooh
   1485      key <AD02>   { [   U0A48,  	U0A10	] };  // W: ee, ae
   1486      key <AD03>   { [   U0A3E,   U0A06  ] };  // E: a, aa
   1487      key <AD04>   { [   U0A40,	U0A08, U20B9  	] };  // R: ee, ai, rupeesign
   1488      key <AD05>   { [   U0A42,   U0A0A   ] };  // T: u, uu
   1489      key <AD06>   { [   U0A30,	U0A5C   ] };  // Y: ra, raa
   1490      key <AD07>   { [   U0A26,   U0A27   ] };  // U: tha, thha
   1491      key <AD08>   { [   U0A17,   U0A18, U0A5A   ] };  // I:ga, gha
   1492      key <AD09>   { [   U0A24,   U0A1F   ] };  // O: ta, tha
   1493      key <AD10>   { [   U0A2A,   U0A5E, VoidSymbol,U0A5E  ] };  // P: pa, pha
   1494      key <AD11>   { [   U0A21,   U0A22,   bracketleft,   braceleft   ] };  
   1495      key <AD12>	 { [   U0A19,   U0A1E,   bracketright, braceright   ] };
   1496      
   1497      //A Row
   1498      key <AC01>   { [   U0A4B,	 U0A13  ] };   // A: o, oo
   1499      key <AC02>   { [   U0A47,    U0A0F   ] };  // S: e, ee
   1500      key <AC03>   { [   U0A4D,    U0A05   ] };  // D: halant, aa
   1501      key <AC04>   { [   U0A3F,    U0A07   ] };  // F: i, aa
   1502      key <AC05>   { [   U0A41,    U0A09   ] };  // G: u, uh
   1503      key <AC06>   { [   U0A39,    U0A20   ] };  // H: ha, thha
   1504      key <AC07>   { [   U0A1C,    U0A1D, U0A5B   ] };  // J: ja, jha
   1505      key <AC08>   { [   U0A15,    U0A16,VoidSymbol ,U0A59   ] };  // K: ka, kha
   1506      key <AC09>   { [   U0A32,	 U0A25, U0A33   ] };  // L: la, tha
   1507      key <AC10>   { [   U0A38,   colon, U0A36  ] }; //; sa
   1508      key <AC11>   { [apostrophe, quotedbl ] };
   1509  
   1510      //Z Row
   1511      key <AB01>   { [   U0A71,	 U0A3C 	 ] };  // Z: addak, par bindi
   1512      key <AB02>   { [   U0A02,    U0A70	 ] };  // X: bindi, tippi
   1513      key <AB03>   { [   U0A1A,    U0A1B   ] };  // C: ca, cha
   1514      key <AB04>   { [   U0A35,    U0A2F   ] };  // V: va, ya
   1515      key <AB05>   { [   U0A2C,    U0A2D   ] };  // B: ba, bha
   1516      key <AB06>   { [   U0A28,    U0A23   ] };  // N: na, nha
   1517      key <AB07>   { [   U0A2E, U0A2E       ] };  // M: ma
   1518      key <AB08>   { [   comma,    U262C	 ] };// comma: comma, dev abbreviation sign
   1519      key <AB09>   { [   period,   U0A74 	 ] };  // period: period, nukta
   1520      key <AB10>	 { [   slash,   question ] };
   1521  
   1522 // begin modifier mappings
   1523 //    modifier_map Shift  { Shift_L };
   1524 //    modifier_map Lock   { Caps_Lock };
   1525 //    modifier_map Control{ Control_L };
   1526 //    modifier_map Mod3   { Mode_switch };
   1527     include "level3(ralt_switch)"
   1528 };
   1529 
   1530 partial alphanumeric_keys
   1531 xkb_symbols "olpc" {
   1532 
   1533 // Contact: Walter Bender <walter (a] laptop.org>
   1534 
   1535   include "in(deva)"
   1536   key <TLDE> { [	U094A,	U0912 ] }; // DEVANAGARI VOWEL SIGN SHORT O; DEVANAGARI LETTER SHORT O
   1537   key <AE01> { [	U0967,	U090D ] }; // DEVANAGARI DIGIT ONE; DEVANAGARI LETTER CANDRA E
   1538   key <AE02> { [	U0968,	U0945 ] }; // DEVANAGARI DIGIT TWO; DEVANAGARI VOWEL SIGN CANDRA E
   1539   key <AE03> { [	U0969	 ] }; // DEVANAGARI DIGIT THREE; 
   1540   key <AE04> { [	U096A	 ] }; // DEVANAGARI DIGIT FOUR; 
   1541   key <AE05> { [	U096B	 ] }; // DEVANAGARI DIGIT FIVE; 
   1542   key <AE06> { [	U096C	 ] }; // DEVANAGARI DIGIT SIX; 
   1543   key <AE07> { [	U096D	 ] }; // DEVANAGARI DIGIT SEVEN; 
   1544   key <AE08> { [	U096E	 ] }; // DEVANAGARI DIGIT EIGHT; 
   1545   key <AE09> { [	U096F,	parenleft ] }; // DEVANAGARI DIGIT NINE; 
   1546   key <AE10> { [	U0966,	parenright ] }; // DEVANAGARI DIGIT ZERO; 
   1547   key <AE11> { [	minus,		U0903 ] }; // DEVANAGARI SIGN VISARGA; 
   1548   key <AE12> { [	U0943,	U090B ] }; // DEVANAGARI VOWEL SIGN VOCALIC R; DEVANAGARI LETTER VOCALIC R
   1549 
   1550   key <AD01> { [	U094C,	U0914 ] }; // DEVANAGARI VOWEL SIGN AU; DEVANAGARI LETTER AU
   1551   key <AD02> { [	U0948,	U0910 ] }; // DEVANAGARI VOWEL SIGN AI; DEVANAGARI LETTER AI
   1552   key <AD03> { [	U093E,	U0906 ] }; // DEVANAGARI VOWEL SIGN AA; DEVANAGARI LETTER AA
   1553   key <AD04> { [	U0940,	U0908 ] }; // DEVANAGARI VOWEL SIGN II; DEVANAGARI LETTER II
   1554   key <AD05> { [	U0942,	U090A ] }; // DEVANAGARI VOWEL SIGN UU; DEVANAGARI LETTER UU
   1555   key <AD06> { [	U092C,	U092D ] }; // DEVANAGARI LETTER BA; DEVANAGARI LETTER BHA
   1556   key <AD07> { [	U0939,	U0919 ] }; // DEVANAGARI LETTER HA; DEVANAGARI LETTER NGA
   1557   key <AD08> { [	U0917,	U0918 ] }; // DEVANAGARI LETTER GA; DEVANAGARI LETTER GHA
   1558   key <AD09> { [	U0926,	U0927 ] }; // DEVANAGARI LETTER DA; DEVANAGARI LETTER DHA
   1559   key <AD10> { [	U091C,	U091D ] }; // DEVANAGARI LETTER JA; DEVANAGARI LETTER JHA
   1560   key <AD11> { [	U0921,	U0922 ] }; // DEVANAGARI LETTER DDA; DEVANAGARI LETTER DDHA
   1561   key <AD12> { [	U093C,	U091E ] }; // DEVANAGARI SIGN NUKTA; DEVANAGARI LETTER NYA
   1562 
   1563   key <BKSL> { [	U0949,	U0911 ] }; // DEVANAGARI VOWEL SIGN CANDRA O; DEVANAGARI LETTER CANDRA O
   1564 
   1565   key <AC01> { [	U094B,	U0913 ] }; // DEVANAGARI VOWEL SIGN O; DEVANAGARI LETTER O
   1566   key <AC02> { [	U0947,	U090F ] }; // DEVANAGARI VOWEL SIGN E; DEVANAGARI LETTER E
   1567   key <AC03> { [	U094D,	U0905 ] }; // DEVANAGARI SIGN VIRAMA; DEVANAGARI LETTER A
   1568   key <AC04> { [	U093F,	U0907 ] }; // DEVANAGARI VOWEL SIGN I; DEVANAGARI LETTER I
   1569   key <AC05> { [	U0941,	U0909 ] }; // DEVANAGARI VOWEL SIGN U; DEVANAGARI LETTER U
   1570   key <AC06> { [	U092A,	U092B ] }; // DEVANAGARI LETTER PA; DEVANAGARI LETTER PHA
   1571   key <AC07> { [	U0930,	U0931 ] }; // DEVANAGARI LETTER RA; DEVANAGARI LETTER RRA
   1572   key <AC08> { [	U0915,	U0916 ] }; // DEVANAGARI LETTER KA; DEVANAGARI LETTER KHA
   1573   key <AC09> { [	U0924,	U0925 ] }; // DEVANAGARI LETTER TA; DEVANAGARI LETTER THA
   1574   key <AC10> { [	U091A,	U091B ] }; // DEVANAGARI LETTER CA; DEVANAGARI LETTER CHA
   1575   key <AC11> { [	U091F,	U0920 ] }; // DEVANAGARI LETTER TTA; DEVANAGARI LETTER TTHA
   1576 
   1577   key <AB01> { [	U0946,	U090E ] }; // DEVANAGARI VOWEL SIGN SHORT E; DEVANAGARI LETTER SHORT E
   1578   key <AB02> { [	U0902,	U0901 ] }; // DEVANAGARI SIGN ANUSVARA; DEVANAGARI SIGN CANDRABINDU
   1579   key <AB03> { [	U092E,	U0923 ] }; // DEVANAGARI LETTER MA; DEVANAGARI LETTER NNA
   1580   key <AB04> { [	U0928,	U0929 ] }; // DEVANAGARI LETTER NA; DEVANAGARI LETTER NNNA
   1581   key <AB05> { [	U0935,	U0934 ] }; // DEVANAGARI LETTER VA; DEVANAGARI LETTER LLLA
   1582   key <AB06> { [	U0932,	U0933 ] }; // DEVANAGARI LETTER LA; DEVANAGARI LETTER LLA
   1583   key <AB07> { [	U0938,	U0936 ] }; // DEVANAGARI LETTER SA; DEVANAGARI LETTER SHA
   1584   key <AB08> { [	comma,		U0937 ] }; // DEVANAGARI LETTER SSA
   1585   key <AB09> { [	period,		U0964 ] }; // DEVANAGARI DANDA
   1586   key <AB10> { [	U092F,	U095F ] }; // DEVANAGARI LETTER YA; DEVANAGARI LETTER YYA
   1587 
   1588   // space, space, Zero-Width-Non-Joiner (ZWNJ), Zero-Width-Joiner (ZWJ):
   1589   include "nbsp(zwnj3zwj4)"
   1590 
   1591   include "group(olpc)"
   1592   include "rupeesign(4)"
   1593   include "level3(ralt_switch)"
   1594 };
   1595 
   1596 partial alphanumeric_keys 
   1597 xkb_symbols "hin-wx" {
   1598 
   1599     name[Group1]= "Hindi (Wx)";
   1600 
   1601       key <TLDE> {	 [     grave, asciitilde, 2, 3    ]	};
   1602 
   1603       key <AE01> {	 [      0x1000967, exclam 		]	};
   1604       key <AE02> {	 [      0x1000968, at 		]	};
   1605       key <AE03> {	 [      0x1000969 , numbersign	 		]	};
   1606       key <AE04> {	 [      0x100096A , dollar		]	};
   1607       key <AE05> {	 [      0x100096B , percent 	 		]	};
   1608       key <AE06> {	 [      0x100096C , asciicircum	 		]	};
   1609       key <AE07> {	 [      0x100096D , ampersand                       ]	};
   1610       key <AE08> {	 [      0x100096e , asterisk 	 		]	};
   1611       key <AE09> {	 [      0x100096F, parenleft 		]	};
   1612       key <AE10> {	 [      0x1000966, parenright 		]	};
   1613       key <AE11> {	 [      minus, underscore 	 		]	};
   1614       key <AE12> {	 [      equal, plus 		]	};
   1615 
   1616 
   1617       key <AD01> {	 [      0x1000943,  0x1000944, 0x100090B, 0x1000960]	};
   1618       key <AD02> {	 [      0x1000924,  0x1000925       	]	};
   1619       key <AD03> {	 [      0x1000947,  0x1000948, 0x100090F, 0x1000910]	};
   1620       key <AD04> {	 [      0x1000930,  0x1000937       	]	};
   1621       key <AD05> {	 [      0x100091F,  0x1000920       	]	};
   1622 
   1623 
   1624       key <AD06> {	 [      0x100092F 		]	};
   1625       key <AD07> {	 [      0x1000941,  0x1000942, 0x1000909, 0x100090A ]	};
   1626       key <AD08> {	 [      0x100093F,  0x1000940, 0x1000907, 0x1000908 ]	};
   1627       key <AD09> {	 [      0x100094B,  0x100094C, 0x1000913, 0x1000914]	};
   1628       key <AD10> {	 [      0x100092A,  0x100092B 		]	};
   1629       key <AD11> {	 [      bracketleft, braceleft  		]	};
   1630       key <AD12> {	 [      bracketright, braceright  		]	};
   1631       key <BKSL> {       [      backslash, bar, 0x1000964, 0x1000965 ] };
   1632 
   1633       key <AC01> {	 [      0x100094D,  0x100093E, 0x1000905,0x1000906 ] 	};
   1634       key <AC02> {	 [      0x1000938,  0x1000936       	]	};
   1635       key <AC03> {	 [      0x1000921,  0x1000922       	]	};
   1636       key <AC04> {	 [      0x1000919,  0x100091E       	]	};
   1637       key <AC05> {	 [      0x1000917,  0x1000918       	]	};
   1638 
   1639 
   1640       key <AC06> {	 [      0x1000939,  0x1000903 		]	};
   1641       key <AC07> {	 [      0x100091C,  0x100091D 		]	};
   1642       key <AC08> {	 [      0x1000915,  0x1000916 		]	};
   1643       key <AC09> {	 [      0x1000932,  0x1000962, 0x1000933, 0x100090C]	};
   1644       key <AC10> {	 [      semicolon, colon  		]	};
   1645       key <AC11> {	 [      quoteright, quotedbl 		]	};
   1646 
   1647       key <AB01> {	 [      0x1000901,   0x100093C, 0x100093D, 0x1000950]   };
   1648       key <AB02> {       [      0x1000926,   0x1000927      ]       };
   1649       key <AB03> {       [      0x100091A,   0x100091B         ]       };
   1650       key <AB04> {       [      0x1000935,   dead_V        ]       };
   1651       key <AB05> {       [      0x100092C,   0x100092D        ]       };
   1652       key <AB06> {       [      0x1000928,   0x1000923         ]       };
   1653       key <AB07> {       [      0x100092E,   0x1000902         ]       };
   1654       key <AB08> {       [      comma,       less         ]       };
   1655       key <AB09> {       [      period,      greater       ]       };
   1656       key <AB10> {       [      slash,      question        ]       };
   1657 
   1658     include "level3(ralt_switch)"
   1659     include "rupeesign(4)"
   1660 };
   1661 
   1662 partial alphanumeric_keys
   1663 xkb_symbols "eng" {
   1664 
   1665     name[Group1]= "English (India, with RupeeSign)";
   1666 
   1667     include "us(basic)"
   1668 
   1669     include "rupeesign(4)"
   1670 
   1671     include "level3(ralt_switch)"
   1672 };
   1673 
   1674 
   1675 // Description : Enhanced INSCRIPT keymap for Malayalam
   1676 // Encoding    : Unicode (http://www.unicode.org)
   1677 // Author      : Mahesh T Pai <paivakil (a] gmail.com>
   1678 // Date        : March, 2011
   1679 // Source      : http://www.nongnu.org/smc/docs/images/ml_inscript_layout.jpg
   1680 // Comment     : Based on the Inscript Keyboard created by M Baiju
   1681 // Mapping:
   1682 
   1683 partial alphanumeric_keys 
   1684 xkb_symbols "mal_enhanced" {
   1685 
   1686     name[Group1] = "Malayalam (enhanced Inscript with Rupee Sign)";
   1687 
   1688    //From grave to backslash (\)
   1689     
   1690       key <TLDE> { [ U0d4a ,       U0d12 ] };
   1691       key <AE01> { [ U0d67 ,      exclam ] };
   1692       key <AE02> { [ U0d68 ,          at ] };
   1693       key <AE03> { [ U0d69 ,  numbersign ] };
   1694       key <AE04> { [ U0d6a ,      dollar ] };
   1695       key <AE05> { [ U0d6b ,     percent ] };
   1696       key <AE06> { [ U0d6c , asciicircum ] };
   1697       key <AE07> { [ U0d6d ,   ampersand ] };
   1698       key <AE08> { [ U0d6e ,       U0d7e ] };
   1699       key <AE09> { [ U0d6f ,   parenleft ] };
   1700       key <AE10> { [ U0d66 ,  parenright ] };
   1701 
   1702       key <AE11> { [ minus , U0d03       ] };
   1703       key <AE12> { [ U0d43 , U0d0b       ] };
   1704       key <BKSL> { [ U0d7c , U05C        ] }; //bksl: chillu RR 
   1705 
   1706 
   1707   // From 'q' to right bracket (])
   1708     
   1709     key <AD01> { [ U0d57 , U0d14 ] };
   1710     key <AD02> { [ U0d48 , U0d10 ] };
   1711     key <AD03> { [ U0d3e , U0d06 ] };
   1712     key <AD04> { [ U0d40 , U0d08 ] };
   1713     key <AD05> { [ U0d42 , U0d0a ] };
   1714     key <AD06> { [ U0d2c , U0d2d ] };
   1715     key <AD07> { [ U0d39 , U0d19 ] };
   1716     key <AD08> { [ U0d17 , U0d18 ] };
   1717     key <AD09> { [ U0d26 , U0d27 ] };
   1718     key <AD10> { [ U0d1c , U0d1d ] };
   1719     key <AD11> { [ U0d21 , U0d22 ] };
   1720     key <AD12> { [ U0200d , U0d1e ] };
   1721 
   1722     // From 'a' to apostrophe (')
   1723     
   1724     key <AC01> { [ U0d4b , U0d13 ] };
   1725     key <AC02> { [ U0d47 , U0d0f ] };
   1726     key <AC03> { [ U0d4d , U0d05 ] };
   1727     key <AC04> { [ U0d3f , U0d07 ] };
   1728     key <AC05> { [ U0d41 , U0d09 ] };
   1729     key <AC06> { [ U0d2a , U0d2b ] };
   1730     key <AC07> { [ U0d30 , U0d31 ] };
   1731     key <AC08> { [ U0d15 , U0d16 ] };
   1732     key <AC09> { [ U0d24 , U0d25 ] };
   1733     key <AC10> { [ U0d1a , U0d1b ] };
   1734     key <AC11> { [ U0d1f , U0d20 ] };
   1735     
   1736     // From 'z' to slash (/)
   1737     
   1738     key <AB01> { [ U0d46 , U0d0e ] };
   1739     key <AB02> { [ U0d02 , U0d7a ] };
   1740     key <AB03> { [ U0d2e , U0d23 ] };
   1741     key <AB04> { [ U0d28 , U0d7b ] };
   1742     key <AB05> { [ U0d35 , U0d34 ] };
   1743     key <AB06> { [ U0d32 , U0d33 ] };
   1744     key <AB07> { [ U0d38 , U0d36 ] };
   1745     key <AB08> { [ comma , U0d37 ] };
   1746     key <AB09> { [ period , U0d7d ] }; //chillu l
   1747     key <AB10> { [ U0d2f , question ] };
   1748 
   1749     // hope this includes the rupee sign at alt + 4
   1750 
   1751     include "rupeesign(4)"
   1752     include "level3(ralt_switch)"
   1753 
   1754 };
   1755 
   1756