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