adding ru(sah), b.fd.o#15872
[xorg/xkeyboard-config] / symbols / ru
1 // $XKeyboardConfig$
2
3 // based on
4 // russian standard keyboard
5 // AEN <aen@logic.ru>
6 // 2001/12/23 by Leon Kanter <leon@blackcatlinux.com>
7 // 2005/12/09 Valery Inozemtsev <shrek@altlinux.ru>
8 //
9 // $XFree86: xc/programs/xkbcomp/symbols/ru,v 1.3 2003/02/15 22:27:05 dawes Exp $
10
11 // Windows layout
12 partial default alphanumeric_keys
13 xkb_symbols "winkeys" {
14     include "ru(common)"
15
16     name[Group1]= "Russia";
17
18     key <AE03> {        [               3,      numerosign      ]       };
19     key <AE04> {        [               4,       semicolon      ]       };
20     key <AE05> {        [               5,         percent      ]       };
21     key <AE06> {        [               6,           colon      ]       };
22     key <AE07> {        [               7,        question      ]       };
23     key <AE08> {        [               8,        asterisk      ]       };
24
25     key <AB10> {        [          period,           comma      ]       };
26     key <BKSL> {        [       backslash,           slash      ]       };
27 };
28
29 partial hidden alphanumeric_keys 
30 xkb_symbols "common" {
31
32     key <AE01> {        [               1,          exclam      ]       };
33     key <AE02> {        [               2,        quotedbl      ]       };
34     key <AE03> {        [               3,      numbersign      ]       };
35     key <AE04> {        [               4,        asterisk      ]       };
36     key <AE05> {        [               5,           colon      ]       };
37     key <AE06> {        [               6,           comma      ]       };
38     key <AE07> {        [               7,          period      ]       };
39     key <AE08> {        [               8,       semicolon      ]       };
40     key <AE09> {        [               9,       parenleft      ]       };
41     key <AE10> {        [               0,      parenright      ]       };
42     key <AE11> {        [           minus,      underscore      ]       };
43     key <AE12> {        [           equal,            plus      ]       };
44     key <BKSL> {        [       backslash,             bar      ]       };
45     key <AB10> {        [           slash,        question      ]       };
46     key <LSGT> {        [           slash,             bar      ]       };
47
48     key <TLDE> {        [     Cyrillic_io,     Cyrillic_IO      ]       };
49     key <AD01> {        [ Cyrillic_shorti, Cyrillic_SHORTI      ]       };
50     key <AD02> {        [    Cyrillic_tse,    Cyrillic_TSE      ]       };
51     key <AD03> {        [      Cyrillic_u,      Cyrillic_U      ]       };
52     key <AD04> {        [     Cyrillic_ka,     Cyrillic_KA      ]       };
53     key <AD05> {        [     Cyrillic_ie,     Cyrillic_IE      ]       };
54     key <AD06> {        [     Cyrillic_en,     Cyrillic_EN      ]       };
55     key <AD07> {        [    Cyrillic_ghe,    Cyrillic_GHE      ]       };
56     key <AD08> {        [    Cyrillic_sha,    Cyrillic_SHA      ]       };
57     key <AD09> {        [  Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
58     key <AD10> {        [     Cyrillic_ze,     Cyrillic_ZE      ]       };
59     key <AD11> {        [     Cyrillic_ha,     Cyrillic_HA      ]       };
60     key <AD12> {        [Cyrillic_hardsign,Cyrillic_HARDSIGN    ]       };
61     key <AC01> {        [     Cyrillic_ef,     Cyrillic_EF      ]       };
62     key <AC02> {        [   Cyrillic_yeru,   Cyrillic_YERU      ]       };
63     key <AC03> {        [     Cyrillic_ve,     Cyrillic_VE      ]       };
64     key <AC04> {        [      Cyrillic_a,      Cyrillic_A      ]       };
65     key <AC05> {        [     Cyrillic_pe,     Cyrillic_PE      ]       };
66     key <AC06> {        [     Cyrillic_er,     Cyrillic_ER      ]       };
67     key <AC07> {        [      Cyrillic_o,      Cyrillic_O      ]       };
68     key <AC08> {        [     Cyrillic_el,     Cyrillic_EL      ]       };
69     key <AC09> {        [     Cyrillic_de,     Cyrillic_DE      ]       };
70     key <AC10> {        [    Cyrillic_zhe,    Cyrillic_ZHE      ]       };
71     key <AC11> {        [      Cyrillic_e,      Cyrillic_E      ]       };
72     key <AB01> {        [     Cyrillic_ya,     Cyrillic_YA      ]       };
73     key <AB02> {        [    Cyrillic_che,    Cyrillic_CHE      ]       };
74     key <AB03> {        [     Cyrillic_es,     Cyrillic_ES      ]       };
75     key <AB04> {        [     Cyrillic_em,     Cyrillic_EM      ]       };
76     key <AB05> {        [      Cyrillic_i,      Cyrillic_I      ]       };
77     key <AB06> {        [     Cyrillic_te,     Cyrillic_TE      ]       };
78     key <AB07> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
79     key <AB08> {        [     Cyrillic_be,     Cyrillic_BE      ]       };
80     key <AB09> {        [     Cyrillic_yu,     Cyrillic_YU      ]       };
81
82     key.type[group1]="TWO_LEVEL";
83
84     include "kpdl(comma)"
85 };
86
87 partial alphanumeric_keys
88 xkb_symbols "legacy" {
89     include "ru(common)"
90
91     name[Group1]= "Russia - Legacy";
92 };
93
94 partial alphanumeric_keys
95 xkb_symbols "olpc" {
96
97     include "ru(common)"
98
99     key        <TLDE> {        [          0x01000451,          0x01000401, grave       ]       }; // Ñ‘, Ð
100     key <AE03> {        [               3,      numbersign, 0x01002116      ]       }; // â„–
101     key <AE04> {        [               4,          dollar, semicolon   ]       };
102     key <AE06> {        [               6,      asciicircum, colon      ]       };
103     key <AE07> {        [               7,          ampersand           ]       };
104     key <AE09> {        [               9,          parenleft, acute    ]       };
105     key <AC12> {        [       backslash,          bar, slash          ]       };
106
107     include "group(olpc)"
108 };
109
110 partial alphanumeric_keys
111 xkb_symbols "typewriter" {
112     include "ru(common)"
113     name[Group1]= "Russia - Typewriter";
114     key <TLDE> {        [      apostrophe,        quotedbl      ]       };
115     key <AE01> {        [          exclam,               1      ]       };
116     key <AE02> {        [      numerosign,               2      ]       };
117     key <AE03> {        [           slash,               3      ]       };
118     key <AE04> {        [       semicolon,               4      ]       };
119     key <AE05> {        [           colon,               5      ]       };
120     key <AE06> {        [           comma,               6      ]       };
121     key <AE07> {        [          period,               7      ]       };
122     key <AE08> {        [      underscore,               8      ]       };
123     key <AE09> {        [        question,               9      ]       };
124     key <AE10> {        [         percent,               0      ]       };
125     key <BKSL> {        [       parenleft,      parenright      ]       };
126
127     key <AD12> {        [Cyrillic_hardsign,Cyrillic_HARDSIGN    ]       };
128     key <AB10> {        [     Cyrillic_io,     Cyrillic_IO      ]       };
129 };
130
131 partial alphanumeric_keys
132 xkb_symbols "phonetic" {
133
134     name[Group1]= "Russia - Phonetic";
135
136     key <AE01> {        [               1,          exclam      ]       };
137     key <AE02> {        [               2,              at      ]       };
138     key <AE03> {        [               3,     Cyrillic_io      ]       };
139     key <AE04> {        [               4,     Cyrillic_IO      ]       };
140     key <AE05> {        [               5, Cyrillic_hardsign    ]       };
141     key <AE06> {        [               6, Cyrillic_HARDSIGN    ]       };
142     key <AE07> {        [               7,       ampersand      ]       };
143     key <AE08> {        [               8,        asterisk      ]       };
144     key <AE09> {        [               9,       parenleft      ]       };
145     key <AE10> {        [               0,      parenright      ]       };
146
147     key <AB09> {        [          period,         greater      ]       };
148     key <AB10> {        [           slash,        question      ]       };
149     key <AB08> {        [           comma,            less      ]       };
150     key <AC10> {        [       semicolon,           colon      ]       };
151     key <AC11> {        [      apostrophe,        quotedbl      ]       };
152     key <LSGT> {        [             bar,       brokenbar      ]       };
153
154     key <TLDE> {        [     Cyrillic_yu,     Cyrillic_YU      ]       };
155     key <LatQ> {        [     Cyrillic_ya,     Cyrillic_YA      ]       };
156     key <LatZ> {        [     Cyrillic_ze,     Cyrillic_ZE      ]       };
157     key <LatS> {        [     Cyrillic_es,     Cyrillic_ES      ]       };
158     key <LatA> {        [      Cyrillic_a,      Cyrillic_A      ]       };
159     key <LatW> {        [     Cyrillic_ve,     Cyrillic_VE      ]       };
160     key <LatC> {        [    Cyrillic_tse,    Cyrillic_TSE      ]       };
161     key <LatX> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
162     key <LatD> {        [     Cyrillic_de,     Cyrillic_DE      ]       };
163     key <LatE> {        [     Cyrillic_ie,     Cyrillic_IE      ]       };
164     key <LatV> {        [    Cyrillic_zhe,    Cyrillic_ZHE      ]       };
165     key <LatF> {        [     Cyrillic_ef,     Cyrillic_EF      ]       };
166     key <LatT> {        [     Cyrillic_te,     Cyrillic_TE      ]       };
167     key <LatR> {        [     Cyrillic_er,     Cyrillic_ER      ]       };
168     key <LatN> {        [     Cyrillic_en,     Cyrillic_EN      ]       };
169     key <LatB> {        [     Cyrillic_be,     Cyrillic_BE      ]       };
170     key <LatH> {        [     Cyrillic_ha,     Cyrillic_HA      ]       };
171     key <LatG> {        [    Cyrillic_ghe,    Cyrillic_GHE      ]       };
172     key <LatY> {        [   Cyrillic_yeru,   Cyrillic_YERU      ]       };
173     key <LatM> {        [     Cyrillic_em,     Cyrillic_EM      ]       };
174     key <LatJ> {        [ Cyrillic_shorti, Cyrillic_SHORTI      ]       };
175     key <LatU> {        [      Cyrillic_u,      Cyrillic_U      ]       };
176     key <LatK> {        [     Cyrillic_ka,     Cyrillic_KA      ]       };
177     key <LatI> {        [      Cyrillic_i,      Cyrillic_I      ]       };
178     key <LatO> {        [      Cyrillic_o,      Cyrillic_O      ]       };
179     key <LatL> {        [     Cyrillic_el,     Cyrillic_EL      ]       };
180     key <LatP> {        [     Cyrillic_pe,     Cyrillic_PE      ]       };
181
182     key <AD11> {        [    Cyrillic_sha,    Cyrillic_SHA      ]       };
183     key <AE12> {        [    Cyrillic_che,    Cyrillic_CHE      ]       };
184     key <AD12> {        [  Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
185     key <BKSL> {        [      Cyrillic_e,      Cyrillic_E      ]       };
186 };
187
188 partial alphanumeric_keys
189 xkb_symbols "tt" {
190     include "ru(winkeys)"
191     name[Group1]= "Russia - Tatar";
192
193     key.type[group1]="FOUR_LEVEL";
194
195     key <TLDE> {       [      0x010004bb,      0x010004ba,
196                              Cyrillic_io,     Cyrillic_IO      ]       };
197     key        <AD02> {        [      0x010004e9,      0x010004e8,
198                             Cyrillic_tse,    Cyrillic_TSE      ]       };
199     key        <AD09> {        [      0x010004d9,      0x010004d8,
200                           Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
201     key        <AD12> {        [      0x010004af,      0x010004ae,
202                        Cyrillic_hardsign,Cyrillic_HARDSIGN     ]       };
203     key        <AC10> {        [      0x010004a3,      0x010004a2,
204                             Cyrillic_zhe,    Cyrillic_ZHE      ]       };
205     key        <AB07> {        [      0x01000497,      0x01000496,
206                        Cyrillic_softsign,Cyrillic_SOFTSIGN     ]       };
207
208     include "level3(ralt_switch)"
209
210 };
211
212 partial alphanumeric_keys 
213 xkb_symbols "os_legacy" {
214     include "ru(common)"
215
216     name[Group1]= "Russia - Ossetian, legacy";
217
218     key <TLDE> {        [      Cyrillic_e,      Cyrillic_E      ]       };
219     key <AC07> {        [      Cyrillic_o,      Cyrillic_O, Cyrillic_io, Cyrillic_IO    ]       };
220     key <AC11> {        [      0x010004D5,      0x010004D4      ]       };
221 };
222
223 partial alphanumeric_keys 
224 xkb_symbols "os_winkeys" {
225     include "ru(winkeys)"
226
227     name[Group1]= "Russia - Ossetian, Winkeys";
228
229     key <TLDE> {        [      Cyrillic_e,      Cyrillic_E      ]       };
230     key <AC07> {        [      Cyrillic_o,      Cyrillic_O, Cyrillic_io, Cyrillic_IO    ]       };
231     key <AC11> {        [      0x010004D5,      0x010004D4      ]       };
232 };
233
234 partial alphanumeric_keys
235 xkb_symbols "cv" {
236     include "ru(winkeys)"
237
238     name[Group1]= "Russia - Chuvash";
239
240     key.type[group1]="FOUR_LEVEL";
241
242     key        <AD03> {        [      Cyrillic_u,       Cyrillic_U,
243                             0x010004f3,    0x010004f2      ]       };
244     key        <AD05> {        [      Cyrillic_ie,     Cyrillic_IE,
245                        0x01000115,      0x01000114     ]       };
246     key        <AC04> {        [      Cyrillic_a,       Cyrillic_A,
247                           abreve,  Abreve      ]       };
248     key        <AB03> {        [      Cyrillic_es,     Cyrillic_ES,
249                             ccedilla,    Ccedilla      ]       };
250
251     include "level3(ralt_switch)"
252 };
253
254 partial alphanumeric_keys
255 xkb_symbols "udm" {
256     include "ru(winkeys)"
257
258     name[Group1]= "Russia - Udmurt";
259
260     key.type[group1]="FOUR_LEVEL";
261
262     key <AE01> {        [        question,          exclam,    1,       1       ]       };
263     key <AE02> {        [       parenleft,        quotedbl,    2,       2       ]       };
264     key <AE03> {        [      parenright,      numbersign,    3,       3       ]       };
265     key <AE04> {        [           colon,       semicolon,    4,       4       ]       };
266     key <AE05> {        [        asterisk,         percent,    5,       5       ]       };
267     key <AE06> {        [      0x010004dd,      0x010004dc,    6,       6       ]       };
268     key <AE07> {        [      0x010004e7,      0x010004e6,    7,       7       ]       };
269     key <AE08> {        [      0x010004f5,      0x010004f4,    8,       8       ]       };
270     key <AE09> {        [      0x010004e5,      0x010004e4,    9,       9       ]       };
271     key <AE10> {        [      0x010004df,      0x010004de,    0,       0       ]       };
272
273     include "level3(ralt_switch)"
274 };
275
276 partial alphanumeric_keys
277 xkb_symbols "cv_latin" {
278     include "us(alt-intl)"
279
280     name[Group1]= "Russia - Chuvash Latin";
281
282     key.type[group1]="FOUR_LEVEL";
283
284     key        <AD01> { [         q,    Q,    0x01000161,       0x01000160 ] };
285     key        <AD02> { [         w,    W,    udiaeresis,       Udiaeresis ] };
286     key        <AD03> { [         e,    E,    0x01000115,       0x01000114 ] };
287     key        <AD07> { [         u,    U,    udiaeresis,       Udiaeresis ] };
288     key        <AD08> { [         i,    I,    0x0100012d,       0x0100012c ] };
289     key        <AD09> { [         o,    O,    odiaeresis,       Odiaeresis ] };
290     key        <AC01> { [         a,    A,        abreve,           Abreve ] };
291     key        <AC02> { [         s,    S,      scedilla,         Scedilla ] };
292     key        <AC05> { [         g,    G,        gbreve,           Gbreve ] };
293     key        <AC07> { [         j,    J,    0x01000131,       0x01000130 ] };
294     key        <AB03> { [         c,    C,      ccedilla,         Ccedilla ] };
295
296     include "level3(ralt_switch)"
297
298 };
299
300 // Komi language layout
301 // based on
302 // russian standard keyboard
303 // Vlad Shakhov <lumpen.intellectual@gmail.com>
304 // Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com>
305
306 partial alphanumeric_keys 
307 xkb_symbols "kom" {
308
309     include "ru(winkeys)"
310
311     name[Group1]= "Russia - Komi";
312
313     key.type[group1]="FOUR_LEVEL_ALPHABETIC";
314
315 // cyrilllic o with diaeresis 
316     key <AC07> { [      Cyrillic_o,             Cyrillic_O,             
317                         U04E7,                  U04E6           ] };
318     
319 // hard I as additional key for soft Cyrillic_I 
320     key <AB05> { [      Cyrillic_i,             Cyrillic_I,
321                         Ukrainian_i,            Ukrainian_I     ] };
322
323     include "level3(ralt_switch)"
324 };
325
326 // Yakut language layout
327 // 2008/04/23 Yakov Aleksandrov <bertjickty@yandex.ru>
328 // 2008/04/23 Anatoliy Zhozhikov <jav@sitc.ru>
329 // 2008/04/23 Aleksandr Varlamov
330 partial alphanumeric_keys
331 xkb_symbols "sah" {
332
333     include "ru(winkeys)"
334
335     name[Group1]= "Russia - Yakut";
336
337     key.type[group1]="FOUR_LEVEL_ALPHABETIC";
338
339     key <TLDE> { [      Cyrillic_io,            Cyrillic_IO,
340                         U04EB,                  U04EA                   ] };
341     key <AD01> { [      Cyrillic_shorti,        Cyrillic_SHORTI,
342                         U048B,                  U048A                   ] };
343     key <AD03> { [      Cyrillic_u,             Cyrillic_U,
344                         Cyrillic_u_straight,    Cyrillic_U_straight     ] };
345     key <AD04> { [      Cyrillic_ka,            Cyrillic_KA,
346                         U04C4,                  U04C3                   ] };
347     key <AD06> { [      Cyrillic_en,            Cyrillic_EN,
348                         U04A5,                  U04A4                   ] };
349     key <AD07> { [      Cyrillic_ghe,           Cyrillic_GHE,
350                         U0495,                  U0494                   ] };
351     key <AD10> { [      Cyrillic_ze,            Cyrillic_ZE,
352                         U04E1,                  U04E0                   ] };
353     key <AD11> { [      Cyrillic_ha,            Cyrillic_HA,
354                         Cyrillic_shha,          Cyrillic_SHHA           ] };
355     key <AC07> { [      Cyrillic_o,             Cyrillic_O,
356                         Cyrillic_o_bar,         Cyrillic_O_bar          ] };
357     key <AC10> { [      Cyrillic_zhe,           Cyrillic_ZHE,
358                         U0461,                  U0460                   ] };
359     key <AB02> { [      Cyrillic_che,           Cyrillic_CHE,
360                         Cyrillic_u_macron,      Cyrillic_U_macron       ] };
361     key <AB04> { [      Cyrillic_em,            Cyrillic_EM,
362                         U04C8,                  U04C7                   ] };
363     key <AB05> { [      Cyrillic_i,             Cyrillic_I,
364                         Cyrillic_i_macron,      Cyrillic_I_macron       ] };
365
366     include "level3(ralt_switch)"
367 };