// based on
// belarusian standard keyboard
// Alexander Mikhailian <mikhailian@altern.org>
+// Reworked to use winkeys by default and russian keymap as base by Paul Lubetsky <vegeek@gmail.com>
+// Added third level with russian symbols
+// See freedesktop.org bug #23604
partial default alphanumeric_keys
xkb_symbols "basic" {
+ include "ru(winkeys)"
+ name[Group1]= "Belarus";
- name[Group1]= "Belarus";
-
- key <TLDE> { [ Cyrillic_io, Cyrillic_IO ] };
- key <LSGT> { [ bar, brokenbar ] };
-
- key <AE02> { [ 2, quotedbl ] };
- key <AE04> { [ 4, semicolon ] };
- key <AE05> { [ 5, percent ] };
- key <AE06> { [ 6, colon ] };
- key <AE07> { [ 7, question ] };
- key <AE11> { [ minus, underscore ] };
- key <AE12> { [ equal, plus ] };
-
- key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI ] };
- key <AD02> { [ Cyrillic_tse, Cyrillic_TSE ] };
- key <AD03> { [ Cyrillic_u, Cyrillic_U ] };
- key <AD04> { [ Cyrillic_ka, Cyrillic_KA ] };
- key <AD05> { [ Cyrillic_ie, Cyrillic_IE ] };
- key <AD06> { [ Cyrillic_en, Cyrillic_EN ] };
- key <AB07> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] };
- key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] };
- key <AD08> { [ Cyrillic_sha, Cyrillic_SHA ] };
- key <AD09> { [ Byelorussian_shortu, Byelorussian_SHORTU ]};
- key <AD10> { [ Cyrillic_ze, Cyrillic_ZE ] };
- key <AD11> { [ Cyrillic_ha, Cyrillic_HA ] };
- key <AD12> { [ apostrophe, apostrophe ] };
-
- key <AC01> { [ Cyrillic_ef, Cyrillic_EF ] };
- key <AC02> { [ Cyrillic_yeru, Cyrillic_YERU ] };
- key <AC03> { [ Cyrillic_ve, Cyrillic_VE ] };
- key <AC04> { [ Cyrillic_a, Cyrillic_A ] };
- key <AC05> { [ Cyrillic_pe, Cyrillic_PE ] };
- key <AC06> { [ Cyrillic_er, Cyrillic_ER ] };
- key <AC07> { [ Cyrillic_o, Cyrillic_O ] };
- key <AC08> { [ Cyrillic_el, Cyrillic_EL ] };
- key <AC09> { [ Cyrillic_de, Cyrillic_DE ] };
- key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
- key <AC11> { [ Cyrillic_e, Cyrillic_E ] };
-
- key <AB01> { [ Cyrillic_ya, Cyrillic_YA ] };
- key <AB02> { [ Cyrillic_che, Cyrillic_CHE ] };
- key <AB03> { [ Cyrillic_es, Cyrillic_ES ] };
- key <AB04> { [ Cyrillic_em, Cyrillic_EM ] };
- key <AB05> { [ Ukrainian_i, Ukrainian_I ] };
- key <AB06> { [ Cyrillic_te, Cyrillic_TE ] };
- key <AB08> { [ Cyrillic_be, Cyrillic_BE ] };
- key <AB09> { [ Cyrillic_yu, Cyrillic_YU ] };
- key <AB10> { [ period, comma ] };
-
- key <BKSL> { [ slash, bar ] };
-
- // End alphanumeric section
+ key <AD09> { [ Byelorussian_shortu, Byelorussian_SHORTU ] };
+ key <AD12> { [ apostrophe, apostrophe ] };
+ key <AB05> { [ Ukrainian_i, Ukrainian_I ] };
};
partial alphanumeric_keys
-xkb_symbols "winkeys" {
- include "by(basic)"
- name[Group1]= "Belarus - Winkeys";
- key <AE03> { [ 3, numerosign ] };
- key <AE04> { [ 4, semicolon ] };
- key <AE05> { [ 5, percent ] };
- key <AE06> { [ 6, colon ] };
- key <AE07> { [ 7, question ] };
- key <AE08> { [ 8, asterisk ] };
- key <AB10> { [ period, comma ] };
- key <BKSL> { [ slash, bar ] };
+xkb_symbols "legacy" {
+ include "by(basic)"
+ name[Group1]= "Belarus - Legacy";
+
+ key <AE03> { [ 3, numbersign ] };
+ key <AE04> { [ 4, asterisk ] };
+ key <AE05> { [ 5, colon ] };
+ key <AE06> { [ 6, comma ] };
+ key <AE07> { [ 7, period ] };
+ key <AE08> { [ 8, semicolon ] };
+ key <AB10> { [ slash, question ] };
+ key <BKSL> { [ backslash, bar ] };
};
// based on a keyboard map from an 'xkb/symbols/iso3335-3' file
partial alphanumeric_keys
xkb_symbols "latin" {
+ include "latin"
+ name[Group1]= "Belarus - Latin";
+
+ key <AD02> { [ w, W, scaron, Scaron ] };
+ key <AD07> { [ u, U, ubreve, Ubreve ] };
+ key <AC02> { [ s, S, sacute, Sacute ] };
+ key <AC09> { [ l, L, lstroke, Lstroke ] };
+ key <AB01> { [ z, Z, zacute, Zacute ] };
+ key <AB02> { [ x, X, zcaron, Zcaron ] };
+ key <AB03> { [ c, C, cacute, Cacute ] };
+ key <AB04> { [ v, V, ccaron, Ccaron ] };
+ key <AB06> { [ n, N, nacute, Nacute ] };
+
+ include "level3(ralt_switch)"
+};
+
+partial alphanumeric_keys
+xkb_symbols "common" {
+ include "ru(winkeys)"
+ name[Group1]= "Belarus - Common";
- include "latin"
- name[Group1]= "Belarus - Latin";
- key <AD02> { [ w, W, scaron, Scaron ] };
- key <AD07> { [ u, U, ubreve, Ubreve ] };
- key <AC02> { [ s, S, sacute, Sacute ] };
- key <AC09> { [ l, L, lstroke, Lstroke ] };
- key <AB01> { [ z, Z, zacute, Zacute ] };
- key <AB02> { [ x, X, zcaron, Zcaron ] };
- key <AB03> { [ c, C, cacute, Cacute ] };
- key <AB04> { [ v, V, ccaron, Ccaron ] };
- key <AB06> { [ n, N, nacute, Nacute ] };
+ key <AD09> { [ Byelorussian_shortu, Byelorussian_SHORTU, Cyrillic_shcha, Cyrillic_SHCHA ] };
+ key <AD12> { [ apostrophe, apostrophe, Cyrillic_hardsign, Cyrillic_HARDSIGN ] };
+ key <AB05> { [ Ukrainian_i, Ukrainian_I, Cyrillic_i, Cyrillic_I ] };
- include "level3(ralt_switch)"
+
+ include "level3(ralt_switch)"
};