1// Keyboard layouts for Russia. 2// AEN <aen@logic.ru> 3// 2001/12/23 by Leon Kanter <leon@blackcatlinux.com> 4// 2005/12/09 Valery Inozemtsev <shrek@altlinux.ru> 5// 2018/07/15 @a13 (a.k.a. @dbvvmpg) and Stepanenko Andrey <ftvkyo2011@yandex.ru> 6 7// Windows layout 8default partial alphanumeric_keys 9xkb_symbols "winkeys" { 10 11 include "ru(common)" 12 name[Group1]= "Russian"; 13 14 key <AE03> { [ 3, numerosign ] }; 15 key <AE04> { [ 4, semicolon ] }; 16 key <AE05> { [ 5, percent ] }; 17 key <AE06> { [ 6, colon ] }; 18 key <AE07> { [ 7, question ] }; 19 key <AE08> { [ 8, asterisk, U20BD ] }; 20 21 key <AB10> { [ period, comma ] }; 22 key <BKSL> { [ backslash, slash ] }; 23}; 24 25hidden partial alphanumeric_keys 26xkb_symbols "common" { 27 28 key <AE01> { [ 1, exclam ] }; 29 key <AE02> { [ 2, quotedbl ] }; 30 key <AE03> { [ 3, numbersign ] }; 31 key <AE04> { [ 4, asterisk ] }; 32 key <AE05> { [ 5, colon ] }; 33 key <AE06> { [ 6, comma ] }; 34 key <AE07> { [ 7, period ] }; 35 key <AE08> { [ 8, semicolon ] }; 36 key <AE09> { [ 9, parenleft ] }; 37 key <AE10> { [ 0, parenright ] }; 38 key <AE11> { [ minus, underscore ] }; 39 key <AE12> { [ equal, plus ] }; 40 key <BKSL> { [ backslash, bar ] }; 41 42 key <AB10> { [ slash, question ] }; 43 key <LSGT> { [ slash, bar ] }; 44 45 key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] }; 46 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 47 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE ] }; 48 key <AD03> { [ Cyrillic_u, Cyrillic_U ] }; 49 key <AD04> { [ Cyrillic_ka, Cyrillic_KA ] }; 50 key <AD05> { [ Cyrillic_ie, Cyrillic_IE ] }; 51 key <AD06> { [ Cyrillic_en, Cyrillic_EN ] }; 52 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 53 key <AD08> { [ Cyrillic_sha, Cyrillic_SHA ] }; 54 key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 55 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] }; 56 key <AD11> { [ Cyrillic_ha, Cyrillic_HA ] }; 57 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 58 59 key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; 60 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 61 key <AC03> { [ Cyrillic_ve, Cyrillic_VE ] }; 62 key <AC04> { [ Cyrillic_a, Cyrillic_A ] }; 63 key <AC05> { [ Cyrillic_pe, Cyrillic_PE ] }; 64 key <AC06> { [ Cyrillic_er, Cyrillic_ER ] }; 65 key <AC07> { [ Cyrillic_o, Cyrillic_O ] }; 66 key <AC08> { [ Cyrillic_el, Cyrillic_EL ] }; 67 key <AC09> { [ Cyrillic_de, Cyrillic_DE ] }; 68 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 69 key <AC11> { [ Cyrillic_e, Cyrillic_E ] }; 70 71 key <AB01> { [ Cyrillic_ya, Cyrillic_YA ] }; 72 key <AB02> { [ Cyrillic_che, Cyrillic_CHE ] }; 73 key <AB03> { [ Cyrillic_es, Cyrillic_ES ] }; 74 key <AB04> { [ Cyrillic_em, Cyrillic_EM ] }; 75 key <AB05> { [ Cyrillic_i, Cyrillic_I ] }; 76 key <AB06> { [ Cyrillic_te, Cyrillic_TE ] }; 77 key <AB07> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 78 key <AB08> { [ Cyrillic_be, Cyrillic_BE ] }; 79 key <AB09> { [ Cyrillic_yu, Cyrillic_YU ] }; 80 81 include "kpdl(comma)" 82}; 83 84partial alphanumeric_keys 85xkb_symbols "legacy" { 86 87 include "ru(common)" 88 name[Group1]= "Russian (legacy)"; 89}; 90 91partial alphanumeric_keys 92xkb_symbols "olpc" { 93 94 include "ru(common)" 95 96 key <TLDE> { [ 0x01000451, 0x01000401, grave ] }; // Ñ‘, Ð 97 key <AE03> { [ 3, numbersign, 0x01002116 ] }; // â„– 98 key <AE04> { [ 4, dollar, semicolon ] }; 99 key <AE06> { [ 6, asciicircum, colon ] }; 100 key <AE07> { [ 7, ampersand ] }; 101 key <AE09> { [ 9, parenleft, acute ] }; 102 key <AC12> { [ backslash, bar, slash ] }; 103 104 include "group(olpc)" 105}; 106 107partial alphanumeric_keys 108xkb_symbols "typewriter" { 109 110 include "ru(common)" 111 name[Group1]= "Russian (typewriter)"; 112 113 key <TLDE> { [ bar, plus ] }; 114 key <AE01> { [ numerosign, 1 ] }; 115 key <AE02> { [ minus, 2 ] }; 116 key <AE03> { [ slash, 3 ] }; 117 key <AE04> { [ quotedbl, 4 ] }; 118 key <AE05> { [ colon, 5 ] }; 119 key <AE06> { [ comma, 6 ] }; 120 key <AE07> { [ period, 7 ] }; 121 key <AE08> { [ underscore, 8 ] }; 122 key <AE09> { [ question, 9 ] }; 123 key <AE10> { [ percent, 0 ] }; 124 key <AE11> { [ exclam, equal ] }; 125 key <AE12> { [ semicolon, backslash ] }; 126 127 key <BKSL> { [ parenright, parenleft ] }; 128 129 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 130 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; 131}; 132 133partial alphanumeric_keys 134xkb_symbols "typewriter-legacy" { 135 136 include "ru(common)" 137 name[Group1]= "Russian (typewriter, legacy)"; 138 139 key <TLDE> { [ apostrophe, quotedbl ] }; 140 key <AE01> { [ exclam, 1 ] }; 141 key <AE02> { [ numerosign, 2 ] }; 142 key <AE03> { [ slash, 3 ] }; 143 key <AE04> { [ semicolon, 4 ] }; 144 key <AE05> { [ colon, 5 ] }; 145 key <AE06> { [ comma, 6 ] }; 146 key <AE07> { [ period, 7 ] }; 147 key <AE08> { [ underscore, 8 ] }; 148 key <AE09> { [ question, 9 ] }; 149 key <AE10> { [ percent, 0 ] }; 150 151 key <BKSL> { [ parenleft, parenright ] }; 152 153 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 154 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; 155}; 156 157partial alphanumeric_keys 158xkb_symbols "gost-6431-75-48" { 159 160 include "ru(typewriter)" 161 name[Group1]= "Russian (GOST 6431-75)"; 162 163 key <TLDE> { [ section, asciitilde ] }; 164 key <AE01> { [ parenleft, 1 ] }; 165 key <AE02> { [ parenright, 2 ] }; 166 key <AE03> { [ minus, 3 ] }; 167 key <AE04> { [ slash, 4 ] }; 168 key <AE05> { [ quotedbl, 5 ] }; 169 key <AE06> { [ colon, 6 ] }; 170 key <AE07> { [ comma, 7 ] }; 171 key <AE08> { [ period, 8 ] }; 172 key <AE09> { [ underscore, 9 ] }; 173 key <AE10> { [ question, 0 ] }; 174 key <AE11> { [ percent, plus ] }; 175 key <AE12> { [ exclam, equal ] }; 176 177 key <BKSL> { [ semicolon, numerosign ] }; 178 179 key <LSGT> { [ emdash, endash ] }; 180}; 181 182partial alphanumeric_keys 183xkb_symbols "gost-14289-88" { 184 185 include "ru(typewriter)" 186 name[Group1]= "Russian (GOST 14289-88)"; 187 188 key <TLDE> { [ backslash, asterisk, asciitilde, section ] }; 189 key <AE01> { [ parenleft, 1, less, guillemotleft ] }; 190 key <AE02> { [ parenright, 2, at, guillemotright ] }; 191 key <AE03> { [ minus, 3, numbersign, numerosign ] }; 192 key <AE04> { [ slash, 4, U20BD, dollar ] }; // ruble 193 key <AE05> { [ quotedbl, 5, greater ] }; 194 key <AE06> { [ colon, 6, asciicircum ] }; 195 key <AE07> { [ comma, 7, ampersand ] }; 196 key <AE08> { [ period, 8, apostrophe, dead_acute ] }; 197 key <AE09> { [ underscore, 9, braceleft, U201E ] }; 198 key <AE10> { [ question, 0, braceright, U201F ] }; 199 key <AE11> { [ percent, plus, bracketleft, plusminus ] }; 200 key <AE12> { [ exclam, equal, bracketright ] }; 201 202 key <BKSL> { [ semicolon, bar, grave ] }; 203 204 key <LSGT> { [ emdash, endash ] }; 205}; 206 207partial alphanumeric_keys 208xkb_symbols "phonetic" { 209 210 name[Group1]= "Russian (phonetic)"; 211 212 key <AE01> { [ 1, exclam ] }; 213 key <AE02> { [ 2, at ] }; 214 key <AE03> { [ 3, Cyrillic_io ] }; 215 key <AE04> { [ 4, Cyrillic_IO ] }; 216 key <AE05> { [ 5, Cyrillic_hardsign ] }; 217 key <AE06> { [ 6, Cyrillic_HARDSIGN ] }; 218 key <AE07> { [ 7, ampersand ] }; 219 key <AE08> { [ 8, asterisk ] }; 220 key <AE09> { [ 9, parenleft ] }; 221 key <AE10> { [ 0, parenright ] }; 222 key <AE11> { [ minus, underscore ] }; 223 224 key <AB09> { [ period, greater ] }; 225 key <AB10> { [ slash, question ] }; 226 key <AB08> { [ comma, less ] }; 227 key <AC10> { [ semicolon, colon ] }; 228 key <AC11> { [ apostrophe, quotedbl ] }; 229 key <LSGT> { [ bar, brokenbar ] }; 230 231 key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] }; 232 key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] }; 233 key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] }; 234 key <LatS> { [ Cyrillic_es, Cyrillic_ES ] }; 235 key <LatA> { [ Cyrillic_a, Cyrillic_A ] }; 236 key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] }; 237 key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] }; 238 key <LatX> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 239 key <LatD> { [ Cyrillic_de, Cyrillic_DE ] }; 240 key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] }; 241 key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 242 key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] }; 243 key <LatT> { [ Cyrillic_te, Cyrillic_TE ] }; 244 key <LatR> { [ Cyrillic_er, Cyrillic_ER ] }; 245 key <LatN> { [ Cyrillic_en, Cyrillic_EN ] }; 246 key <LatB> { [ Cyrillic_be, Cyrillic_BE ] }; 247 key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] }; 248 key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 249 key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 250 key <LatM> { [ Cyrillic_em, Cyrillic_EM ] }; 251 key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 252 key <LatU> { [ Cyrillic_u, Cyrillic_U ] }; 253 key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] }; 254 key <LatI> { [ Cyrillic_i, Cyrillic_I ] }; 255 key <LatO> { [ Cyrillic_o, Cyrillic_O ] }; 256 key <LatL> { [ Cyrillic_el, Cyrillic_EL ] }; 257 key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] }; 258 259 key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] }; 260 key <AE12> { [ Cyrillic_che, Cyrillic_CHE ] }; 261 key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 262 key <BKSL> { [ Cyrillic_e, Cyrillic_E ] }; 263}; 264 265partial alphanumeric_keys 266xkb_symbols "phonetic_winkeys" { 267 268 include "ru(phonetic)" 269 name[Group1]= "Russian (phonetic, Windows)"; 270 271 key <LatX> { [ Cyrillic_ha, Cyrillic_HA ] }; 272 key <LatH> { [ Cyrillic_che, Cyrillic_CHE ] }; 273 key <AE12> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 274}; 275 276partial alphanumeric_keys 277xkb_symbols "phonetic_YAZHERTY" { 278 include "ru(phonetic_winkeys)" 279 name[Group1]= "Russian (phonetic, YAZHERTY)"; 280 key <LatW> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 281 key <LatV> { [ Cyrillic_ve, Cyrillic_VE ] }; 282}; 283 284 285partial alphanumeric_keys 286xkb_symbols "tt" { 287 288 include "ru(winkeys)" 289 name[Group1]= "Tatar"; 290 291 key <TLDE> { [ Cyrillic_shha, Cyrillic_SHHA, Cyrillic_io, Cyrillic_IO ] }; 292 key <AD02> { [ Cyrillic_o_bar, Cyrillic_O_bar, Cyrillic_tse, Cyrillic_TSE ] }; 293 key <AD09> { [ Cyrillic_schwa, Cyrillic_SCHWA, Cyrillic_shcha, Cyrillic_SHCHA ] }; 294 key <AD12> { [ Cyrillic_u_straight, Cyrillic_U_straight, Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 295 key <AC10> { [ Cyrillic_en_descender, Cyrillic_EN_descender, Cyrillic_zhe, Cyrillic_ZHE ] }; 296 key <AB07> { [ Cyrillic_zhe_descender, Cyrillic_ZHE_descender, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 297 298 include "level3(ralt_switch)" 299}; 300 301partial alphanumeric_keys 302xkb_symbols "os_legacy" { 303 304 include "ru(common)" 305 name[Group1]= "Ossetian (legacy)"; 306 307 key <TLDE> { [ Cyrillic_e, Cyrillic_E ] }; 308 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; 309 key <AC11> { [ 0x010004D5, 0x010004D4 ] }; 310}; 311 312partial alphanumeric_keys 313xkb_symbols "os_winkeys" { 314 315 include "ru(winkeys)" 316 name[Group1]= "Ossetian (Windows)"; 317 318 key <TLDE> { [ Cyrillic_e, Cyrillic_E ] }; 319 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; 320 key <AC11> { [ 0x010004D5, 0x010004D4 ] }; 321}; 322 323partial alphanumeric_keys 324xkb_symbols "cv" { 325 326 include "ru(winkeys)" 327 name[Group1]= "Chuvash"; 328 329 key <AD03> { [ Cyrillic_u, Cyrillic_U, 0x010004f3, 0x010004f2 ] }; 330 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, 0x010004d7, 0x010004d6 ] }; 331 key <AC04> { [ Cyrillic_a, Cyrillic_A, 0x010004d1, 0x010004d0 ] }; 332 key <AB03> { [ Cyrillic_es, Cyrillic_ES, 0x010004ab, 0x010004aa ] }; 333 334 include "level3(ralt_switch)" 335}; 336 337partial alphanumeric_keys 338xkb_symbols "udm" { 339 340 include "ru(winkeys)" 341 name[Group1]= "Udmurt"; 342 343 key <AE01> { [ question, exclam, 1, 1 ] }; 344 key <AE02> { [ parenleft, quotedbl, 2, 2 ] }; 345 key <AE03> { [ parenright, numerosign, 3, 3 ] }; 346 key <AE04> { [ colon, semicolon, 4, 4 ] }; 347 key <AE05> { [ asterisk, percent, 5, 5 ] }; 348 key <AE06> { [ 0x010004dd, 0x010004dc, 6, 6 ] }; 349 key <AE07> { [ 0x010004e7, 0x010004e6, 7, 7 ] }; 350 key <AE08> { [ 0x010004f5, 0x010004f4, 8, 8 ] }; 351 key <AE09> { [ 0x010004e5, 0x010004e4, 9, 9 ] }; 352 key <AE10> { [ 0x010004df, 0x010004de, 0, 0 ] }; 353 354 include "level3(ralt_switch)" 355}; 356 357partial alphanumeric_keys 358xkb_symbols "cv_latin" { 359 360 include "us(alt-intl)" 361 name[Group1]= "Chuvash (Latin)"; 362 363 key <AD01> { [ q, Q, 0x01000161, 0x01000160 ] }; 364 key <AD02> { [ w, W, udiaeresis, Udiaeresis ] }; 365 key <AD03> { [ e, E, 0x01000115, 0x01000114 ] }; 366 key <AD07> { [ u, U, udiaeresis, Udiaeresis ] }; 367 key <AD08> { [ i, I, 0x0100012d, 0x0100012c ] }; 368 key <AD09> { [ o, O, odiaeresis, Odiaeresis ] }; 369 key <AC01> { [ a, A, abreve, Abreve ] }; 370 key <AC02> { [ s, S, scedilla, Scedilla ] }; 371 key <AC05> { [ g, G, gbreve, Gbreve ] }; 372 key <AC07> { [ j, J, 0x01000131, 0x01000130 ] }; 373 key <AB03> { [ c, C, ccedilla, Ccedilla ] }; 374 375 include "level3(ralt_switch)" 376}; 377 378// Komi language layout 379// Vlad Shakhov <lumpen.intellectual@gmail.com> 380// last changes 2007/10/23 381partial alphanumeric_keys 382xkb_symbols "kom" { 383 384 include "ru(winkeys)" 385 name[Group1]= "Komi"; 386 387 // cyrilllic o with diaeresis 388 key <AC07> { [ Cyrillic_o, Cyrillic_O, U04E7, U04E6 ] }; 389 390 // hard I as additional key for soft Cyrillic_I 391 key <AB05> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] }; 392 393 include "level3(ralt_switch)" 394}; 395 396// Yakut language layout 397// 2008/04/23 Yakov Aleksandrov <bertjickty@yandex.ru> 398// 2008/04/23 Anatoliy Zhozhikov <jav@sitc.ru> 399// 2008/04/23 Aleksandr Varlamov 400partial alphanumeric_keys 401xkb_symbols "sah" { 402 403 include "ru(winkeys)" 404 name[Group1]= "Yakut"; 405 406 key <TLDE> { [ Cyrillic_io, Cyrillic_IO, U04EB, U04EA ] }; 407 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U048B, U048A ] }; 408 key <AD03> { [ Cyrillic_u, Cyrillic_U, Cyrillic_u_straight, Cyrillic_U_straight ] }; 409 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U04C4, U04C3 ] }; 410 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U04A5, U04A4 ] }; 411 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, U0495, U0494 ] }; 412 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U04E1, U04E0 ] }; 413 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, Cyrillic_shha, Cyrillic_SHHA ] }; 414 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_o_bar, Cyrillic_O_bar ] }; 415 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U0461, U0460 ] }; 416 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, Cyrillic_u_macron, Cyrillic_U_macron ] }; 417 key <AB04> { [ Cyrillic_em, Cyrillic_EM, U04C8, U04C7 ] }; 418 key <AB05> { [ Cyrillic_i, Cyrillic_I, Cyrillic_i_macron, Cyrillic_I_macron ] }; 419 420 include "level3(ralt_switch)" 421}; 422 423 424//Kalmyk language layout 425//based on the Kalmyk language layout: http://soft.oyrat.org/ 426//Nikolay Korneev <halmg@oyrat.org> 427//Toli Miron <mirontoli@gmail.com> 428partial alphanumeric_keys 429xkb_symbols "xal" { 430 431 include "ru(winkeys)" 432 name[Group1]= "Kalmyk"; 433 434 key.type[group1]="FOUR_LEVEL"; 435 436 key <AE01> { [ question, exclam, 1 ] }; 437 key <AE02> { [ numerosign, quotedbl, 2 ] }; 438 key <AE03> { [ Cyrillic_u_straight, Cyrillic_U_straight, 3 ] }; 439 key <AE04> { [ Cyrillic_schwa, Cyrillic_SCHWA, 4 ] }; 440 key <AE05> { [ asterisk, percent, 5 ] }; 441 key <AE06> { [ Cyrillic_en_descender, Cyrillic_EN_descender, 6 ] }; 442 key <AE07> { [ Cyrillic_o_bar, Cyrillic_O_bar, 7 ] }; 443 key <AE08> { [ Cyrillic_shha, Cyrillic_SHHA, 8 ] }; 444 key <AE09> { [ Cyrillic_zhe_descender, Cyrillic_ZHE_descender, 9 ] }; 445 key <AE10> { [ semicolon, colon, 0 ] }; 446 447 key <TLDE> { [ parenleft, parenright, Cyrillic_io, Cyrillic_IO ] }; 448 449 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, dollar ] }; 450 key <AD03> { [ Cyrillic_u, Cyrillic_U, EuroSign ] }; 451 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] }; 452 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, trademark ] }; 453 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, bracketleft ] }; 454 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, bracketright ] }; 455 key <AC11> { [ Cyrillic_e, Cyrillic_E, apostrophe ] }; 456 key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] }; 457 key <AB08> { [ Cyrillic_be, Cyrillic_BE, less ] }; 458 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, greater ] }; 459 460 include "level3(ralt_switch)" 461}; 462 463partial alphanumeric_keys 464xkb_symbols "dos" { 465 466 include "ru(common)" 467 name[Group1]= "Russian (DOS)"; 468 469 key <TLDE> { [ parenright, parenleft ] }; 470 key <AE04> { [ 4, currency ] }; 471 key <AE09> { [ 9, question ] }; 472 key <AE10> { [ 0, percent ] }; 473 474 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] }; 475}; 476 477partial alphanumeric_keys 478xkb_symbols "bak" { 479 480 include "ru(winkeys)" 481 name[Group1]= "Bashkirian"; 482 483 key.type[group1]="FOUR_LEVEL"; 484 485 key <TLDE> { [ Cyrillic_schwa, Cyrillic_SCHWA, Cyrillic_io, Cyrillic_IO ] }; 486 key <AE01> { [ exclam, quotedbl, 1, 1 ] }; 487 key <AE02> { [ Cyrillic_o_bar, Cyrillic_O_bar, 2, 2 ] }; 488 key <AE03> { [ 0x010004a1, 0x010004a0, 3, 3 ] }; 489 key <AE04> { [ Cyrillic_ghe_bar, Cyrillic_GHE_bar, 4, 4 ] }; 490 key <AE05> { [ 0x010004ab, 0x010004aa, 5, 5 ] }; 491 key <AE06> { [ colon, semicolon, 6, 6 ] }; 492 key <AE07> { [ 0x01000499, 0x01000498, 7, 7 ] }; 493 key <AE08> { [ Cyrillic_shha, Cyrillic_SHHA, 8, 8 ] }; 494 key <AE09> { [ question, parenleft, 9, 9 ] }; 495 key <AE10> { [ numerosign, parenright, 0, 0 ] }; 496 key <AE11> { [ minus, percent, minus, underscore ] }; 497 key <AE12> { [ Cyrillic_u_straight, Cyrillic_U_straight, equal, plus ] }; 498 key <BKSL> { [ Cyrillic_en_descender, Cyrillic_EN_descender, backslash, slash ] }; 499 500 include "level3(ralt_switch)" 501}; 502 503// Serbian characters are added as third-level symbols to Russian keyboard layout. 504partial alphanumeric_keys 505xkb_symbols "srp" { 506 507 include "ru(common)" 508 name[Group1]= "Serbian (Russia)"; 509 510 key <AE03> { [ 3, numerosign ] }; 511 key <AE04> { [ 4, semicolon ] }; 512 key <AE05> { [ 5, percent ] }; 513 key <AE06> { [ 6, colon ] }; 514 key <AE07> { [ 7, question ] }; 515 key <AE08> { [ 8, asterisk ] }; 516 key <AB10> { [ period, comma ] }; 517 key <BKSL> { [ backslash, slash ] }; 518 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U458, U408 ] }; 519 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U45A, U40A ] }; 520 key <AC08> { [ Cyrillic_el, Cyrillic_EL, U459, U409 ] }; 521 key <AC09> { [ Cyrillic_de, Cyrillic_DE, U45F, U40F ] }; 522 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U452, U402 ] }; 523 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U45B, U40B ] }; 524 525 include "level3(ralt_switch)" 526}; 527 528// Mari language layout 529// http://www.marlamuter.com/ 530// Last edit by Viatcheslav Kileev (slavakileev@yandex.ru) 531partial alphanumeric_keys 532xkb_symbols "chm" { 533 534 include "ru(winkeys)" 535 name[Group1]= "Mari"; 536 537 key <AC04> { [ Cyrillic_a, Cyrillic_A, U04D3, U04D2 ] }; 538 key <AD03> { [ Cyrillic_u, Cyrillic_U, U04F1, U04F0 ] }; 539 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, U04F9, U04F8 ] }; 540 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U04A5, U04A4 ] }; 541 key <AC07> { [ Cyrillic_o, Cyrillic_O, U04E7, U04E6 ] }; 542 543 include "level3(ralt_switch)" 544}; 545 546partial alphanumeric_keys 547xkb_symbols "phonetic_azerty" { 548 549 include "level3(ralt_switch)" 550 551 name[Group1]= "Russian (phonetic, AZERTY)"; 552 553 key <AE01> { [ ampersand, 1, onesuperior, exclamdown ] }; 554 key <AE02> { [ eacute, 2, asciitilde, oneeighth ] }; 555 key <AE03> { [ quotedbl, 3, numbersign, sterling ] }; 556 key <AE04> { [apostrophe, 4, braceleft, dollar ] }; 557 key <AE05> { [ parenleft, 5, bracketleft, threeeighths ] }; 558 key <AE06> { [ minus, 6, bar, fiveeighths ] }; 559 key <AE07> { [ egrave, 7, grave, seveneighths ] }; 560 key <AE08> { [underscore, 8, backslash, trademark ] }; 561 key <AE09> { [ ccedilla, 9, asciicircum, plusminus ] }; 562 key <AE10> { [ agrave, 0, at, degree ] }; 563 key <AE11> { [parenright, degree, bracketright, questiondown ] }; 564 key <AE12> { [ equal, plus, braceright, dead_ogonek ] }; 565 566 key <AB07> { [ comma, question, acute, doubleacute ] }; 567 key <AB08> { [ semicolon, period, U2022, multiply ] }; // bullet 568 key <AB09> { [ colon, slash, periodcentered, division ] }; 569 key <AB10> { [ exclam, section, dead_belowdot, dead_abovedot ] }; 570 571 key <AC11> { [ ugrave, percent, asciicircum, caron ] }; 572 key <LSGT> { [ bar, brokenbar ] }; 573 574 key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] }; 575 key <AC01> { [ Cyrillic_ya, Cyrillic_YA ] }; // Q 576 key <AD02> { [ Cyrillic_ze, Cyrillic_ZE ] }; // Z 577 key <LatS> { [ Cyrillic_es, Cyrillic_ES ] }; 578 key <AD01> { [ Cyrillic_a, Cyrillic_A ] }; 579 key <AB01> { [ Cyrillic_ve, Cyrillic_VE ] }; // W 580 key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] }; 581 key <LatX> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; 582 key <LatD> { [ Cyrillic_de, Cyrillic_DE ] }; 583 key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] }; 584 key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 585 key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] }; 586 key <LatT> { [ Cyrillic_te, Cyrillic_TE ] }; 587 key <LatR> { [ Cyrillic_er, Cyrillic_ER ] }; 588 key <LatN> { [ Cyrillic_en, Cyrillic_EN ] }; 589 key <LatB> { [ Cyrillic_be, Cyrillic_BE ] }; 590 key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] }; 591 key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 592 key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 593 key <AC10> { [ Cyrillic_em, Cyrillic_EM ] }; // M 594 key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 595 key <LatU> { [ Cyrillic_u, Cyrillic_U ] }; 596 key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] }; 597 key <LatI> { [ Cyrillic_i, Cyrillic_I ] }; 598 key <LatO> { [ Cyrillic_o, Cyrillic_O ] }; 599 key <LatL> { [ Cyrillic_el, Cyrillic_EL ] }; 600 key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] }; 601 602 key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] }; 603 key <AE12> { [ Cyrillic_che, Cyrillic_CHE ] }; 604 key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 605 key <BKSL> { [ Cyrillic_e, Cyrillic_E ] }; 606}; 607 608// Russian dvorak phonetic layout 609// Oleg Zalizniak <ramaloke at gmail.com> 610partial alphanumeric_keys 611xkb_symbols "phonetic_dvorak" { 612 include "level3(ralt_switch)" 613 614 name[Group1]= "Russian (phonetic, Dvorak)"; 615 616 key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] }; 617 618 key <AE01> { [ 1, exclam ] }; 619 key <AE02> { [ 2, at ] }; 620 key <AE03> { [ 3, Cyrillic_io ] }; 621 key <AE04> { [ 4, Cyrillic_IO ] }; 622 key <AE05> { [ 5, Cyrillic_hardsign ] }; 623 key <AE06> { [ 6, Cyrillic_HARDSIGN ] }; 624 key <AE07> { [ 7, ampersand ] }; 625 key <AE08> { [ 8, asterisk ] }; 626 key <AE09> { [ 9, parenleft ] }; 627 key <AE10> { [ 0, parenright ] }; 628 key <AE11> { [ Cyrillic_sha, Cyrillic_SHA ] }; 629 key <AE12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 630 key <BKSL> { [ Cyrillic_e, Cyrillic_E ] }; 631 632 key <AD01> { [ apostrophe, quotedbl, dead_acute, dead_diaeresis ] }; 633 key <AD02> { [ comma, less, dead_cedilla, dead_caron ] }; 634 key <AD03> { [ period, greater, dead_abovedot, periodcentered ] }; 635 key <AD04> { [ Cyrillic_pe, Cyrillic_PE ] }; 636 key <AD05> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 637 key <AD06> { [ Cyrillic_ef, Cyrillic_EF ] }; 638 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 639 key <AD08> { [ Cyrillic_tse, Cyrillic_TSE ] }; 640 key <AD09> { [ Cyrillic_er, Cyrillic_ER ] }; 641 key <AD10> { [ Cyrillic_el, Cyrillic_EL ] }; 642 key <AD11> { [ slash, question ] }; 643 key <AD12> { [ Cyrillic_che, Cyrillic_CHE ] }; 644 645 key <AC01> { [ Cyrillic_a, Cyrillic_A ] }; 646 key <AC02> { [ Cyrillic_o, Cyrillic_O ] }; 647 key <AC03> { [ Cyrillic_ie, Cyrillic_IE ] }; 648 key <AC04> { [ Cyrillic_u, Cyrillic_U ] }; 649 key <AC05> { [ Cyrillic_i, Cyrillic_I ] }; 650 key <AC06> { [ Cyrillic_de, Cyrillic_DE ] }; 651 key <AC07> { [ Cyrillic_ha, Cyrillic_HA ] }; 652 key <AC08> { [ Cyrillic_te, Cyrillic_TE ] }; 653 key <AC09> { [ Cyrillic_en, Cyrillic_EN ] }; 654 key <AC10> { [ Cyrillic_es, Cyrillic_ES ] }; 655 key <AC11> { [ minus, underscore ] }; 656 657 key <AB01> { [ semicolon, colon, dead_ogonek, dead_doubleacute ] }; 658 key <AB02> { [ Cyrillic_ya, Cyrillic_YA ] }; 659 key <AB03> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 660 key <AB04> { [ Cyrillic_ka, Cyrillic_KA ] }; 661 key <AB05> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; 662 key <AB06> { [ Cyrillic_be, Cyrillic_BE ] }; 663 key <AB07> { [ Cyrillic_em, Cyrillic_EM ] }; 664 key <AB08> { [ Cyrillic_ve, Cyrillic_VE ] }; 665 key <AB09> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 666 key <AB10> { [ Cyrillic_ze, Cyrillic_ZE ] }; 667}; 668 669partial alphanumeric_keys 670xkb_symbols "phonetic_fr" { 671 672 include "fr" 673 include "ru(phonetic_azerty)" 674 675 name[Group1]= "Russian (phonetic, French)"; 676}; 677 678// Keyboard layout for Abkhazian. 679// 2022/04/13 by Nart Tlisha <daniel.abzakh@gmail.com> 680partial alphanumeric_keys 681xkb_symbols "ab" { 682 683 include "ru(common)" 684 name[Group1]= "Abkhazian (Russia)"; 685 686 key <TLDE> { [ U0301, asciitilde, U201C, U201D ] }; // double quotation marks 687 key <AE01> { [ 1, exclam, U00AB, U00BB ] }; // guillemets 688 key <AE02> { [ 2, at, quotedbl, U201E ] }; // low double quotation mark 689 key <AE03> { [ 3, numbersign, numerosign ] }; 690 key <AE04> { [ 4, dollar, semicolon ] }; 691 key <AE05> { [ 5, percent ] }; 692 key <AE06> { [ 6, asciicircum, colon ] }; 693 key <AE07> { [ 7, ampersand, question ] }; 694 key <AE08> { [ 8, asterisk ] }; 695 key <AE09> { [ 9, parenleft, bracketleft, braceleft ] }; 696 key <AE10> { [ 0, parenright, bracketright, braceright ] }; 697 key <AE11> { [ minus, underscore, U2013, U2014 ] }; // endash, emdash 698 699 key <AD01> { [ U049f, U049e ] }; 700 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U04b5, U04b4 ] }; 701 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U049b, U049a ] }; 702 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, U04f7, U04f6 ] }; 703 key <AD09> { [ U04d9, U04d8 ] }; 704 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U04e1, U04e0 ] }; 705 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, U04b3, U04b2 ] }; 706 key <AD12> { [ U04bf, U04be ] }; 707 708 key <AC05> { [ Cyrillic_pe, Cyrillic_PE, U0525, U0524 ] }; 709 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, semicolon, colon ] }; 710 key <AC11> { [ U04bd, U04bc, apostrophe, quotedbl ] }; 711 key <BKSL> { [ backslash, bar, slash ] }; 712 713 key <AB01> { [ U045f, U040f ] }; 714 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U04b7, U04b6 ] }; 715 key <AB06> { [ Cyrillic_te, Cyrillic_TE, U04ad, U04ac ] }; 716 key <AB08> { [ Cyrillic_be, Cyrillic_BE, comma, less ] }; 717 key <AB09> { [ U04a9, U04a8, period, greater ] }; 718 key <AB10> { [ slash, question, comma, period ] }; 719 720 include "level3(ralt_switch)" 721}; 722 723// EXTRAS: 724 725// Rulemak, Colemak based Russian phonetic layout 726// contact: Geert Hendrickx <geert@hendrickx.be> 727// http://forum.colemak.com/viewtopic.php?id=519 728// 729// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ 730// │ Ё ``│ ! ˝ │ @ │ № │ $ │ % │ ^ ¯ │ & │ * ₴ │ ( │ ) │ _ — │ Ъ + ┃ ⌫ ┃ 731// │ ё ` │ 1 ´ │ 2 ¨ │ 3 # │ 4 ¢ │ 5 € │ 6 ˘ │ 7 │ 8 ₽ │ 9 [ │ 0 ] │ - – │ ъ = ┃Backspace┃ 732// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ 733// ┃ ┃ Я Ѣ │ Ж Ѵ │ Ф Ѳ │ П │ Г Ґ │ й Ј │ Л Љ │ У Ў │ Ы Ї │ Ю : │ Ш { │ Щ } ┃ Enter ┃ 734// ┃ Tab ↹ ┃ я ѣ │ ж ѵ │ ф ѳ │ п │ г ґ │ й ј │ л љ │ у ў │ ы ї │ ю ; │ ш « │ щ » ┃ ⏎ ┃ 735// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ 736// ┃ ⌫ Back ┃ А │ Р │ С │ Т Ћ │ Д Ђ │ Ч Џ │ Н Њ │ Е Є │ И І │ О │ Ь " │ Э | ┃ ┃ 737// ┃ space ┃ а │ р │ с │ т ћ │ д ђ │ ч џ │ н њ │ е є │ и і │ о │ ь ' │ э \ ┃ ┃ 738// ┣━━━━━━━━┻━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┲━━━┷━━━━━┻━━━━━━┫ 739// ┃ ┃ З Ѕ │ Х │ Ц │ В │ Б Ѓ │ К Ќ │ М │ ; │ : │ ? Ӏ ┃ ┃ 740// ┃ Shift ⇧ ┃ з ѕ │ х │ ц │ в │ б ѓ │ к ќ │ м │ , < │ . > │ / ӏ ┃ Shift ⇧ ┃ 741// ┣━━━━━━━┳━━┻━━━━┳┷━━━━━┷┱────┴─────┴─────┴─────┴─────┴─────┴┲━━━━┷━━┳━━┻━━━━┳━━━━━━━┳━━━┛ 742// ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ 743// ┃ Ctrl ┃ Meta ┃ Alt ┃ Space ┃AltGr ⇮┃ Menu ┃ Ctrl ┃ 744// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ 745 746partial alphanumeric_keys 747xkb_symbols "rulemak" { 748 749 name[Group1]= "Russian (Rulemak, phonetic Colemak)"; 750 751 key <TLDE> { [ Cyrillic_io, Cyrillic_IO, U0300, U030F ] }; // Combining grave, double grave 752 key <AE01> { [ 1, exclam, U0301, U030B ] }; // Combining acute, double acute 753 key <AE02> { [ 2, at, U0308 ] }; // Combining diaeresis 754 key <AE03> { [ 3, numerosign, numbersign ] }; 755 key <AE04> { [ 4, dollar, cent ] }; 756 key <AE05> { [ 5, percent, EuroSign ] }; 757 key <AE06> { [ 6, asciicircum, U0306, U0304 ] }; // Combining breve, macron 758 key <AE07> { [ 7, ampersand ] }; 759 key <AE08> { [ 8, asterisk, U20BD, U20B4 ] }; // ruble, hryvnia 760 key <AE09> { [ 9, parenleft, bracketleft ] }; 761 key <AE10> { [ 0, parenright, bracketright ] }; 762 key <AE11> { [ minus, underscore, endash, emdash ] }; 763 key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] }; 764 765 key <AD01> { [ Cyrillic_ya, Cyrillic_YA, U0463, U0462 ] }; // yat 766 key <AD02> { [ Cyrillic_zhe, Cyrillic_ZHE, U0475, U0474 ] }; // izhitsa 767 key <AD03> { [ Cyrillic_ef, Cyrillic_EF, U0473, U0472 ] }; // fita 768 key <AD04> { [ Cyrillic_pe, Cyrillic_PE ] }; 769 key <AD05> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; 770 key <AD06> { [ Cyrillic_shorti, Cyrillic_SHORTI, Cyrillic_je, Cyrillic_JE ] }; 771 key <AD07> { [ Cyrillic_el, Cyrillic_EL, Cyrillic_lje, Cyrillic_LJE ] }; 772 key <AD08> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] }; 773 key <AD09> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_yi, Ukrainian_YI ] }; 774 key <AD10> { [ Cyrillic_yu, Cyrillic_YU, semicolon, colon ] }; 775 key <AD11> { [ Cyrillic_sha, Cyrillic_SHA, guillemotleft, braceleft ] }; 776 key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA, guillemotright, braceright ] }; 777 key <BKSL> { [ Cyrillic_e, Cyrillic_E, backslash, bar ] }; 778 779 key <AC01> { [ Cyrillic_a, Cyrillic_A ] }; 780 key <AC02> { [ Cyrillic_er, Cyrillic_ER ] }; 781 key <AC03> { [ Cyrillic_es, Cyrillic_ES ] }; 782 key <AC04> { [ Cyrillic_te, Cyrillic_TE, Serbian_tshe, Serbian_TSHE ] }; 783 key <AC05> { [ Cyrillic_de, Cyrillic_DE, Serbian_dje, Serbian_DJE ] }; 784 key <AC06> { [ Cyrillic_che, Cyrillic_CHE, Cyrillic_dzhe, Cyrillic_DZHE ] }; 785 key <AC07> { [ Cyrillic_en, Cyrillic_EN, Cyrillic_nje, Cyrillic_NJE ] }; 786 key <AC08> { [ Cyrillic_ie, Cyrillic_IE, Ukrainian_ie, Ukrainian_IE ] }; 787 key <AC09> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] }; 788 key <AC10> { [ Cyrillic_o, Cyrillic_O ] }; 789 key <AC11> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, apostrophe, quotedbl ] }; 790 791 key <AB01> { [ Cyrillic_ze, Cyrillic_ZE, Macedonia_dse, Macedonia_DSE ] }; 792 key <AB02> { [ Cyrillic_ha, Cyrillic_HA ] }; 793 key <AB03> { [ Cyrillic_tse, Cyrillic_TSE ] }; 794 key <AB04> { [ Cyrillic_ve, Cyrillic_VE ] }; 795 key <AB05> { [ Cyrillic_be, Cyrillic_BE, Macedonia_gje, Macedonia_GJE ] }; 796 key <AB06> { [ Cyrillic_ka, Cyrillic_KA, Macedonia_kje, Macedonia_KJE ] }; 797 key <AB07> { [ Cyrillic_em, Cyrillic_EM ] }; 798 key <AB08> { [ comma, semicolon, less ] }; 799 key <AB09> { [ period, colon, greater ] }; 800 key <AB10> { [ slash, question, U04CF, U04C0 ] }; // palochka 801 802 key <LSGT> { [ equal, plus, multiply, division ] }; 803 804 include "level3(ralt_switch)" 805 include "capslock(backspace)" 806 include "nbsp(level4)" 807}; 808 809// Church Slavonic language layout 810// based on the Russian standard keyboard 811// by Aleksandr Andreev and Yuri Shardt 812// last changes 2010/08/01; contact <aleksandr.andreev@gmail.com> 813partial alphanumeric_keys 814xkb_symbols "chu" { 815 816 name[Group1]= "Church Slavonic"; 817 818 key <TLDE> { [ Ukrainian_yi, Ukrainian_YI, U0482, U20DD ] }; // ї Ї ҂ e.g: а⃝ where the last is a combining ten thousands sign 819 key <AE01> { [ U0461, U0460, U047D, U047C ] }; // ѡ Ѡ ѽ Ѽ 820 key <AE02> { [ Ukrainian_ie, Ukrainian_IE, U0465, U0464 ] }; // є Є ѥ Ѥ 821 key <AE03> { [ U046F, U046E, U0469, U0468 ] }; // ѯ Ѯ ѩ Ѩ 822 key <AE04> { [ U0471, U0470, U046D, U046C ] }; // ѱ Ѱ ѭ Ѭ 823 key <AE05> { [ U0473, U0472, UA657, UA656 ] }; // ѳ Ѳ iotified A 824 key <AE06> { [ U0475, U0474, U0477, U0476 ] }; // ѵ Ѵ ѷ Ѷ 825 key <AE07> { [ U047B, U047A, UA64D, UA64C ] }; // ѻ Ѻ ꙍ Ꙍ 826 key <AE08> { [ U047F, U047E, U046B, U046A ] }; // ѿ Ѿ ѫ Ѫ 827 key <AE09> { [ Macedonia_dse, Macedonia_DSE, parenleft, asterisk ] }; // ѕ Ѕ ( * 828 key <AE10> { [ Cyrillic_u, Cyrillic_U, parenright, U0488]}; // у У ) NB: for digraph Ouk, use Cyrillic_o + Cyrillic_u 829 key <AE11> { [ U0483, U0486, U0487, U005F ] }; // а҃ а҆ а҇, _ (titlo, psili, pokrytie, underscore) 830 key <AE12> { [ U0301, U0300, U0484, UA67E ] }; // а̀ а́ а҄ ꙾ (oxia, varia, kamora, kavyka) 831 832 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, Ukrainian_i ] }; 833 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U2DF0 ] }; 834 key <AD03> { [ UA64B, UA64A, U2DF9 ] }; // Cyrillic monograph Uk (not U)! 835 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, U2DE6 ] }; 836 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, U2DF7 ] }; 837 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U2DE9 ] }; 838 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, U2DE2 ] }; 839 key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, U2DF2 ] }; 840 key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA, U2DF3 ] }; 841 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U2DE5 ] }; 842 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, U2DEF ] }; 843 key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN, UA67D ] }; // Payerok 844 key <BKSL> { [ backslash, slash, colon, question ] }; // \ / : ? NB: for Slavonic question, use semicolon 845 846 key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] }; 847 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 848 key <AC03> { [ Cyrillic_ve, Cyrillic_VE, U2DE1 ] }; 849 key <AC04> { [ Cyrillic_a, Cyrillic_A, U2DF6 ] }; 850 key <AC05> { [ Cyrillic_pe, Cyrillic_PE, U2DEB ] }; 851 key <AC06> { [ Cyrillic_er, Cyrillic_ER, U2DEC ] }; 852 key <AC07> { [ Cyrillic_o, Cyrillic_O, U2DEA ] }; 853 key <AC08> { [ Cyrillic_el, Cyrillic_EL, U2DE7 ] }; 854 key <AC09> { [ Cyrillic_de, Cyrillic_DE, U2DE3 ] }; 855 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U2DE4 ] }; 856 key <AC11> { [ U0463, U0462, U2DFA ] }; // Yat 857 858 key <AB01> { [ U0467, U0466, U2DFD ] }; // Small Yus 859 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U2DF1 ] }; 860 key <AB03> { [ Cyrillic_es, Cyrillic_ES, U2DED ] }; 861 key <AB04> { [ Cyrillic_em, Cyrillic_EM, U2DE8 ] }; 862 key <AB05> { [ Cyrillic_i, Cyrillic_I ] }; 863 key <AB06> { [ Cyrillic_te, Cyrillic_TE, U2DEE ] }; 864 key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; 865 key <AB08> { [ Cyrillic_be, Cyrillic_BE, U2DE0 ] }; 866 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, U2DFB ] }; 867 key <AB10> { [ period, comma, semicolon, exclam ] }; 868}; 869 870 871// RUU (Russian-Ukrainian United keyboard layout). 872// This is a modified Russian standard keyboard, with the third level containing 873// Ukrainian and Belorusian alphabetic letters and commonly used Unicode symbols. 874// For a description see http://wiki.opennet.ru/RUU [in Russian]. 875// Vasyĺ V. Vercynśkyj <fuckel@ukr.net> 876// last changes 2011/05/11 877// 878// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ 879// │ ' ~ │ ! ≈ │ " ∞ │ № ₴ │ ; € │ % ‰ │ : ≤ │ ? ≥ │ * × │ ( { │ ) } │ _ – │ + ± ┃ ⌫ ┃ 880// │ ’ ́ │ 1 ÷ │ 2 ¤ │ 3 § │ 4 $ │ 5 ° │ 6 < │ 7 > │ 8 • │ 9 [ │ 0 ] │ - — │ = ≠ ┃Backspace┃ 881// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ 882// ┃ ┃ Й │ Ц │ У Ў │ К │ Е Ё │ Н │ Г Ґ │ Ш │ Щ │ З │ Х │ Ъ Ї ┃ Enter ┃ 883// ┃ Tab ↹ ┃ й │ ц │ у ў │ к ® │ е ё │ н │ г ґ │ ш │ щ │ з │ х │ ъ ї ┃ ⏎ ┃ 884// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ 885// ┃ Caps ┃ Ф │ Ы І │ В │ А │ П │ Р │ О │ Л │ Д │ Ж │ Э Є │ | ¦ ┃ ┃ 886// ┃ Lock ⇬ ┃ ф │ ы і │ в │ а │ п │ р │ о │ л │ д │ ж │ э є │ / \ ┃ ┃ 887// ┣━━━━━━━━┻━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┲━━━┷━━━━━┻━━━━━━┫ 888// ┃ ┃ Я │ Ч │ С │ М │ И │ Т │ Ь │ Б „ │ Ю “ │ , … ┃ ┃ 889// ┃ Shift ⇧ ┃ я │ ч │ с © │ м │ и │ т ™ │ ь µ │ б « │ ю » │ . / ┃ Shift ⇧ ┃ 890// ┣━━━━━━━┳━━┻━━━━┳┷━━━━━┷┱────┴─────┴─────┴─────┴─────┴─────┴┲━━━━┷━━┳━━┻━━━━┳━━━━━━━┳━━━┛ 891// ┃ ┃ ┃ ┃ ┃ ┃ ┃ ┃ 892// ┃ Ctrl ┃ Meta ┃ Alt ┃ Space ┃AltGr ⇮┃ Menu ┃ Ctrl ┃ 893// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ 894partial alphanumeric_keys 895xkb_symbols "ruu" { 896 897 include "ru(common)" 898 name[Group1]= "Russian (with Ukrainian-Belorussian layout)"; 899 900 key <TLDE> { [ U2019, apostrophe, U0301, asciitilde ] }; // Apostrophe and Stress symbol 901 key <AE01> { [ 1, exclam, division, U2248 ] }; // Division Sign and Almost Equal To 902 key <AE02> { [ 2, quotedbl, currency, infinity ] }; 903 key <AE03> { [ 3, numerosign, section, U20B4 ] }; // Paragraph and Hryvnia sign 904 key <AE04> { [ 4, semicolon, dollar, EuroSign ] }; 905 key <AE05> { [ 5, percent, degree, permille ] }; 906 key <AE06> { [ 6, colon, less, lessthanequal ] }; 907 key <AE07> { [ 7, question, greater, greaterthanequal ] }; 908 key <AE08> { [ 8, asterisk,enfilledcircbullet,multiply ] }; 909 key <AE09> { [ 9, parenleft, bracketleft, braceleft ] }; 910 key <AE10> { [ 0, parenright, bracketright, braceright ] }; 911 key <AE11> { [ minus, underscore, emdash, endash ] }; 912 key <AE12> { [ equal, plus, notequal, plusminus ] }; 913 914 key <AD03> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] }; 915 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] }; 916 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] }; 917 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; 918 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, paragraph ] }; 919 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI ] }; 920 921 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_i, Ukrainian_I ] }; 922 key <AC11> { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ] }; 923 key <BKSL> { [ slash, bar, backslash, brokenbar ] }; 924 925 key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] }; 926 key <AB06> { [ Cyrillic_te, Cyrillic_TE, trademark ] }; 927 key <AB07> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, mu ] }; 928 key <AB08> { [ Cyrillic_be, Cyrillic_BE, guillemotleft, doublelowquotemark ] }; 929 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, guillemotright, leftdoublequotemark ] }; 930 key <AB10> { [ period, comma, slash, ellipsis ] }; 931 932 include "level3(ralt_switch)" 933}; 934 935partial alphanumeric_keys 936 xkb_symbols "sun_type6" { 937 include "sun_vndr/ru(sun_type6)" 938}; 939 940// Apple layout 941partial alphanumeric_keys 942xkb_symbols "mac" { 943 944 include "ru(common)" 945 name[Group1]= "Russian (Macintosh)"; 946 947 key <LSGT> { [ less, greater ] }; 948 key <AE02> { [ 2, quotedbl ] }; 949 key <AE03> { [ 3, numerosign ] }; 950 key <AE04> { [ 4, percent ] }; 951 key <AE05> { [ 5, colon ] }; 952 key <AE06> { [ 6, comma ] }; 953 key <AE07> { [ 7, period ] }; 954 key <AE08> { [ 8, semicolon ] }; 955 key <TLDE> { [ bracketright, bracketleft ] }; 956 key <BKSL> { [ Cyrillic_io, Cyrillic_IO ] }; 957 958 key <AC06> { [ Cyrillic_er, Cyrillic_ER, U20BD ] }; 959 960 include "level3(ralt_switch)" 961}; 962 963// eng: Russian-based polyglot and reactionary keyboard layout 964// This keyboard layout covers Russian in Petrine 1708 and Bolshevik 1918 variant spelling, Ukrainian, Belorussian, Serbian in its modern and Slavenoserbian variants, and Bulgarian and Slavomacedonian in pre-1945 and post-1945 spelling, 965// in short all in any dominion prevailing Cyrillic orthographies of modern secular Slavic literary languages, even with dictionary accentuation marks, 966// but also the most-widespread Church Slavonic spellings, that is all Church-Slavonic in so far as variants can be replaced without loss of meaning – not to speak of Interslavic. 967// Furthermore, it suffices Romanian Cyrillic, Moldovan Cyrillic, Abkhazian excluding the more clumsy obsoleted forms unlikely to find devotees, Tajik, all Turkic and Mongolic Cyrillic alphabets 968// and virtually all overlooked languages in Cyrillic reigns at least by combining characters, taking advantage of eight key levels. 969// This is withal a pan-Cyrillic keyboard layout, or a comprehensive Cyrillic keyboard layout, an universal Cyrillic keyboard layout, a generic Cyrillic keyboard layout. 970// 971// rus: Многоязыковая и реакціонная клавіатурная разкладка основана на русскихъ 972// Сія разкладка покрываетъ русскій въ петровскомъ правописаніи 1708-го года и большевицкомъ 1918-го, украинскій, бѣлорусскій въ современномъ и славяносербскомъ видѣ, и булгарскій и славомацедонскій въ писаніи до и послѣ 1945-го года, 973// короче всѣ въ какомъ-либо державствѣ преобладающія правописанія, то есть весь церкославянскій, поскольку какъ разные виды буквъ можно возмѣщать безъ потери значенія — не говоря о междуславянскомъ. 974// Свѣрхъ этого, она подходитъ къ румынской кириллицѣ, къ молдавской кириллицѣ, къ абхазскому за изключеніемъ неуклюжихъ устарѣлыхъ образовъ, у которыхъ невѣроятно что они вообще найдутъ поклонниковъ, къ таджикскому, къ всѣмъ тюрксимъ и монголскимъ кириллицамъ, 975// и по сути дѣла всѣмъ упущеннымъ языкамъ въ кириллическихъ правленіяхъ хотя бы соединящими сѵмволами, извлѣкая выгоду изъ восьми уровней клавишъ. 976// Тѣмъ всѣмъ сё всекириллическая клавіатурная разкладка, или всеобъемлющая кириллическая разкладка, или универсальная кириллическая разкладка клавіатуры. 977// 978// srp: Многојезиков и реакционаран распоред тастера основан на рускима 979// Овај распоред покрива руски у петровском правопису 1708-е године и бољшевичком 1918-е године, украјински, белоруски, српски у сувременом и славеносрпском виду, те бугарски и славомакедонски у писању до и после 1945-е године, 980// укратко све у некој држави преовлађујуће правописе, то је читав црквенословенски, пошто је могуће разне видове слова замењивати без губитка значења — не говорећи о меџусловенском. 981// Поврх овог, он одговара к румунској ћирилици, к молдавској ћирилици, к абхаскоме с изузетком гломазних застарелих ликова, уз које није вероватно да они најђу поклонике, к таџичкоме, к свим туркијским и монголским ћирилицима, 982// те у спровођењу свим испуштеним језицима у ћириличким господарствима бар са спајајућим симболима, искориштавајући осам ступњева тастера. 983// Тиме свим ово је свећирилички тастатуран распоред, или свеобухватан ћирилички распоред тастера, или свеопшти ћирилички тастатуран распоред. 984partial alphanumeric_keys 985xkb_symbols "prxn" { 986 987 name[Group1]= "Russian (Polyglot and Reactionary)"; 988 989 key.type[Group1]="EIGHT_LEVEL"; 990 key <TLDE> { [ U2019, apostrophe, U0301, U0300, U2053, U2015, U02BC, asciitilde ] }; // Typographic Apostrophe, Apostrophe, Combining Acute, Combining Grave, Swung Dash, Quotation Dash, Modifier Letter Apostrophe, Tilde 991 key <AE01> { [ 1, exclam, U0304, U0306, U0308, U0311, U0307, U0313 ] }; // 1, !, Combining Macron, Combining Breve, Combining Diaresis, Combining Inverted Breve, Combining Dot Above, Combining Comma Above 992 key <AE02> { [ 2,quotedbl,numerosign, U20BF, U20B8, U20AE, U00A3, U20B9 ] }; // 2 " № ₿ ₸ ₮ £ ₹ 993 key <AE03> { [ 3, section, U20B4, currency, U20BD, U20AA, U20BC, U20BE ] }; // 3 § ₴ ¤ ₽ ₪ ₼ ₾ 994 key <AE04> { [ 4, semicolon, dollar, EuroSign, U0482, U20DD, U0488, U0489 ] }; // 4 ; $ € Thousands Sign, Combining Enclosing Circle, Combining Hundred Thousands, Combining Millions 995 key <AE05> { [ 5, percent, degree, permille, UA670, UA671, UA672, UA66F ] }; // 5, %, °, ‰, Combinining Ten Millions, Combining Hundred Millions, Combining Thousand Millions, Combining Vzmet 996 key <AE06> { [ 6, colon, U0335, U0336, U0483, U0487, UFE2E, UFE2F ] }; // 6, :, Combining Short Stroke Overlay, Combining Long Stroke Overlay, Combining Titlo, Combining Pokrytie, Combining Titlo Left Half, Combining Titlo Right Half 997 key <AE07> { [ 7, question, U030B, U030F, U030C, U0303, U032C, U0360 ] }; // 7, ?, Combining Double Acute, Combining Double Grave, Combining Caron/Háček, Combining Tilde, Combining Caron/Háček Below, Combining Double Tilde 998 key <AE08> { [ 8, asterisk, U0331, U0332, U0333, U032F, U032D, U032E ] }; // 8, *, Combining Macron Below, Combining Low Line, Combining Double Low Line, Combining Inverted Breve Below, Combining Circumflex Accent, Combining Breve Below 999 key <AE09> { [ 9,parenleft, bracketleft, braceleft, U035F, U035D, U035E, U035C ] }; // 9 ( [ { Combining Double Macron Below, Combining Double Breve, Combining Double Macron, Combining Double Breve Below 1000 key <AE10> { [ 0,parenright,bracketright, braceright, U27E8, U27E9, U04A7, U04A6 ] }; // 0 ) ] } ⟨⟩ ҧ Ҧ 1001 key <AE11> { [ minus, underscore, emdash, endash, U2011,hyphen, U2010, U2212 ] }; // Hyphen-Minus, Underscore, Em Dash, En Dash, Non-Breaking-Hyphen, Soft Hyphen, Hyphen, Minus Sign 1002 key <AE12> { [ equal, plus,notequal, U2248, U04FF, U04FE, U050D, U050C ] }; // = + ≠ ≈ ӿ Ӿ ԍ Ԍ 1003 1004 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, Cyrillic_je, Cyrillic_JE, U04CF, U04C0, U030A, U0325 ] }; // й Й ј Ј ӏ Ӏ, Combining Ring Above and Below 1005 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, U04B5, U04B4, Cyrillic_u_straight, Cyrillic_U_straight, U051B, U051A ] }; // ц Ц ҵ Ҵ ү Ү ԛ Ԛ 1006 key <AD03> { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU, Cyrillic_u_straight_bar,Cyrillic_U_straight_bar, Byelorussian_shortu, Byelorussian_SHORTU ] }; // у У ў Ў ұ Ұ ў Ў 1007 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, Cyrillic_ka_descender, Cyrillic_KA_descender, U049F, U049E, U046F, U046E ] }; // к К Қ қ ҟ Ҟ ѯ Ѯ 1008 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO, U0463, U0462, UA653, UA652 ] }; // е Е ё Ё ѣ Ѣ ꙓ Ꙓ 1009 key <AD06> { [ Cyrillic_en, Cyrillic_EN, Cyrillic_nje, Cyrillic_NJE, Cyrillic_en_descender, Cyrillic_EN_descender, U04C8, U04C7 ] }; // н Н њ Њ ң Ң ӈ Ӈ 1010 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn,Ukrainian_GHE_WITH_UPTURN, Cyrillic_ghe_bar, Cyrillic_GHE_bar, U04F7, U04F6 ] }; // г Г Ґ ґ ғ Ғ ӷ Ӷ 1011 key <AD08> { [ Cyrillic_sha, Cyrillic_SHA, U04A1, U04A0, U04AB, U04AA, UA67D, UA67F ] }; // ш Ш ҡ Ҡ ҫ Ҫ Combining Payerok Payerok 1012 key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA, U0505, U0504, UA68D, UA68C, U050F, U050E ] }; // щ Щ ԅ Ԅ ꚍ Ꚍ ԏ Ԏ 1013 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, U04E1, U04E0, U0499, U0498, U0507, U0506 ] }; // з З ӡ Ӡ ҙ Ҙ ԇ Ԇ 1014 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, Cyrillic_shha, Cyrillic_SHHA, Cyrillic_ha_descender, Cyrillic_HA_descender, U04FD, U04FC ] }; // х Х һ Һ ҳ Ҳ ӽ Ӽ 1015 key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI, Macedonia_dse, Macedonia_DSE, U033E, U2E2F ] }; // ъ Ъ ї Ї ѕ Ѕ, Combining Yerok, Yerok 1016 1017 key <AC01> { [ Cyrillic_ef, Cyrillic_EF, U0473, U0472, U04C4, U04C3, U04FB, U04FA ] }; // ф Ф ѳ Ѳ ӄ Ӄ ӻ Ӻ 1018 key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU, Ukrainian_i, Ukrainian_I, U04D5, U04D4, U04A9, U04A8 ] }; // ы Ы і І ӕ Ӕ ҩ Ҩ 1019 key <AC03> { [ Cyrillic_ve, Cyrillic_VE, U051D, U051C, U0529, U0528, U0527, U0526 ] }; // в В ԝ Ԝ ԩ Ԩ ԧ Ԧ 1020 key <AC04> { [ Cyrillic_a, Cyrillic_A, Cyrillic_schwa, Cyrillic_SCHWA, UA657, UA656, UA655, UA654 ] }; // а А ә Ә ꙗ Ꙗ ꙕ Ꙕ 1021 key <AC05> { [ Cyrillic_pe, Cyrillic_PE, U0525, U0524, U0471, U0470, UA65F, UA65E ] }; // п П ԥ Ԥ ѱ Ѱ ꙟ Ꙟ 1022 key <AC06> { [ Cyrillic_er, Cyrillic_ER, U0481, U0480, U048F, U048E, U0521, U0520 ] }; // р Р ҁ Ҁ ҏ Ҏ ԡ Ԡ 1023 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_o_bar, Cyrillic_O_bar, U047B, U047A, U0461, U0460 ] }; // о О ө Ө ѻ Ѻ ѡ Ѡ 1024 key <AC08> { [ Cyrillic_el, Cyrillic_EL, Cyrillic_lje, Cyrillic_LJE, U04C6, U04C5, U052F, U052E ] }; // л Л љ Љ ӆ Ӆ ԯ Ԯ 1025 key <AC09> { [ Cyrillic_de, Cyrillic_DE, Cyrillic_dzhe, Cyrillic_DZHE, U04BD, U04BC, U04BF, U04BE ] }; // д Д џ Џ ҽ Ҽ ҿ Ҿ 1026 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, Serbian_dje, Serbian_DJE, Cyrillic_zhe_descender, Cyrillic_ZHE_descender, U04C2, U04C1 ] }; // ж Ж ђ Ђ Җ җ ӂ Ӂ 1027 key <AC11> { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE, U0465, U0464, U04CA, U04C9 ] }; // э Э є Є ѥ Ѥ ӊ Ӊ 1028 key <BKSL> { [ slash, bar, backslash, U260E, UA65B, UA65A, U0513, U0512 ] }; // / | \ ☎ ꙛ Ꙛ ԓ Ԓ 1029 1030 key <LSGT> { [ U0495, U0494, U0501, U0500, U0503, U0502, U0509, U0508 ] }; // ҕ Ҕ ԁ Ԁ ԃ Ԃ ԉ Ԉ 1031 key <AB01> { [ Cyrillic_ya, Cyrillic_YA, U0469, U0468, U0467, U0466, UA657, UA656 ] }; // я Я ѩ Ѩ ѧ Ѧ ꙗ Ꙗ 1032 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, Serbian_tshe, Serbian_TSHE, Cyrillic_che_descender, Cyrillic_CHE_descender, U2016,brokenbar ] }; // ч Ч ћ Ћ ҷ Ҷ ‖ ¦ 1033 key <AB03> { [ Cyrillic_es, Cyrillic_ES, U046D, U046C, U046B, U046A, U04F7, U04F6 ] }; // с С ѭ Ѭ ѫ Ѫ ӷ Ӷ 1034 key <AB04> { [ Cyrillic_em, Cyrillic_EM, multiply, division, U22C5, U2219, U04CE, U04CD ] }; // м М × ÷ ⋅ ∙ ӎ Ӎ 1035 key <AB05> { [ Cyrillic_i, Cyrillic_I, U0475, U0474, U048B, U048A, periodcentered, U261B ] }; // и И ѵ Ѵ ҋ Ҋ · ☛ 1036 key <AB06> { [ Cyrillic_te, Cyrillic_TE, U04AD, U04AC, U051F, U051E, Cyrillic_che_vertstroke, Cyrillic_CHE_vertstroke ] }; // т Т ҭ Ҭ ԟ Ԟ ҹ Ҹ 1037 key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN, U04A5, U04A4, UA64F, UA64E, U048D, U048C ] }; // ь Ь ҥ Ҥ ꙏ Ꙏ ҍ Ҍ 1038 key <AB08> { [ Cyrillic_be, Cyrillic_BE, guillemotleft, doublelowquotemark, singlelowquotemark, U2039, U0523, U0522 ] }; // б Б « „ ‚ ‹ ԣ Ԣ 1039 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, guillemotright, leftdoublequotemark, leftsinglequotemark, U203A, rightdoublequotemark, rightsinglequotemark]}; // ю Ю » “ ‘ › ” ’ 1040 key <AB10> { [ period, comma, ellipsis, enfilledcircbullet, U04CC, U04CB, UA649, UA648 ] }; // . , … • ӌ Ӌ ꙉ Ꙉ 1041 1042// eng: Maps Right Alt for reaching the third level 1043// rus: Составляетъ правую Alt для достиженія третьяго уровня 1044// srp: Саставља десни Alt за достизање трећег ступња 1045 include "level3(ralt_switch)" 1046 1047// eng: Maps <CAPS> for reaching the fifth level 1048// rus: Составляетъ <CAPS> для достиженія пятаго уровня 1049// srp: Саставља <CAPS> за достизање петег ступња 1050 include "level5(caps_switch)" 1051 1052// eng: Allows pressing both Shift keys for enabling ShiftLock; one Shift releases it 1053// rus: Предоставляетъ нажатие обѣихъ клавишъ Shift для защелкиванія прописности буквъ 1054// srp: Ставља на располагање притискивање обију тастера Shift за учвршћивање верзала 1055 include "shift(both_shiftlock)" 1056 1057// eng: Makes <KPDL> return comma instead of dot, as the comma is decimal separator in Cyrillic written languages 1058// rus: Дѣлаетъ что <KPDL> отдаетъ запятую вмѣсто точки, такъ какъ запятая десятичный раздѣлитель въ языкахъ пишемыхъ кириллицей 1059// srp: Ради да <KPDL> враћа зарез уместо точке, будући да зарез је десетни разделитељ у језицима који се пишу ћирилицом 1060 include "kpdl(comma)" 1061}; 1062 1063 1064partial alphanumeric_keys 1065xkb_symbols "unipunct" { 1066 1067// Раскладка представляет собой обычную русскую раскладку, в которой некоторые редко используемые буквы 1068// убрали на третий уровень, и поставили все пунктуационные знаки на то же место, где они стоят на 1069// US раскладке (+ добавлен знак номера, который отсутствует в US раскладке, но часто нужен в RU). 1070 1071// ru(unipunct): 1072// `~ 1! 2@ 3#3№ 4$ 5% 6^ 7& 8* 9( 0) -_ =+ 1073// хХ бБ уУюЮ кК еЕэЭ нН гГ шШщЩ жЖ зЗ [{ ]} \| 1074// фФ ыЫ вВ аА пП рР оОёЁ лЛ дД ;: '" //" 1075// яЯ чЧцЦ сС мМ иИйЙ тТ ьЬъЪ ,< .> /? 1076 1077 include "us(basic)" 1078 name[Group1]= "Russian (with US punctuation)"; 1079 1080 // Единственный символ, который отсутствует на US раскладке - № 1081 key <AE03> { [ 3, numbersign, 3, numerosign ] }; 1082 1083 key <LatQ> { [ Cyrillic_ha, Cyrillic_HA ] }; 1084 key <LatW> { [ Cyrillic_be, Cyrillic_BE ] }; 1085 key <LatE> { [ Cyrillic_u, Cyrillic_U, Cyrillic_yu, Cyrillic_YU ] }; 1086 key <LatR> { [ Cyrillic_ka, Cyrillic_KA ] }; 1087 key <LatT> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_e, Cyrillic_E ] }; 1088 key <LatY> { [ Cyrillic_en, Cyrillic_EN ] }; 1089 key <LatU> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 1090 key <LatI> { [ Cyrillic_sha, Cyrillic_SHA, Cyrillic_shcha, Cyrillic_SHCHA ] }; 1091 key <LatO> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 1092 key <LatP> { [ Cyrillic_ze, Cyrillic_ZE ] }; 1093 1094 key <LatA> { [ Cyrillic_ef, Cyrillic_EF ] }; 1095 key <LatS> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 1096 key <LatD> { [ Cyrillic_ve, Cyrillic_VE ] }; 1097 key <LatF> { [ Cyrillic_a, Cyrillic_A ] }; 1098 key <LatG> { [ Cyrillic_pe, Cyrillic_PE ] }; 1099 key <LatH> { [ Cyrillic_er, Cyrillic_ER ] }; 1100 key <LatJ> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; 1101 key <LatK> { [ Cyrillic_el, Cyrillic_EL ] }; 1102 key <LatL> { [ Cyrillic_de, Cyrillic_DE ] }; 1103 1104 key <LatZ> { [ Cyrillic_ya, Cyrillic_YA ] }; 1105 key <LatX> { [ Cyrillic_che, Cyrillic_CHE, Cyrillic_tse, Cyrillic_TSE ] }; 1106 key <LatC> { [ Cyrillic_es, Cyrillic_ES ] }; 1107 key <LatV> { [ Cyrillic_em, Cyrillic_EM ] }; 1108 key <LatB> { [ Cyrillic_i, Cyrillic_I, Cyrillic_shorti, Cyrillic_SHORTI ] }; 1109 key <LatN> { [ Cyrillic_te, Cyrillic_TE ] }; 1110 key <LatM> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 1111}; 1112 1113partial alphanumeric_keys 1114xkb_symbols "phonetic_mac" { 1115 1116 include "ru(phonetic_winkeys)" 1117 name[Group1]= "Russian (phonetic Macintosh)"; 1118 1119 key <LatE> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] }; 1120 key <LatW> { [ Cyrillic_sha, Cyrillic_SHA ] }; 1121 key <LatV> { [ Cyrillic_ve, Cyrillic_VE ] }; 1122 key <TLDE> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 1123 key <AD11> { [ Cyrillic_yu, Cyrillic_YU ] }; 1124 key <AD12> { [ Cyrillic_zhe, Cyrillic_ZHE ] }; 1125 key <AE03> { [ 3, numbersign, numerosign ] }; 1126 key <AE04> { [ 4, dollar, U20BD ] }; // ruble 1127 key <AE05> { [ 5, percent ] }; 1128 key <AE06> { [ 6, asciicircum ] }; 1129 key <AE11> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, minus, underscore ] }; 1130 key <AE12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, equal, plus ] }; 1131 1132 include "level3(ralt_switch)" 1133}; 1134 1135// Russian engineering keyboard layout (Ручей) 1136// Based on the Russian standard keyboard layout 1137// Baryshkin Andrey <baryshkin_aa@codeblast.ru> 1138// Last changes 2022/11/29 1139// Version 2.1 1140partial alphanumeric_keys 1141xkb_symbols "ruchey_ru" { 1142 1143 name[Group1]= "Russian (engineering, RU)"; 1144 1145 include "ru(common)" 1146 1147 key <TLDE> { [ NoSymbol, NoSymbol, grave, VoidSymbol ] }; 1148 1149 key <AE01> { [ NoSymbol, exclam, U20BD, VoidSymbol ] }; 1150 key <AE02> { [ NoSymbol, quotedbl, at, VoidSymbol ] }; 1151 key <AE03> { [ NoSymbol, numerosign, numbersign, VoidSymbol ] }; 1152 key <AE04> { [ NoSymbol, semicolon, dollar, VoidSymbol ] }; 1153 key <AE05> { [ NoSymbol, percent, apostrophe, degree ] }; 1154 key <AE06> { [ NoSymbol, colon, asciicircum, VoidSymbol ] }; 1155 key <AE07> { [ NoSymbol, question, ampersand, VoidSymbol ] }; 1156 key <AE08> { [ NoSymbol, asterisk, asciitilde, VoidSymbol ] }; 1157 key <AE09> { [ NoSymbol, parenleft, guillemotleft, VoidSymbol ] }; 1158 key <AE10> { [ NoSymbol, parenright, guillemotright, VoidSymbol ] }; 1159 key <AE11> { [ NoSymbol, underscore, emdash, VoidSymbol ] }; 1160 key <AE12> { [ NoSymbol, plus, VoidSymbol, VoidSymbol ] }; 1161 1162 key <AD03> { [ NoSymbol, NoSymbol, EuroSign, VoidSymbol ] }; 1163 key <AD04> { [ NoSymbol, NoSymbol, registered, VoidSymbol ] }; 1164 key <AD06> { [ NoSymbol, NoSymbol, U00A5, VoidSymbol ] }; 1165 key <AD11> { [ NoSymbol, NoSymbol, braceleft, VoidSymbol ] }; 1166 key <AD12> { [ NoSymbol, NoSymbol, braceright, VoidSymbol ] }; 1167 1168 key <AC02> { [ NoSymbol, NoSymbol, U00A7, VoidSymbol ] }; 1169 key <AC04> { [ NoSymbol, NoSymbol, sterling, VoidSymbol ] }; 1170 key <AC10> { [ NoSymbol, NoSymbol, bracketleft, VoidSymbol ] }; 1171 key <AC11> { [ NoSymbol, NoSymbol, bracketright, VoidSymbol ] }; 1172 1173 key <AB03> { [ NoSymbol, NoSymbol, copyright, VoidSymbol ] }; 1174 key <AB08> { [ NoSymbol, NoSymbol, less, VoidSymbol ] }; 1175 key <AB09> { [ NoSymbol, NoSymbol, greater, VoidSymbol ] }; 1176 key <AB10> { [ period, comma, VoidSymbol, U0301 ] }; 1177 1178 key <BKSL> { [ slash, backslash, bar, VoidSymbol ] }; 1179 key <LSGT> { [ slash, backslash, bar, VoidSymbol ] }; 1180 1181 include "kpdl(dot)" 1182}; 1183 1184// Russian engineering keyboard layout (Ручей) 1185// Based on the English standard keyboard layout 1186// Baryshkin Andrey <baryshkin_aa@codeblast.ru> 1187// Last changes 2022/11/29 1188// Version 2.1 1189partial alphanumeric_keys 1190xkb_symbols "ruchey_en" { 1191 1192 name[Group1]= "Russian (engineering, EN)"; 1193 1194 include "us(basic)" 1195 1196 key <TLDE> { [ VoidSymbol, VoidSymbol, grave, VoidSymbol ] }; 1197 1198 key <AE01> { [ NoSymbol, exclam, U20BD, VoidSymbol ] }; 1199 key <AE02> { [ NoSymbol, quotedbl, at, VoidSymbol ] }; 1200 key <AE03> { [ NoSymbol, numerosign, numbersign, VoidSymbol ] }; 1201 key <AE04> { [ NoSymbol, semicolon, dollar, VoidSymbol ] }; 1202 key <AE05> { [ NoSymbol, percent, apostrophe, degree ] }; 1203 key <AE06> { [ NoSymbol, colon, asciicircum, VoidSymbol ] }; 1204 key <AE07> { [ NoSymbol, question, ampersand, VoidSymbol ] }; 1205 key <AE08> { [ NoSymbol, asterisk, asciitilde, VoidSymbol ] }; 1206 key <AE09> { [ NoSymbol, parenleft, guillemotleft, VoidSymbol ] }; 1207 key <AE10> { [ NoSymbol, parenright, guillemotright, VoidSymbol ] }; 1208 key <AE11> { [ NoSymbol, underscore, emdash, VoidSymbol ] }; 1209 key <AE12> { [ NoSymbol, plus, VoidSymbol, VoidSymbol ] }; 1210 1211 key <AD03> { [ NoSymbol, NoSymbol, EuroSign, VoidSymbol ] }; 1212 key <AD04> { [ NoSymbol, NoSymbol, registered, VoidSymbol ] }; 1213 key <AD06> { [ NoSymbol, NoSymbol, U00A5, VoidSymbol ] }; 1214 key <AD11> { [ VoidSymbol, VoidSymbol, braceleft, VoidSymbol ] }; 1215 key <AD12> { [ VoidSymbol, VoidSymbol, braceright, VoidSymbol ] }; 1216 1217 key <AC02> { [ NoSymbol, NoSymbol, U00A7, VoidSymbol ] }; 1218 key <AC04> { [ NoSymbol, NoSymbol, sterling, VoidSymbol ] }; 1219 key <AC10> { [ VoidSymbol, VoidSymbol, bracketleft, VoidSymbol ] }; 1220 key <AC11> { [ VoidSymbol, VoidSymbol, bracketright, VoidSymbol ] }; 1221 1222 key <AB03> { [ NoSymbol, NoSymbol, copyright, VoidSymbol ] }; 1223 key <AB08> { [ VoidSymbol, VoidSymbol, less, VoidSymbol ] }; 1224 key <AB09> { [ VoidSymbol, VoidSymbol, greater, VoidSymbol ] }; 1225 key <AB10> { [ period, comma, VoidSymbol, U0301 ] }; 1226 1227 key <BKSL> { [ slash, backslash, bar, VoidSymbol ] }; 1228 key <LSGT> { [ slash, backslash, bar, VoidSymbol ] }; 1229 1230 include "kpdl(dot)" 1231}; 1232 1233// RU Winkeys-P layout based on RU Winkeys with top row digits switched 1234// Vladimir Gorelov <virtual.lark@gmail.com> 1235partial alphanumeric_keys 1236xkb_symbols "winkeys-p" { 1237 include "ru(winkeys)" 1238 name[Group1]= "Russian (Programmer)"; 1239 1240 key <AE01> { [ exclam, 1 ] }; 1241 key <AE02> { [ at, 2 ] }; 1242 key <AE03> { [ numbersign, 3 ] }; 1243 key <AE04> { [ dollar, 4 ] }; 1244 key <AE05> { [ percent, 5 ] }; 1245 key <AE06> { [ asciicircum, 6 ] }; 1246 key <AE07> { [ ampersand, 7 ] }; 1247 key <AE08> { [ asterisk, 8 ] }; 1248 key <AE09> { [ parenleft, 9 ] }; 1249 key <AE10> { [ parenright, 0 ] }; 1250}; 1251 1252// Russian keyboard layout with typography symbols. 1253// This is a modified Russian standard keyboard, with the third level containing 1254// typographic symbols commonly used in Russian language and punctuation symbols 1255// from Latin keyboard layout. 1256// Boolat Kamalov <800147@gmail.com> 1257partial alphanumeric_keys 1258xkb_symbols "typo" { 1259 include "ru(winkeys)" 1260 name[Group1]= "Russian (typographic)"; 1261 1262 key <TLDE> { [ NoSymbol, NoSymbol, grave, asciitilde ] }; 1263 key <AE01> { [ NoSymbol, NoSymbol, enfilledcircbullet ] }; 1264 key <AE02> { [ NoSymbol, NoSymbol, at, apostrophe ] }; 1265 key <AE03> { [ NoSymbol, NoSymbol, numbersign, section ] }; 1266 key <AE04> { [ NoSymbol, NoSymbol, dollar ] }; 1267 key <AE06> { [ NoSymbol, NoSymbol, asciicircum, U0301 ] }; // Combining Acute Accent 1268 key <AE07> { [ NoSymbol, NoSymbol, ampersand ] }; 1269 key <AE09> { [ NoSymbol, NoSymbol, less ] }; 1270 key <AE10> { [ NoSymbol, NoSymbol, greater ] }; 1271 key <AE11> { [ NoSymbol, NoSymbol, emdash, endash ] }; 1272 1273 key <AD11> { [ NoSymbol, NoSymbol, bracketleft, braceleft ] }; 1274 key <AD12> { [ NoSymbol, NoSymbol, bracketright, braceright ] }; 1275 1276 key <AB08> { [ NoSymbol, NoSymbol, guillemotleft, doublelowquotemark ] }; 1277 key <AB09> { [ NoSymbol, NoSymbol, guillemotright, leftdoublequotemark ] }; 1278 key <AB10> { [ NoSymbol, NoSymbol, ellipsis, U2019 ] }; // Right Single Quotation Mark 1279 key <SPCE> { [ space, space, nobreakspace, U2060 ] }; // Word Joiner 1280 1281 include "level3(ralt_switch)" 1282}; 1283