Home | History | Annotate | Line # | Download | only in symbols
ru revision 1.1.1.10
      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 default  partial 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_ha,     Cyrillic_HA	]	};
    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_che,     Cyrillic_CHE	]	};
    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_softsign, Cyrillic_softsign  ]	};
    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