by revision 1.1.1.7 1 // Belarusian standard keyboard, by Alexander Mikhailian <mikhailian (a] altern.org>.
2 // Reworked to use winkeys by default and russian keymap as base by Paul Lubetsky <vegeek (a] gmail.com>
3 // Added Belarusian-Russian and Russian-Belarusian variants, by Pavel Senchanka <pavel.senchanka (a] gmail.com>
4 // See freedesktop.org bug #23604
5
6 default partial alphanumeric_keys
7 xkb_symbols "basic" {
8 include "ru(winkeys)"
9 name[Group1]= "Belarusian";
10
11 key <AD09> { [ Byelorussian_shortu, Byelorussian_SHORTU ] };
12 key <AD12> { [ apostrophe, apostrophe ] };
13 key <AB05> { [ Ukrainian_i, Ukrainian_I ] };
14 };
15
16 partial alphanumeric_keys
17 xkb_symbols "legacy" {
18 include "by(basic)"
19 name[Group1]= "Belarusian (legacy)";
20
21 key <AE03> { [ 3, numbersign ] };
22 key <AE04> { [ 4, asterisk ] };
23 key <AE05> { [ 5, colon ] };
24 key <AE06> { [ 6, comma ] };
25 key <AE07> { [ 7, period ] };
26 key <AE08> { [ 8, semicolon ] };
27 key <AB10> { [ slash, question ] };
28 key <BKSL> { [ backslash, bar ] };
29 };
30
31 partial alphanumeric_keys
32 xkb_symbols "latin" {
33 include "latin"
34 name[Group1]= "Belarusian (Latin)";
35
36 key <AD02> { [ w, W, scaron, Scaron ] };
37 key <AD07> { [ u, U, ubreve, Ubreve ] };
38 key <AC02> { [ s, S, sacute, Sacute ] };
39 key <AC09> { [ l, L, lstroke, Lstroke ] };
40 key <AB01> { [ z, Z, zacute, Zacute ] };
41 key <AB02> { [ x, X, zcaron, Zcaron ] };
42 key <AB03> { [ c, C, cacute, Cacute ] };
43 key <AB04> { [ v, V, ccaron, Ccaron ] };
44 key <AB06> { [ n, N, nacute, Nacute ] };
45
46 include "level3(ralt_switch)"
47 };
48
49 // Russian layout with Belarusian symbols on third level.
50 partial alphanumeric_keys
51 xkb_symbols "ru" {
52 include "ru(winkeys)"
53 name[Group1]= "Russian (Belarus)";
54
55 key <AB05> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] };
56 key <AD09> { [ Cyrillic_shcha, Cyrillic_SHCHA, Byelorussian_shortu, Byelorussian_SHORTU ] };
57 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, U2019, apostrophe ] };
58
59 include "level3(ralt_switch)"
60 };
61
62 // Belarusian layout extended with other East Slavic language symbols
63 // (Russian, Ukrainian).
64 partial alphanumeric_keys
65 xkb_symbols "intl" {
66 include "by(basic)"
67 name[Group1]= "Belarusian (intl.)";
68
69 // Russian
70 key <AB05> { [ Ukrainian_i, Ukrainian_I, Cyrillic_i, Cyrillic_I ] };
71 key <AD09> { [ Byelorussian_shortu, Byelorussian_SHORTU, Cyrillic_shcha, Cyrillic_SHCHA ] };
72 key <AD12> { [ U2019, apostrophe, Cyrillic_hardsign, Cyrillic_HARDSIGN ] };
73
74 // Ukrainian (Yi is usually on <AD12>, but is it taken in our case).
75 key <AC11> { [ Cyrillic_e, Cyrillic_E, Ukrainian_ie, Ukrainian_IE ] };
76 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, Ukrainian_yi, Ukrainian_YI ] };
77 key <BKSL> { [ backslash, bar, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
78
79 include "level3(ralt_switch)"
80 };
81