Home | History | Annotate | Line # | Download | only in symbols
ua revision 1.1.1.3
      1 // $XKeyboardConfig$
      2 
      3 // based on
      4 // ukrainian standard keyboard 
      5 // AEN <aen (a] logic.ru> & Leon Kanter <leon (a] geon.donetsk.ua>
      6 // Last Changes 2007/10/03 by Andriy Rysin <arysin (a] yahoo.com>
      7 //
      8 // $XFree86: xc/programs/xkbcomp/symbols/ua,v 1.4 2003/05/15 11:29:47 pascal Exp $
      9 
     10 // Unicode - 3d level added with some Unicode symbols (typographic quotes, m-dash, n-dash etc), 
     11 // some often used cyrillics from other slavic languages and some ASCII symbols used often (slash, brackets...)
     12 partial default alphanumeric_keys
     13 xkb_symbols "unicode" {
     14     include "ua(winkeys)"
     15  
     16     name[Group1]= "Ukraine";
     17 
     18     key <TLDE> {    [           U2019, 	apostrophe,    U0301,   asciitilde     ]       };	// Apostrophe and Stress symbol
     19     key <AE02> {    [               1,      exclam,  onesuperior               ]       };
     20     key <AE02> {    [               2,    quotedbl,  twosuperior               ]       };
     21     key <AE03> {    [               3,  numerosign,	   U00A7,    U20B4     ]       };	// Paragraph and Hryvnia sign
     22     key <AE04> {    [               4,   semicolon,	  dollar,    EuroSign  ]       };
     23     key <AE05> {    [               5,     percent,	  degree               ]       };
     24     key <AE06> {    [               6,       colon,   less                             ]       };
     25     key <AE07> {    [               7,    question,   greater                             ]       };
     26     key <AE08> {    [               8,    asterisk, enfilledcircbullet         ]       };
     27     key	<AE09> {    [		    9,	 parenleft,  bracketleft,    braceleft ]       };
     28     key	<AE10> {    [		    0,	parenright, bracketright,    braceright]       };
     29     key	<AE11> {    [	    	minus,	underscore,       emdash,    endash    ]       };
     30     key	<AE12> {    [	    	equal,	      plus, 	notequal,    plusminus ]       };
     31 
     32     key	<AD03> {    [      Cyrillic_u,	Cyrillic_U,  Byelorussian_shortu,  Byelorussian_SHORTU	]};
     33     key	<AD04> {    [     Cyrillic_ka, Cyrillic_KA,	registered	       ]       };						// Registered tm
     34     key	<AD05> {    [     Cyrillic_ie, Cyrillic_IE,     Cyrillic_io,     Cyrillic_IO	]	};
     35     key	<AD12> {    [    Ukrainian_yi,Ukrainian_YI,	Cyrillic_hardsign,	Cyrillic_HARDSIGN	]	};
     36     key	<AC02> {    [    Ukrainian_i,  Ukrainian_I, Cyrillic_yeru,   Cyrillic_YERU	]	};
     37     key	<AC11> {    [    Ukrainian_ie,Ukrainian_IE,	Cyrillic_e,	Cyrillic_E	]	};
     38 
     39     key	<BKSL> {    [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN, backslash,  bar	]	};
     40 
     41     key	<AB03> {    [     Cyrillic_es,     Cyrillic_ES,	copyright              ]	};
     42     key	<AB06> {    [     Cyrillic_te,     Cyrillic_TE,	trademark              ]	};
     43     key	<AB08> {    [     Cyrillic_be,     Cyrillic_BE,	guillemotleft,	doublelowquotemark 	]	};
     44     key	<AB09> {    [     Cyrillic_yu,     Cyrillic_YU,	guillemotright, leftdoublequotemark ]	};
     45     key <AB10> {    [          period,           comma,	slash,          ellipsis        ]       };
     46 
     47     include "level3(ralt_switch)"
     48 };
     49 
     50 partial alphanumeric_keys 
     51 xkb_symbols "legacy" {
     52 
     53     name[Group1]= "Ukraine - Legacy";
     54 
     55     key	<TLDE> {	[      apostrophe,	asciitilde	]	};
     56     key	<AE01> {	[		1,	    exclam 	]	};
     57     key	<AE02> {	[		2,        quotedbl	]	};
     58     key	<AE03> {	[		3,      numbersign	]	};
     59     key	<AE04> {	[		4,        asterisk	]	};
     60     key	<AE05> {	[		5,	     colon	]	};
     61     key	<AE06> {	[		6,	     comma	]	};
     62     key	<AE07> {	[		7,	    period	]	};
     63     key	<AE08> {	[		8,	 semicolon	]	};
     64     key	<AE09> {	[		9,	 parenleft	]	};
     65     key	<AE10> {	[		0,	parenright	]	};
     66     key	<AE11> {	[	    minus,	underscore	]	};
     67     key	<AE12> {	[	    equal,	      plus	]	};
     68 
     69     key	<AD01> {	[ Cyrillic_shorti, Cyrillic_SHORTI	]	};
     70     key	<AD02> {	[    Cyrillic_tse,    Cyrillic_TSE	]	};
     71     key	<AD03> {	[      Cyrillic_u,	Cyrillic_U	]	};
     72     key	<AD04> {	[     Cyrillic_ka,     Cyrillic_KA	]	};
     73     key	<AD05> {	[     Cyrillic_ie,     Cyrillic_IE	]	};
     74     key	<AD06> {	[     Cyrillic_en,     Cyrillic_EN	]	};
     75     key	<AD07> {	[    Cyrillic_ghe,    Cyrillic_GHE	]	};
     76     key	<AD08> {	[    Cyrillic_sha,    Cyrillic_SHA	]	};
     77     key	<AD09> {	[  Cyrillic_shcha,  Cyrillic_SHCHA	]	};
     78     key	<AD10> {	[     Cyrillic_ze,     Cyrillic_ZE	]	};
     79     key	<AD11> {	[     Cyrillic_ha,     Cyrillic_HA	]	};
     80     key	<AD12> {	[    Ukrainian_yi,    Ukrainian_YI	]	};
     81     key	<BKSL> {	[ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
     82 
     83     key	<AC01> {	[     Cyrillic_ef,     Cyrillic_EF	]	};
     84     key	<AC02> {	[     Ukrainian_i,     Ukrainian_I	]	};
     85     key	<AC03> {	[     Cyrillic_ve,     Cyrillic_VE	]	};
     86     key	<AC04> {	[      Cyrillic_a,	Cyrillic_A	]	};
     87     key	<AC05> {	[     Cyrillic_pe,     Cyrillic_PE	]	};
     88     key	<AC06> {	[     Cyrillic_er,     Cyrillic_ER	]	};
     89     key	<AC07> {	[      Cyrillic_o,	Cyrillic_O	]	};
     90     key	<AC08> {	[     Cyrillic_el,     Cyrillic_EL	]	};
     91     key	<AC09> {	[     Cyrillic_de,     Cyrillic_DE	]	};
     92     key	<AC10> {	[    Cyrillic_zhe,    Cyrillic_ZHE	]	};
     93     key	<AC11> {	[    Ukrainian_ie,    Ukrainian_IE	]	};
     94 
     95     key	<AB01> {	[     Cyrillic_ya,     Cyrillic_YA	]	};
     96     key	<AB02> {	[    Cyrillic_che,    Cyrillic_CHE	]	};
     97     key	<AB03> {	[     Cyrillic_es,     Cyrillic_ES	]	};
     98     key	<AB04> {	[     Cyrillic_em,     Cyrillic_EM	]	};
     99     key	<AB06> {	[     Cyrillic_te,     Cyrillic_TE	]	};
    100     key	<AB05> {	[      Cyrillic_i,	Cyrillic_I	]	};
    101     key	<AB07> {	[Cyrillic_softsign,Cyrillic_SOFTSIGN	]	};
    102     key	<AB08> {	[     Cyrillic_be,     Cyrillic_BE	]	};
    103     key	<AB09> {	[     Cyrillic_yu,     Cyrillic_YU	]	};
    104     key	<AB10> {	[	    slash,	  question	]	};
    105 
    106     key <LSGT> {        [           slash,             bar      ]       };
    107     // End alphanumeric section
    108 };
    109 
    110 partial alphanumeric_keys
    111 xkb_symbols "winkeys" {
    112     include "ua(legacy)"
    113  
    114     name[Group1]= "Ukraine - Winkeys";
    115 
    116     key <AE03> {        [               3,      numerosign      ]       };
    117     key <AE04> {        [               4,       semicolon      ]       };
    118     key <AE05> {        [               5,         percent      ]       };
    119     key <AE06> {        [               6,           colon      ]       };
    120     key <AE07> {        [               7,        question      ]       };
    121     key <AE08> {        [               8,        asterisk      ]       };
    122     key <AB10> {        [          period,           comma      ]       };
    123 };
    124 
    125 partial alphanumeric_keys
    126 xkb_symbols "typewriter" {
    127     include "ua(legacy)"
    128 
    129     name[Group1]= "Ukraine - Typewriter";
    130 
    131     key	<TLDE> {	[      apostrophe,	  quotedbl	] 	};
    132     key	<AE01> {	[	   exclam,		 1 	]	};
    133     key	<AE02> {	[      numerosign,		 2	]	};
    134     key	<AE03> {	[	    slash,		 3	]	};
    135     key	<AE04> {	[	semicolon,		 4	]	};
    136     key	<AE05> {	[	    colon,		 5	]	};
    137     key	<AE06> {	[	    comma,		 6	]	};
    138     key	<AE07> {	[	   period,		 7	]	};
    139     key	<AE08> {	[      underscore,		 8	]	};
    140     key	<AE09> {	[	 question,		 9	]	};
    141     key	<AE10> {	[	  percent,		 0	]	};
    142 
    143     key	<AD12> {	[ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
    144 
    145     key	<AC02> {	[      Cyrillic_i,	Cyrillic_I	]	};
    146 
    147     key	<AB05> {	[     Ukrainian_i,     Ukrainian_I	]	};
    148 
    149     key	<AB10> {	[    Ukrainian_yi,    Ukrainian_YI	]	};
    150 
    151     key	<BKSL> {	[	parenleft,	parenright	]	};
    152 };
    153 
    154 partial alphanumeric_keys
    155 xkb_symbols "phonetic" {
    156   include "ua(legacy)"
    157   
    158   name[Group1]= "Ukraine - Phonetic";
    159 
    160   key <LatQ> {   [ Cyrillic_ya,       Cyrillic_YA         ]    };
    161   key <LatW> {   [ Cyrillic_ve,       Cyrillic_VE         ]    };
    162   key <LatE> {   [ Cyrillic_ie,       Cyrillic_IE         ]    };
    163   key <LatR> {   [ Cyrillic_er,       Cyrillic_ER         ]    };
    164   key <LatT> {   [ Cyrillic_te,       Cyrillic_TE         ]    };
    165   key <LatY> {   [ Cyrillic_i,        Cyrillic_I          ]    };
    166   key <LatU> {   [ Cyrillic_u,        Cyrillic_U          ]    };
    167   key <LatI> {   [ Ukrainian_i,       Ukrainian_I         ]    };
    168   key <LatO> {   [ Cyrillic_o,        Cyrillic_O          ]    };
    169   key <LatP> {   [ Cyrillic_pe,       Cyrillic_PE         ]    };
    170   key <AD11> {   [ Cyrillic_sha,      Cyrillic_SHA        ]    };
    171   key <AD12> {   [ Cyrillic_shcha,    Cyrillic_SHCHA      ]    };
    172 
    173   key <LatA> {   [ Cyrillic_a,        Cyrillic_A          ]    };
    174   key <LatS> {   [ Cyrillic_es,       Cyrillic_ES         ]    };
    175   key <LatD> {   [ Cyrillic_de,       Cyrillic_DE         ]    };
    176   key <LatF> {   [ Cyrillic_ef,       Cyrillic_EF         ]    };
    177   key <LatG> {   [ Cyrillic_ghe,      Cyrillic_GHE        ]    };
    178   key <LatH> {   [ Cyrillic_ha,       Cyrillic_HA         ]    };
    179   key <LatJ> {   [ Cyrillic_shorti,   Cyrillic_SHORTI     ]    };
    180   key <LatK> {   [ Cyrillic_ka,       Cyrillic_KA         ]    };
    181   key <LatL> {   [ Cyrillic_el,       Cyrillic_EL         ]    };
    182   key <AC10> {   [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
    183   key <AC11> {   [ Cyrillic_che,      Cyrillic_CHE        ]    };
    184   key <BKSL> {   [ Cyrillic_yu,       Cyrillic_YU         ]    };
    185 
    186   key <LatZ> {   [ Cyrillic_ze,       Cyrillic_ZE         ]    };
    187   key <LatX> {   [ Cyrillic_softsign, Cyrillic_SOFTSIGN   ]    };
    188   key <LatC> {   [ Cyrillic_tse,      Cyrillic_TSE        ]    };
    189   key <LatV> {   [ Cyrillic_zhe,      Cyrillic_ZHE        ]    };
    190   key <LatB> {   [ Cyrillic_be,       Cyrillic_BE         ]    };
    191   key <LatN> {   [ Cyrillic_en,       Cyrillic_EN         ]    };
    192   key <LatM> {   [ Cyrillic_em,       Cyrillic_EM         ]    };
    193   key <AB08> {   [ Ukrainian_yi,      Ukrainian_YI	  ]    };
    194   key <AB09> {   [ Ukrainian_ie,      Ukrainian_IE	  ]    };
    195   key <AB10> {   [ slash,             question            ]    };
    196 };
    197 
    198 // ukrainian keyboard layout RSTU 2019-91 (Respublikanskij STandart Ukrajiny)
    199 // Andrew Porokhnyak <aop (a] porokhnyak.org>
    200 partial alphanumeric_keys
    201 xkb_symbols "rstu" {
    202     include "ua(legacy)"
    203 
    204     name[Group1]= "Ukraine - Standard RSTU";
    205 
    206     key	<TLDE> {	[      apostrophe,	  question	] 	};
    207     key	<AE01> {	[	   exclam,		 1 	]	};
    208     key	<AE02> {	[        quotedbl,		 2	]	};
    209     key	<AE03> {	[      numbersign,		 3	]	};
    210     key	<AE04> {	[	semicolon,		 4	]	};
    211     key	<AE05> {	[	    colon,		 5	]	};
    212     key	<AE06> {	[	    comma,		 6	]	};
    213     key	<AE07> {	[	   period,		 7	]	};
    214     key	<AE08> {	[        asterisk,		 8	]	};
    215     key	<AE09> {	[	parenleft,		 9	]	};
    216     key	<AE10> {	[      parenright,		 0	]	};
    217 
    218     key	<AD12> {	[ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] };
    219 
    220     key	<AC02> {	[      Cyrillic_i,	Cyrillic_I	]	};
    221 
    222     key	<AB05> {	[     Ukrainian_i,     Ukrainian_I	]	};
    223 
    224     key	<AB10> {	[    Ukrainian_yi,    Ukrainian_YI	]	};
    225 
    226     key	<BKSL> {	[	    slash,	   percent	]	};
    227 };
    228 
    229 // russian keyboard layout RSTU 2019-91 (Respublikanskij STandart Ukrajiny)
    230 // Andrew Porokhnyak <aop (a] porokhnyak.org>
    231 partial alphanumeric_keys
    232 xkb_symbols "rstu_ru" {
    233     include "ru(common)"
    234     name[Group1]= "Ukraine - Standard RSTU on Russian layout";
    235 
    236     key <TLDE> {        [      apostrophe,        question      ]       };
    237     key <AE01> {        [          exclam,               1      ]       };
    238     key <AE02> {        [        quotedbl,               2      ]       };
    239     key <AE03> {        [      numbersign,               3      ]       };
    240     key <AE04> {        [       semicolon,               4      ]       };
    241     key <AE05> {        [           colon,               5      ]       };
    242     key <AE06> {        [           comma,               6      ]       };
    243     key <AE07> {        [          period,               7      ]       };
    244     key <AE08> {        [        asterisk,               8      ]       };
    245     key <AE09> {        [       parenleft,               9      ]       };
    246     key <AE10> {        [      parenright,               0      ]       };
    247     key <BKSL> {        [           slash,         percent      ]       };
    248 
    249 key.type[group1]="ALPHABETIC";
    250 
    251     key <AB10> {        [     Cyrillic_io,     Cyrillic_IO      ]       };
    252 };
    253 
    254 //Homophonic keyboard layout (Tomas Marko Miljenovi)
    255 //Based on Ukrainian National Transliteration, commonly used phonetic layouts for Mac and Win.
    256 //Existing layout "phonetic" used as template.
    257 partial alphanumeric_keys
    258 xkb_symbols "homophonic" {
    259   include "ua(legacy)"
    260   name[Group1]= "Ukraine - Homophonic";
    261 
    262   key <TLDE> {	 [          grave,	underscore	]	};
    263   key <AE01> {	 [		1,	    exclam 	]	};
    264   key <AE02> {	 [		2,              at	]	};
    265   key <AE03> {	 [		3,       semicolon	]	};
    266   key <AE04> {	 [		4,           colon	]	};
    267   key <AE05> {	 [		5,	   percent	]	};
    268   key <AE06> {	 [		6,	apostrophe	]	};
    269   key <AE07> {	 [		7,	  quotedbl	]	};
    270   key <AE08> {	 [		8,	  asterisk	]	};
    271   key <AE09> {	 [		9,	 parenleft	]	};
    272   key <AE10> {	 [		0,	parenright	]	};
    273   key <AE11> {	 [ Ukrainian_ie,      Ukrainian_IE	  ]    };
    274   key <AE12> {	 [ Ukrainian_yi,      Ukrainian_YI        ]    };
    275 
    276   key <LatQ> {   [ Cyrillic_ya,       Cyrillic_YA         ]    };
    277   key <LatW> {   [ Cyrillic_sha,      Cyrillic_SHA        ]    };
    278   key <LatE> {   [ Cyrillic_ie,       Cyrillic_IE         ]    };
    279   key <LatR> {   [ Cyrillic_er,       Cyrillic_ER         ]    };
    280   key <LatT> {   [ Cyrillic_te,       Cyrillic_TE         ]    };
    281   key <LatY> {   [ Cyrillic_i,        Cyrillic_I          ]    };
    282   key <LatU> {   [ Cyrillic_u,        Cyrillic_U          ]    };
    283   key <LatI> {   [ Ukrainian_i,       Ukrainian_I         ]    };
    284   key <LatO> {   [ Cyrillic_o,        Cyrillic_O          ]    };
    285   key <LatP> {   [ Cyrillic_pe,       Cyrillic_PE         ]    };
    286   key <AD11> {   [ Cyrillic_yu,       Cyrillic_YU        ]    };
    287   key <AD12> {   [ Cyrillic_shcha,    Cyrillic_SHCHA      ]    };
    288 
    289   key <LatA> {   [ Cyrillic_a,        Cyrillic_A          ]    };
    290   key <LatS> {   [ Cyrillic_es,       Cyrillic_ES         ]    };
    291   key <LatD> {   [ Cyrillic_de,       Cyrillic_DE         ]    };
    292   key <LatF> {   [ Cyrillic_ef,       Cyrillic_EF         ]    };
    293   key <LatG> {   [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ]    };
    294   key <LatH> {   [ Cyrillic_ghe,      Cyrillic_GHE        ]    };
    295   key <LatJ> {   [ Cyrillic_shorti,   Cyrillic_SHORTI     ]    };
    296   key <LatK> {   [ Cyrillic_ka,       Cyrillic_KA         ]    };
    297   key <LatL> {   [ Cyrillic_el,       Cyrillic_EL         ]    };
    298   key <AC10> {   [ Cyrillic_che,      Cyrillic_CHE        ]    };
    299   key <AC11> {   [ Cyrillic_zhe,      Cyrillic_ZHE        ]    };
    300   key <BKSL> {   [ Cyrillic_softsign, Cyrillic_SOFTSIGN   ]    };
    301 
    302   key <LatZ> {   [ Cyrillic_ze,       Cyrillic_ZE         ]    };
    303   key <LatX> {   [ Cyrillic_ha,       Cyrillic_HA         ]    };
    304   key <LatC> {   [ Cyrillic_tse,      Cyrillic_TSE        ]    };
    305   key <LatV> {   [ Cyrillic_ve,       Cyrillic_VE         ]    };
    306   key <LatB> {   [ Cyrillic_be,       Cyrillic_BE         ]    };
    307   key <LatN> {   [ Cyrillic_en,       Cyrillic_EN         ]    };
    308   key <LatM> {   [ Cyrillic_em,       Cyrillic_EM         ]    };
    309   key <AB08> {   [ comma,             less	          ]    };
    310   key <AB09> {   [ period,            greater	          ]    };
    311   key <AB10> {   [ slash,             question            ]    };
    312 };
    313 
    314 // Crimean Tatar (Crimean Turkish) layouts.
    315 partial
    316 xkb_symbols "crh" {
    317     include "tr(crh)"
    318 
    319     name[Group1]="Ukraine - Crimean Tatar (Turkish Q)";
    320 };
    321 
    322 partial
    323 xkb_symbols "crh_f" {
    324     include "tr(crh_f)"
    325 
    326     name[Group1]="Ukraine - Crimean Tatar (Turkish F)";
    327 };
    328 
    329 partial
    330 xkb_symbols "crh_alt" {
    331     include "tr(crh_alt)"
    332 
    333     name[Group1]="Ukraine - Crimean Tatar (Turkish Alt-Q)";
    334 };
    335