1 // Keyboard layouts for Russia. 2 // AEN <aen (a] logic.ru> 3 // 2001/12/23 by Leon Kanter <leon (a] blackcatlinux.com> 4 // 2005/12/09 Valery Inozemtsev <shrek (a] altlinux.ru> 5 6 // Windows layout 7 default partial alphanumeric_keys 8 xkb_symbols "winkeys" { 9 10 include "ru(common)" 11 name[Group1]= "Russian"; 12 13 key <AE03> { [ 3, numerosign ] }; 14 key <AE04> { [ 4, semicolon ] }; 15 key <AE05> { [ 5, percent ] }; 16 key <AE06> { [ 6, colon ] }; 17 key <AE07> { [ 7, question ] }; 18 key <AE08> { [ 8, asterisk ] }; 19 20 key <AB10> { [ period, comma ] }; 21 key <BKSL> { [ backslash, slash ] }; 22 }; 23 24 hidden partial alphanumeric_keys 25 xkb_symbols "common" { 26 27 key <AE01> { [ 1, exclam ] }; 28 key <AE02> { [ 2, quotedbl ] }; 29 key <AE03> { [ 3, numbersign ] }; 30 key <AE04> { [ 4, asterisk ] }; 31 key <AE05> { [ 5, colon ] }; 32 key <AE06> { [ 6, comma ] }; 33 key <AE07> { [ 7, period ] }; 34 key <AE08> { [ 8, semicolon ] }; 35 key <AE09> { [ 9, parenleft ] }; 36 key <AE10> { [ 0, parenright ] }; 37 key <AE11> { [ minus, underscore ] }; 38 key <AE12> { [ equal, plus ] }; 39 key <BKSL> { [ backslash, bar ] }; 40 41 key <AB10> { [ slash, question ] }; 42 key <LSGT> { [ slash, bar ] }; 43 44 key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] }; 45 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 46 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE ] }; 47 key <AD03> { [ Cyrillic_u, Cyrillic_U ] }; 48 key <AD04> { [ Cyrillic_ka, Cyrillic_KA ] }; 49 key <AD05> { [ Cyrillic_ie, Cyrillic_IE ] }; 50 key <AD06> { [ Cyrillic_en, Cyrillic_EN ] }; 51 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 52 key <AD08> { [ Cyrillic_sha, Cyrillic_SHA ] }; 53 key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 54 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] }; 55 key <AD11> { [ Cyrillic_ha, Cyrillic_HA ] }; 56 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 57 58 key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; 59 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 60 key <AC03> { [ Cyrillic_ve, Cyrillic_VE ] }; 61 key <AC04> { [ Cyrillic_a, Cyrillic_A ] }; 62 key <AC05> { [ Cyrillic_pe, Cyrillic_PE ] }; 63 key <AC06> { [ Cyrillic_er, Cyrillic_ER ] }; 64 key <AC07> { [ Cyrillic_o, Cyrillic_O ] }; 65 key <AC08> { [ Cyrillic_el, Cyrillic_EL ] }; 66 key <AC09> { [ Cyrillic_de, Cyrillic_DE ] }; 67 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 68 key <AC11> { [ Cyrillic_e, Cyrillic_E ] }; 69 70 key <AB01> { [ Cyrillic_ya, Cyrillic_YA ] }; 71 key <AB02> { [ Cyrillic_che, Cyrillic_CHE ] }; 72 key <AB03> { [ Cyrillic_es, Cyrillic_ES ] }; 73 key <AB04> { [ Cyrillic_em, Cyrillic_EM ] }; 74 key <AB05> { [ Cyrillic_i, Cyrillic_I ] }; 75 key <AB06> { [ Cyrillic_te, Cyrillic_TE ] }; 76 key <AB07> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 77 key <AB08> { [ Cyrillic_be, Cyrillic_BE ] }; 78 key <AB09> { [ Cyrillic_yu, Cyrillic_YU ] }; 79 80 include "kpdl(comma)" 81 }; 82 83 partial alphanumeric_keys 84 xkb_symbols "legacy" { 85 86 include "ru(common)" 87 name[Group1]= "Russian (legacy)"; 88 }; 89 90 partial alphanumeric_keys 91 xkb_symbols "olpc" { 92 93 include "ru(common)" 94 95 key <TLDE> { [ 0x01000451, 0x01000401, grave ] }; // , 96 key <AE03> { [ 3, numbersign, 0x01002116 ] }; // 97 key <AE04> { [ 4, dollar, semicolon ] }; 98 key <AE06> { [ 6, asciicircum, colon ] }; 99 key <AE07> { [ 7, ampersand ] }; 100 key <AE09> { [ 9, parenleft, acute ] }; 101 key <AC12> { [ backslash, bar, slash ] }; 102 103 include "group(olpc)" 104 }; 105 106 partial alphanumeric_keys 107 xkb_symbols "typewriter" { 108 109 include "ru(common)" 110 name[Group1]= "Russian (typewriter)"; 111 112 key <TLDE> { [ bar, plus ] }; 113 key <AE01> { [ numerosign, 1 ] }; 114 key <AE02> { [ minus, 2 ] }; 115 key <AE03> { [ slash, 3 ] }; 116 key <AE04> { [ quotedbl, 4 ] }; 117 key <AE05> { [ colon, 5 ] }; 118 key <AE06> { [ comma, 6 ] }; 119 key <AE07> { [ period, 7 ] }; 120 key <AE08> { [ underscore, 8 ] }; 121 key <AE09> { [ question, 9 ] }; 122 key <AE10> { [ percent, 0 ] }; 123 key <AE11> { [ exclam, equal ] }; 124 key <AE12> { [ semicolon, backslash ] }; 125 126 key <BKSL> { [ parenright, parenleft ] }; 127 128 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 129 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; 130 }; 131 132 partial alphanumeric_keys 133 xkb_symbols "typewriter-legacy" { 134 135 include "ru(common)" 136 name[Group1]= "Russian (typewriter, legacy)"; 137 138 key <TLDE> { [ apostrophe, quotedbl ] }; 139 key <AE01> { [ exclam, 1 ] }; 140 key <AE02> { [ numerosign, 2 ] }; 141 key <AE03> { [ slash, 3 ] }; 142 key <AE04> { [ semicolon, 4 ] }; 143 key <AE05> { [ colon, 5 ] }; 144 key <AE06> { [ comma, 6 ] }; 145 key <AE07> { [ period, 7 ] }; 146 key <AE08> { [ underscore, 8 ] }; 147 key <AE09> { [ question, 9 ] }; 148 key <AE10> { [ percent, 0 ] }; 149 150 key <BKSL> { [ parenleft, parenright ] }; 151 152 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 153 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; 154 }; 155 156 partial alphanumeric_keys 157 xkb_symbols "phonetic" { 158 159 name[Group1]= "Russian (phonetic)"; 160 161 key <AE01> { [ 1, exclam ] }; 162 key <AE02> { [ 2, at ] }; 163 key <AE03> { [ 3, Cyrillic_io ] }; 164 key <AE04> { [ 4, Cyrillic_IO ] }; 165 key <AE05> { [ 5, Cyrillic_hardsign ] }; 166 key <AE06> { [ 6, Cyrillic_HARDSIGN ] }; 167 key <AE07> { [ 7, ampersand ] }; 168 key <AE08> { [ 8, asterisk ] }; 169 key <AE09> { [ 9, parenleft ] }; 170 key <AE10> { [ 0, parenright ] }; 171 key <AE11> { [ minus, underscore ] }; 172 173 key <AB09> { [ period, greater ] }; 174 key <AB10> { [ slash, question ] }; 175 key <AB08> { [ comma, less ] }; 176 key <AC10> { [ semicolon, colon ] }; 177 key <AC11> { [ apostrophe, quotedbl ] }; 178 key <LSGT> { [ bar, brokenbar ] }; 179 180 key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] }; 181 key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] }; 182 key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] }; 183 key <LatS> { [ Cyrillic_es, Cyrillic_ES ] }; 184 key <LatA> { [ Cyrillic_a, Cyrillic_A ] }; 185 key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] }; 186 key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] }; 187 key <LatX> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 188 key <LatD> { [ Cyrillic_de, Cyrillic_DE ] }; 189 key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] }; 190 key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 191 key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] }; 192 key <LatT> { [ Cyrillic_te, Cyrillic_TE ] }; 193 key <LatR> { [ Cyrillic_er, Cyrillic_ER ] }; 194 key <LatN> { [ Cyrillic_en, Cyrillic_EN ] }; 195 key <LatB> { [ Cyrillic_be, Cyrillic_BE ] }; 196 key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] }; 197 key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 198 key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 199 key <LatM> { [ Cyrillic_em, Cyrillic_EM ] }; 200 key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 201 key <LatU> { [ Cyrillic_u, Cyrillic_U ] }; 202 key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] }; 203 key <LatI> { [ Cyrillic_i, Cyrillic_I ] }; 204 key <LatO> { [ Cyrillic_o, Cyrillic_O ] }; 205 key <LatL> { [ Cyrillic_el, Cyrillic_EL ] }; 206 key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] }; 207 208 key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] }; 209 key <AE12> { [ Cyrillic_che, Cyrillic_CHE ] }; 210 key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 211 key <BKSL> { [ Cyrillic_e, Cyrillic_E ] }; 212 }; 213 214 partial alphanumeric_keys 215 xkb_symbols "phonetic_winkeys" { 216 217 include "ru(phonetic)" 218 name[Group1]= "Russian (phonetic WinKeys)"; 219 220 key <LatX> { [ Cyrillic_ha, Cyrillic_HA ] }; 221 key <LatH> { [ Cyrillic_che, Cyrillic_CHE ] }; 222 key <AE12> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 223 }; 224 225 partial alphanumeric_keys 226 xkb_symbols "tt" { 227 228 include "ru(winkeys)" 229 name[Group1]= "Tatar"; 230 231 key.type[group1]="FOUR_LEVEL"; 232 233 key <TLDE> { [ 0x010004bb, 0x010004ba, Cyrillic_io, Cyrillic_IO ] }; 234 key <AD02> { [ 0x010004e9, 0x010004e8, Cyrillic_tse, Cyrillic_TSE ] }; 235 key <AD09> { [ 0x010004d9, 0x010004d8, Cyrillic_shcha, Cyrillic_SHCHA ] }; 236 key <AD12> { [ 0x010004af, 0x010004ae, Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 237 key <AC10> { [ 0x010004a3, 0x010004a2, Cyrillic_zhe, Cyrillic_ZHE ] }; 238 key <AB07> { [ 0x01000497, 0x01000496, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 239 240 include "level3(ralt_switch)" 241 }; 242 243 partial alphanumeric_keys 244 xkb_symbols "os_legacy" { 245 246 include "ru(common)" 247 name[Group1]= "Ossetian (legacy)"; 248 249 key <TLDE> { [ Cyrillic_e, Cyrillic_E ] }; 250 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; 251 key <AC11> { [ 0x010004D5, 0x010004D4 ] }; 252 }; 253 254 partial alphanumeric_keys 255 xkb_symbols "os_winkeys" { 256 257 include "ru(winkeys)" 258 name[Group1]= "Ossetian (WinKeys)"; 259 260 key <TLDE> { [ Cyrillic_e, Cyrillic_E ] }; 261 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; 262 key <AC11> { [ 0x010004D5, 0x010004D4 ] }; 263 }; 264 265 partial alphanumeric_keys 266 xkb_symbols "cv" { 267 268 include "ru(winkeys)" 269 name[Group1]= "Chuvash"; 270 271 key.type[group1]="FOUR_LEVEL"; 272 273 key <AD03> { [ Cyrillic_u, Cyrillic_U, 0x010004f3, 0x010004f2 ] }; 274 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, 0x010004d7, 0x010004d6 ] }; 275 key <AC04> { [ Cyrillic_a, Cyrillic_A, 0x010004d1, 0x010004d0 ] }; 276 key <AB03> { [ Cyrillic_es, Cyrillic_ES, 0x010004ab, 0x010004aa ] }; 277 278 include "level3(ralt_switch)" 279 }; 280 281 partial alphanumeric_keys 282 xkb_symbols "udm" { 283 284 include "ru(winkeys)" 285 name[Group1]= "Udmurt"; 286 287 key.type[group1]="FOUR_LEVEL"; 288 289 key <AE01> { [ question, exclam, 1, 1 ] }; 290 key <AE02> { [ parenleft, quotedbl, 2, 2 ] }; 291 key <AE03> { [ parenright, numerosign, 3, 3 ] }; 292 key <AE04> { [ colon, semicolon, 4, 4 ] }; 293 key <AE05> { [ asterisk, percent, 5, 5 ] }; 294 key <AE06> { [ 0x010004dd, 0x010004dc, 6, 6 ] }; 295 key <AE07> { [ 0x010004e7, 0x010004e6, 7, 7 ] }; 296 key <AE08> { [ 0x010004f5, 0x010004f4, 8, 8 ] }; 297 key <AE09> { [ 0x010004e5, 0x010004e4, 9, 9 ] }; 298 key <AE10> { [ 0x010004df, 0x010004de, 0, 0 ] }; 299 300 include "level3(ralt_switch)" 301 }; 302 303 partial alphanumeric_keys 304 xkb_symbols "cv_latin" { 305 306 include "us(alt-intl)" 307 name[Group1]= "Chuvash (Latin)"; 308 309 key.type[group1]="FOUR_LEVEL"; 310 311 key <AD01> { [ q, Q, 0x01000161, 0x01000160 ] }; 312 key <AD02> { [ w, W, udiaeresis, Udiaeresis ] }; 313 key <AD03> { [ e, E, 0x01000115, 0x01000114 ] }; 314 key <AD07> { [ u, U, udiaeresis, Udiaeresis ] }; 315 key <AD08> { [ i, I, 0x0100012d, 0x0100012c ] }; 316 key <AD09> { [ o, O, odiaeresis, Odiaeresis ] }; 317 key <AC01> { [ a, A, abreve, Abreve ] }; 318 key <AC02> { [ s, S, scedilla, Scedilla ] }; 319 key <AC05> { [ g, G, gbreve, Gbreve ] }; 320 key <AC07> { [ j, J, 0x01000131, 0x01000130 ] }; 321 key <AB03> { [ c, C, ccedilla, Ccedilla ] }; 322 323 include "level3(ralt_switch)" 324 }; 325 326 // Komi language layout 327 // Vlad Shakhov <lumpen.intellectual (a] gmail.com> 328 // last changes 2007/10/23 329 partial alphanumeric_keys 330 xkb_symbols "kom" { 331 332 include "ru(winkeys)" 333 name[Group1]= "Komi"; 334 335 key.type[group1]="FOUR_LEVEL_ALPHABETIC"; 336 337 // cyrilllic o with diaeresis 338 key <AC07> { [ Cyrillic_o, Cyrillic_O, U04E7, U04E6 ] }; 339 340 // hard I as additional key for soft Cyrillic_I 341 key <AB05> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] }; 342 343 include "level3(ralt_switch)" 344 }; 345 346 // Yakut language layout 347 // 2008/04/23 Yakov Aleksandrov <bertjickty (a] yandex.ru> 348 // 2008/04/23 Anatoliy Zhozhikov <jav (a] sitc.ru> 349 // 2008/04/23 Aleksandr Varlamov 350 partial alphanumeric_keys 351 xkb_symbols "sah" { 352 353 include "ru(winkeys)" 354 name[Group1]= "Yakut"; 355 356 key.type[group1]="FOUR_LEVEL_ALPHABETIC"; 357 358 key <TLDE> { [ Cyrillic_io, Cyrillic_IO, U04EB, U04EA ] }; 359 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U048B, U048A ] }; 360 key <AD03> { [ Cyrillic_u, Cyrillic_U, Cyrillic_u_straight, Cyrillic_U_straight ] }; 361 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U04C4, U04C3 ] }; 362 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U04A5, U04A4 ] }; 363 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, U0495, U0494 ] }; 364 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U04E1, U04E0 ] }; 365 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, Cyrillic_shha, Cyrillic_SHHA ] }; 366 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_o_bar, Cyrillic_O_bar ] }; 367 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U0461, U0460 ] }; 368 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, Cyrillic_u_macron, Cyrillic_U_macron ] }; 369 key <AB04> { [ Cyrillic_em, Cyrillic_EM, U04C8, U04C7 ] }; 370 key <AB05> { [ Cyrillic_i, Cyrillic_I, Cyrillic_i_macron, Cyrillic_I_macron ] }; 371 372 include "level3(ralt_switch)" 373 }; 374 375 376 //Kalmyk language layout 377 //based on the Kalmyk language layout: http://soft.oyrat.org/ 378 //Nikolay Korneev <halmg (a] oyrat.org> 379 //Toli Miron <mirontoli (a] gmail.com> 380 partial alphanumeric_keys 381 xkb_symbols "xal" { 382 383 include "ru(winkeys)" 384 name[Group1]= "Kalmyk"; 385 386 key.type[group1]="FOUR_LEVEL"; 387 388 key <AE01> { [ question, exclam, 1 ] }; 389 key <AE02> { [ numerosign, quotedbl, 2 ] }; 390 key <AE03> { [ Cyrillic_u_straight, Cyrillic_U_straight, 3 ] }; 391 key <AE04> { [ Cyrillic_schwa, Cyrillic_SCHWA, 4 ] }; 392 key <AE05> { [ asterisk, percent, 5 ] }; 393 key <AE06> { [ Cyrillic_en_descender, Cyrillic_EN_descender, 6 ] }; 394 key <AE07> { [ Cyrillic_o_bar, Cyrillic_O_bar, 7 ] }; 395 key <AE08> { [ Cyrillic_shha, Cyrillic_SHHA, 8 ] }; 396 key <AE09> { [ Cyrillic_zhe_descender, Cyrillic_ZHE_descender, 9 ] }; 397 key <AE10> { [ semicolon, colon, 0 ] }; 398 399 key <TLDE> { [ parenleft, parenright, Cyrillic_io, Cyrillic_IO ] }; 400 401 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, dollar ] }; 402 key <AD03> { [ Cyrillic_u, Cyrillic_U, EuroSign ] }; 403 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] }; 404 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, trademark ] }; 405 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, bracketleft ] }; 406 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, bracketright ] }; 407 key <AC11> { [ Cyrillic_e, Cyrillic_E, apostrophe ] }; 408 key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] }; 409 key <AB08> { [ Cyrillic_be, Cyrillic_BE, less ] }; 410 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, greater ] }; 411 412 include "level3(ralt_switch)" 413 }; 414 415 partial alphanumeric_keys 416 xkb_symbols "dos" { 417 418 include "ru(common)" 419 name[Group1]= "Russian (DOS)"; 420 421 key <TLDE> { [ parenright, parenleft ] }; 422 key <AE04> { [ 4, currency ] }; 423 key <AE09> { [ 9, question ] }; 424 key <AE10> { [ 0, percent ] }; 425 426 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; 427 }; 428 429 partial alphanumeric_keys 430 xkb_symbols "bak" { 431 432 include "ru(winkeys)" 433 name[Group1]= "Bashkirian"; 434 435 key.type[group1]="FOUR_LEVEL"; 436 437 key <TLDE> { [ 0x010004d9, 0x010004d8, Cyrillic_io, Cyrillic_IO ] }; 438 key <AE01> { [ exclam, quotedbl, 1, 1 ] }; 439 key <AE02> { [ 0x010004e9, 0x010004e8, 2, 2 ] }; 440 key <AE03> { [ 0x010004a1, 0x010004a0, 3, 3 ] }; 441 key <AE04> { [ 0x01000493, 0x01000492, 4, 4 ] }; 442 key <AE05> { [ 0x010004ab, 0x010004aa, 5, 5 ] }; 443 key <AE06> { [ colon, semicolon, 6, 6 ] }; 444 key <AE07> { [ 0x01000499, 0x01000498, 7, 7 ] }; 445 key <AE08> { [ 0x010004bb, 0x010004ba, 8, 8 ] }; 446 key <AE09> { [ question, parenleft, 9, 9 ] }; 447 key <AE10> { [ numerosign, parenright, 0, 0 ] }; 448 key <AE11> { [ minus, percent, minus, underscore ] }; 449 key <AE12> { [ 0x010004af, 0x010004ae, equal, plus ] }; 450 key <BKSL> { [ 0x010004a3, 0x010004a2, backslash, slash ] }; 451 452 include "level3(ralt_switch)" 453 }; 454 455 // Serbian characters are added as third-level symbols to Russian keyboard layout. 456 partial alphanumeric_keys 457 xkb_symbols "srp" { 458 459 include "ru(common)" 460 name[Group1]= "Serbian (Russia)"; 461 462 key <AE03> { [ 3, numerosign ] }; 463 key <AE04> { [ 4, semicolon ] }; 464 key <AE05> { [ 5, percent ] }; 465 key <AE06> { [ 6, colon ] }; 466 key <AE07> { [ 7, question ] }; 467 key <AE08> { [ 8, asterisk ] }; 468 key <AB10> { [ period, comma ] }; 469 key <BKSL> { [ backslash, slash ] }; 470 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U458, U408 ] }; 471 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U45A, U40A ] }; 472 key <AC08> { [ Cyrillic_el, Cyrillic_EL, U459, U409 ] }; 473 key <AC09> { [ Cyrillic_de, Cyrillic_DE, U45F, U40F ] }; 474 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U452, U402 ] }; 475 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U45B, U40B ] }; 476 477 include "level3(ralt_switch)" 478 }; 479 480 // Mari language layout 481 // http://www.marlamuter.ru/ 482 partial alphanumeric_keys 483 xkb_symbols "chm" { 484 485 include "ru(common)" 486 name[Group1]= "Mari"; 487 488 key.type[group1]="FOUR_LEVEL_ALPHABETIC"; 489 490 key <AC04> { [ Cyrillic_a, Cyrillic_A, U04D3, U04D2 ] }; 491 key <AD03> { [ Cyrillic_u, Cyrillic_U, U04F1, U04F0 ] }; 492 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, U04F9, U04F8 ] }; 493 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U04A5, U04A4 ] }; 494 key <AC11> { [ Cyrillic_e, Cyrillic_E, U04E9, U04E8 ] }; 495 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U04EB, U04EA ] }; 496 key <AC01> { [ Cyrillic_ef, Cyrillic_EF, UF537, UF536 ] }; 497 498 include "level3(ralt_switch)" 499 }; 500 501 // EXTRAS: 502 503 // Church Slavonic language layout 504 // based on the Russian standard keyboard 505 // by Aleksandr Andreev and Yuri Shardt 506 // last changes 2010/08/01; contact <aleksandr.andreev (a] gmail.com> 507 partial alphanumeric_keys 508 xkb_symbols "chu" { 509 510 name[Group1]= "Church Slavonic"; 511 512 key <TLDE> { [ U0457, U0407, U0482, U20DD ] }; // e.g: where the last is a combining ten thousands sign 513 key <AE01> { [ U0461, U0460, U047D, U047C ] }; // 514 key <AE02> { [ U0454, U0404, U0465, U0464 ] }; // 515 key <AE03> { [ U046F, U046E, U0469, U0468 ] }; // 516 key <AE04> { [ U0471, U0470, U046D, U046C ] }; // 517 key <AE05> { [ U0473, U0472, UA657, UA656 ] }; // iotified A 518 key <AE06> { [ U0475, U0474, U0477, U0476 ] }; // 519 key <AE07> { [ U047B, U047A, UA64D, UA64C ] }; // 520 key <AE08> { [ U047F, U047E, U046B, U046A ] }; // 521 key <AE09> { [ U0455, U0405,parenleft,U002A ] }; // ( * 522 key <AE10> { [Cyrillic_u,Cyrillic_U,parenright,U0488]}; // ) NB: for digraph Ouk, use Cyrillic_o + Cyrillic_u 523 key <AE11> { [ U0483, U0486, U0487, U005F ] }; // , _ (titlo, psili, pokrytie, underscore) 524 key <AE12> { [ U0301, U0300, U0484, UA67E ] }; // (oxia, varia, kamora, kavyka) 525 526 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U0456 ] }; 527 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U2DF0 ] }; 528 key <AD03> { [ UA64B, UA64A, U2DF9 ] }; // Cyrillic monograph Uk (not U)! 529 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U2DE6 ] }; 530 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, U2DF7 ] }; 531 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U2DE9 ] }; 532 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, U2DE2 ] }; 533 key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, U2DF2 ] }; 534 key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA, U2DF3 ] }; 535 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U2DE5 ] }; 536 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, U2DEF ] }; 537 key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN, UA67D ] }; // Payerok 538 key <BKSL> { [ backslash, slash, colon, question ] }; // \ / : ? NB: for Slavonic question, use semicolon 539 540 key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; 541 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 542 key <AC03> { [ Cyrillic_ve, Cyrillic_VE, U2DE1 ] }; 543 key <AC04> { [ Cyrillic_a, Cyrillic_A, U2DF6 ] }; 544 key <AC05> { [ Cyrillic_pe, Cyrillic_PE, U2DEB ] }; 545 key <AC06> { [ Cyrillic_er, Cyrillic_ER, U2DEC ] }; 546 key <AC07> { [ Cyrillic_o, Cyrillic_O, U2DEA ] }; 547 key <AC08> { [ Cyrillic_el, Cyrillic_EL, U2DE7 ] }; 548 key <AC09> { [ Cyrillic_de, Cyrillic_DE, U2DE3 ] }; 549 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U2DE4 ] }; 550 key <AC11> { [ U0463, U0462, U2DFA ] }; // Yat 551 552 key <AB01> { [ U0467, U0466, U2DFD ] }; // Small Yus 553 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U2DF1 ] }; 554 key <AB03> { [ Cyrillic_es, Cyrillic_ES, U2DED ] }; 555 key <AB04> { [ Cyrillic_em, Cyrillic_EM, U2DE8 ] }; 556 key <AB05> { [ Cyrillic_i, Cyrillic_I ] }; 557 key <AB06> { [ Cyrillic_te, Cyrillic_TE, U2DEE ] }; 558 key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; 559 key <AB08> { [ Cyrillic_be, Cyrillic_BE, U2DE0 ] }; 560 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, U2DFB ] }; 561 key <AB10> { [ period, comma, semicolon, exclam ] }; 562 }; 563 564 565 // RUU (Russian-Ukrainian United keyboard layout). 566 // This is a modified Russian standard keyboard, with the third level containing 567 // Ukrainian and Belorusian alphabetic letters and commonly used Unicode symbols. 568 // For a description see http://wiki.opennet.ru/RUU [in Russian]. 569 // Vasyl V. Vercynskyj <fuckel (a] ukr.net> 570 // last changes 2011/05/11 571 // 572 // 573 // ' ~ ! " ; % : ? * ( { ) } _ + 574 // 1 2 3 4 $ 5 6 < 7 > 8 9 [ 0 ] - = Backspace 575 // 576 // Enter 577 // Tab 578 // 579 // Caps | 580 // Lock / \ 581 // 582 // , 583 // Shift . / Shift 584 // 585 // 586 // Ctrl Meta Alt Space AltGr Menu Ctrl 587 // 588 partial alphanumeric_keys 589 xkb_symbols "ruu" { 590 591 include "ru(common)" 592 name[Group1]= "Russian (with Ukrainian-Belorussian layout)"; 593 594 key <TLDE> { [ U2019, apostrophe, U0301, asciitilde ] }; // Apostrophe and Stress symbol 595 key <AE01> { [ 1, exclam, U00F7, U2248 ] }; // Division Sign and Almost Equal To 596 key <AE02> { [ 2, quotedbl, currency, infinity ] }; 597 key <AE03> { [ 3, numerosign, U00A7, U20B4 ] }; // Paragraph and Hryvnia sign 598 key <AE04> { [ 4, semicolon, dollar, EuroSign ] }; 599 key <AE05> { [ 5, percent, degree, U2030 ] }; // Per Mille Sign 600 key <AE06> { [ 6, colon, less, U2264 ] }; // Less-Than Or Equal To 601 key <AE07> { [ 7, question, greater, U2265 ] }; // Greater-Than Or Equal To 602 key <AE08> { [ 8, asterisk, enfilledcircbullet, U00D7 ] }; // Multiplication Sign 603 key <AE09> { [ 9, parenleft, bracketleft, braceleft ] }; 604 key <AE10> { [ 0, parenright, bracketright, braceright ] }; 605 key <AE11> { [ minus, underscore, emdash, endash ] }; 606 key <AE12> { [ equal, plus, notequal, plusminus ] }; 607 608 key <AD03> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] }; 609 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] }; // Registered tm 610 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] }; 611 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; 612 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U00B6 ] }; // Pilcrow Sign 613 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI ] }; 614 615 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_i, Ukrainian_I ] }; 616 key <AC11> { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ] }; 617 key <BKSL> { [ slash, bar, backslash, U00A6 ] }; // Broken Bar 618 619 key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] }; 620 key <AB06> { [ Cyrillic_te, Cyrillic_TE, trademark ] }; 621 key <AB07> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, U00B5 ] }; // Micro Sign 622 key <AB08> { [ Cyrillic_be, Cyrillic_BE, guillemotleft, doublelowquotemark ] }; 623 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, guillemotright, leftdoublequotemark ] }; 624 key <AB10> { [ period, comma, slash, ellipsis ] }; 625 626 include "level3(ralt_switch)" 627 }; 628 629 partial alphanumeric_keys 630 xkb_symbols "sun_type6" { 631 include "sun_vndr/ru(sun_type6)" 632 }; 633 634 // Apple layout 635 partial alphanumeric_keys 636 xkb_symbols "mac" { 637 638 include "ru(common)" 639 name[Group1]= "Russian (Macintosh)"; 640 641 key <LSGT> { [ less, greater ] }; 642 key <AE02> { [ 2, quotedbl ] }; 643 key <AE03> { [ 3, numerosign ] }; 644 key <AE04> { [ 4, percent ] }; 645 key <AE05> { [ 5, colon ] }; 646 key <AE06> { [ 6, comma ] }; 647 key <AE07> { [ 7, period ] }; 648 key <AE08> { [ 8, semicolon ] }; 649 key <TLDE> { [ bracketright, bracketleft ] }; 650 key <BKSL> { [ Cyrillic_io, Cyrillic_IO ] }; 651 }; 652