// Keyboard layouts for Belarus. // Belarusian standard keyboard, by Alexander Mikhailian . // Reworked to use Russian keymap as base and winkeys by default, // by Paul Lubetsky , see https://bugs.freedesktop.org/23604. // Added Belarusian-Russian and Russian-Belarusian variants, // by Pavel Senchanka default partial alphanumeric_keys xkb_symbols "basic" { include "ru(winkeys)" name[Group1]= "Belarusian"; key {[ Cyrillic_ghe, Cyrillic_GHE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ]}; key {[ Byelorussian_shortu, Byelorussian_SHORTU ]}; key {[ apostrophe, apostrophe ]}; key {[ Ukrainian_i, Ukrainian_I ]}; }; partial alphanumeric_keys xkb_symbols "legacy" { include "by(basic)" name[Group1]= "Belarusian (legacy)"; key {[ 3, numbersign ]}; key {[ 4, asterisk ]}; key {[ 5, colon ]}; key {[ 6, comma ]}; key {[ 7, period ]}; key {[ 8, semicolon ]}; key {[ slash, question ]}; key {[ backslash, bar ]}; }; partial alphanumeric_keys xkb_symbols "latin" { include "latin" name[Group1]= "Belarusian (Latin)"; key {[ w, W, scaron, Scaron ]}; key {[ u, U, ubreve, Ubreve ]}; key {[ s, S, sacute, Sacute ]}; key {[ l, L, lstroke, Lstroke ]}; key {[ z, Z, zacute, Zacute ]}; key {[ x, X, zcaron, Zcaron ]}; key {[ c, C, cacute, Cacute ]}; key {[ v, V, ccaron, Ccaron ]}; key {[ n, N, nacute, Nacute ]}; include "level3(ralt_switch)" }; // Russian layout with Belarusian symbols on third level. partial alphanumeric_keys xkb_symbols "ru" { include "ru(winkeys)" name[Group1]= "Russian (Belarus)"; key {[ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ]}; key {[ Cyrillic_shcha, Cyrillic_SHCHA, Byelorussian_shortu, Byelorussian_SHORTU ]}; key {[ Cyrillic_hardsign, Cyrillic_HARDSIGN, U2019, apostrophe ]}; include "level3(ralt_switch)" }; // Belarusian layout extended with other East Slavic symbols (Russian, Ukrainian). partial alphanumeric_keys xkb_symbols "intl" { include "by(basic)" name[Group1]= "Belarusian (intl.)"; // Russian key {[ Ukrainian_i, Ukrainian_I, Cyrillic_i, Cyrillic_I ]}; key {[ Byelorussian_shortu, Byelorussian_SHORTU, Cyrillic_shcha, Cyrillic_SHCHA ]}; key {[ U2019, apostrophe, Cyrillic_hardsign, Cyrillic_HARDSIGN ]}; // Ukrainian (Yi is usually on , but it is already taken in our case). key {[ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ]}; key {[ Cyrillic_ha, Cyrillic_HA, Ukrainian_yi, Ukrainian_YI ]}; key {[ backslash, bar, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ]}; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "phonetic" { include "ru(phonetic)" name[Group1]= "Belarusian (phonetic)"; // Mostly same as good old YAWERTY layout, but with correct // Belarusian i and ў (u-short) instead of щ (shcha). We also // keep originals on level3 just in case. key {[ Byelorussian_shortu, Byelorussian_SHORTU, Cyrillic_shcha, Cyrillic_SHCHA ]}; key {[ Ukrainian_i, Ukrainian_I, Cyrillic_i, Cyrillic_I ]}; // Lets also add level3+u to enable another way to input u-short key {[ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ]}; // Since we already enable level3 lets also do alternative // means for io and hardsign. key {[ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ]}; key {[ Cyrillic_softsign, Cyrillic_SOFTSIGN, Cyrillic_hardsign, Cyrillic_HARDSIGN ]}; include "level3(ralt_switch)" };