1// Urdu keymap 2// Developed by: 3// Zaeem Arshad <zaeem@linux.net.pk> 4// Last update: 2004-03-12 5// Notice: 6// Alt-key combinations are yet to be put in. The unavailable keys are 7// those which do not have a corresponding glyph in Unicode. 8 9default partial alphanumeric_keys 10xkb_symbols "urd-phonetic" { 11 12 name[Group1]= "Urdu (Pakistan)"; 13 14 key <TLDE> { [ 0x100064b , 0x100007E, 0x100200C ] }; 15 key <AE01> { [ 0x1000031 , 0x1000021 ] }; 16 key <AE02> { [ 0x1000032 , 0x1000040 ] }; 17 key <AE03> { [ 0x1000033 , 0x1000023 ] }; 18 key <AE04> { [ 0x1000034 , 0x1000024 ] }; 19 key <AE05> { [ 0x1000035 , 0x1000025 ] }; 20 key <AE06> { [ 0x1000036 , 0x100005E ] }; 21 key <AE07> { [ 0x1000037 , 0x1000026 ] }; 22 key <AE08> { [ 0x1000038 , 0x100002A ] }; 23 key <AE09> { [ 0x1000039 , 0x1000029 ] }; 24 key <AE10> { [ 0x1000030 , 0x1000028 ] }; 25 key <AE11> { [ 0x100002D , 0x100005F ] }; 26 key <AE12> { [ 0x100003D , 0x100002B ] }; 27 key <AD01> { [ 0x1000642 , 0x1000652, 0x100200D ] }; 28 key <AD02> { [ 0x1000648 , 0x1000624, 0x100200C ] }; 29 key <AD03> { [ 0x1000639 , 0x1000670 ] }; 30 key <AD04> { [ 0x1000631 , 0x1000691 ] }; 31 key <AD05> { [ 0x100062a , 0x1000679 ] }; 32 key <AD06> { [ 0x10006d2 , 0x100064E ] }; 33 key <AD07> { [ 0x1000621 , 0x1000626 ] }; 34 key <AD08> { [ 0x10006cc , 0x1000650 ] }; 35 key <AD09> { [ 0x10006c1 , 0x10006c3 ] }; 36 key <AD10> { [ 0x100067e , 0x100064f ] }; 37 key <AD11> { [ 0x100005d , 0x100007D ] }; 38 key <AD12> { [ 0x100005b , 0x100007B ] }; 39 40 key <AC01> { [ 0x1000627 , 0x1000622 ] }; 41 key <AC02> { [ 0x1000633 , 0x1000635 ] }; 42 key <AC03> { [ 0x100062f , 0x1000688 ] }; 43 key <AC04> { [ 0x1000641 , 0x1000651 ] }; 44 key <AC05> { [ 0x10006af , 0x100063a ] }; 45 key <AC06> { [ 0x100062D , 0x10006BE ] }; 46 key <AC07> { [ 0x100062c , 0x1000636 ] }; 47 key <AC08> { [ 0x10006a9 , 0x100062e ] }; 48 key <AC09> { [ 0x1000644 , 0x1000654 ] }; 49 key <AC10> { [ 0x100061b , 0x100003a ] }; 50 key <AC11> { [ 0x1000027 , 0x1000022 ] }; 51 key <BKSL> { [ 0x100005C , 0x100007C ] }; 52 53 key <LSGT> { [ bar , brokenbar ] }; 54 key <AB01> { [ 0x1000632 , 0x1000630, 0x100200E ] }; 55 key <AB02> { [ 0x1000634 , 0x1000698, 0x100202A ] }; 56 key <AB03> { [ 0x1000686 , 0x100062b, 0x100202D ] }; 57 key <AB04> { [ 0x1000637 , 0x1000638, 0x100202C ] }; 58 key <AB05> { [ 0x1000628 , 0x100002e, 0x100202E ] }; 59 key <AB06> { [ 0x1000646 , 0x10006ba, 0x100202B ] }; 60 key <AB07> { [ 0x1000645 , 0x1000658, 0x100200F ] }; 61 key <AB08> { [ 0x100060c , 0x100003c ] }; 62 key <AB09> { [ 0x10006d4 , 0x100003E ] }; 63 key <AB10> { [ 0x100002f , 0x100061f ] }; 64 65// key <RALT> { [ Mode_switch, Multi_key ] }; 66 67 include "level3(ralt_switch)" 68}; 69 70partial alphanumeric_keys 71xkb_symbols "urd-crulp" { 72 73 name[Group1]= "Urdu (Pakistan, CRULP)"; 74// www.crulp.org phonetic v1.1 75 76 key <TLDE> { [ 0x100007E , 0x100064B ] }; 77 key <AE01> { [ 0x10006F1 , 0x1000031, 0x1000021 ] }; 78 key <AE02> { [ 0x10006F2 , 0x1000032, 0x1000040 ] }; 79 key <AE03> { [ 0x10006F3 , 0x1000033, 0x1000023 ] }; 80 key <AE04> { [ 0x10006F4 , 0x1000034 ] }; 81 key <AE05> { [ 0x10006F5 , 0x1000035, 0x100066A ] }; 82 key <AE06> { [ 0x10006F6 , 0x1000036 ] }; 83 key <AE07> { [ 0x10006F7 , 0x1000037, 0x1000026 ] }; 84 key <AE08> { [ 0x10006F8 , 0x1000038, 0x100002A ] }; 85 key <AE09> { [ 0x10006F9 , 0x1000039, 0x1000029 ] }; 86 key <AE10> { [ 0x10006F0 , 0x1000030, 0x1000028 ] }; 87 88 key <AE11> { [ 0x100002D , 0x100005F ] }; 89 key <AE12> { [ 0x100003D , 0x100002B ] }; 90 key <AD01> { [ 0x1000642 , 0x1000652 ] }; 91 key <AD02> { [ 0x1000648 , 0x1000651, 0x1000602 ] }; 92 key <AD03> { [ 0x1000639 , 0x1000670, 0x1000656 ] }; 93 key <AD04> { [ 0x1000631 , 0x1000691, 0x1000613 ] }; 94 key <AD05> { [ 0x100062a , 0x1000679, 0x1000614 ] }; 95 key <AD06> { [ 0x10006d2 , 0x100064E, 0x1000601 ] }; 96 key <AD07> { [ 0x1000621 , 0x1000626, 0x1000654 ] }; 97 key <AD08> { [ 0x10006cc , 0x1000650, 0x1000611 ] }; 98 key <AD09> { [ 0x10006c1 , 0x10006c3 ] }; 99 key <AD10> { [ 0x100067e , 0x100064f, 0x1000657 ] }; 100 key <AD11> { [ 0x100005d , 0x100007D ] }; 101 key <AD12> { [ 0x100005b , 0x100007B ] }; 102 103 key <AC01> { [ 0x1000627 , 0x1000622, 0x100FDF2 ] }; 104 key <AC02> { [ 0x1000633 , 0x1000635, 0x1000610 ] }; 105 key <AC03> { [ 0x100062f , 0x1000688, 0x100FDFA ] }; 106 key <AC04> { [ 0x1000641 , 0x1000651 ] }; 107 key <AC05> { [ 0x10006af , 0x100063a ] }; 108 key <AC06> { [ 0x100062D , 0x10006BE, 0x1000612 ] }; 109 key <AC07> { [ 0x100062c , 0x1000636, 0x100FDFB ] }; 110 key <AC08> { [ 0x10006a9 , 0x100062e ] }; 111 key <AC09> { [ 0x1000644 , 0x1000654 ] }; 112 key <AC10> { [ 0x100061b , 0x100003a ] }; 113 key <AC11> { [ 0x1000027 , 0x1000022 ] }; 114 key <BKSL> { [ 0x100005C , 0x100007C ] }; 115 116 key <LSGT> { [ bar , brokenbar ] }; 117 key <AB01> { [ 0x1000632 , 0x1000630, 0x100060F ] }; 118 key <AB02> { [ 0x1000634 , 0x1000698, 0x100060E ] }; 119 key <AB03> { [ 0x1000686 , 0x100062b, 0x1000603 ] }; 120 key <AB04> { [ 0x1000637 , 0x1000638 ] }; 121 key <AB05> { [ 0x1000628 , 0x100002e, 0x100FDFD ] }; 122 key <AB06> { [ 0x1000646 , 0x10006ba, 0x1000600 ] }; 123 key <AB07> { [ 0x1000645 , 0x1000658 ] }; 124 key <AB08> { [ 0x100060c , 0x100003c, 0x100003C ] }; 125 key <AB09> { [ 0x10006d4 , 0x100066B, 0x100003E ] }; 126 key <AB10> { [ 0x100002f , 0x100061F ] }; 127 128// key <RALT> { [ Mode_switch, Multi_key ] }; 129 130 include "level3(ralt_switch)" 131}; 132 133 134partial alphanumeric_keys 135xkb_symbols "urd-nla" { 136 name[Group1]= "Urdu (Pakistan, NLA)"; 137// www.nla.gov.pk 138 139 key <TLDE> { [ 0x1000060 , 0x100007E, 0x100200C ] }; 140 key <AE01> { [ 0x1000031 , 0x1000021 ] }; 141 key <AE02> { [ 0x1000032 , 0x1000040 ] }; 142 key <AE03> { [ 0x1000033 , 0x1000023 ] }; 143 key <AE04> { [ 0x1000034 , 0x1000024 ] }; 144 key <AE05> { [ 0x1000035 , 0x100066A ] }; 145 key <AE06> { [ 0x1000036 , 0x100005E ] }; 146 key <AE07> { [ 0x1000037 , 0x10006D6 ] }; 147 key <AE08> { [ 0x1000038 , 0x100066D ] }; 148 key <AE09> { [ 0x1000039 , 0x1000029 ] }; 149 key <AE10> { [ 0x1000030 , 0x1000028 ] }; 150 key <AE11> { [ 0x100002D , 0x100005F ] }; 151 key <AE12> { [ 0x100003D , 0x100002B ] }; 152 key <AD01> { [ 0x1000637 , 0x1000638, 0x100200D ] }; 153 key <AD02> { [ 0x1000635 , 0x1000636, 0x100200C ] }; 154 key <AD03> { [ 0x10006BE , 0x1000630 ] }; 155 key <AD04> { [ 0x100062F , 0x1000688 ] }; 156 key <AD05> { [ 0x1000679 , 0x100062B ] }; 157 key <AD06> { [ 0x100067E , 0x1000651 ] }; 158 key <AD07> { [ 0x100062A , 0x10006C3 ] }; 159 key <AD08> { [ 0x1000628 , 0x1000640 ] }; 160 key <AD09> { [ 0x100062C , 0x1000686 ] }; 161 key <AD10> { [ 0x100062D , 0x100062E ] }; 162 key <AD11> { [ 0x100005d , 0x100007D ] }; 163 key <AD12> { [ 0x100005b , 0x100007B ] }; 164 165 key <AC01> { [ 0x1000645 , 0x1000698 ] }; 166 key <AC02> { [ 0x1000648 , 0x1000632 ] }; 167 key <AC03> { [ 0x1000631 , 0x1000691 ] }; 168 key <AC04> { [ 0x1000646 , 0x10006BA ] }; 169 key <AC05> { [ 0x1000644 , 0x10006C2 ] }; 170 key <AC06> { [ 0x10006C1 , 0x1000621 ] }; 171 key <AC07> { [ 0x1000627 , 0x1000622 ] }; 172 key <AC08> { [ 0x10006a9 , 0x10006AF ] }; 173 key <AC09> { [ 0x10006CC , 0x100064A ] }; 174 key <AC10> { [ 0x100061b , 0x100003a ] }; 175 key <AC11> { [ 0x1000027 , 0x1000022 ] }; 176 key <BKSL> { [ 0x100005C , 0x100007C ] }; 177 178 key <LSGT> { [ bar , brokenbar ] }; 179 key <AB01> { [ 0x1000642 , 0x100200D, 0x100200E ] }; 180 key <AB02> { [ 0x1000641 , 0x100200C, 0x100202A ] }; 181 key <AB03> { [ 0x10006D2 , 0x10006D3, 0x100202D ] }; 182 key <AB04> { [ 0x1000633 , 0x100200E, 0x100202C ] }; 183 key <AB05> { [ 0x1000634 , 0x1000624, 0x100202E ] }; 184 key <AB06> { [ 0x100063A , 0x1000626, 0x100202B ] }; 185 key <AB07> { [ 0x1000639 , 0x100200F, 0x100200F ] }; 186 key <AB08> { [ 0x100060c , 0x100003E ] }; 187 key <AB09> { [ 0x10006d4 , 0x100003C ] }; 188 key <AB10> { [ 0x100002F , 0x100061f ] }; 189 190 include "level3(ralt_switch)" 191}; 192 193partial alphanumeric_keys 194xkb_symbols "snd" { 195 name[Group1]= "Sindhi"; 196// www.bhurgri.com 197 198 key <TLDE> { [ 0x1002019, 0x1002018 ] }; 199 key <AE01> { [ 1, exclam, 0x1000610 ] }; 200 key <AE02> { [ 2, 0x1000670, 0x1000611 ] }; 201 key <AE03> { [ 3, 0x1000621, 0x1000613 ] }; 202 key <AE04> { [ 4, 0x1000621, 0x1000612 ] }; 203 key <AE05> { [ 5, 0x1000621, 0x1002026 ] }; 204 key <AE06> { [ 6, 0x1000621, 0x1002022 ] }; 205 key <AE07> { [ 7, 0x10006FD ] }; 206 key <AE08> { [ 8, asterisk ] }; 207 key <AE09> { [ 9, parenright ] }; 208 key <AE10> { [ 0, parenleft ] }; 209 key <AE11> { [ 0x100068F, 0x100005F, 0x100002D ] }; 210 key <AE12> { [ 0x100068C, plus, 0x100003D ] }; 211 key <BKSL> { [ 0x100068D, 0x100067A, 0x100007C ] }; 212 213 key <AD01> { [ 0x1000642, 0x100064E, 0x100064B ] }; 214 key <AD02> { [ 0x1000635, 0x1000636, 0x100FDFA ] }; 215 key <AD03> { [ 0x100064A, 0x1000650, 0x1000656 ] }; 216 key <AD04> { [ 0x1000631, 0x1000699, 0x100FDE6 ] }; 217 key <AD05> { [ 0x100062A, 0x100067D, 0x1000629 ] }; 218 key <AD06> { [ 0x100067F, 0x100062B, 0x100FDE5 ] }; 219 key <AD07> { [ 0x1000639, 0x100063A, 0x100FDE3 ] }; 220 key <AD08> { [ 0x10006B3, 0x10006BE, 0x100FDE4 ] }; 221 key <AD09> { [ 0x1000648, 0x100064F, 0x1000657 ] }; 222 key <AD10> { [ 0x100067E, 0x10006A6 ] }; 223 key <AD11> { [ 0x1000687, 0x1000683 ] }; 224 key <AD12> { [ 0x1000686, 0x1000684 ] }; 225 226 key <AC01> { [ 0x1000627, 0x1000622, 0x1000649 ] }; 227 key <AC02> { [ 0x1000633, 0x1000634 ] }; 228 key <AC03> { [ 0x100062F, 0x100068A ] }; 229 key <AC04> { [ 0x1000641, 0x10006A6 ] }; 230 key <AC05> { [ 0x10006AF, 0x10006AF ] }; 231 key <AC06> { [ 0x1000647, 0x100062D, 0x10006C1 ] }; 232 key <AC07> { [ 0x100062C, 0x100062C, 0x100FDFB ] }; 233 key <AC08> { [ 0x10006AA, 0x10006E1 ] }; 234 key <AC09> { [ 0x1000644, 0x100003A ] }; 235 key <AC10> { [ 0x10006A9, 0x100061B ] }; 236 key <AC11> { [ 0x10006B1, 0x1000640 ] }; 237 238 key <AB01> { [ 0x1000632, 0x1000630, 0x1000652 ] }; 239 key <AB02> { [ 0x100062E, 0x1000651, 0x100200C ] }; 240 key <AB03> { [ 0x1000637, 0x1000638, 0x100200D ] }; 241 key <AB04> { [ 0x1000680, 0x1000621, 0x1000624 ] }; 242 key <AB05> { [ 0x1000628, 0x100067B, 0x100FDE1 ] }; 243 key <AB06> { [ 0x1000646, 0x10006BB, 0x100200E ] }; 244 key <AB07> { [ 0x1000645, 0x10006FE, 0x100FDF4 ] }; 245 key <AB08> { [ 0x100060C, 0x100201C, 0x100200F ] }; 246 key <AB09> { [ period, 0x100201D, 0x10006D4 ] }; 247 key <AB10> { [ 0x1000626, Arabic_question_mark, 0x100002F ] }; 248 249 include "level3(ralt_switch)" 250}; 251 252partial alphanumeric_keys 253xkb_symbols "ara" { 254 name[Group1]= "Arabic (Pakistan)"; 255 256// NOTES: 257// 258// there is also combined shadda diacritis in AltGr position of simple 259// diacritics fatha, fathatan, damma, dammatan, kasra and kasratan 260// should a third state be added to Group2 ? 261// 262// How is this different from ara(basic)? --bernie 263 264 key <TLDE> { [ 0x100064d , 0x100064b ] }; 265 key <AE01> { [ 0x10006F1 , 0x1000021 ] }; 266 key <AE02> { [ 0x10006F2 , 0x1000003 ] }; 267 key <AE03> { [ 0x10006F3 , 0x100002f ] }; 268 key <AE04> { [ 0x10006F4 , 0x1000626 ] }; 269 key <AE05> { [ 0x10006F5 , 0x1000003 ] }; 270 key <AE06> { [ 0x10006F6 , 0x10006d6 ] }; 271 key <AE07> { [ 0x10006F7 , 0x1000654 ] }; 272 key <AE08> { [ 0x10006F8 , 0x100064c ] }; 273 key <AE09> { [ 0x10006F9 , 0x1000029 ] }; 274 key <AE10> { [ 0x10006F0 , 0x1000028 ] }; 275 key <AE11> { [ 0x1000623 , 0x1000651 ] }; 276 key <AE12> { [ 0x1000624 , 0x1000622 ] }; 277 key <AD01> { [ 0x1000642 , 0x1000652 ] }; 278 key <AD02> { [ 0x1000648 , 0x10000a3 ] }; 279 key <AD03> { [ 0x1000639 , 0x10000a5 ] }; 280 key <AD04> { [ 0x1000631 , 0x1000691 ] }; 281 key <AD05> { [ 0x100062a , 0x1000679 ] }; 282 key <AD06> { [ 0x10006d2 , 0x1000601 ] }; 283 key <AD07> { [ 0x1000621 , 0x100060c ] }; 284 key <AD08> { [ 0x10006cc , 0x1000670 ] }; 285 key <AD09> { [ 0x10006c1 , 0x10006c3 ] }; 286 key <AD10> { [ 0x100067e , 0x100064f ] }; 287 key <AD11> { [ 0x100005d , 0x1000670 ] }; 288 key <AD12> { [ 0x100005b , 0x1000670 ] }; 289 290 key <AC01> { [ 0x1000627 , 0x1000653 ] }; 291 key <AC02> { [ 0x1000633 , 0x1000635 ] }; 292 key <AC03> { [ 0x100062f , 0x1000688 ] }; 293 key <AC04> { [ 0x1000641 , 0x1000003 ] }; 294 key <AC05> { [ 0x10006af , 0x100063a ] }; 295 key <AC06> { [ 0x10006be , 0x100062d ] }; 296 key <AC07> { [ 0x100062c , 0x1000636 ] }; 297 key <AC08> { [ 0x10006a9 , 0x100062e ] }; 298 key <AC09> { [ 0x1000644 , 0x1000613 ] }; 299 key <AC10> { [ 0x100061b , 0x100003a ] }; 300 key <AC11> { [ 0x1000670 , 0x1000022 ] }; 301 key <BKSL> { [ 0x100060e , 0x1000614 ] }; 302 303 key <LSGT> { [ bar , brokenbar ] }; 304 key <AB01> { [ 0x1000632 , 0x1000630 ] }; 305 key <AB02> { [ 0x1000634 , 0x1000698 ] }; 306 key <AB03> { [ 0x1000686 , 0x100062b ] }; 307 key <AB04> { [ 0x1000637 , 0x1000638 ] }; 308 key <AB05> { [ 0x1000628 , 0x1000612 ] }; 309 key <AB06> { [ 0x1000646 , 0x10006ba ] }; 310 key <AB07> { [ 0x1000645 , 0x1000003 ] }; 311 key <AB08> { [ 0x100060c , 0x1000650 ] }; 312 key <AB09> { [ 0x10006d4 , 0x100064e ] }; 313 key <AB10> { [ 0x1000003 , 0x100061f ] }; 314}; 315 316partial alphanumeric_keys 317xkb_symbols "olpc" { 318 319// Contact: Walter Bender <walter@laptop.org> 320 321 include "pk(ara)" 322 323 name[Group1]= "Urdu (Pakistan)"; 324 325 // Keys '~' - '=' 326 key <TLDE> { [ 0x1000654, 0x100064B ] }; 327 key <AE01> { [ 0x10006F1, 0x1000603 ] }; 328 key <AE02> { [ 0x10006F2, 0x1000602 ] }; 329 key <AE03> { [ 0x10006F3, 0x1000601 ] }; 330 key <AE04> { [ 0x10006F4, 0x1000600 ] }; 331 key <AE05> { [ 0x10006F5, 0x100060F ] }; 332 key <AE06> { [ 0x10006F6, 0x100060E ] }; 333 key <AE07> { [ 0x10006F7, 0x1000614 ] }; 334 key <AE08> { [ 0x10006F8, 0x1000612 ] }; 335 key <AE09> { [ 0x10006F9, 0x1000611 ] }; 336 key <AE10> { [ 0x10006F0, 0x1000613 ] }; 337 key <AE11> { [ minus, 0x1000610 ] }; 338 key <AE12> { [ equal, plus ] }; 339 340 //Keys 'Q' - ']' 341 key <AD01> { [ 0x1000642, 0x1000652 ] }; 342 key <AD02> { [ 0x1000648, 0x1000651 ] }; 343 key <AD03> { [ 0x1000639, 0x1000670 ] }; 344 key <AD04> { [ 0x1000631, 0x1000691 ] }; 345 key <AD05> { [ 0x100062A, 0x1000679 ] }; 346 key <AD06> { [ 0x10006D2, 0x100064E ] }; 347 key <AD07> { [ 0x1000621, 0x1000626 ] }; 348 key <AD08> { [ 0x10006CC, 0x1000650 ] }; 349 key <AD09> { [ 0x10006C1, 0x10006C3 ] }; 350 key <AD10> { [ 0x100067E, 0x100064F ] }; 351 key <AD12> { [ 0x100FDFD, 0x100FDFA ] }; 352 key <AD11> { [ 0x100FDF2, 0x100FDFB ] }; 353 354 // Keys 'A' - ''' 355 key <AC01> { [ 0x1000627, 0x1000622 ] }; 356 key <AC02> { [ 0x1000633, 0x1000635 ] }; 357 key <AC03> { [ 0x100062F, 0x1000688 ] }; 358 key <AC04> { [ 0x1000641 ] }; //shift key not available 359 key <AC05> { [ 0x10006AF, 0x100063A ] }; 360 key <AC06> { [ 0x100062D, 0x10006BE ] }; 361 key <AC07> { [ 0x100062C, 0x1000636 ] }; 362 key <AC08> { [ 0x10006A9, 0x100062E ] }; 363 key <AC09> { [ 0x1000644, 0x1000656 ] }; 364 key <AC10> { [ 0x100061B, colon ] }; 365 key <AC11> { [ quote, doublequote ] }; 366 367 key <BKSL> { [ backslash, bar ] }; 368 key <SPCE> { [ space ] }; 369 370 // Keys: 'Z' - '/' 371 key <AB01> { [ 0x1000632, 0x1000622 ] }; 372 key <AB02> { [ 0x1000634, 0x1000635 ] }; 373 key <AB03> { [ 0x1000686, 0x1000688 ] }; 374 key <AB04> { [ 0x1000637 ] }; //shift key unavailable 375 key <AB05> { [ 0x1000628, 0x100063A ] }; 376 key <AB06> { [ 0x1000646, 0x10006BE ] }; 377 key <AB07> { [ 0x1000645, 0x1000636 ] }; 378 key <AB08> { [ 0x100060C, 0x100062E ] }; 379 key <AB09> { [ 0x10006D4, 0x1000656 ] }; 380 key <AB10> { [ slash, 0x100061F ] }; 381 382 include "group(olpc)" 383}; 384