logo

oasis-root

Compiled tree of Oasis Linux based on own branch at <https://hacktivis.me/git/oasis/> git clone https://anongit.hacktivis.me/git/oasis-root.git

in (108061B)


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