// // Russian standard keyboard // // Aleksey Novodvorsky // Eugene Ossintsev // partial default alphanumeric_keys xkb_symbols "basic" { // Describes the differences between a very simple en_US // keyboard and a very simple Russian keyboard name[Group1]= "US/ASCII"; name[Group2]= "Russian"; key { [ less, greater ], [ bar, brokenbar ] }; key { [ grave, asciitilde ], [ Cyrillic_io, Cyrillic_IO ] }; key { [ 1, exclam ], [ 1, exclam ] }; key { [ 2, at ], [ 2, quotedbl ] }; key { [ 3, numbersign ], [ 3, numbersign ] }; key { [ 4, dollar ], [ 4, semicolon ] }; key { [ 5, percent ], [ 5, colon ] }; key { [ 6, asciicircum ], [ 6, comma ] }; key { [ 7, ampersand ], [ 7, period ] }; key { [ 8, asterisk ], [ 8, percent ] }; key { [ 9, parenleft ], [ 9, parenleft ] }; key { [ 0, parenright ], [ 0, parenright ] }; key { [ minus, underscore ], [ minus, underscore ] }; key { [ equal, plus ], [ equal, plus ] }; key { [ backslash, bar ], [ backslash, bar ] }; key { [ q, Q ], [ Cyrillic_shorti, Cyrillic_SHORTI ] }; key { [ w, W ], [ Cyrillic_tse, Cyrillic_TSE ] }; key { [ e, E ], [ Cyrillic_u, Cyrillic_U ] }; key { [ r, R ], [ Cyrillic_ka, Cyrillic_KA ] }; key { [ t, T ], [ Cyrillic_ie, Cyrillic_IE ] }; key { [ y, Y ], [ Cyrillic_en, Cyrillic_EN ] }; key { [ u, U ], [ Cyrillic_ghe, Cyrillic_GHE ] }; key { [ i, I ], [ Cyrillic_sha, Cyrillic_SHA ] }; key { [ o, O ], [ Cyrillic_shcha, Cyrillic_SHCHA ] }; key { [ p, P ], [ Cyrillic_ze, Cyrillic_ZE ] }; key { [ bracketleft, braceleft ], [ Cyrillic_ha, Cyrillic_HA ] }; key { [ bracketright, braceright ], [Cyrillic_hardsign,Cyrillic_HARDSIGN ] }; key { [ a, A ], [ Cyrillic_ef, Cyrillic_EF ] }; key { [ s, S ], [ Cyrillic_yeru, Cyrillic_YERU ] }; key { [ d, D ], [ Cyrillic_ve, Cyrillic_VE ] }; key { [ f, F ], [ Cyrillic_a, Cyrillic_A ] }; key { [ g, G ], [ Cyrillic_pe, Cyrillic_PE ] }; key { [ h, H ], [ Cyrillic_er, Cyrillic_ER ] }; key { [ j, J ], [ Cyrillic_o, Cyrillic_O ] }; key { [ k, K ], [ Cyrillic_el, Cyrillic_EL ] }; key { [ l, L ], [ Cyrillic_de, Cyrillic_DE ] }; key { [ semicolon, colon ], [ Cyrillic_zhe, Cyrillic_ZHE ] }; key { [ apostrophe, quotedbl ], [ Cyrillic_e, Cyrillic_E ] }; key { [ z, Z ], [ Cyrillic_ya, Cyrillic_YA ] }; key { [ x, X ], [ Cyrillic_che, Cyrillic_CHE ] }; key { [ c, C ], [ Cyrillic_es, Cyrillic_ES ] }; key { [ v, V ], [ Cyrillic_em, Cyrillic_EM ] }; key { [ b, B ], [ Cyrillic_i, Cyrillic_I ] }; key { [ n, N ], [ Cyrillic_te, Cyrillic_TE ] }; key { [ m, M ], [Cyrillic_softsign,Cyrillic_SOFTSIGN ] }; key { [ comma, less ], [ Cyrillic_be, Cyrillic_BE ] }; key { [ period, greater ], [ Cyrillic_yu, Cyrillic_YU ] }; key { [ slash, question ], [ slash, question ] }; // End alphanumeric section // Begin modifier mappings modifier_map Shift { Shift_L }; modifier_map Lock { Caps_Lock, ISO_Lock }; modifier_map Control{ Control_L }; modifier_map Mod3 { Mode_switch }; }; partial alphanumeric_keys xkb_symbols "doskeys" { include "ru(basic)" key { [ grave, asciitilde ], [ parenright, parenleft ] }; key { [ 3, numbersign ], [ 3, slash ] }; key { [ 4, dollar ], [ 4, asterisk ] }; key { [ 8, asterisk ], [ 8, semicolon ] }; key { [ 9, parenleft ], [ 9, question ] }; key { [ 0, parenright ], [ 0, percent ] }; key { [ slash, question ], [ Cyrillic_io, Cyrillic_IO ] }; }; partial alphanumeric_keys xkb_symbols "winkeys" { include "ru(basic)" key { [ 5, percent ], [ 5, percent ] }; key { [ 6, asciicircum ], [ 6, colon ] }; key { [ 7, ampersand ], [ 7, question ] }; key { [ 8, asterisk ], [ 8, asterisk ] }; key { [ backslash, bar ], [ backslash, slash ] }; key { [ slash, question ], [ period, comma ] }; }; partial alphanumeric_keys xkb_symbols "typewriter" { include "ru(basic)" key { [ grave, asciitilde ], [ bar, plus ] }; key { [ 1, exclam ], [ numbersign, 1 ] }; key { [ 2, at ], [ minus, 2 ] }; key { [ 3, numbersign ], [ slash, 3 ] }; key { [ 4, dollar ], [ quotedbl, 4 ] }; key { [ 5, percent ], [ colon, 5 ] }; key { [ 6, asciicircum ], [ comma, 6 ] }; key { [ 7, ampersand ], [ period, 7 ] }; key { [ 8, asterisk ], [ underscore, 8 ] }; key { [ 9, parenleft ], [ question, 9 ] }; key { [ 0, parenright ], [ percent, 0 ] }; key { [ minus, underscore ], [ exclam, equal ] }; key { [ equal, plus ], [ semicolon, backslash ] }; key { [ backslash, bar ], [ parenright, parenleft ] }; key { [ slash, question ], [ Cyrillic_io, Cyrillic_IO ] }; };