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