4 // russian standard keyboard
6 // 2001/12/23 by Leon Kanter <leon@blackcatlinux.com>
7 // 2005/12/09 Valery Inozemtsev <shrek@altlinux.ru>
9 // $XFree86: xc/programs/xkbcomp/symbols/ru,v 1.3 2003/02/15 22:27:05 dawes Exp $
12 partial default alphanumeric_keys
13 xkb_symbols "winkeys" {
16 name[Group1]= "Russia";
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 ] };
25 key <AB10> { [ period, comma ] };
26 key <BKSL> { [ backslash, slash ] };
29 partial hidden alphanumeric_keys
30 xkb_symbols "common" {
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 ] };
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 ] };
82 key.type[group1]="TWO_LEVEL";
87 partial alphanumeric_keys
88 xkb_symbols "legacy" {
91 name[Group1]= "Russia - Legacy";
94 partial alphanumeric_keys
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 ] };
107 include "group(olpc)"
110 partial alphanumeric_keys
111 xkb_symbols "typewriter" {
113 name[Group1]= "Russia - Typewriter";
114 key <TLDE> { [ bar, plus ] };
115 key <AE01> { [ numerosign, 1 ] };
116 key <AE02> { [ minus, 2 ] };
117 key <AE03> { [ slash, 3 ] };
118 key <AE04> { [ quotedbl, 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 <AE11> { [ exclam, equal ] };
126 key <AE12> { [ semicolon, backslash ] };
128 key <BKSL> { [ parenright, parenleft ] };
130 key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] };
131 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] };
134 partial alphanumeric_keys
135 xkb_symbols "typewriter-legacy" {
137 name[Group1]= "Russia - Typewriter, legacy";
138 key <TLDE> { [ apostrophe, quotedbl ] };
139 key <AE01> { [ exclam, 1 ] };
140 key <AE02> { [ numerosign, 2 ] };
141 key <AE03> { [ slash, 3 ] };
142 key <AE04> { [ semicolon, 4 ] };
143 key <AE05> { [ colon, 5 ] };
144 key <AE06> { [ comma, 6 ] };
145 key <AE07> { [ period, 7 ] };
146 key <AE08> { [ underscore, 8 ] };
147 key <AE09> { [ question, 9 ] };
148 key <AE10> { [ percent, 0 ] };
149 key <BKSL> { [ parenleft, parenright ] };
151 key <AD12> { [Cyrillic_hardsign,Cyrillic_HARDSIGN ] };
152 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] };
155 partial alphanumeric_keys
156 xkb_symbols "phonetic" {
158 name[Group1]= "Russia - Phonetic";
160 key <AE01> { [ 1, exclam ] };
161 key <AE02> { [ 2, at ] };
162 key <AE03> { [ 3, Cyrillic_io ] };
163 key <AE04> { [ 4, Cyrillic_IO ] };
164 key <AE05> { [ 5, Cyrillic_hardsign ] };
165 key <AE06> { [ 6, Cyrillic_HARDSIGN ] };
166 key <AE07> { [ 7, ampersand ] };
167 key <AE08> { [ 8, asterisk ] };
168 key <AE09> { [ 9, parenleft ] };
169 key <AE10> { [ 0, parenright ] };
170 key <AE11> { [ minus, underscore ] };
172 key <AB09> { [ period, greater ] };
173 key <AB10> { [ slash, question ] };
174 key <AB08> { [ comma, less ] };
175 key <AC10> { [ semicolon, colon ] };
176 key <AC11> { [ apostrophe, quotedbl ] };
177 key <LSGT> { [ bar, brokenbar ] };
179 key <TLDE> { [ Cyrillic_yu, Cyrillic_YU ] };
180 key <LatQ> { [ Cyrillic_ya, Cyrillic_YA ] };
181 key <LatZ> { [ Cyrillic_ze, Cyrillic_ZE ] };
182 key <LatS> { [ Cyrillic_es, Cyrillic_ES ] };
183 key <LatA> { [ Cyrillic_a, Cyrillic_A ] };
184 key <LatW> { [ Cyrillic_ve, Cyrillic_VE ] };
185 key <LatC> { [ Cyrillic_tse, Cyrillic_TSE ] };
186 key <LatX> { [Cyrillic_softsign,Cyrillic_SOFTSIGN ] };
187 key <LatD> { [ Cyrillic_de, Cyrillic_DE ] };
188 key <LatE> { [ Cyrillic_ie, Cyrillic_IE ] };
189 key <LatV> { [ Cyrillic_zhe, Cyrillic_ZHE ] };
190 key <LatF> { [ Cyrillic_ef, Cyrillic_EF ] };
191 key <LatT> { [ Cyrillic_te, Cyrillic_TE ] };
192 key <LatR> { [ Cyrillic_er, Cyrillic_ER ] };
193 key <LatN> { [ Cyrillic_en, Cyrillic_EN ] };
194 key <LatB> { [ Cyrillic_be, Cyrillic_BE ] };
195 key <LatH> { [ Cyrillic_ha, Cyrillic_HA ] };
196 key <LatG> { [ Cyrillic_ghe, Cyrillic_GHE ] };
197 key <LatY> { [ Cyrillic_yeru, Cyrillic_YERU ] };
198 key <LatM> { [ Cyrillic_em, Cyrillic_EM ] };
199 key <LatJ> { [ Cyrillic_shorti, Cyrillic_SHORTI ] };
200 key <LatU> { [ Cyrillic_u, Cyrillic_U ] };
201 key <LatK> { [ Cyrillic_ka, Cyrillic_KA ] };
202 key <LatI> { [ Cyrillic_i, Cyrillic_I ] };
203 key <LatO> { [ Cyrillic_o, Cyrillic_O ] };
204 key <LatL> { [ Cyrillic_el, Cyrillic_EL ] };
205 key <LatP> { [ Cyrillic_pe, Cyrillic_PE ] };
207 key <AD11> { [ Cyrillic_sha, Cyrillic_SHA ] };
208 key <AE12> { [ Cyrillic_che, Cyrillic_CHE ] };
209 key <AD12> { [ Cyrillic_shcha, Cyrillic_SHCHA ] };
210 key <BKSL> { [ Cyrillic_e, Cyrillic_E ] };
213 partial alphanumeric_keys
214 xkb_symbols "phonetic_winkeys" {
216 include "ru(phonetic)"
217 name[Group1]= "Russia - Phonetic Winkeys";
219 key <LatX> { [ Cyrillic_ha, Cyrillic_HA ] };
220 key <LatH> { [ Cyrillic_che, Cyrillic_CHE ] };
221 key <AE12> { [ Cyrillic_softsign, Cyrillic_softsign ] };
225 partial alphanumeric_keys
227 include "ru(winkeys)"
228 name[Group1]= "Russia - Tatar";
230 key.type[group1]="FOUR_LEVEL";
232 key <TLDE> { [ 0x010004bb, 0x010004ba,
233 Cyrillic_io, Cyrillic_IO ] };
234 key <AD02> { [ 0x010004e9, 0x010004e8,
235 Cyrillic_tse, Cyrillic_TSE ] };
236 key <AD09> { [ 0x010004d9, 0x010004d8,
237 Cyrillic_shcha, Cyrillic_SHCHA ] };
238 key <AD12> { [ 0x010004af, 0x010004ae,
239 Cyrillic_hardsign,Cyrillic_HARDSIGN ] };
240 key <AC10> { [ 0x010004a3, 0x010004a2,
241 Cyrillic_zhe, Cyrillic_ZHE ] };
242 key <AB07> { [ 0x01000497, 0x01000496,
243 Cyrillic_softsign,Cyrillic_SOFTSIGN ] };
245 include "level3(ralt_switch)"
249 partial alphanumeric_keys
250 xkb_symbols "os_legacy" {
253 name[Group1]= "Russia - Ossetian, legacy";
255 key <TLDE> { [ Cyrillic_e, Cyrillic_E ] };
256 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] };
257 key <AC11> { [ 0x010004D5, 0x010004D4 ] };
260 partial alphanumeric_keys
261 xkb_symbols "os_winkeys" {
262 include "ru(winkeys)"
264 name[Group1]= "Russia - Ossetian, Winkeys";
266 key <TLDE> { [ Cyrillic_e, Cyrillic_E ] };
267 key <AC07> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] };
268 key <AC11> { [ 0x010004D5, 0x010004D4 ] };
271 partial alphanumeric_keys
273 include "ru(winkeys)"
275 name[Group1]= "Russia - Chuvash";
277 key.type[group1]="FOUR_LEVEL";
279 key <AD03> { [ Cyrillic_u, Cyrillic_U,
280 0x010004f3, 0x010004f2 ] };
281 key <AD05> { [ Cyrillic_ie, Cyrillic_IE,
282 0x01000115, 0x01000114 ] };
283 key <AC04> { [ Cyrillic_a, Cyrillic_A,
285 key <AB03> { [ Cyrillic_es, Cyrillic_ES,
286 ccedilla, Ccedilla ] };
288 include "level3(ralt_switch)"
291 partial alphanumeric_keys
293 include "ru(winkeys)"
295 name[Group1]= "Russia - Udmurt";
297 key.type[group1]="FOUR_LEVEL";
299 key <AE01> { [ question, exclam, 1, 1 ] };
300 key <AE02> { [ parenleft, quotedbl, 2, 2 ] };
301 key <AE03> { [ parenright, numerosign, 3, 3 ] };
302 key <AE04> { [ colon, semicolon, 4, 4 ] };
303 key <AE05> { [ asterisk, percent, 5, 5 ] };
304 key <AE06> { [ 0x010004dd, 0x010004dc, 6, 6 ] };
305 key <AE07> { [ 0x010004e7, 0x010004e6, 7, 7 ] };
306 key <AE08> { [ 0x010004f5, 0x010004f4, 8, 8 ] };
307 key <AE09> { [ 0x010004e5, 0x010004e4, 9, 9 ] };
308 key <AE10> { [ 0x010004df, 0x010004de, 0, 0 ] };
310 include "level3(ralt_switch)"
313 partial alphanumeric_keys
314 xkb_symbols "cv_latin" {
315 include "us(alt-intl)"
317 name[Group1]= "Russia - Chuvash Latin";
319 key.type[group1]="FOUR_LEVEL";
321 key <AD01> { [ q, Q, 0x01000161, 0x01000160 ] };
322 key <AD02> { [ w, W, udiaeresis, Udiaeresis ] };
323 key <AD03> { [ e, E, 0x01000115, 0x01000114 ] };
324 key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
325 key <AD08> { [ i, I, 0x0100012d, 0x0100012c ] };
326 key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
327 key <AC01> { [ a, A, abreve, Abreve ] };
328 key <AC02> { [ s, S, scedilla, Scedilla ] };
329 key <AC05> { [ g, G, gbreve, Gbreve ] };
330 key <AC07> { [ j, J, 0x01000131, 0x01000130 ] };
331 key <AB03> { [ c, C, ccedilla, Ccedilla ] };
333 include "level3(ralt_switch)"
337 // Komi language layout
339 // russian standard keyboard
340 // Vlad Shakhov <lumpen.intellectual@gmail.com>
341 // Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com>
343 partial alphanumeric_keys
346 include "ru(winkeys)"
348 name[Group1]= "Russia - Komi";
350 key.type[group1]="FOUR_LEVEL_ALPHABETIC";
352 // cyrilllic o with diaeresis
353 key <AC07> { [ Cyrillic_o, Cyrillic_O,
356 // hard I as additional key for soft Cyrillic_I
357 key <AB05> { [ Cyrillic_i, Cyrillic_I,
358 Ukrainian_i, Ukrainian_I ] };
360 include "level3(ralt_switch)"
363 // Yakut language layout
364 // 2008/04/23 Yakov Aleksandrov <bertjickty@yandex.ru>
365 // 2008/04/23 Anatoliy Zhozhikov <jav@sitc.ru>
366 // 2008/04/23 Aleksandr Varlamov
367 partial alphanumeric_keys
370 include "ru(winkeys)"
372 name[Group1]= "Russia - Yakut";
374 key.type[group1]="FOUR_LEVEL_ALPHABETIC";
376 key <TLDE> { [ Cyrillic_io, Cyrillic_IO,
378 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI,
380 key <AD03> { [ Cyrillic_u, Cyrillic_U,
381 Cyrillic_u_straight, Cyrillic_U_straight ] };
382 key <AD04> { [ Cyrillic_ka, Cyrillic_KA,
384 key <AD06> { [ Cyrillic_en, Cyrillic_EN,
386 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE,
388 key <AD10> { [ Cyrillic_ze, Cyrillic_ZE,
390 key <AD11> { [ Cyrillic_ha, Cyrillic_HA,
391 Cyrillic_shha, Cyrillic_SHHA ] };
392 key <AC07> { [ Cyrillic_o, Cyrillic_O,
393 Cyrillic_o_bar, Cyrillic_O_bar ] };
394 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE,
396 key <AB02> { [ Cyrillic_che, Cyrillic_CHE,
397 Cyrillic_u_macron, Cyrillic_U_macron ] };
398 key <AB04> { [ Cyrillic_em, Cyrillic_EM,
400 key <AB05> { [ Cyrillic_i, Cyrillic_I,
401 Cyrillic_i_macron, Cyrillic_I_macron ] };
403 include "level3(ralt_switch)"
407 //Kalmyk language layout
408 //based on the Kalmyk language layout: http://soft.oyrat.org/
409 //Nikolay Korneev <halmg@oyrat.org>
410 //Toli Miron <mirontoli@gmail.com>
412 partial alphanumeric_keys
414 include "ru(winkeys)"
416 name[Group1]= "Russia - Kalmyk";
418 key.type[group1]="FOUR_LEVEL";
420 key <AE01> { [ question, exclam, 1 ] };
421 key <AE02> { [ numerosign, quotedbl, 2 ] };
422 key <AE03> { [ Cyrillic_u_straight, Cyrillic_U_straight, 3 ] };
423 key <AE04> { [ Cyrillic_schwa, Cyrillic_SCHWA, 4 ] };
424 key <AE05> { [ asterisk, percent, 5 ] };
425 key <AE06> { [ Cyrillic_en_descender, Cyrillic_EN_descender, 6 ] };
426 key <AE07> { [ Cyrillic_o_bar, Cyrillic_O_bar, 7 ] };
427 key <AE08> { [ Cyrillic_shha, Cyrillic_SHHA, 8 ] };
428 key <AE09> { [ Cyrillic_zhe_descender, Cyrillic_ZHE_descender, 9 ] };
429 key <AE10> { [ semicolon, colon, 0 ] };
431 key <TLDE> { [ parenleft, parenright, Cyrillic_io, Cyrillic_IO ] };
433 key <AD02> { [ Cyrillic_tse, Cyrillic_TSE, dollar ] };
434 key <AD03> { [ Cyrillic_u, Cyrillic_U, EuroSign ] };
435 key <AD04> { [ Cyrillic_ka, Cyrillic_KA, registered ] };
436 key <AD05> { [ Cyrillic_ie, Cyrillic_IE, trademark ] };
437 key <AD11> { [ Cyrillic_ha, Cyrillic_HA, bracketleft ] };
438 key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, bracketright ] };
439 key <AC11> { [ Cyrillic_e, Cyrillic_E, apostrophe ] };
440 key <AB03> { [ Cyrillic_es, Cyrillic_ES, copyright ] };
441 key <AB08> { [ Cyrillic_be, Cyrillic_BE, less ] };
442 key <AB09> { [ Cyrillic_yu, Cyrillic_YU, greater ] };
444 include "level3(ralt_switch)"
447 partial alphanumeric_keys
452 name[Group1]= "Russia - DOS";
454 key <TLDE> { [ parenright, parenleft ] };
455 key <AE04> { [ 4, currency ] };
456 key <AE09> { [ 9, question ] };
457 key <AE10> { [ 0, percent ] };
459 key <AB10> { [ Cyrillic_io, Cyrillic_IO ] };
462 partial alphanumeric_keys
464 include "ru(winkeys)"
466 name[Group1]= "Russia - Bashkirian";
467 key.type[group1]="FOUR_LEVEL";
469 key <TLDE> { [ 0x010004d9, 0x010004d8, Cyrillic_io, Cyrillic_IO ] };
470 key <AE01> { [ exclam, quotedbl, 1, 1 ] };
471 key <AE02> { [ 0x010004e9, 0x010004e8, 2, 2 ] };
472 key <AE03> { [ 0x010004a1, 0x010004a0, 3, 3 ] };
473 key <AE04> { [ 0x01000493, 0x01000492, 4, 4 ] };
474 key <AE05> { [ 0x010004ab, 0x010004aa, 5, 5 ] };
475 key <AE06> { [ colon, semicolon, 6, 6 ] };
476 key <AE07> { [ 0x01000499, 0x01000498, 7, 7 ] };
477 key <AE08> { [ 0x010004bb, 0x010004ba, 8, 8 ] };
478 key <AE09> { [ question, parenleft, 9, 9 ] };
479 key <AE10> { [ numerosign, parenright, 0, 0 ] };
480 key <AE11> { [ minus, percent, minus, underscore ]};
481 key <AE12> { [ 0x010004af, 0x010004ae, equal, plus ]};
482 key <BKSL> { [ 0x010004a3, 0x010004a2, backslash, slash ]};
484 include "level3(ralt_switch)"
487 // Serbian charecters added as third level symbols to Russian keyboard layout.
489 partial alphanumeric_keys
492 include "level3(ralt_switch)"
494 name[Group1]= "Russia - Serbian";
496 key <AE03> { [ 3, numerosign ] };
497 key <AE04> { [ 4, semicolon ] };
498 key <AE05> { [ 5, percent ] };
499 key <AE06> { [ 6, colon ] };
500 key <AE07> { [ 7, question ] };
501 key <AE08> { [ 8, asterisk ] };
502 key <AB10> { [ period, comma ] };
503 key <BKSL> { [ backslash, slash ] };
504 key <AD01> { [ Cyrillic_shorti, Cyrillic_SHORTI, U458, U408 ] };
505 key <AD06> { [ Cyrillic_en, Cyrillic_EN, U45A, U40A ] };
506 key <AC08> { [ Cyrillic_el, Cyrillic_EL, U459, U409 ] };
507 key <AC09> { [ Cyrillic_de, Cyrillic_DE, U45F, U40F ] };
508 key <AC10> { [ Cyrillic_zhe, Cyrillic_ZHE, U452, U402 ] };
509 key <AB02> { [ Cyrillic_che, Cyrillic_CHE, U45B, U40B ] };