Added option to use RAlt as RCtrl
[xorg/xkeyboard-config] / symbols / ru
1 // based on
2 // russian standard keyboard
3 // AEN <aen@logic.ru>
4 // 2001/12/23 by Leon Kanter <leon@blackcatlinux.com>
5 // 2005/12/09 Valery Inozemtsev <shrek@altlinux.ru>
6
7 // Windows layout
8 partial default alphanumeric_keys
9 xkb_symbols "winkeys" {
10     include "ru(common)"
11
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      ]       };
20
21     key <AB10> {        [          period,           comma      ]       };
22     key <BKSL> {        [       backslash,           slash      ]       };
23 };
24
25 partial hidden alphanumeric_keys 
26 xkb_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     key <AB10> {        [           slash,        question      ]       };
42     key <LSGT> {        [           slash,             bar      ]       };
43
44     key <TLDE> {        [     Cyrillic_io,     Cyrillic_IO      ]       };
45     key <AD01> {        [ Cyrillic_shorti, Cyrillic_SHORTI      ]       };
46     key <AD02> {        [    Cyrillic_tse,    Cyrillic_TSE      ]       };
47     key <AD03> {        [      Cyrillic_u,      Cyrillic_U      ]       };
48     key <AD04> {        [     Cyrillic_ka,     Cyrillic_KA      ]       };
49     key <AD05> {        [     Cyrillic_ie,     Cyrillic_IE      ]       };
50     key <AD06> {        [     Cyrillic_en,     Cyrillic_EN      ]       };
51     key <AD07> {        [    Cyrillic_ghe,    Cyrillic_GHE      ]       };
52     key <AD08> {        [    Cyrillic_sha,    Cyrillic_SHA      ]       };
53     key <AD09> {        [  Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
54     key <AD10> {        [     Cyrillic_ze,     Cyrillic_ZE      ]       };
55     key <AD11> {        [     Cyrillic_ha,     Cyrillic_HA      ]       };
56     key <AD12> {        [Cyrillic_hardsign,Cyrillic_HARDSIGN    ]       };
57     key <AC01> {        [     Cyrillic_ef,     Cyrillic_EF      ]       };
58     key <AC02> {        [   Cyrillic_yeru,   Cyrillic_YERU      ]       };
59     key <AC03> {        [     Cyrillic_ve,     Cyrillic_VE      ]       };
60     key <AC04> {        [      Cyrillic_a,      Cyrillic_A      ]       };
61     key <AC05> {        [     Cyrillic_pe,     Cyrillic_PE      ]       };
62     key <AC06> {        [     Cyrillic_er,     Cyrillic_ER      ]       };
63     key <AC07> {        [      Cyrillic_o,      Cyrillic_O      ]       };
64     key <AC08> {        [     Cyrillic_el,     Cyrillic_EL      ]       };
65     key <AC09> {        [     Cyrillic_de,     Cyrillic_DE      ]       };
66     key <AC10> {        [    Cyrillic_zhe,    Cyrillic_ZHE      ]       };
67     key <AC11> {        [      Cyrillic_e,      Cyrillic_E      ]       };
68     key <AB01> {        [     Cyrillic_ya,     Cyrillic_YA      ]       };
69     key <AB02> {        [    Cyrillic_che,    Cyrillic_CHE      ]       };
70     key <AB03> {        [     Cyrillic_es,     Cyrillic_ES      ]       };
71     key <AB04> {        [     Cyrillic_em,     Cyrillic_EM      ]       };
72     key <AB05> {        [      Cyrillic_i,      Cyrillic_I      ]       };
73     key <AB06> {        [     Cyrillic_te,     Cyrillic_TE      ]       };
74     key <AB07> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
75     key <AB08> {        [     Cyrillic_be,     Cyrillic_BE      ]       };
76     key <AB09> {        [     Cyrillic_yu,     Cyrillic_YU      ]       };
77
78     key.type[group1]="TWO_LEVEL";
79
80     include "kpdl(comma)"
81 };
82
83 partial alphanumeric_keys
84 xkb_symbols "legacy" {
85     include "ru(common)"
86
87     name[Group1]= "Russian (legacy)";
88 };
89
90 partial alphanumeric_keys
91 xkb_symbols "olpc" {
92
93     include "ru(common)"
94
95     key        <TLDE> {        [          0x01000451,          0x01000401, grave       ]       }; // Ñ‘, Ð
96     key <AE03> {        [               3,      numbersign, 0x01002116      ]       }; // â„–
97     key <AE04> {        [               4,          dollar, semicolon   ]       };
98     key <AE06> {        [               6,      asciicircum, colon      ]       };
99     key <AE07> {        [               7,          ampersand           ]       };
100     key <AE09> {        [               9,          parenleft, acute    ]       };
101     key <AC12> {        [       backslash,          bar, slash          ]       };
102
103     include "group(olpc)"
104 };
105
106 partial alphanumeric_keys
107 xkb_symbols "typewriter" {
108     include "ru(common)"
109     name[Group1]= "Russian (typewriter)";
110     key <TLDE> {        [             bar,            plus      ]       };
111     key <AE01> {        [      numerosign,               1      ]       };
112     key <AE02> {        [           minus,               2      ]       };
113     key <AE03> {        [           slash,               3      ]       };
114     key <AE04> {        [        quotedbl,               4      ]       };
115     key <AE05> {        [           colon,               5      ]       };
116     key <AE06> {        [           comma,               6      ]       };
117     key <AE07> {        [          period,               7      ]       };
118     key <AE08> {        [      underscore,               8      ]       };
119     key <AE09> {        [        question,               9      ]       };
120     key <AE10> {        [         percent,               0      ]       };
121     key <AE11> {        [          exclam,           equal      ]       };
122     key <AE12> {        [       semicolon,       backslash      ]       };
123
124     key <BKSL> {        [       parenright,      parenleft      ]       };
125
126     key <AD12> {        [Cyrillic_hardsign,Cyrillic_HARDSIGN    ]       };
127     key <AB10> {        [     Cyrillic_io,     Cyrillic_IO      ]       };
128 };
129
130 partial alphanumeric_keys
131 xkb_symbols "typewriter-legacy" {
132     include "ru(common)"
133     name[Group1]= "Russian (typewriter, legacy)";
134     key <TLDE> {        [      apostrophe,        quotedbl      ]       };
135     key <AE01> {        [          exclam,               1      ]       };
136     key <AE02> {        [      numerosign,               2      ]       };
137     key <AE03> {        [           slash,               3      ]       };
138     key <AE04> {        [       semicolon,               4      ]       };
139     key <AE05> {        [           colon,               5      ]       };
140     key <AE06> {        [           comma,               6      ]       };
141     key <AE07> {        [          period,               7      ]       };
142     key <AE08> {        [      underscore,               8      ]       };
143     key <AE09> {        [        question,               9      ]       };
144     key <AE10> {        [         percent,               0      ]       };
145     key <BKSL> {        [       parenleft,      parenright      ]       };
146
147     key <AD12> {        [Cyrillic_hardsign,Cyrillic_HARDSIGN    ]       };
148     key <AB10> {        [     Cyrillic_io,     Cyrillic_IO      ]       };
149 };
150
151 partial alphanumeric_keys
152 xkb_symbols "phonetic" {
153
154     name[Group1]= "Russian (phonetic)";
155
156     key <AE01> {        [               1,          exclam      ]       };
157     key <AE02> {        [               2,              at      ]       };
158     key <AE03> {        [               3,     Cyrillic_io      ]       };
159     key <AE04> {        [               4,     Cyrillic_IO      ]       };
160     key <AE05> {        [               5, Cyrillic_hardsign    ]       };
161     key <AE06> {        [               6, Cyrillic_HARDSIGN    ]       };
162     key <AE07> {        [               7,       ampersand      ]       };
163     key <AE08> {        [               8,        asterisk      ]       };
164     key <AE09> {        [               9,       parenleft      ]       };
165     key <AE10> {        [               0,      parenright      ]       };
166     key <AE11> {        [           minus,      underscore      ]       };
167
168     key <AB09> {        [          period,         greater      ]       };
169     key <AB10> {        [           slash,        question      ]       };
170     key <AB08> {        [           comma,            less      ]       };
171     key <AC10> {        [       semicolon,           colon      ]       };
172     key <AC11> {        [      apostrophe,        quotedbl      ]       };
173     key <LSGT> {        [             bar,       brokenbar      ]       };
174
175     key <TLDE> {        [     Cyrillic_yu,     Cyrillic_YU      ]       };
176     key <LatQ> {        [     Cyrillic_ya,     Cyrillic_YA      ]       };
177     key <LatZ> {        [     Cyrillic_ze,     Cyrillic_ZE      ]       };
178     key <LatS> {        [     Cyrillic_es,     Cyrillic_ES      ]       };
179     key <LatA> {        [      Cyrillic_a,      Cyrillic_A      ]       };
180     key <LatW> {        [     Cyrillic_ve,     Cyrillic_VE      ]       };
181     key <LatC> {        [    Cyrillic_tse,    Cyrillic_TSE      ]       };
182     key <LatX> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
183     key <LatD> {        [     Cyrillic_de,     Cyrillic_DE      ]       };
184     key <LatE> {        [     Cyrillic_ie,     Cyrillic_IE      ]       };
185     key <LatV> {        [    Cyrillic_zhe,    Cyrillic_ZHE      ]       };
186     key <LatF> {        [     Cyrillic_ef,     Cyrillic_EF      ]       };
187     key <LatT> {        [     Cyrillic_te,     Cyrillic_TE      ]       };
188     key <LatR> {        [     Cyrillic_er,     Cyrillic_ER      ]       };
189     key <LatN> {        [     Cyrillic_en,     Cyrillic_EN      ]       };
190     key <LatB> {        [     Cyrillic_be,     Cyrillic_BE      ]       };
191     key <LatH> {        [     Cyrillic_ha,     Cyrillic_HA      ]       };
192     key <LatG> {        [    Cyrillic_ghe,    Cyrillic_GHE      ]       };
193     key <LatY> {        [   Cyrillic_yeru,   Cyrillic_YERU      ]       };
194     key <LatM> {        [     Cyrillic_em,     Cyrillic_EM      ]       };
195     key <LatJ> {        [ Cyrillic_shorti, Cyrillic_SHORTI      ]       };
196     key <LatU> {        [      Cyrillic_u,      Cyrillic_U      ]       };
197     key <LatK> {        [     Cyrillic_ka,     Cyrillic_KA      ]       };
198     key <LatI> {        [      Cyrillic_i,      Cyrillic_I      ]       };
199     key <LatO> {        [      Cyrillic_o,      Cyrillic_O      ]       };
200     key <LatL> {        [     Cyrillic_el,     Cyrillic_EL      ]       };
201     key <LatP> {        [     Cyrillic_pe,     Cyrillic_PE      ]       };
202
203     key <AD11> {        [    Cyrillic_sha,    Cyrillic_SHA      ]       };
204     key <AE12> {        [    Cyrillic_che,    Cyrillic_CHE      ]       };
205     key <AD12> {        [  Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
206     key <BKSL> {        [      Cyrillic_e,      Cyrillic_E      ]       };
207 };
208
209 partial alphanumeric_keys
210 xkb_symbols "phonetic_winkeys" {
211
212     include "ru(phonetic)"
213     name[Group1]= "Russian (phonetic WinKeys)";
214
215     key <LatX> {        [     Cyrillic_ha,     Cyrillic_HA      ]       };
216     key <LatH> {        [     Cyrillic_che,     Cyrillic_CHE    ]       };
217     key <AE12> {        [ Cyrillic_softsign, Cyrillic_softsign  ]       };
218
219 };
220
221 partial alphanumeric_keys
222 xkb_symbols "tt" {
223     include "ru(winkeys)"
224     name[Group1]= "Tatar";
225
226     key.type[group1]="FOUR_LEVEL";
227
228     key <TLDE> {       [      0x010004bb,      0x010004ba,
229                              Cyrillic_io,     Cyrillic_IO      ]       };
230     key        <AD02> {        [      0x010004e9,      0x010004e8,
231                             Cyrillic_tse,    Cyrillic_TSE      ]       };
232     key        <AD09> {        [      0x010004d9,      0x010004d8,
233                           Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
234     key        <AD12> {        [      0x010004af,      0x010004ae,
235                        Cyrillic_hardsign,Cyrillic_HARDSIGN     ]       };
236     key        <AC10> {        [      0x010004a3,      0x010004a2,
237                             Cyrillic_zhe,    Cyrillic_ZHE      ]       };
238     key        <AB07> {        [      0x01000497,      0x01000496,
239                        Cyrillic_softsign,Cyrillic_SOFTSIGN     ]       };
240
241     include "level3(ralt_switch)"
242
243 };
244
245 partial alphanumeric_keys 
246 xkb_symbols "os_legacy" {
247     include "ru(common)"
248
249     name[Group1]= "Ossetian (legacy)";
250
251     key <TLDE> {        [      Cyrillic_e,      Cyrillic_E      ]       };
252     key <AC07> {        [      Cyrillic_o,      Cyrillic_O, Cyrillic_io, Cyrillic_IO    ]       };
253     key <AC11> {        [      0x010004D5,      0x010004D4      ]       };
254 };
255
256 partial alphanumeric_keys 
257 xkb_symbols "os_winkeys" {
258     include "ru(winkeys)"
259
260     name[Group1]= "Ossetian (WinKeys)";
261
262     key <TLDE> {        [      Cyrillic_e,      Cyrillic_E      ]       };
263     key <AC07> {        [      Cyrillic_o,      Cyrillic_O, Cyrillic_io, Cyrillic_IO    ]       };
264     key <AC11> {        [      0x010004D5,      0x010004D4      ]       };
265 };
266
267 partial alphanumeric_keys
268 xkb_symbols "cv" {
269     include "ru(winkeys)"
270
271     name[Group1]= "Chuvash";
272
273     key.type[group1]="FOUR_LEVEL";
274
275     key        <AD03> {        [      Cyrillic_u,       Cyrillic_U,
276                             0x010004f3,    0x010004f2      ]       };
277     key        <AD05> {        [      Cyrillic_ie,     Cyrillic_IE,
278                        0x01000115,      0x01000114     ]       };
279     key        <AC04> {        [      Cyrillic_a,       Cyrillic_A,
280                           abreve,  Abreve      ]       };
281     key        <AB03> {        [      Cyrillic_es,     Cyrillic_ES,
282                             ccedilla,    Ccedilla      ]       };
283
284     include "level3(ralt_switch)"
285 };
286
287 partial alphanumeric_keys
288 xkb_symbols "udm" {
289     include "ru(winkeys)"
290
291     name[Group1]= "Udmurt";
292
293     key.type[group1]="FOUR_LEVEL";
294
295     key <AE01> {        [        question,          exclam,    1,       1       ]       };
296     key <AE02> {        [       parenleft,        quotedbl,    2,       2       ]       };
297     key <AE03> {        [      parenright,      numerosign,    3,       3       ]       };
298     key <AE04> {        [           colon,       semicolon,    4,       4       ]       };
299     key <AE05> {        [        asterisk,         percent,    5,       5       ]       };
300     key <AE06> {        [      0x010004dd,      0x010004dc,    6,       6       ]       };
301     key <AE07> {        [      0x010004e7,      0x010004e6,    7,       7       ]       };
302     key <AE08> {        [      0x010004f5,      0x010004f4,    8,       8       ]       };
303     key <AE09> {        [      0x010004e5,      0x010004e4,    9,       9       ]       };
304     key <AE10> {        [      0x010004df,      0x010004de,    0,       0       ]       };
305
306     include "level3(ralt_switch)"
307 };
308
309 partial alphanumeric_keys
310 xkb_symbols "cv_latin" {
311     include "us(alt-intl)"
312
313     name[Group1]= "Chuvash (Latin)";
314
315     key.type[group1]="FOUR_LEVEL";
316
317     key        <AD01> { [         q,    Q,    0x01000161,       0x01000160 ] };
318     key        <AD02> { [         w,    W,    udiaeresis,       Udiaeresis ] };
319     key        <AD03> { [         e,    E,    0x01000115,       0x01000114 ] };
320     key        <AD07> { [         u,    U,    udiaeresis,       Udiaeresis ] };
321     key        <AD08> { [         i,    I,    0x0100012d,       0x0100012c ] };
322     key        <AD09> { [         o,    O,    odiaeresis,       Odiaeresis ] };
323     key        <AC01> { [         a,    A,        abreve,           Abreve ] };
324     key        <AC02> { [         s,    S,      scedilla,         Scedilla ] };
325     key        <AC05> { [         g,    G,        gbreve,           Gbreve ] };
326     key        <AC07> { [         j,    J,    0x01000131,       0x01000130 ] };
327     key        <AB03> { [         c,    C,      ccedilla,         Ccedilla ] };
328
329     include "level3(ralt_switch)"
330
331 };
332
333 // Komi language layout
334 // based on
335 // russian standard keyboard
336 // Vlad Shakhov <lumpen.intellectual@gmail.com>
337 // Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com>
338
339 partial alphanumeric_keys 
340 xkb_symbols "kom" {
341
342     include "ru(winkeys)"
343
344     name[Group1]= "Komi";
345
346     key.type[group1]="FOUR_LEVEL_ALPHABETIC";
347
348 // cyrilllic o with diaeresis 
349     key <AC07> { [      Cyrillic_o,             Cyrillic_O,             
350                         U04E7,                  U04E6           ] };
351     
352 // hard I as additional key for soft Cyrillic_I 
353     key <AB05> { [      Cyrillic_i,             Cyrillic_I,
354                         Ukrainian_i,            Ukrainian_I     ] };
355
356     include "level3(ralt_switch)"
357 };
358
359 // Yakut language layout
360 // 2008/04/23 Yakov Aleksandrov <bertjickty@yandex.ru>
361 // 2008/04/23 Anatoliy Zhozhikov <jav@sitc.ru>
362 // 2008/04/23 Aleksandr Varlamov
363 partial alphanumeric_keys
364 xkb_symbols "sah" {
365
366     include "ru(winkeys)"
367
368     name[Group1]= "Yakut";
369
370     key.type[group1]="FOUR_LEVEL_ALPHABETIC";
371
372     key <TLDE> { [      Cyrillic_io,            Cyrillic_IO,
373                         U04EB,                  U04EA                   ] };
374     key <AD01> { [      Cyrillic_shorti,        Cyrillic_SHORTI,
375                         U048B,                  U048A                   ] };
376     key <AD03> { [      Cyrillic_u,             Cyrillic_U,
377                         Cyrillic_u_straight,    Cyrillic_U_straight     ] };
378     key <AD04> { [      Cyrillic_ka,            Cyrillic_KA,
379                         U04C4,                  U04C3                   ] };
380     key <AD06> { [      Cyrillic_en,            Cyrillic_EN,
381                         U04A5,                  U04A4                   ] };
382     key <AD07> { [      Cyrillic_ghe,           Cyrillic_GHE,
383                         U0495,                  U0494                   ] };
384     key <AD10> { [      Cyrillic_ze,            Cyrillic_ZE,
385                         U04E1,                  U04E0                   ] };
386     key <AD11> { [      Cyrillic_ha,            Cyrillic_HA,
387                         Cyrillic_shha,          Cyrillic_SHHA           ] };
388     key <AC07> { [      Cyrillic_o,             Cyrillic_O,
389                         Cyrillic_o_bar,         Cyrillic_O_bar          ] };
390     key <AC10> { [      Cyrillic_zhe,           Cyrillic_ZHE,
391                         U0461,                  U0460                   ] };
392     key <AB02> { [      Cyrillic_che,           Cyrillic_CHE,
393                         Cyrillic_u_macron,      Cyrillic_U_macron       ] };
394     key <AB04> { [      Cyrillic_em,            Cyrillic_EM,
395                         U04C8,                  U04C7                   ] };
396     key <AB05> { [      Cyrillic_i,             Cyrillic_I,
397                         Cyrillic_i_macron,      Cyrillic_I_macron       ] };
398
399     include "level3(ralt_switch)"
400 };
401
402
403 //Kalmyk language layout
404 //based on the Kalmyk language layout: http://soft.oyrat.org/
405 //Nikolay Korneev <halmg@oyrat.org>
406 //Toli Miron <mirontoli@gmail.com>
407         
408 partial alphanumeric_keys
409 xkb_symbols "xal" {
410     include "ru(winkeys)"
411
412     name[Group1]= "Kalmyk";
413
414     key.type[group1]="FOUR_LEVEL";
415
416     key <AE01> {        [                     question,                  exclam,               1      ]       };
417     key <AE02> {        [                   numerosign,                quotedbl,               2      ]       };
418     key <AE03> {        [          Cyrillic_u_straight,     Cyrillic_U_straight,               3      ]       };
419     key <AE04> {        [               Cyrillic_schwa,          Cyrillic_SCHWA,               4      ]       }; 
420     key <AE05> {        [                     asterisk,                 percent,               5      ]       };
421     key <AE06> {        [        Cyrillic_en_descender,   Cyrillic_EN_descender,               6      ]       };
422     key <AE07> {        [               Cyrillic_o_bar,          Cyrillic_O_bar,               7      ]       }; 
423     key <AE08> {        [                Cyrillic_shha,           Cyrillic_SHHA,               8      ]       }; 
424     key <AE09> {        [       Cyrillic_zhe_descender,  Cyrillic_ZHE_descender,               9      ]       };
425     key <AE10> {        [                    semicolon,                   colon,               0      ]       };
426
427     key <TLDE> {        [                    parenleft,               parenright, Cyrillic_io, Cyrillic_IO    ]       };
428
429     key <AD02> {        [                 Cyrillic_tse,             Cyrillic_TSE,         dollar      ]       };
430     key <AD03> {        [                   Cyrillic_u,               Cyrillic_U,       EuroSign      ]       }; 
431     key <AD04> {        [                  Cyrillic_ka,              Cyrillic_KA,     registered      ]       }; 
432     key <AD05> {        [                  Cyrillic_ie,              Cyrillic_IE,      trademark      ]       }; 
433     key <AD11> {        [                  Cyrillic_ha,              Cyrillic_HA,    bracketleft      ]       }; 
434     key <AD12> {        [            Cyrillic_hardsign,        Cyrillic_HARDSIGN,   bracketright      ]       };
435     key <AC11> {        [                   Cyrillic_e,               Cyrillic_E,     apostrophe      ]       };
436     key <AB03> {        [                  Cyrillic_es,              Cyrillic_ES,      copyright      ]       }; 
437     key <AB08> {        [                  Cyrillic_be,              Cyrillic_BE,           less      ]       };
438     key <AB09> {        [                  Cyrillic_yu,              Cyrillic_YU,        greater      ]       };
439
440     include "level3(ralt_switch)"
441 };
442
443 partial alphanumeric_keys
444 xkb_symbols "dos" {
445
446     include "ru(common)"
447
448     name[Group1]= "Russian (DOS)";
449
450     key        <TLDE> {        [   parenright,  parenleft   ] };
451     key        <AE04> {        [   4,           currency    ] };
452     key        <AE09> {        [   9,           question    ] };
453     key        <AE10> {        [   0,           percent     ] };
454
455     key        <AB10> {        [   Cyrillic_io, Cyrillic_IO ] };
456 };
457
458 partial alphanumeric_keys
459 xkb_symbols "bak" {
460     include "ru(winkeys)"
461
462     name[Group1]= "Bashkirian";
463     key.type[group1]="FOUR_LEVEL";
464
465     key <TLDE> { [     0x010004d9,       0x010004d8,   Cyrillic_io,   Cyrillic_IO      ] };
466     key <AE01> { [     exclam,           quotedbl,      1,       1       ] };
467     key <AE02> { [     0x010004e9,       0x010004e8,    2,       2 ] };
468     key <AE03> { [     0x010004a1,       0x010004a0,    3,       3 ] };
469     key <AE04> { [     0x01000493,       0x01000492,    4,       4 ] };
470     key <AE05> { [     0x010004ab,       0x010004aa,    5,       5 ] };
471     key <AE06> { [     colon,            semicolon,     6,       6 ] };
472     key <AE07> { [     0x01000499,       0x01000498,    7,       7 ] };
473     key <AE08> { [     0x010004bb,       0x010004ba,    8,       8 ] };
474     key <AE09> { [     question,         parenleft,     9,       9 ] };
475     key <AE10> { [     numerosign,       parenright,    0,       0 ] };
476     key <AE11> { [     minus,            percent,       minus,    underscore     ]};
477     key <AE12> { [     0x010004af, 0x010004ae,    equal,  plus    ]};
478     key <BKSL> { [     0x010004a3, 0x010004a2,    backslash,        slash     ]};       
479         
480     include "level3(ralt_switch)"
481 };
482
483 // Serbian charecters added as third level symbols to Russian keyboard layout.
484
485 partial alphanumeric_keys
486 xkb_symbols "srp" {
487     include "ru(common)"
488     include "level3(ralt_switch)"
489
490     name[Group1]= "Serbian (Russia)";
491
492     key <AE03> { [ 3, numerosign ] };
493     key <AE04> { [ 4, semicolon ] };
494     key <AE05> { [ 5, percent ] };
495     key <AE06> { [ 6, colon ] };
496     key <AE07> { [ 7, question ] };
497     key <AE08> { [ 8, asterisk ] };
498     key <AB10> { [ period, comma ] };
499     key <BKSL> { [ backslash, slash ] };
500     key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U458, U408 ] };
501     key <AD06> { [ Cyrillic_en, Cyrillic_EN, U45A, U40A ] };
502     key <AC08> { [ Cyrillic_el, Cyrillic_EL, U459, U409 ] };
503     key <AC09> { [ Cyrillic_de, Cyrillic_DE, U45F, U40F ] };
504     key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U452, U402 ] };
505     key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U45B, U40B ] };
506 };
507
508 // Mari language layout
509 // based on Russian standard keyboard
510 // http://www.marlamuter.ru/
511 partial alphanumeric_keys
512 xkb_symbols "chm" {
513     include "ru(common)"
514     
515     name[Group1]= "Mari";
516
517     key.type[group1]="FOUR_LEVEL_ALPHABETIC";
518     key <AC04> { [      Cyrillic_a,     Cyrillic_A,    U04D3,       U04D2     ] };
519     key <AD03> { [      Cyrillic_u, Cyrillic_U,    U04F1,       U04F0     ] };
520     key <AC02> { [      Cyrillic_ui,    Cyrillic_UI,   U04F9,       U04F8     ] };
521     key <AD06> { [      Cyrillic_n, Cyrillic_N,    U04A5,       U04A4     ] };
522     key <AC11> { [      Cyrillic_e, Cyrillic_E,    U04E9,       U04E8     ] };
523     key <AC10> { [      Cyrillic_zh,    Cyrillic_ZH,   U04EB,       U04EA     ] };
524     key <AC01> { [      Cyrillic_f, Cyrillic_F,     UF537,      UF536     ] };
525
526     include "level3(ralt_switch)"
527 };
528
529 // EXTRAS:
530
531 // Church Slavonic language layout
532 // based on
533 // russian standard keyboard
534 // Aleksandr Andreev and Yuri Shardt 
535 // Last Changes 2010/08/01. Contact <aleksandr.andreev@gmail.com>
536
537 partial alphanumeric_keys
538 xkb_symbols "chu"
539 {
540             name[Group1]= "Church Slavonic";
541             key <TLDE> { [ U0457, U0407, U0482, U20DD ] }; // ї Ї ҂ e.g: а⃝ where the last is a combining ten thousands sign
542             key <AE01> { [ U0461, U0460, U047D, U047C] }; // ѡ Ѡ ѽ Ѽ
543             key <AE02> { [ U0454, U0404, U0465, U0464] }; // є Є ѥ Ѥ
544             key <AE03> { [ U046F, U046E, U0469, U0468] }; // ѯ Ѯ ѩ Ѩ
545             key <AE04> { [ U0471, U0470, U046D, U046C] }; // ѱ Ѱ ѭ Ѭ
546             key <AE05> { [ U0473, U0472, UA657, UA656] }; // ѳ Ѳ iotified A
547             key <AE06> { [ U0475, U0474, U0477, U0476] }; // ѵ Ѵ ѷ Ѷ
548             key <AE07> { [ U047B, U047A, UA64D, UA64C] }; // ѻ Ѻ ꙍ Ꙍ
549             key <AE08> { [ U047F, U047E, U046B, U046A] }; // ѿ Ѿ ѫ Ѫ
550             key <AE09> { [ U0455, U0405, parenleft, U002A ] }; // ѕ Ѕ ( *
551             key <AE10> { [ Cyrillic_u,  Cyrillic_U, parenright, U0488 ] }; // у У ) NB: for diagraph Ouk, use Cyrillic_o + Cyrillic_u
552             key <AE11> { [ U0483, U0486, U0487, U005F] }; // а҃ а҆ а҇, _ (titlo, psili, pokrytie, underscore)
553             key <AE12> { [ U0301, U0300, U0484, UA67E] }; //  а̀ а́ а҄ ꙾ (oxia, varia, kamora, kavyka)
554             key <AD01> {        [ Cyrillic_shorti, Cyrillic_SHORTI, U0456       ]       };
555             key <AD02> {        [    Cyrillic_tse,    Cyrillic_TSE, U2DF0       ]       };
556             key <AD03> {        [   UA64B,  UA64A, U2DF9        ]       }; // Cyrillic monograph Uk (not U)!
557             key <AD04> {        [     Cyrillic_ka,     Cyrillic_KA, U2DE6       ]       };
558             key <AD05> {        [     Cyrillic_ie,     Cyrillic_IE, U2DF7       ]       };
559             key <AD06> {        [     Cyrillic_en,     Cyrillic_EN, U2DE9       ]       };
560             key <AD07> {        [    Cyrillic_ghe,    Cyrillic_GHE, U2DE2       ]       };
561             key <AD08> {        [    Cyrillic_sha,    Cyrillic_SHA, U2DF2       ]       };
562             key <AD09> {        [  Cyrillic_shcha,  Cyrillic_SHCHA, U2DF3       ]       };
563             key <AD10> {        [     Cyrillic_ze,     Cyrillic_ZE, U2DE5       ]       };
564             key <AD11> {        [     Cyrillic_ha,     Cyrillic_HA, U2DEF       ]       };
565             key <AD12> {        [Cyrillic_hardsign,Cyrillic_HARDSIGN, UA67D     ]       }; // Payerok
566             key <BKSL> { [backslash, slash, colon, question] }; // \ / : ? (note, for Slavonic question use semicolon
567             key <AC01> {        [     Cyrillic_ef,     Cyrillic_EF      ]       };
568             key <AC02> {        [   Cyrillic_yeru,   Cyrillic_YERU      ]       };
569             key <AC03> {        [     Cyrillic_ve,     Cyrillic_VE, U2DE1       ]       };
570             key <AC04> {        [      Cyrillic_a,      Cyrillic_A, U2DF6       ]       };
571             key <AC05> {        [     Cyrillic_pe,     Cyrillic_PE, U2DEB       ]       };
572             key <AC06> {        [     Cyrillic_er,     Cyrillic_ER, U2DEC       ]       };
573             key <AC07> {        [      Cyrillic_o,      Cyrillic_O, U2DEA       ]       };
574             key <AC08> {        [     Cyrillic_el,     Cyrillic_EL, U2DE7       ]       };
575             key <AC09> {        [     Cyrillic_de,     Cyrillic_DE, U2DE3       ]       };
576             key <AC10> {        [    Cyrillic_zhe,    Cyrillic_ZHE, U2DE4       ]       };
577             key <AC11> {        [     U0463,    U0462, U2DFA    ]       }; // Yat
578             key <AB01> {        [    U0467, U0466, U2DFD        ]       }; // Small Yus
579             key <AB02> {        [    Cyrillic_che,    Cyrillic_CHE, U2DF1       ]       };
580             key <AB03> {        [     Cyrillic_es,     Cyrillic_ES, U2DED       ]       };
581             key <AB04> {        [     Cyrillic_em,     Cyrillic_EM, U2DE8       ]       };
582             key <AB05> {        [      Cyrillic_i,      Cyrillic_I      ]       };
583             key <AB06> {        [     Cyrillic_te,     Cyrillic_TE, U2DEE       ]       };
584             key <AB07> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
585             key <AB08> {        [     Cyrillic_be,     Cyrillic_BE, U2DE0       ]       };
586             key <AB09> {        [     Cyrillic_yu,     Cyrillic_YU, U2DFB       ]       };
587             key <AB10> {        [          period,    comma, semicolon, exclam      ]       };
588 };
589
590
591 // RUU (Russian-Ukrainian United keyboard layout).
592 // Modified Russian standart keyboard with third level contains Ukrainian
593 // and Belorusian alphabetic letters and commonly used Unicode symbols.
594 // Description http://wiki.opennet.ru/RUU [russian]
595 // Vasyĺ V. Vercynśkyj <fuckel@ukr.net>
596 // Last Changes 2011/05/11
597 //
598 // ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓
599 // │ ' ~ │ ! ≈ │ " ∞ │ № ₴ │ ; € │ % ‰ │ : ≤ │ ? ≥ │ * × │ ( { │ ) } │ _ – │ + ± ┃ ⌫       ┃
600 // │ ’  ́ │ 1 ÷ │ 2 ¤ │ 3 § │ 4 $ │ 5 ° │ 6 < │ 7 > │ 8 • │ 9 [ │ 0 ] │ - — │ = ≠ ┃Backspace┃
601 // ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫
602 // ┃       ┃ Й   │ Ц   │ У Ў │ К   │ Е Ё │ Н   │ Г Ґ │ Ш   │ Щ   │ З   │ Х   │ Ъ Ї ┃ Enter ┃
603 // ┃ Tab ↹ ┃ й   │ ц   │ у ў │ к ® │ е ё │ н   │ г ґ │ ш   │ щ   │ з   │ х   │ ъ ї ┃   ⏎   ┃
604 // ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓      ┃
605 // ┃ Caps   ┃ Ф   │ Ы І │ В   │ А   │ П   │ Р   │ О   │ Л   │ Д   │ Ж   │ Э Є │ | ¦ ┃      ┃
606 // ┃ Lock ⇬ ┃ ф   │ ы і │ в   │ а   │ п   │ р   │ о   │ л   │ д   │ ж   │ э є │ / \ ┃      ┃
607 // ┣━━━━━━━━┻━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┲━━━┷━━━━━┻━━━━━━┫
608 // ┃          ┃ Я   │ Ч   │ С   │ М   │ И   │ Т   │ Ь   │ Б „ │ Ю “ │ , … ┃                ┃
609 // ┃  Shift ⇧ ┃ я   │ ч   │ с © │ м   │ и   │ т ™ │ ь µ │ б « │ ю » │ . / ┃     Shift ⇧    ┃
610 // ┣━━━━━━━┳━━┻━━━━┳┷━━━━━┷┱────┴─────┴─────┴─────┴─────┴─────┴┲━━━━┷━━┳━━┻━━━━┳━━━━━━━┳━━━┛
611 // ┃       ┃       ┃       ┃                                   ┃       ┃       ┃       ┃
612 // ┃ Ctrl  ┃ Meta  ┃  Alt  ┃                Space              ┃AltGr ⇮┃ Menu  ┃ Ctrl  ┃
613 // ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛
614
615
616
617 partial alphanumeric_keys
618 xkb_symbols "ruu" {
619     include "ru(common)"
620
621     name[Group1]= "Russian (with Ukrainian-Belorussian layout)";
622
623     key <TLDE> {    [   U2019,          apostrophe,     U0301,          asciitilde      ]       };      // Apostrophe and Stress symbol
624     key <AE01> {    [   1,              exclam,         U00F7,          U2248           ]       };      // Division Sign and Almost Equal To
625     key <AE02> {    [   2,              quotedbl,       currency,       infinity        ]       };
626     key <AE03> {    [   3,              numerosign,     U00A7,          U20B4           ]       };      // Paragraph and Hryvnia sign
627     key <AE04> {    [   4,              semicolon,      dollar,         EuroSign        ]       };
628     key <AE05> {    [   5,              percent,        degree,         U2030           ]       };      // Per Mille Sign
629     key <AE06> {    [   6,              colon,          less,           U2264           ]       };      // Less-Than Or Equal To
630     key <AE07> {    [   7,              question,       greater,        U2265           ]       };      // Greater-Than Or Equal To
631     key <AE08> {    [   8,              asterisk,       enfilledcircbullet, U00D7       ]       };      // Multiplication Sign
632     key <AE09> {    [   9,              parenleft,      bracketleft,    braceleft       ]       };
633     key <AE10> {    [   0,              parenright,     bracketright,   braceright      ]       };
634     key <AE11> {    [   minus,          underscore,     emdash,         endash          ]       };
635     key <AE12> {    [   equal,          plus,           notequal,       plusminus       ]       };
636     key <AD03> {    [   Cyrillic_u,     Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ]  };
637     key <AD04> {    [   Cyrillic_ka,    Cyrillic_KA,    registered                      ]       };      // Registered tm
638     key <AD05> {    [   Cyrillic_ie,    Cyrillic_IE,    Cyrillic_io,    Cyrillic_IO     ]       };
639     key <AD07> {    [Cyrillic_ge, Cyrillic_GE, Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
640     key <AD10> {    [   Cyrillic_ze,    Cyrillic_ZE,    U00B6                           ]       };      // Pilcrow Sign
641     key <AD12> {    [Cyrillic_hardsign, Cyrillic_HARDSIGN, Ukrainian_yi, Ukrainian_YI   ]       };
642     key <AC02> {    [   Cyrillic_yeru,  Cyrillic_YERU,  Ukrainian_i,  Ukrainian_I       ]       };
643     key <AC11> {    [   Cyrillic_e,     Cyrillic_E,     Ukrainian_ie,Ukrainian_IE       ]       };
644     key <BKSL> {    [   slash,          bar,            backslash,      U00A6           ]       };      // Broken Bar
645     key <AB03> {    [   Cyrillic_es,    Cyrillic_ES,    copyright                       ]       };
646     key <AB06> {    [   Cyrillic_te,    Cyrillic_TE,    trademark                       ]       };
647     key <AB07> {    [   Cyrillic_softsign, Cyrillic_SOFTSIGN, U00B5                     ]       };      // Micro Sign
648     key <AB08> {    [   Cyrillic_be,    Cyrillic_BE,    guillemotleft,  doublelowquotemark ]    };
649     key <AB09> {    [   Cyrillic_yu,    Cyrillic_YU,    guillemotright, leftdoublequotemark ]   };
650     key <AB10> {    [   period,         comma,          slash,          ellipsis        ]       };
651
652     include "level3(ralt_switch)"
653 };