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