120417a1cSmrgdefault partial alphanumeric_keys 2154daed1Smrgxkb_symbols "basic" { 3154daed1Smrg 40412cdedSmrg // Visualisation and description: http://podziemie.net/xkb/pl 50412cdedSmrg // Contact: Michał Górny <zrchos+freedesktop@gmail.com> 60412cdedSmrg 7154daed1Smrg include "latin" 8154daed1Smrg 9bfd7cbc1Smrg name[Group1]="Polish"; 10154daed1Smrg 11bf7055d6Smrg key <TLDE> { [ grave, asciitilde, notsign, logicalor ] }; 120412cdedSmrg key <AE01> { [ 1, exclam, notequal, exclamdown ] }; 130412cdedSmrg key <AE02> { [ 2, at, twosuperior, questiondown ] }; 140412cdedSmrg key <AE04> { [ 4, dollar, cent, onequarter ] }; 150412cdedSmrg key <AE05> { [ 5, percent, EuroSign, U2030 ] }; 160412cdedSmrg key <AE06> { [ 6, asciicircum, onehalf, logicaland ] }; 170412cdedSmrg key <AE07> { [ 7, ampersand, section, U2248 ] }; 180412cdedSmrg key <AE08> { [ 8, asterisk, periodcentered, threequarters ] }; 190412cdedSmrg key <AE09> { [ 9, parenleft, guillemotleft, plusminus ] }; 200412cdedSmrg key <AE10> { [ 0, parenright, guillemotright, degree ] }; 210412cdedSmrg key <AE11> { [ minus, underscore, endash, emdash ] }; 220412cdedSmrg 230412cdedSmrg key <AD01> { [ q, Q, Greek_pi, Greek_OMEGA ] }; 240412cdedSmrg key <AD02> { [ w, W, oe, OE ] }; 250412cdedSmrg key <AD03> { [ e, E, eogonek, Eogonek ] }; 260412cdedSmrg key <AD04> { [ r, R, copyright, registered ] }; 270412cdedSmrg key <AD05> { [ t, T, ssharp, trademark ] }; 280412cdedSmrg key <AD08> { [ i, I, rightarrow, U2194 ] }; 290412cdedSmrg key <AD09> { [ o, O, oacute, Oacute ] }; 300412cdedSmrg 310412cdedSmrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 320412cdedSmrg key <AC02> { [ s, S, sacute, Sacute ] }; 330412cdedSmrg key <AC04> { [ f, F, ae, AE ] }; 340412cdedSmrg key <AC06> { [ h, H, rightsinglequotemark, U2022 ] }; 350412cdedSmrg key <AC07> { [ j, J, schwa, SCHWA ] }; 360412cdedSmrg key <AC08> { [ k, K, ellipsis, dead_stroke ] }; 370412cdedSmrg 380412cdedSmrg key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 390412cdedSmrg key <AB02> { [ x, X, zacute, Zacute ] }; 400412cdedSmrg key <AB03> { [ c, C, cacute, Cacute ] }; 410412cdedSmrg key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 420412cdedSmrg key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 430412cdedSmrg key <AB06> { [ n, N, nacute, Nacute ] }; 440412cdedSmrg key <AB07> { [ m, M, mu, infinity ] }; 450412cdedSmrg key <AB08> { [ comma, less, lessthanequal, multiply ] }; 460412cdedSmrg key <AB09> { [ period, greater, greaterthanequal, division ] }; 470412cdedSmrg 480412cdedSmrg key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; 490412cdedSmrg 500412cdedSmrg include "kpdl(comma)" 510412cdedSmrg 520412cdedSmrg include "level3(ralt_switch)" 530412cdedSmrg}; 540412cdedSmrg 550412cdedSmrgpartial alphanumeric_keys 560412cdedSmrgxkb_symbols "legacy" { 570412cdedSmrg 580412cdedSmrg include "latin" 590412cdedSmrg 600412cdedSmrg name[Group1]="Polish (legacy)"; 610412cdedSmrg 62154daed1Smrg key <AD03> { [ e, E, eogonek, Eogonek ] }; 63797b363dSmrg key <AD07> { [ u, U, EuroSign, cent ] }; 64154daed1Smrg key <AD09> { [ o, O, oacute, Oacute ] }; 65154daed1Smrg 66154daed1Smrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 67154daed1Smrg key <AC02> { [ s, S, sacute, Sacute ] }; 68154daed1Smrg 69154daed1Smrg key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 70154daed1Smrg key <AB02> { [ x, X, zacute, Zacute ] }; 71154daed1Smrg key <AB03> { [ c, C, cacute, Cacute ] }; 72b27e4b0fSmrg key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 73b27e4b0fSmrg key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 74154daed1Smrg key <AB06> { [ n, N, nacute, Nacute ] }; 75154daed1Smrg 76154daed1Smrg include "kpdl(comma)" 77154daed1Smrg 78154daed1Smrg include "level3(ralt_switch)" 79154daed1Smrg}; 80154daed1Smrg 81b27e4b0fSmrgpartial alphanumeric_keys 82b27e4b0fSmrgxkb_symbols "lefty" { 83b27e4b0fSmrg // 2020 by Simon Zelazny. 84b27e4b0fSmrg // Places Ó, Ł, and Ń under the left typing hand. 85b27e4b0fSmrg // For description and rationale, see: https://pzel.name/pl-lefty.html 86b27e4b0fSmrg include "pl(basic)" 87b27e4b0fSmrg 88b27e4b0fSmrg name[Group1]="Polish (lefty)"; 89b27e4b0fSmrg key <AD01> { [ q, Q, oacute, Oacute ] }; 90b27e4b0fSmrg key <AD02> { [ w, W, lstroke, Lstroke ] }; 91b27e4b0fSmrg key <AC03> { [ d, D, nacute, Nacute ] }; 92b27e4b0fSmrg}; 93b27e4b0fSmrg 94b27e4b0fSmrg 95154daed1Smrgpartial alphanumeric_keys 96154daed1Smrgxkb_symbols "qwertz" { 97154daed1Smrg 98154daed1Smrg include "latin(type3)" 99154daed1Smrg 1009184b9c8Smrg name[Group1]="Polish (QWERTZ)"; 101154daed1Smrg 102bf7055d6Smrg key <TLDE> { [ abovedot, dead_ogonek, notsign, notsign ] }; 103154daed1Smrg key <AE01> { [ 1, exclam, asciitilde, exclamdown ] }; 104154daed1Smrg key <AE02> { [ 2, quotedbl, dead_caron, oneeighth ] }; 105154daed1Smrg key <AE03> { [ 3, numbersign, dead_circumflex, sterling ] }; 106154daed1Smrg key <AE04> { [ 4, dollar, dead_breve, dollar ] }; 107154daed1Smrg key <AE05> { [ 5, percent, degree, threeeighths ] }; 108154daed1Smrg key <AE06> { [ 6, ampersand, dead_ogonek, fiveeighths ] }; 109154daed1Smrg key <AE07> { [ 7, slash, dead_grave, seveneighths ] }; 110154daed1Smrg key <AE08> { [ 8, parenleft, dead_abovedot, trademark ] }; 111154daed1Smrg key <AE09> { [ 9, parenright, dead_acute, plusminus ] }; 112154daed1Smrg key <AE10> { [ 0, equal, dead_doubleacute, degree ] }; 113154daed1Smrg key <AE11> { [ plus, question, dead_diaeresis, questiondown ] }; 114154daed1Smrg key <AE12> { [apostrophe, asterisk, dead_cedilla, dead_ogonek ] }; 115154daed1Smrg 116154daed1Smrg key <AD03> { [ e, E, EuroSign, cent ] }; 117154daed1Smrg key <AD11> { [ zabovedot, nacute, division, dead_abovering ] }; 118154daed1Smrg key <AD12> { [ sacute, cacute, multiply, dead_macron ] }; 119154daed1Smrg 120154daed1Smrg key <AC02> { [ s, S, dstroke, section ] }; 121154daed1Smrg key <AC03> { [ d, D, Dstroke, ETH ] }; 122154daed1Smrg key <AC08> { [ k, K, kra, ampersand ] }; 123154daed1Smrg key <AC09> { [ l, L, lstroke, Lstroke ] }; 124154daed1Smrg key <AC10> { [ lstroke, Lstroke, dollar, dead_doubleacute ] }; 125154daed1Smrg key <AC11> { [ aogonek, eogonek, ssharp, dead_caron ] }; 126154daed1Smrg key <BKSL> { [ oacute, zacute, dead_grave, dead_breve ] }; 127bf7055d6Smrg 128154daed1Smrg key <AB03> { [ c, C, cent, copyright ] }; 129154daed1Smrg key <AB10> { [ minus, underscore, dead_belowdot, dead_abovedot ] }; 130154daed1Smrg 131154daed1Smrg include "kpdl(comma)" 132154daed1Smrg 133154daed1Smrg include "level3(ralt_switch)" 134154daed1Smrg}; 135154daed1Smrg 136154daed1Smrg// Polish Dvorak keymaps 137154daed1Smrg// by Rafal Rzepecki <divide@users.sf.net> 138154daed1Smrg 139154daed1Smrg// The base keymap "pl" places Polish quotes on quotemark key and 140154daed1Smrg// moves the dead symbols from there to "1/!" key. If you are used to common 141154daed1Smrg// dead keys placement, you could use "pl_altquotes"; in this layout 142154daed1Smrg// dead keys remain in the old place, whereas Polish quotes are placed on the 143154daed1Smrg// "1/!" key. If you do not use Polish quotes at all, you can use "pl_basic" map. 144154daed1Smrg 145154daed1Smrg// Basic Polish keymap (without Polish quotes) 146797b363dSmrgpartial alphanumeric_keys 147154daed1Smrgxkb_symbols "dvorak" { 148154daed1Smrg include "us(dvorak)" 149797b363dSmrg 150bfd7cbc1Smrg name[Group1] = "Polish (Dvorak)"; 151154daed1Smrg 152154daed1Smrg key <AD08> { [ c, C, cacute, Cacute ] }; 153154daed1Smrg key <AD10> { [ l, L, lstroke, Lstroke ] }; 154154daed1Smrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 155154daed1Smrg key <AC02> { [ o, O, oacute, Oacute ] }; 156154daed1Smrg key <AC03> { [ e, E, eogonek, Eogonek ] }; 157154daed1Smrg key <AC09> { [ n, N, nacute, Nacute ] }; 158154daed1Smrg key <AC10> { [ s, S, sacute, Sacute ] }; 159154daed1Smrg key <AB09> { [ v, V, zacute, Zacute ] }; 160154daed1Smrg key <AB10> { [ z, Z, zabovedot, Zabovedot ] }; 161797b363dSmrg 162154daed1Smrg include "kpdl(comma)" 163154daed1Smrg 164154daed1Smrg include "level3(ralt_switch)" 165154daed1Smrg}; 166154daed1Smrg 167154daed1Smrg// Default Polish keymap with Polish quotes on quotemark key 168154daed1Smrgpartial alphanumeric_keys 169154daed1Smrgxkb_symbols "dvorak_quotes" { 170154daed1Smrg include "pl(dvorak)" 171797b363dSmrg 1729184b9c8Smrg name[Group1] = "Polish (Dvorak, with Polish quotes on quotemark key)"; 173154daed1Smrg 174154daed1Smrg key <AD01> { [ apostrophe, quotedbl, doublelowquotemark, rightdoublequotemark ] }; 175154daed1Smrg 176154daed1Smrg // Dead symbols moved to this key 177154daed1Smrg key <AE01> { [ 1, exclam, dead_acute, dead_diaeresis ] }; 178154daed1Smrg}; 179154daed1Smrg 180154daed1Smrg// Polish keymap with Polish quotes on key "1/!" 181154daed1Smrgpartial alphanumeric_keys 182154daed1Smrgxkb_symbols "dvorak_altquotes" { 183154daed1Smrg include "pl(dvorak)" 184154daed1Smrg 1859184b9c8Smrg name[Group1] = "Polish (Dvorak, with Polish quotes on key 1)"; 186154daed1Smrg 187154daed1Smrg key <AE01> { [ 1, exclam, doublelowquotemark, rightdoublequotemark ] }; 188154daed1Smrg}; 189154daed1Smrg 1909184b9c8Smrg// Polish programmer Dvorak keymap by Michal Nazarewicz <mina86@mina86.com> 1919184b9c8Smrg// based on programmer Dvorak by Roland Kaufmann <rlndkfmn at gmail dot com> 192c067fea9Sghen// and Polish Dvorak keymaps by Rafal Rzepecki <divide@users.sf.net 193c067fea9Sghen// and latin(basic) 194c067fea9Sghen// 195c067fea9Sghen// * Numbers are in shift position (like French). 196c067fea9Sghen// * Symbols have been placed in locations that give good 197c067fea9Sghen// hand-alternation and finger rolling with symbols that usually 198c067fea9Sghen// follows. 199c067fea9Sghen// * Polish diacritics on AltGr+"acelnosxz" (same as in basic pl(basic)). 200c067fea9Sghen// * Aditionaly, zacute on AltGr+"v" so that both zacute and zabovedot 201c067fea9Sghen// next to each other same as in pl(basic). 202c067fea9Sghen// * Polish open and close quotes on AltGr+& (same location as in 203c067fea9Sghen// pl(dvp_altquotes)). 204c067fea9Sghen// * English open quote on AltGr+k (same location as in latin(basic)) 205c067fea9Sghen// * English/Polish close quote on AltGr+b (similar location as in 206c067fea9Sghen// latin(basic) but moved right because AltGr+x is taken for zacute). 207c067fea9Sghen// * Polish open and close quote on AltGr+j. 208c067fea9Sghen// 209c067fea9Sghen// Those rules overwrite only the following rules from us(dvp): 210c067fea9Sghen// * ccedilla on AltGr+c 211c067fea9Sghen// * aring on Alt+a 212bf7055d6Smrg// * oslash on Alt+o 213c067fea9Sghen// * ae on Alt+e 214c067fea9Sghen// * ntilde on Alt+n 215c067fea9Sghen// 216c067fea9Sghenpartial alphanumeric_keys 217c067fea9Sghenxkb_symbols "dvp" { 218c067fea9Sghen include "us(dvp)" 219c067fea9Sghen 220bfd7cbc1Smrg name[Group1] = "Polish (programmer Dvorak)"; 221c067fea9Sghen 222c067fea9Sghen // Unmodified Shift AltGr Shift+AltGr 223c067fea9Sghen key <AE01> { [ ampersand, percent, doublelowquotemark, rightdoublequotemark ] }; 224c067fea9Sghen 225797b363dSmrg // upper row, right side 226c067fea9Sghen key <AD08> { [ c, C, cacute, Cacute ] }; 227c067fea9Sghen key <AD10> { [ l, L, lstroke, Lstroke ] }; 228c067fea9Sghen 229c067fea9Sghen // home row, left side 230bf7055d6Smrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 231c067fea9Sghen key <AC02> { [ o, O, oacute, Oacute ] }; 232c067fea9Sghen key <AC03> { [ e, E, eogonek, Eogonek ] }; 233c067fea9Sghen 234c067fea9Sghen // home row, right side 235c067fea9Sghen key <AC09> { [ n, N, nacute, Nacute ] }; 236c067fea9Sghen key <AC10> { [ s, S, sacute, Sacute ] }; 237c067fea9Sghen 238c067fea9Sghen // lower row, left side 239c067fea9Sghen key <AB03> { [ j, J, doublelowquotemark, rightdoublequotemark ] }; 240c067fea9Sghen key <AB04> { [ k, K, leftdoublequotemark, leftsinglequotemark ] }; 241c067fea9Sghen key <AB05> { [ x, X, zacute, Zacute ] }; 242c067fea9Sghen 243c067fea9Sghen // lower row, right side 244c067fea9Sghen key <AB06> { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; 245c067fea9Sghen key <AB09> { [ v, V, zacute, Zacute ] }; 246c067fea9Sghen key <AB10> { [ z, Z, zabovedot, Zabovedot ] }; 247c067fea9Sghen 248c067fea9Sghen include "kpdl(comma)" 249c067fea9Sghen 250c067fea9Sghen include "level3(ralt_switch)" 251c067fea9Sghen}; 252c067fea9Sghen 253bf7055d6Smrg// Silesian letters on the third and fourth level, 254bf7055d6Smrg// by Grzegorz Kulik <poslunsku@gmail.com> and Przemysław Buczkowski <przemub@yahoo.pl>. 255bf7055d6Smrg// 2560412cdedSmrgpartial alphanumeric_keys 2570412cdedSmrgxkb_symbols "szl" { 2580412cdedSmrg 2590412cdedSmrg include "latin" 2600412cdedSmrg 2610412cdedSmrg name[Group1]="Silesian"; 2620412cdedSmrg 263bf7055d6Smrg key <AD03> { [ e, E, atilde, Atilde ] }; 264bf7055d6Smrg key <AD09> { [ o, O, ocircumflex, Ocircumflex ] }; 265bf7055d6Smrg key <AD07> { [ u, U, omacron, Omacron ] }; 2660412cdedSmrg key <AD10> { [ p, P, otilde, Otilde ] }; 2670412cdedSmrg 268bf7055d6Smrg key <AC01> { [ a, A, U014F, U014E ] }; // ŏ Ŏ 2690412cdedSmrg key <AC02> { [ s, S, sacute, Sacute ] }; 2700412cdedSmrg 2710412cdedSmrg key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 2720412cdedSmrg key <AB02> { [ x, X, zacute, Zacute ] }; 2730412cdedSmrg key <AB03> { [ c, C, cacute, Cacute ] }; 274bf7055d6Smrg key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 275b27e4b0fSmrg key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 2760412cdedSmrg key <AB06> { [ n, N, nacute, Nacute ] }; 2770412cdedSmrg 2780412cdedSmrg include "kpdl(comma)" 2790412cdedSmrg 2800412cdedSmrg include "level3(ralt_switch)" 2810412cdedSmrg}; 282c067fea9Sghen 283bf7055d6Smrg// Kashubian letters on the third and fourth level. 284bf7055d6Smrg// 285154daed1Smrgpartial alphanumeric_keys 286154daed1Smrgxkb_symbols "csb" { 287154daed1Smrg 288154daed1Smrg include "latin" 289154daed1Smrg 290bfd7cbc1Smrg name[Group1]="Kashubian"; 291154daed1Smrg 292bf7055d6Smrg key <AD03> { [ e, E, eacute, Eacute ] }; 293bf7055d6Smrg key <AD04> { [ r, R, ediaeresis, Ediaeresis ] }; 294bf7055d6Smrg key <AD06> { [ y, Y, EuroSign, cent ] }; 295bf7055d6Smrg key <AD07> { [ u, U, ugrave, Ugrave ] }; 296bf7055d6Smrg key <AD08> { [ i, I, ograve, Ograve ] }; 297154daed1Smrg key <AD09> { [ o, O, oacute, Oacute ] }; 298bf7055d6Smrg key <AD10> { [ p, P, ocircumflex, Ocircumflex ] }; 299154daed1Smrg 300154daed1Smrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 301bf7055d6Smrg key <AC02> { [ s, S, atilde, Atilde ] }; 302bf7055d6Smrg key <AC09> { [ l, L, lstroke, Lstroke ] }; 303154daed1Smrg 304154daed1Smrg key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 305bf7055d6Smrg key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 306b27e4b0fSmrg key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 307154daed1Smrg key <AB06> { [ n, N, nacute, Nacute ] }; 308154daed1Smrg 309154daed1Smrg include "kpdl(comma)" 310154daed1Smrg 311154daed1Smrg include "level3(ralt_switch)" 312154daed1Smrg}; 313154daed1Smrg 314154daed1Smrg// Russian Polish-phonetic Dvorak 315154daed1Smrg// by Adrian Dziubek <adrian.dziubek@gmail.com> 316154daed1Smrg// 317154daed1Smrg// This layout aims to enable Polish Dvorak users to type with Russian 318154daed1Smrg// Cyrillic alphabet by using the sound correspondence between Polish and 319154daed1Smrg// Russian languages. 320154daed1Smrg// 321154daed1Smrg// This keyboard should be intuitive. Please let me know, if my intuition 322154daed1Smrg// lets You down. 323154daed1Smrg// 324154daed1Smrg// The guidelines used: 325154daed1Smrg// - no Cyrillic symbols are placed on punctuation symbols, 326154daed1Smrg// - visual similarities are ignored if there is a sound correspondence: 327154daed1Smrg// no Cyrillic_es on c, no Cyrillic_er on p, no Cyrillic_ha on x etc., 328154daed1Smrg// - the Latin symbols that have close sound correspondence (as read in Polish) 329154daed1Smrg// to Cyrillic symbols (as read in Russian) are mapped respectively: 330154daed1Smrg// * j -> Cyrillic_shorti, 331154daed1Smrg// * k -> Cyrillic_ka, 332154daed1Smrg// * b -> Cyrillic_be, 333154daed1Smrg// * m -> Cyrillic_em, 334154daed1Smrg// * w -> Cyrillic_ve, 335154daed1Smrg// * z -> Cyrillic_ze 336154daed1Smrg// * a -> Cyrillic_a, 337154daed1Smrg// * o -> Cyrillic_o, 338154daed1Smrg// * u -> Cyrillic_u, 339154daed1Smrg// * i -> Cyrillic_i, 340154daed1Smrg// * d -> Cyrillic_de, 341154daed1Smrg// * h -> Cyrillic_ha, 342154daed1Smrg// * t -> Cyrillic_te, 343154daed1Smrg// * n -> Cyrillic_en, 344154daed1Smrg// * s -> Cyrillic_es, 345154daed1Smrg// * p -> Cyrillic_pe, 346154daed1Smrg// * y -> Cyrillic_yeru, 347154daed1Smrg// * f -> Cyrillic_ef, 348154daed1Smrg// * g -> Cyrillic_ghe, 349154daed1Smrg// * c -> Cyrillic_tse, 350154daed1Smrg// * r -> Cyrillic_er, 351154daed1Smrg// * l -> Cyrillic_el, 352154daed1Smrg// - ...and little more distant: 353154daed1Smrg// * AltGr + s (sacute) -> Cyrillic_sha, 354154daed1Smrg// * AltGr + z (zabovedot) -> Cyrillic_zhe, 355154daed1Smrg// * AltGr + c (cacute) -> Cyrillic_che, 356154daed1Smrg// - the soft versions of Russian vowels are accessible through AltGr + vowel: 357154daed1Smrg// * AltGr + a -> Cyrillic_ya, 358154daed1Smrg// * AltGr + o -> Cyrillic_io, 359154daed1Smrg// * AltGr + u -> Cyrillic_yu, 360154daed1Smrg// - ...except for Cyrillic_ie which is more frequently used than Cyrillic_e: 361154daed1Smrg// * AltGr + e -> Cyrillic_e, 362154daed1Smrg// * e -> Cyrillic_ie, 363154daed1Smrg// - q is also mapped to Cyrillic_ya, following the US phonetic keyboard 364154daed1Smrg// choice, as Cyrillic_ya and Cyrillic_a are both often used: 365154daed1Smrg// * q -> Cyrillic_ya, 366154daed1Smrg// - the soft and hard symbols that have no Polish counterparts are mapped 367154daed1Smrg// to rarely used in Polish x character: 368154daed1Smrg// * x -> Cyrillic_softsign 369154daed1Smrg// * AltGr + x -> Cyrillic_hardsign, 370154daed1Smrg// - the soft sign is additionally available as AltGr + consonant combination 371154daed1Smrg// for every consonant that can be softened or separated by soft sign: 372154daed1Smrg// * AltGr + l -> Cyrillic_softsign, 373154daed1Smrg// * AltGr + d -> Cyrillic_softsign, 374154daed1Smrg// * AltGr + n -> Cyrillic_softsign, 375154daed1Smrg// * AltGr + r -> Cyrillic_softsign, 376154daed1Smrg// * AltGr + t -> Cyrillic_softsign, 377154daed1Smrg// * AltGr + p -> Cyrillic_softsign, 378154daed1Smrg// - ...and also because of visual similarity under level3 b: 379154daed1Smrg// * AltGr + b -> Cyrillic_softsign, 380154daed1Smrg// * Shift + AltGr + b -> Cyrillic_hardsign, 381154daed1Smrg// - the Cyrillic_shcha symbol is placed under AltGr + w (visual similarity): 382154daed1Smrg// * AltGr + w -> Cyrillic_shcha 383154daed1Smrg// - v, also rarely unused in Polish is mapped like w: 384154daed1Smrg// * v -> Cyrillic_ve, 385154daed1Smrg// 386154daed1Smrgpartial alphanumeric_keys 387154daed1Smrgxkb_symbols "ru_phonetic_dvorak" { 388154daed1Smrg include "us(dvorak)" 389154daed1Smrg 390bfd7cbc1Smrg name[Group1] = "Russian (Poland, phonetic Dvorak)"; 391154daed1Smrg 392154daed1Smrg // lower row 393154daed1Smrg key <AB02> { [ Cyrillic_ya, Cyrillic_YA ] }; 394154daed1Smrg key <AB03> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 395154daed1Smrg key <AB04> { [ Cyrillic_ka, Cyrillic_KA ] }; 396154daed1Smrg key <AB05> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 397154daed1Smrg key <AB06> { [ Cyrillic_be, Cyrillic_BE, Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 398154daed1Smrg key <AB07> { [ Cyrillic_em, Cyrillic_EM ] }; 399154daed1Smrg key <AB08> { [ Cyrillic_ve, Cyrillic_VE, Cyrillic_shcha, Cyrillic_SHCHA ] }; 400154daed1Smrg key <AB09> { [ Cyrillic_ve, Cyrillic_VE, Cyrillic_shcha, Cyrillic_SHCHA ] }; 401154daed1Smrg key <AB10> { [ Cyrillic_ze, Cyrillic_ZE, Cyrillic_zhe, Cyrillic_ZHE ] }; 402154daed1Smrg // home row 403154daed1Smrg key <AC01> { [ Cyrillic_a, Cyrillic_A, Cyrillic_ya, Cyrillic_YA ] }; 404154daed1Smrg key <AC02> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; 405154daed1Smrg key <AC03> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_e, Cyrillic_E ] }; 406154daed1Smrg key <AC04> { [ Cyrillic_u, Cyrillic_U, Cyrillic_yu, Cyrillic_YU ] }; 407154daed1Smrg key <AC05> { [ Cyrillic_i, Cyrillic_I ] }; 408154daed1Smrg key <AC06> { [ Cyrillic_de, Cyrillic_DE, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 409154daed1Smrg key <AC07> { [ Cyrillic_ha, Cyrillic_HA ] }; 410154daed1Smrg key <AC08> { [ Cyrillic_te, Cyrillic_TE, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 411154daed1Smrg key <AC09> { [ Cyrillic_en, Cyrillic_EN, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 412154daed1Smrg key <AC10> { [ Cyrillic_es, Cyrillic_ES, Cyrillic_sha, Cyrillic_SHA ] }; 413154daed1Smrg // upper row 414154daed1Smrg key <AD04> { [ Cyrillic_pe, Cyrillic_PE, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 415154daed1Smrg key <AD05> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 416154daed1Smrg key <AD06> { [ Cyrillic_ef, Cyrillic_EF ] }; 417154daed1Smrg key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 418154daed1Smrg key <AD08> { [ Cyrillic_tse, Cyrillic_TSE, Cyrillic_che, Cyrillic_CHE ] }; 419154daed1Smrg key <AD09> { [ Cyrillic_er, Cyrillic_ER, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 420154daed1Smrg key <AD10> { [ Cyrillic_el, Cyrillic_EL, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 421154daed1Smrg 422154daed1Smrg include "kpdl(comma)" 423154daed1Smrg 424154daed1Smrg include "level3(ralt_switch)" 425154daed1Smrg}; 426bfd7cbc1Smrg 4270412cdedSmrg// EXTRAS: 4280412cdedSmrg 4290412cdedSmrg// A Polish keymap with a comprehensive set of quotes, dashes, and dead accents 4300412cdedSmrg// 4310412cdedSmrg// See http://marcinwolinski.pl/keyboard/ for a description. 4320412cdedSmrg// 4330412cdedSmrg// ┌────┐ 4340412cdedSmrg// │ 2 4│ 2 = Shift, 4 = Level3 + Shift 4350412cdedSmrg// │ 1 3│ 1 = Normal, 3 = Level3 4360412cdedSmrg// └────┘ 4370412cdedSmrg// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ 4380412cdedSmrg// │ ~ ~ │ ! ' │ @ " │ # ˝ │ $ ¸ │ % ˇ │ ^ ^ │ & ˘ │ * ˙ │ ( ̣ │ ) ° │ _ ¯ │ + ˛ ┃ ⌫ Back ┃ 4390412cdedSmrg// │ ` ` │ 1 ¡ │ 2 © │ 3 • │ 4 § │ 5 € │ 6 ¢ │ 7 − │ 8 × │ 9 ÷ │ 0 ° │ - – │ = — ┃ space ┃ 4400412cdedSmrg// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ 4410412cdedSmrg// ┃ ┃ Q │ W │ E Ę │ R │ T │ Y │ U │ I │ O Ó │ P │ { « │ } » ┃ Enter ┃ 4420412cdedSmrg// ┃Tab ↹ ┃ q │ w │ e ę │ r │ t │ y │ u │ i │ o ó │ p │ [ ‹ │ ] › ┃ ⏎ ┃ 4430412cdedSmrg// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ 4440412cdedSmrg// ┃ ┃ A Ą │ S Ś │ D │ F │ G │ H │ J │ K │ L Ł │ : “ │ " ” │ | ¶ ┃ ┃ 4450412cdedSmrg// ┃Caps ⇬ ┃ a ą │ s ś │ d │ f │ g │ h │ j │ k │ l ł │ ; ‘ │ ' ’ │ \ ┃ ┃ 4460412cdedSmrg// ┣━━━━━━━━┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫ 4470412cdedSmrg// ┃ │ Z Ż │ X Ź │ C Ć │ V │ B │ N Ń │ M │ < „ │ > · │ ? ¿ ┃ ┃ 4480412cdedSmrg// ┃Shift ⇧ │ z ż │ x ź │ c ć │ v │ b │ n ń │ m │ , ‚ │ . … │ / ⁄ ┃Shift ⇧ ┃ 4490412cdedSmrg// ┣━━━━━━━┳━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛ 4500412cdedSmrg// ┃ ┃ ┃ ┃ ␣ ⍽ ┃ ┃ ┃ ┃ 4510412cdedSmrg// ┃Ctrl ┃Meta ┃Alt ┃ ␣ Space ⍽ ┃AltGr ⇮┃Menu ┃Ctrl ┃ 4520412cdedSmrg// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ 4530412cdedSmrg 4540412cdedSmrgpartial alphanumeric_keys 4550412cdedSmrgxkb_symbols "intl" { 4560412cdedSmrg 4570412cdedSmrg include "latin(intl)" 4580412cdedSmrg 4599184b9c8Smrg name[Group1]="Polish (intl., with dead keys)"; 4600412cdedSmrg 4610412cdedSmrg key <AD03> { [ e, E, eogonek, Eogonek ] }; 4620412cdedSmrg key <AD09> { [ o, O, oacute, Oacute ] }; 4630412cdedSmrg 4640412cdedSmrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 4650412cdedSmrg key <AC02> { [ s, S, sacute, Sacute ] }; 4660412cdedSmrg key <AC09> { [ l, L, lstroke, Lstroke ] }; 4670412cdedSmrg 4680412cdedSmrg key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 4690412cdedSmrg key <AB02> { [ x, X, zacute, Zacute ] }; 4700412cdedSmrg key <AB03> { [ c, C, cacute, Cacute ] }; 4710412cdedSmrg key <AB06> { [ n, N, nacute, Nacute ] }; 4720412cdedSmrg 4730412cdedSmrg include "kpdl(comma)" 4740412cdedSmrg 4750412cdedSmrg include "level3(ralt_switch)" 4760412cdedSmrg}; 4770412cdedSmrg 4780412cdedSmrg// Polish Colemak 4790412cdedSmrg// by Tomek Piotrowski <tomek.piotrowski@atteo.com> 4800412cdedSmrg// 4810412cdedSmrgpartial alphanumeric_keys 4820412cdedSmrgxkb_symbols "colemak" { 4830412cdedSmrg include "us(colemak)" 4840412cdedSmrg name[Group1]= "Polish (Colemak)"; 4850412cdedSmrg 4860412cdedSmrg key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 4870412cdedSmrg key <AB02> { [ x, X, zacute, Zacute ] }; 4880412cdedSmrg key <AB03> { [ c, C, cacute, Cacute ] }; 4890412cdedSmrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 490797b363dSmrg key <AC03> { [ s, S, sacute, Sacute ] }; 4910412cdedSmrg key <AC07> { [ n, N, nacute, Nacute ] }; 4920412cdedSmrg key <AC08> { [ e, E, eogonek, Eogonek ] }; 4930412cdedSmrg key <AC10> { [ o, O, oacute, Oacute ] }; 49420417a1cSmrg key <AD01> { [ q, Q, ae, AE ] }; 49520417a1cSmrg key <AD02> { [ w, W, dead_circumflex, asciitilde ] }; 49620417a1cSmrg key <AD03> { [ f, F, ssharp, 0x1001e9e ] }; 49720417a1cSmrg key <AD07> { [ l, L, lstroke, Lstroke ] }; 49820417a1cSmrg 49920417a1cSmrg include "level3(ralt_switch)" 50020417a1cSmrg}; 50120417a1cSmrg 502bf7055d6Smrg// Colemak-DH (ANSI), Polish variant, https://colemakmods.github.io/mod-dh/ 50320417a1cSmrgpartial alphanumeric_keys 504bf7055d6Smrgxkb_symbols "colemak_dh_ansi" { 50520417a1cSmrg include "us(colemak_dh)" 50620417a1cSmrg name[Group1]= "Polish (Colemak-DH)"; 50720417a1cSmrg 50820417a1cSmrg key <AB01> { [ x, X, zacute, Zacute ] }; 50920417a1cSmrg key <AB02> { [ c, C, cacute, Cacute ] }; 510bf7055d6Smrg key <AB05> { [ z, Z, zabovedot, Zabovedot ] }; 51120417a1cSmrg key <AC01> { [ a, A, aogonek, Aogonek ] }; 51220417a1cSmrg key <AC03> { [ s, S, sacute, Sacute ] }; 51320417a1cSmrg key <AC07> { [ n, N, nacute, Nacute ] }; 51420417a1cSmrg key <AC08> { [ e, E, eogonek, Eogonek ] }; 51520417a1cSmrg key <AC10> { [ o, O, oacute, Oacute ] }; 51620417a1cSmrg key <AD01> { [ q, Q, ae, AE ] }; 51720417a1cSmrg key <AD02> { [ w, W, dead_circumflex, asciitilde ] }; 51820417a1cSmrg key <AD03> { [ f, F, ssharp, 0x1001e9e ] }; 5190412cdedSmrg key <AD07> { [ l, L, lstroke, Lstroke ] }; 5200412cdedSmrg 5210412cdedSmrg include "level3(ralt_switch)" 5220412cdedSmrg}; 5230412cdedSmrg 524bf7055d6Smrg// Colemak-DH (ISO), Polish variant, https://colemakmods.github.io/mod-dh/ 525bf7055d6Smrgpartial alphanumeric_keys 526bf7055d6Smrgxkb_symbols "colemak_dh" { 527bf7055d6Smrg include "pl(colemak_dh_ansi)" 528bf7055d6Smrg name[Group1]= "Polish (Colemak-DH ISO)"; 529bf7055d6Smrg 530bf7055d6Smrg key <LSGT> { [ z, Z, zabovedot, Zabovedot ] }; 531bf7055d6Smrg key <AB05> { [ backslash, bar, asciitilde, brokenbar] }; 532bf7055d6Smrg 533bf7055d6Smrg include "level3(ralt_switch)" 534bf7055d6Smrg}; 535bf7055d6Smrg 5360412cdedSmrgpartial alphanumeric_keys 537d44ca368Smrgxkb_symbols "sun_type6" { 5380412cdedSmrg include "sun_vndr/pl(sun_type6)" 5390412cdedSmrg}; 5400412cdedSmrg 5412ab00627Smrg//Glagolica 5422ab00627Smrgpartial alphanumeric_keys 5432ab00627Smrgxkb_symbols "glagolica" 5442ab00627Smrg{ 5452ab00627Smrg name[Group1] = "Polish (Glagolica)"; 5462ab00627Smrg 5472ab00627Smrg key <AD01> { [ U2C21, U2C23, any, any ] };//q/Q/Ⱑ/Ⱓ 5482ab00627Smrg key <AD02> { [ U2C02, U2C19, any, any ] };//w/W/Ⰲ/Ⱉ/ 5492ab00627Smrg key <AD03> { [ U2C05, U2C27, U2C24, U2C25 ] };//e/E/Ⰵ/Ⱗ/Ⱔ/Ⱕ 5502ab00627Smrg key <AD04> { [ U2C13, U2C13, any, any ] };//r/R/Ⱃ/Ⱃ 5512ab00627Smrg key <AD05> { [ U2C15, U2C15, any, any ] };//t/T/Ⱅ/Ⱅ 5522ab00627Smrg key <AD06> { [ U2C09, U2C0A, U2C20, any ] };//y/Y/Ⰹ/Ⰺ/Ⱐ 5532ab00627Smrg key <AD07> { [ U2C16, U2C16, any, any ] };//u/U/Ⱆ/ 5542ab00627Smrg key <AD08> { [ U2C0B, U2C09, any, any ] };//i/I/Ⰻ/Ⰹ 5552ab00627Smrg key <AD09> { [ U2C11, U2C19, U2C41, any ] };//o/O/Ⱁ/Ⱉ/ⱁ 5562ab00627Smrg key <AD10> { [ U2C12, U2C1A, any, any ] };//p/P/Ⱂ/Ⱊ 5572ab00627Smrg key <AD11> { [ U2C1E, U2C26, any, any ] };//[/{/Ⱎ/Ⱖ 5582ab00627Smrg key <AD12> { [ U2C1B, U2C29, any, any ] };//]/}/Ⱋ/Ⱙ 5592ab00627Smrg key <AC01> { [ U2C00, U2C00, U2C28, U2C29 ] };//a/A/Ⰰ/Ⰰ/Ⱘ/Ⱙ 5602ab00627Smrg key <AC02> { [ U2C14, U2C1E, any, any ] };//[/{/Ⱄ/Ⱎ 5612ab00627Smrg key <AC03> { [ U2C04, U2C04, any, any ] };//d/D/Ⰴ/Ⰴ 5622ab00627Smrg key <AC04> { [ U2C17, U2C2A, any, any ] };//f/F/Ⱇ/Ⱚ 5632ab00627Smrg key <AC05> { [ U2C03, U2C03, any, any ] };//g/G/Ⰳ/Ⰳ 5642ab00627Smrg key <AC06> { [ U2C18, U2C18, any, any ] };//h/H/Ⱈ/Ⱈ 5652ab00627Smrg key <AC07> { [ U2C0A, U2C0A, any, any ] };//j/J/Ⰺ/Ⰺ 5662ab00627Smrg key <AC08> { [ U2C0D, U2C0D, any, any ] };//k/K/Ⰽ/Ⰽ 5672ab00627Smrg key <AC09> { [ U2C0E, U2C0E, any, any ] };//l/L/Ⰾ/Ⰾ 5682ab00627Smrg key <AC10> { [ U2C28, U2C24, any, any ] };//;/:/Ⱘ/Ⱔ 5692ab00627Smrg key <AC11> { [ U2C06, any, any, any ] };//'/"/Ⰶ 570bf7055d6Smrg key <AC12> { [ U2C0C, any, any, any ] };//\/|/Ⰼ 5712ab00627Smrg key <AB01> { [ U2C08, U2C07, any, any ] };//z/Z/Ⰸ/Ⰷ 5722ab00627Smrg key <AB02> { [ U2C20, U2C1F, any, any ] };//x/X/Ⱐ/Ⱏ 5732ab00627Smrg key <AB03> { [ U2C1C, U2C1D, any, any] };//c/C/Ⱌ/Ⱍ 5742ab00627Smrg key <AB04> { [ U2C02, U2C2B, any, any ] };//v/V/Ⰲ/Ⱛ 5752ab00627Smrg key <AB05> { [ U2C01, U2C01, any, any ] };//b/B/Ⰱ/Ⰱ 5762ab00627Smrg key <AB06> { [ U2C10, U2C10, any, any ] };//n/N/Ⱀ/Ⱀ 5772ab00627Smrg key <AB07> { [ U2C0F, U2C0F, any, any ] };//m/M/Ⰿ/Ⰿ 5782ab00627Smrg 5792ab00627Smrg include "kpdl(comma)" 5802ab00627Smrg 5812ab00627Smrg include "level3(ralt_switch)" 5822ab00627Smrg}; 583