// Keyboard layouts for the Ukraine. // AEN & Leon Kanter // last changes 2007/10/03 by Andriy Rysin // The legacy WinKeys layout extended on the third and fourth level with // some Unicode symbols (typographic quotes, m-dash, n-dash, ...), some // often-used Cyrillics from other Slavic languages, and some often-used // ASCII symbols (slash, brackets, ...). default partial alphanumeric_keys xkb_symbols "unicode" { include "ua(winkeys)" name[Group1]= "Ukrainian"; key { [ U2019, apostrophe, U0301, asciitilde ] }; // Apostrophe and Stress symbol key { [ 1, exclam, onesuperior ] }; key { [ 2, quotedbl, twosuperior ] }; key { [ 3, numerosign, U00A7, U20B4 ] }; // Paragraph and Hryvnia sign key { [ 4, semicolon, dollar, EuroSign ] }; key { [ 5, percent, degree ] }; key { [ 6, colon, less ] }; key { [ 7, question, greater ] }; key { [ 8, asterisk, enfilledcircbullet ] }; key { [ 9, parenleft, bracketleft, braceleft ] }; key { [ 0, parenright, bracketright, braceright ] }; key { [ minus, underscore, emdash, endash ] }; key { [ equal, plus, notequal, plusminus ] }; key { [ Cyrillic_u, Cyrillic_U, Byelorussian_shortu, Byelorussian_SHORTU ] }; key { [ Cyrillic_ka, Cyrillic_KA, registered ] }; // Registered tm key { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_io, Cyrillic_IO ] }; key { [ Ukrainian_yi, Ukrainian_YI, Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; key { [ Ukrainian_i, Ukrainian_I, Cyrillic_yeru, Cyrillic_YERU ] }; key { [ Ukrainian_ie, Ukrainian_IE, Cyrillic_e, Cyrillic_E ] }; key { [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN, backslash, bar ] }; key { [ Cyrillic_es, Cyrillic_ES, copyright ] }; key { [ Cyrillic_te, Cyrillic_TE, trademark ] }; key { [ Cyrillic_be, Cyrillic_BE, guillemotleft, doublelowquotemark ] }; key { [ Cyrillic_yu, Cyrillic_YU, guillemotright, leftdoublequotemark ] }; key { [ period, comma, slash, ellipsis ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "legacy" { name[Group1]= "Ukrainian (legacy)"; key { [ apostrophe, asciitilde ] }; key { [ 1, exclam ] }; key { [ 2, quotedbl ] }; key { [ 3, numbersign ] }; key { [ 4, asterisk ] }; key { [ 5, colon ] }; key { [ 6, comma ] }; key { [ 7, period ] }; key { [ 8, semicolon ] }; key { [ 9, parenleft ] }; key { [ 0, parenright ] }; key { [ minus, underscore ] }; key { [ equal, plus ] }; key { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; key { [ Cyrillic_tse, Cyrillic_TSE ] }; key { [ Cyrillic_u, Cyrillic_U ] }; key { [ Cyrillic_ka, Cyrillic_KA ] }; key { [ Cyrillic_ie, Cyrillic_IE ] }; key { [ Cyrillic_en, Cyrillic_EN ] }; key { [ Cyrillic_ghe, Cyrillic_GHE ] }; key { [ Cyrillic_sha, Cyrillic_SHA ] }; key { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; key { [ Cyrillic_ze, Cyrillic_ZE ] }; key { [ Cyrillic_ha, Cyrillic_HA ] }; key { [ Ukrainian_yi, Ukrainian_YI ] }; key { [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; key { [ Cyrillic_ef, Cyrillic_EF ] }; key { [ Ukrainian_i, Ukrainian_I ] }; key { [ Cyrillic_ve, Cyrillic_VE ] }; key { [ Cyrillic_a, Cyrillic_A ] }; key { [ Cyrillic_pe, Cyrillic_PE ] }; key { [ Cyrillic_er, Cyrillic_ER ] }; key { [ Cyrillic_o, Cyrillic_O ] }; key { [ Cyrillic_el, Cyrillic_EL ] }; key { [ Cyrillic_de, Cyrillic_DE ] }; key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key { [ Ukrainian_ie, Ukrainian_IE ] }; key { [ Cyrillic_ya, Cyrillic_YA ] }; key { [ Cyrillic_che, Cyrillic_CHE ] }; key { [ Cyrillic_es, Cyrillic_ES ] }; key { [ Cyrillic_em, Cyrillic_EM ] }; key { [ Cyrillic_te, Cyrillic_TE ] }; key { [ Cyrillic_i, Cyrillic_I ] }; key {[Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; key { [ Cyrillic_be, Cyrillic_BE ] }; key { [ Cyrillic_yu, Cyrillic_YU ] }; key { [ slash, question ] }; key { [ slash, bar ] }; }; partial alphanumeric_keys xkb_symbols "winkeys" { include "ua(legacy)" name[Group1]= "Ukrainian (WinKeys)"; key { [ 3, numerosign ] }; key { [ 4, semicolon ] }; key { [ 5, percent ] }; key { [ 6, colon ] }; key { [ 7, question ] }; key { [ 8, asterisk ] }; key { [ period, comma ] }; }; partial alphanumeric_keys xkb_symbols "typewriter" { include "ua(legacy)" name[Group1]= "Ukrainian (typewriter)"; key { [ apostrophe, quotedbl ] }; key { [ exclam, 1 ] }; key { [ numerosign, 2 ] }; key { [ slash, 3 ] }; key { [ semicolon, 4 ] }; key { [ colon, 5 ] }; key { [ comma, 6 ] }; key { [ period, 7 ] }; key { [ underscore, 8 ] }; key { [ question, 9 ] }; key { [ percent, 0 ] }; key { [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; key { [ Cyrillic_i, Cyrillic_I ] }; key { [ Ukrainian_i, Ukrainian_I ] }; key { [ Ukrainian_yi, Ukrainian_YI ] }; key { [ parenleft, parenright ] }; }; partial alphanumeric_keys xkb_symbols "phonetic" { include "ua(legacy)" name[Group1]= "Ukrainian (phonetic)"; key { [ Cyrillic_ya, Cyrillic_YA ] }; key { [ Cyrillic_ve, Cyrillic_VE ] }; key { [ Cyrillic_ie, Cyrillic_IE ] }; key { [ Cyrillic_er, Cyrillic_ER ] }; key { [ Cyrillic_te, Cyrillic_TE ] }; key { [ Cyrillic_i, Cyrillic_I ] }; key { [ Cyrillic_u, Cyrillic_U ] }; key { [ Ukrainian_i, Ukrainian_I ] }; key { [ Cyrillic_o, Cyrillic_O ] }; key { [ Cyrillic_pe, Cyrillic_PE ] }; key { [ Cyrillic_sha, Cyrillic_SHA ] }; key { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; key { [ Cyrillic_a, Cyrillic_A ] }; key { [ Cyrillic_es, Cyrillic_ES ] }; key { [ Cyrillic_de, Cyrillic_DE ] }; key { [ Cyrillic_ef, Cyrillic_EF ] }; key { [ Cyrillic_ghe, Cyrillic_GHE ] }; key { [ Cyrillic_ha, Cyrillic_HA ] }; key { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; key { [ Cyrillic_ka, Cyrillic_KA ] }; key { [ Cyrillic_el, Cyrillic_EL ] }; key { [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; key { [ Cyrillic_che, Cyrillic_CHE ] }; key { [ Cyrillic_yu, Cyrillic_YU ] }; key { [ Cyrillic_ze, Cyrillic_ZE ] }; key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; key { [ Cyrillic_tse, Cyrillic_TSE ] }; key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key { [ Cyrillic_be, Cyrillic_BE ] }; key { [ Cyrillic_en, Cyrillic_EN ] }; key { [ Cyrillic_em, Cyrillic_EM ] }; key { [ Ukrainian_yi, Ukrainian_YI ] }; key { [ Ukrainian_ie, Ukrainian_IE ] }; key { [ slash, question ] }; }; // Ukrainian RSTU 2019-91 keyboard layout (Respublikanskij STandart Ukrajiny). // Andrew Porokhnyak partial alphanumeric_keys xkb_symbols "rstu" { include "ua(legacy)" name[Group1]= "Ukrainian (standard RSTU)"; key { [ apostrophe, question ] }; key { [ exclam, 1 ] }; key { [ quotedbl, 2 ] }; key { [ numbersign, 3 ] }; key { [ semicolon, 4 ] }; key { [ colon, 5 ] }; key { [ comma, 6 ] }; key { [ period, 7 ] }; key { [ asterisk, 8 ] }; key { [ parenleft, 9 ] }; key { [ parenright, 0 ] }; key { [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; key { [ Cyrillic_i, Cyrillic_I ] }; key { [ Ukrainian_i, Ukrainian_I ] }; key { [ Ukrainian_yi, Ukrainian_YI ] }; key { [ slash, percent ] }; }; // Russian RSTU 2019-91 keyboard layout (Respublikanskij STandart Ukrajiny). // Andrew Porokhnyak partial alphanumeric_keys xkb_symbols "rstu_ru" { include "ru(common)" name[Group1]= "Russian (Ukraine, standard RSTU)"; key { [ apostrophe, question ] }; key { [ exclam, 1 ] }; key { [ quotedbl, 2 ] }; key { [ numbersign, 3 ] }; key { [ semicolon, 4 ] }; key { [ colon, 5 ] }; key { [ comma, 6 ] }; key { [ period, 7 ] }; key { [ asterisk, 8 ] }; key { [ parenleft, 9 ] }; key { [ parenright, 0 ] }; key { [ slash, percent ] }; key.type[group1]="ALPHABETIC"; key { [ Cyrillic_io, Cyrillic_IO ] }; }; // Homophonic keyboard layout (by Tomas Marko Miljenović), // based on the Ukrainian National Transliteration, // commonly used phonetic layouts for Mac and Win. partial alphanumeric_keys xkb_symbols "homophonic" { include "ua(legacy)" name[Group1]= "Ukrainian (homophonic)"; key { [ grave, underscore ] }; key { [ 1, exclam ] }; key { [ 2, at ] }; key { [ 3, semicolon ] }; key { [ 4, colon ] }; key { [ 5, percent ] }; key { [ 6, apostrophe ] }; key { [ 7, quotedbl ] }; key { [ 8, asterisk ] }; key { [ 9, parenleft ] }; key { [ 0, parenright ] }; key { [ Ukrainian_ie, Ukrainian_IE ] }; key { [ Ukrainian_yi, Ukrainian_YI ] }; key { [ Cyrillic_ya, Cyrillic_YA ] }; key { [ Cyrillic_sha, Cyrillic_SHA ] }; key { [ Cyrillic_ie, Cyrillic_IE ] }; key { [ Cyrillic_er, Cyrillic_ER ] }; key { [ Cyrillic_te, Cyrillic_TE ] }; key { [ Cyrillic_i, Cyrillic_I ] }; key { [ Cyrillic_u, Cyrillic_U ] }; key { [ Ukrainian_i, Ukrainian_I ] }; key { [ Cyrillic_o, Cyrillic_O ] }; key { [ Cyrillic_pe, Cyrillic_PE ] }; key { [ Cyrillic_yu, Cyrillic_YU ] }; key { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; key { [ Cyrillic_a, Cyrillic_A ] }; key { [ Cyrillic_es, Cyrillic_ES ] }; key { [ Cyrillic_de, Cyrillic_DE ] }; key { [ Cyrillic_ef, Cyrillic_EF ] }; key { [ Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN ] }; key { [ Cyrillic_ghe, Cyrillic_GHE ] }; key { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; key { [ Cyrillic_ka, Cyrillic_KA ] }; key { [ Cyrillic_el, Cyrillic_EL ] }; key { [ Cyrillic_che, Cyrillic_CHE ] }; key { [ Cyrillic_zhe, Cyrillic_ZHE ] }; key { [ Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; key { [ Cyrillic_ze, Cyrillic_ZE ] }; key { [ Cyrillic_ha, Cyrillic_HA ] }; key { [ Cyrillic_tse, Cyrillic_TSE ] }; key { [ Cyrillic_ve, Cyrillic_VE ] }; key { [ Cyrillic_be, Cyrillic_BE ] }; key { [ Cyrillic_en, Cyrillic_EN ] }; key { [ Cyrillic_em, Cyrillic_EM ] }; key { [ comma, less ] }; key { [ period, greater ] }; key { [ slash, question ] }; }; // EXTRAS: partial alphanumeric_keys xkb_symbols "sun_type6" { include "sun_vndr/ua(sun_type6)" };