ru revision 1.1.1.9 1 // based on
2 // russian standard keyboard
3 // AEN <aen (a] logic.ru>
4 // 2001/12/23 by Leon Kanter <leon (a] blackcatlinux.com>
5 // 2005/12/09 Valery Inozemtsev <shrek (a] 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 U04F3, U04F2 ] };
277 key <AD05> { [ Cyrillic_ie, Cyrillic_IE,
278 U04D7, U04D6 ] };
279 key <AC04> { [ Cyrillic_a, Cyrillic_A,
280 U04D1, U04D0 ] };
281 key <AB03> { [ Cyrillic_es, Cyrillic_ES,
282 U04AB, U04AA ] };
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 (a] gmail.com>
337 // Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual (a] 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 (a] yandex.ru>
361 // 2008/04/23 Anatoliy Zhozhikov <jav (a] 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 (a] oyrat.org>
406 //Toli Miron <mirontoli (a] 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 (a] 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 // Vasyl V. Vercynskyj <fuckel (a] 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_ghe, Cyrillic_GHE, 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 };
654
655 partial alphanumeric_keys
656 xkb_symbols "sun_type6" {
657 include "sun_vndr/ru(sun_type6)"
658 };
659
660 // Apple layout
661 partial alphanumeric_keys
662 xkb_symbols "mac" {
663 include "ru(common)"
664
665 name[Group1]= "Russian (Macintosh)";
666
667 key <LSGT> { [ less, greater ] };
668 key <AE02> { [ 2, quotedbl ] };
669 key <AE03> { [ 3, numerosign ] };
670 key <AE04> { [ 4, percent ] };
671 key <AE05> { [ 5, colon ] };
672 key <AE06> { [ 6, comma ] };
673 key <AE07> { [ 7, period ] };
674 key <AE08> { [ 8, semicolon ] };
675 key <TLDE> { [ bracketright, bracketleft ] };
676 key <BKSL> { [ Cyrillic_io, Cyrillic_IO ] };
677 };
678