1// Keyboard layouts for languages of Myanmar. 2 3default partial alphanumeric_keys 4xkb_symbols "basic" { 5 name[Group1]= "Burmese"; 6 7 key <TLDE> {[ grave, U100E, grave, asciitilde ]}; 8 key <AE01> {[ U1041, U100D, 1, exclam ]}; 9 key <AE02> {[ U1042, U1052, 2, at ]}; 10 key <AE03> {[ U1043, U100B, 3, numbersign ]}; 11 key <AE04> {[ U1044, dollar, 4, dollar ]}; 12 key <AE05> {[ U1045, percent, 5, percent ]}; 13 key <AE06> {[ U1046, asciicircum, 6, asciicircum ]}; 14 key <AE07> {[ U1047, U101B, 7, ampersand ]}; 15 key <AE08> {[ U1048, asterisk, 8, asterisk ]}; 16 key <AE09> {[ U1049, parenleft, 9, parenleft ]}; 17 key <AE10> {[ U1040, parenright, 0, parenright ]}; 18 key <AE11> {[ minus, underscore ]}; 19 key <AE12> {[ equal, plus ]}; 20 21 key <AD01> {[ U1006, U1008, q, Q ]}; 22 key <AD02> {[ U1010, U101D, w, W ]}; 23 key <AD03> {[ U1014, U1023, e, E ]}; 24 key <AD04> {[ U1019, U104E, r, R ]}; 25 key <AD05> {[ U1021, U1024, t, T ]}; 26 key <AD06> {[ U1015, U104C, y, Y ]}; 27 key <AD07> {[ U1000, U1025, u, U ]}; 28 key <AD08> {[ U1004, U104D, i, I ]}; 29 key <AD09> {[ U101E, U103F, o, O ]}; 30 key <AD10> {[ U1005, U100F, p, P ]}; 31 key <AD11> {[ U101F, U1027, bracketleft, braceleft ]}; 32 key <AD12> {[ U1029, U102A, bracketright, braceright ]}; 33 34 key <AC01> {[ U1031, U1017, a, A ]}; 35 key <AC02> {[ U103B, U103E, s, S ]}; 36 key <AC03> {[ U102D, U102E, d, D ]}; 37 key <AC04> {[ U103A, U1039, f, F ]}; 38 key <AC05> {[ U102B, U103D, g, G ]}; 39 key <AC06> {[ U1037, U1036, h, H ]}; 40 key <AC07> {[ U103C, U1032, j, J ]}; 41 key <AC08> {[ U102F, U1012, k, K ]}; 42 key <AC09> {[ U1030, U1013, l, L ]}; 43 key <AC10> {[ U1038, U1002, semicolon, colon ]}; 44 key <AC11> {[ apostrophe, quotedbl ]}; 45 key <BKSL> {[ U104F, backslash, backslash, bar ]}; 46 47 key <AB01> {[ U1016, U1007, z, Z ]}; 48 key <AB02> {[ U1011, U100C, x, X ]}; 49 key <AB03> {[ U1001, U1003, c, C ]}; 50 key <AB04> {[ U101C, U1020, v, V ]}; 51 key <AB05> {[ U1018, U101A, b, B ]}; 52 key <AB06> {[ U100A, U1009, n, N ]}; 53 key <AB07> {[ U102C, U1026, m, M ]}; 54 key <AB08> {[ comma, U104A, comma, less ]}; 55 key <AB09> {[ period, U104B, period, greater ]}; 56 key <AB10> {[ slash, question ]}; 57}; 58 59partial alphanumeric_keys 60xkb_symbols "zawgyi" { 61 62 name[Group1]="Burmese Zawgyi"; 63 64 include "mm(tilde_latch)" 65 66 key <AE01> {[ U1041, U100D, U100E, U106F ]}; 67 key <AE02> {[ U1042, U1091, U106D ]}; 68 key <AE03> {[ U1043, U100B, U106C ]}; 69 key <AE04> {[ U1044, dollar, U104E, U1023 ]}; 70 key <AE05> {[ U1045, percent, U1029, U102A ]}; 71 key <AE06> {[ U1046, asciicircum ]}; 72 key <AE07> {[ U1047, U101B, U1090 ]}; 73 key <AE08> {[ U1048, U1002, U1062 ]}; 74 key <AE09> {[ U1049, parenleft, U1026 ]}; 75 key <AE10> {[ U1040, parenright ]}; 76 key <AE11> {[ minus, underscore, U1097 ]}; 77 key <AE12> {[ equal, plus, U106E ]}; 78 79 key <AD01> {[ U1006, U103D, U1066, U1067 ]}; 80 key <AD02> {[ U1010, U107D, U1071, U1072 ]}; 81 key <AD03> {[ U1014, U108F, U1077, U1096 ]}; 82 key <AD04> {[ U1019, U107D, U107C ]}; 83 key <AD05> {[ U1021, U108A, U1024 ]}; 84 key <AD06> {[ U1015, U1094, U1078, U104C ]}; 85 key <AD07> {[ U1000, U1095, U1060, U1009 ]}; 86 key <AD08> {[ U1004, U1088, U104D, U106A ]}; 87 key <AD09> {[ U101E, U1025, U1086 ]}; 88 key <AD10> {[ U1005, U100F, U1065, U1070 ]}; 89 key <AD11> {[ U101F, U1027 ]}; 90 key <AD12> {[ U104F, U1092 ]}; 91 92 key <AC01> {[ U1031, U1017, U1008, U107A ]}; 93 key <AC02> {[ U103A, U103D ]}; 94 key <AC03> {[ U102D, U102E, U108E, U108C ]}; 95 key <AC04> {[ U1039, U1064 ]}; 96 key <AC05> {[ U102B, U103C ]}; 97 key <AC06> {[ U1037, U1036 ]}; 98 key <AC07> {[ U103B, U1032, U1083, U1084 ]}; 99 key <AC08> {[ U102F, U1033, U1089 ]}; 100 key <AC09> {[ U1030, U1034, U108D, U108B ]}; 101 key <AC10> {[ U1038, U105A ]}; 102 key <AC11> {[ U1012, U1013, U1075, U1076 ]}; 103 key <BKSL> {[ U104F, U1092 ]}; 104 105 key <AB01> {[ U1016, U1007, U1079, U1068 ]}; 106 key <AB02> {[ U1011, U100C, U1073, U1074 ]}; 107 key <AB03> {[ U1001, U1003, U1061, U1063 ]}; 108 key <AB04> {[ U101C, U1020, U1085 ]}; 109 key <AB05> {[ U1018, U1080, U1093 ]}; 110 key <AB06> {[ U100A, U107F, U106B, U1069 ]}; 111 key <AB07> {[ U102C, U107E, U1081, U1082 ]}; 112 key <AB08> {[ U101A, U101D ]}; 113 key <AB09> {[ period, U1008 ]}; 114 key <AB10> {[ U104B, U104A ]}; 115 116 include "level3(ralt_switch)" 117}; 118 119// This fragment creates the "Tilde key" phenomenon. 120partial modifier_keys 121xkb_symbols "tilde_latch" { 122 key <TLDE> { symbols[Group1] = [ ISO_Level3_Latch, asciitilde, grave ] }; 123 modifier_map Mod5 { ISO_Level3_Latch }; 124}; 125 126 127partial alphanumeric_keys 128xkb_symbols "mnw" { 129 name[Group1]= "Mon"; 130 131 key <TLDE> {[ U105D, U100E, grave, asciitilde ]}; 132 key <AE01> {[ U1041, U100D, 1, exclam ]}; 133 key <AE02> {[ U1042, U1052, 2, at ]}; 134 key <AE03> {[ U1043, U100B, 3, numbersign ]}; 135 key <AE04> {[ U1044, U1053, 4, dollar ]}; 136 key <AE05> {[ U1045, percent, 5, percent ]}; 137 key <AE06> {[ U1046, U1035, 6, asciicircum ]}; 138 key <AE07> {[ U1047, U101B, 7, ampersand ]}; 139 key <AE08> {[ U1048, U1002, 8, asterisk ]}; 140 key <AE09> {[ U1049, parenleft, 9, parenleft ]}; 141 key <AE10> {[ U1040, parenright, 0, parenright ]}; 142 key <AE11> {[ minus, multiply, underscore, none ]}; 143 key <AE12> {[ equal, plus, division, none ]}; 144 145 key <AD01> {[ U1006, U105B, q, Q ]}; 146 key <AD02> {[ U1010, U101D, w, W ]}; 147 key <AD03> {[ U1014, U1023, e, E ]}; 148 key <AD04> {[ U1019, U105F, r, R ]}; 149 key <AD05> {[ U1021, U1033, t, T ]}; 150 key <AD06> {[ U1015, U1060, y, Y ]}; 151 key <AD07> {[ U1000, U1025, u, U ]}; 152 key <AD08> {[ U105A, U104E, i, I ]}; 153 key <AD09> {[ U101E, U103F, o, O ]}; 154 key <AD10> {[ U1005, U100F, p, P ]}; 155 key <AD11> {[ U101F, U1028, bracketleft, braceleft ]}; 156 key <AD12> {[ U1029, slash, bracketright, braceright ]}; 157 158 key <AC01> {[ U1031, U1017, a, A ]}; 159 key <AC02> {[ U103B, U103E, s, S ]}; 160 key <AC03> {[ U102D, U102E, d, D ]}; 161 key <AC04> {[ U103A, U1039, f, F ]}; 162 key <AC05> {[ U102B, U103D, g, G ]}; 163 key <AC06> {[ U1034, U1036, h, H ]}; 164 key <AC07> {[ U103C, U1032, j, J ]}; 165 key <AC08> {[ U102F, U1012, k, K ]}; 166 key <AC09> {[ U1030, U1013, l, L ]}; 167 key <AC10> {[ U1038, colon, semicolon, colon ]}; 168 key <AC11> {[ apostrophe, quotedbl ]}; 169 key <BKSL> {[ U1051, bar, backslash, bar ]}; 170 171 key <AB01> {[ U1016, U1007, z, Z ]}; 172 key <AB02> {[ U1011, U100C, x, X ]}; 173 key <AB03> {[ U1001, U1003, c, C ]}; 174 key <AB04> {[ U101C, U1020, v, V ]}; 175 key <AB05> {[ U1018, U1050, b, B ]}; 176 key <AB06> {[ U100A, U1009, n, N ]}; 177 key <AB07> {[ U102C, U1054, m, M ]}; 178 key <AB08> {[ U101A, U105E, comma, less ]}; 179 key <AB09> {[ U105C, U1055, period, greater ]}; 180 key <AB10> {[ U104B, U104A, slash, question ]}; 181}; 182 183 184// Mon A1 layout, by Tao Mon Lae, (tamonlae@gmail.com), 12-August-2021 185 186partial alphanumeric_keys 187xkb_symbols "mnw-a1" { 188 name[Group1]= "Mon (A1)"; 189 190 key <TLDE> {[ grave, asciitilde ]}; 191 key <AE01> {[ U1041, exclam ]}; 192 key <AE02> {[ U1042, at ]}; 193 key <AE03> {[ U1043, U1053 ]}; 194 key <AE04> {[ U1044, U1029 ]}; 195 key <AE05> {[ U1045, percent ]}; 196 key <AE06> {[ U1046, U1050 ]}; 197 key <AE07> {[ U1047, U1051 ]}; 198 key <AE08> {[ U1048, asterisk ]}; 199 key <AE09> {[ U1049, parenleft ]}; 200 key <AE10> {[ U1040, parenright ]}; 201 key <AE11> {[ minus, underscore ]}; 202 key <AE12> {[ equal, plus ]}; 203 204 key <AD01> {[ U101E, U103F ]}; 205 key <AD02> {[ U101D, U103D ]}; 206 key <AD03> {[ U1031, U1035 ]}; 207 key <AD04> {[ U101B, U103C ]}; 208 key <AD05> {[ U1010, U1011 ]}; 209 key <AD06> {[ U101A, U103B ]}; 210 key <AD07> {[ U102F, U1030 ]}; 211 key <AD08> {[ U102D, U1033 ]}; 212 key <AD09> {[ U1032, U1034 ]}; 213 key <AD10> {[ U1015, U100F ]}; 214 key <AD11> {[ U100D, U1028 ]}; 215 key <AD12> {[ U100E, U1054 ]}; 216 217 key <AC01> {[ U1021, U1023 ]}; 218 key <AC02> {[ U1005, U1006 ]}; 219 key <AC03> {[ U1012, U1013 ]}; 220 key <AC04> {[ U1016, U1039 ]}; 221 key <AC05> {[ U1002, U1003 ]}; 222 key <AC06> {[ U101F, U103E ]}; 223 key <AC07> {[ U103A, U102E ]}; 224 key <AC08> {[ U1000, U1001 ]}; 225 key <AC09> {[ U101C, U1060 ]}; 226 key <AC10> {[ U1025, U1020 ]}; 227 key <AC11> {[ apostrophe, quotedbl ]}; 228 key <BKSL> {[ U105C, U105D ]}; 229 230 key <AB01> {[ U1007, U105B ]}; 231 key <AB02> {[ U100B, U100C ]}; 232 key <AB03> {[ U105A, U104E ]}; 233 key <AB04> {[ U100A, U1009 ]}; 234 key <AB05> {[ U1017, U1018 ]}; 235 key <AB06> {[ U1014, U105E ]}; 236 key <AB07> {[ U1019, U105F ]}; 237 key <AB08> {[ U1036, U1038 ]}; 238 key <AB09> {[ U102C, U102B ]}; 239 key <AB10> {[ U104A, U104B ]}; 240}; 241 242 243partial alphanumeric_keys 244xkb_symbols "shn" { 245 name[Group1]= "Shan"; 246 247 key <TLDE> {[ grave, asciitilde ]}; 248 key <AE01> {[ 1, exclam ]}; 249 key <AE02> {[ 2, at ]}; 250 key <AE03> {[ 3, numbersign ]}; 251 key <AE04> {[ 4, dollar ]}; 252 key <AE05> {[ 5, percent ]}; 253 key <AE06> {[ 6, asciicircum ]}; 254 key <AE07> {[ 7, ampersand ]}; 255 key <AE08> {[ 8, asterisk ]}; 256 key <AE09> {[ 9, parenleft ]}; 257 key <AE10> {[ 0, parenright ]}; 258 key <AE11> {[ minus, underscore ]}; 259 key <AE12> {[ equal, plus ]}; 260 261 key <AD01> {[ U1078, UAA61, q, Q ]}; 262 key <AD02> {[ U1010, U107B, w, W ]}; 263 key <AD03> {[ U107C, UA9E3, e, E ]}; 264 key <AD04> {[ U1019, U109E, r, R ]}; 265 key <AD05> {[ U1022, U103C, t, T ]}; 266 key <AD06> {[ U1015, U107F, y, Y ]}; 267 key <AD07> {[ U1075, U1077, u, U ]}; 268 key <AD08> {[ U1004, U101B, i, I ]}; 269 key <AD09> {[ U101D, U101E, o, O ]}; 270 key <AD10> {[ U1081, U1080, p, P ]}; 271 key <AD11> {[ bracketleft, braceleft ]}; 272 key <AD12> {[ bracketright, braceright ]}; 273 274 key <AC01> {[ U1031, U1035, a, A ]}; 275 key <AC02> {[ U1084, U1085, s, S ]}; 276 key <AC03> {[ U102D, U102E, d, D ]}; 277 key <AC04> {[ U103A, U1082, f, F ]}; 278 key <AC05> {[ U103D, U1082, g, G ]}; 279 key <AC06> {[ U1089, U1037, h, H ]}; 280 key <AC07> {[ U1087, U1086, j, J ]}; 281 key <AC08> {[ U102F, U1012, k, K ]}; 282 key <AC09> {[ U1030, U108A, l, L ]}; 283 key <AC10> {[ U1088, U1038, semicolon, colon ]}; 284 key <AC11> {[ apostrophe, quotedbl ]}; 285 key <BKSL> {[ backslash, bar ]}; 286 287 key <AB01> {[ U107D, U107E, z, Z ]}; 288 key <AB02> {[ U1011, UAA6A, x, X ]}; 289 key <AB03> {[ U1076, UA9E0, c, C ]}; 290 key <AB04> {[ U101C, UAA6E, v, V ]}; 291 key <AB05> {[ U101A, U103B, b, B ]}; 292 key <AB06> {[ U107A, U109F, n, N ]}; 293 key <AB07> {[ U1062, U1083, m, M ]}; 294 key <AB08> {[ comma, U104A, comma, less ]}; 295 key <AB09> {[ period, U104B, period, greater ]}; 296 key <AB10> {[ slash, question ]}; 297}; 298 299 300partial alphanumeric_keys 301xkb_symbols "zgt" { 302 303 name[Group1]="Shan (Zawgyi Tai)"; 304 305 include "mm(tilde_latch)" 306 307 key <AE01> {[ U1041, U100D, U100E, U106F ]}; 308 key <AE02> {[ U1042, U1091, U106D ]}; 309 key <AE03> {[ U1043, U100B, U106C ]}; 310 key <AE04> {[ U1044, dollar, U104E, U1023 ]}; 311 key <AE05> {[ U1045, percent, U1029, U102A ]}; 312 key <AE06> {[ U1046, asciicircum ]}; 313 key <AE07> {[ U1047, U101B, U1090 ]}; 314 key <AE08> {[ U1048, U1002, U1062 ]}; 315 key <AE09> {[ U1049, parenleft, U1026 ]}; 316 key <AE10> {[ U1040, parenright ]}; 317 key <AE11> {[ minus, underscore, U1097 ]}; 318 key <AE12> {[ equal, plus, U106E ]}; 319 320 key <AD01> {[ U1006, U103D, U1066, U1067 ]}; 321 key <AD02> {[ U1010, U107D, U1071, U1072 ]}; 322 key <AD03> {[ U1014, U108F, U1077, U1096 ]}; 323 key <AD04> {[ U1019, U107D, U107C ]}; 324 key <AD05> {[ U1021, U108A, U1024 ]}; 325 key <AD06> {[ U1015, U1094, U1078, U104C ]}; 326 key <AD07> {[ U1000, U1095, U1060, U1009 ]}; 327 key <AD08> {[ U1004, U1088, U104D, U106A ]}; 328 key <AD09> {[ U101E, U1025, U1086 ]}; 329 key <AD10> {[ U1005, U100F, U1065, U1070 ]}; 330 key <AD11> {[ U101F, U1027 ]}; 331 key <AD12> {[ U104F, U1092 ]}; 332 333 key <AC01> {[ U1031, U1017, U1008, U107A ]}; 334 key <AC02> {[ U103A, U103D ]}; 335 key <AC03> {[ U102D, U102E, U108E, U108C ]}; 336 key <AC04> {[ U1039, U1064 ]}; 337 key <AC05> {[ U102B, U103C ]}; 338 key <AC06> {[ U1037, U1036 ]}; 339 key <AC07> {[ U103B, U1032, U1083, U1084 ]}; 340 key <AC08> {[ U102F, U1033, U1089 ]}; 341 key <AC09> {[ U1030, U1034, U108D, U108B ]}; 342 key <AC10> {[ U1038, U105A ]}; 343 key <AC11> {[ U1012, U1013, U1075, U1076 ]}; 344 key <BKSL> {[ U104F, U1092 ]}; 345 346 key <AB01> {[ U1016, U1007, U1079, U1068 ]}; 347 key <AB02> {[ U1011, U100C, U1073, U1074 ]}; 348 key <AB03> {[ U1001, U1003, U1061, U1063 ]}; 349 key <AB04> {[ U101C, U1020, U1085 ]}; 350 key <AB05> {[ U1018, U1080, U1093 ]}; 351 key <AB06> {[ U100A, U107F, U106B, U1069 ]}; 352 key <AB07> {[ U102C, U107E, U1081, U1082 ]}; 353 key <AB08> {[ U101A, U101D ]}; 354 key <AB09> {[ period, U1008 ]}; 355 key <AB10> {[ U104B, U104A ]}; 356 357 include "level3(ralt_switch)" 358}; 359 360