1default partial alphanumeric_keys 2xkb_symbols "basic" { 3 4 // Visualisation and description: http://podziemie.net/xkb/pl 5 // Contact: Michał Górny <zrchos+freedesktop@gmail.com> 6 7 include "latin" 8 9 name[Group1]="Polish"; 10 11 key <AE01> { [ 1, exclam, notequal, exclamdown ] }; 12 key <AE02> { [ 2, at, twosuperior, questiondown ] }; 13 key <AE04> { [ 4, dollar, cent, onequarter ] }; 14 key <AE05> { [ 5, percent, EuroSign, U2030 ] }; 15 key <AE06> { [ 6, asciicircum, onehalf, logicaland ] }; 16 key <AE07> { [ 7, ampersand, section, U2248 ] }; 17 key <AE08> { [ 8, asterisk, periodcentered, threequarters ] }; 18 key <AE09> { [ 9, parenleft, guillemotleft, plusminus ] }; 19 key <AE10> { [ 0, parenright, guillemotright, degree ] }; 20 key <AE11> { [ minus, underscore, endash, emdash ] }; 21 22 key <AD01> { [ q, Q, Greek_pi, Greek_OMEGA ] }; 23 key <AD02> { [ w, W, oe, OE ] }; 24 key <AD03> { [ e, E, eogonek, Eogonek ] }; 25 key <AD04> { [ r, R, copyright, registered ] }; 26 key <AD05> { [ t, T, ssharp, trademark ] }; 27 key <AD08> { [ i, I, rightarrow, U2194 ] }; 28 key <AD09> { [ o, O, oacute, Oacute ] }; 29 30 key <AC01> { [ a, A, aogonek, Aogonek ] }; 31 key <AC02> { [ s, S, sacute, Sacute ] }; 32 key <AC04> { [ f, F, ae, AE ] }; 33 key <AC06> { [ h, H, rightsinglequotemark, U2022 ] }; 34 key <AC07> { [ j, J, schwa, SCHWA ] }; 35 key <AC08> { [ k, K, ellipsis, dead_stroke ] }; 36 key <TLDE> { [ grave, asciitilde, notsign, logicalor ] }; 37 38 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 39 key <AB02> { [ x, X, zacute, Zacute ] }; 40 key <AB03> { [ c, C, cacute, Cacute ] }; 41 key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 42 key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 43 key <AB06> { [ n, N, nacute, Nacute ] }; 44 key <AB07> { [ m, M, mu, infinity ] }; 45 key <AB08> { [ comma, less, lessthanequal, multiply ] }; 46 key <AB09> { [ period, greater, greaterthanequal, division ] }; 47 48 key <SPCE> { [ space, space, nobreakspace, nobreakspace ] }; 49 50 include "kpdl(comma)" 51 52 include "level3(ralt_switch)" 53}; 54 55partial alphanumeric_keys 56xkb_symbols "legacy" { 57 58 include "latin" 59 60 name[Group1]="Polish (legacy)"; 61 62 key <AD03> { [ e, E, eogonek, Eogonek ] }; 63 key <AD07> { [ u, U, EuroSign, cent ] }; 64 key <AD09> { [ o, O, oacute, Oacute ] }; 65 66 key <AC01> { [ a, A, aogonek, Aogonek ] }; 67 key <AC02> { [ s, S, sacute, Sacute ] }; 68 69 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 70 key <AB02> { [ x, X, zacute, Zacute ] }; 71 key <AB03> { [ c, C, cacute, Cacute ] }; 72 key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 73 key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 74 key <AB06> { [ n, N, nacute, Nacute ] }; 75 76 include "kpdl(comma)" 77 78 include "level3(ralt_switch)" 79}; 80 81partial alphanumeric_keys 82xkb_symbols "lefty" { 83 // 2020 by Simon Zelazny. 84 // Places Ó, Ł, and Ń under the left typing hand. 85 // For description and rationale, see: https://pzel.name/pl-lefty.html 86 include "pl(basic)" 87 88 name[Group1]="Polish (lefty)"; 89 key <AD01> { [ q, Q, oacute, Oacute ] }; 90 key <AD02> { [ w, W, lstroke, Lstroke ] }; 91 key <AC03> { [ d, D, nacute, Nacute ] }; 92}; 93 94 95partial alphanumeric_keys 96xkb_symbols "qwertz" { 97 98 include "latin(type3)" 99 100 name[Group1]="Polish (QWERTZ)"; 101 102 key <AE01> { [ 1, exclam, asciitilde, exclamdown ] }; 103 key <AE02> { [ 2, quotedbl, dead_caron, oneeighth ] }; 104 key <AE03> { [ 3, numbersign, dead_circumflex, sterling ] }; 105 key <AE04> { [ 4, dollar, dead_breve, dollar ] }; 106 key <AE05> { [ 5, percent, degree, threeeighths ] }; 107 key <AE06> { [ 6, ampersand, dead_ogonek, fiveeighths ] }; 108 key <AE07> { [ 7, slash, dead_grave, seveneighths ] }; 109 key <AE08> { [ 8, parenleft, dead_abovedot, trademark ] }; 110 key <AE09> { [ 9, parenright, dead_acute, plusminus ] }; 111 key <AE10> { [ 0, equal, dead_doubleacute, degree ] }; 112 key <AE11> { [ plus, question, dead_diaeresis, questiondown ] }; 113 key <AE12> { [apostrophe, asterisk, dead_cedilla, dead_ogonek ] }; 114 115 key <AD01> { [ q, Q ] }; 116 key <AD02> { [ w, W ] }; 117 key <AD03> { [ e, E, EuroSign, cent ] }; 118 key <AD11> { [ zabovedot, nacute, division, dead_abovering ] }; 119 key <AD12> { [ sacute, cacute, multiply, dead_macron ] }; 120 121 key <AC02> { [ s, S, dstroke, section ] }; 122 key <AC03> { [ d, D, Dstroke, ETH ] }; 123 key <AC04> { [ f, F ] }; 124 key <AC08> { [ k, K, kra, ampersand ] }; 125 key <AC09> { [ l, L, lstroke, Lstroke ] }; 126 key <AC10> { [ lstroke, Lstroke, dollar, dead_doubleacute ] }; 127 key <AC11> { [ aogonek, eogonek, ssharp, dead_caron ] }; 128 key <TLDE> { [ abovedot, dead_ogonek, notsign, notsign ] }; 129 130 key <BKSL> { [ oacute, zacute, dead_grave, dead_breve ] }; 131 key <AB03> { [ c, C, cent, copyright ] }; 132 key <AB10> { [ minus, underscore, dead_belowdot, dead_abovedot ] }; 133 134 include "kpdl(comma)" 135 136 include "level3(ralt_switch)" 137}; 138 139// Polish Dvorak keymaps 140// by Rafal Rzepecki <divide@users.sf.net> 141 142// The base keymap "pl" places Polish quotes on quotemark key and 143// moves the dead symbols from there to "1/!" key. If you are used to common 144// dead keys placement, you could use "pl_altquotes"; in this layout 145// dead keys remain in the old place, whereas Polish quotes are placed on the 146// "1/!" key. If you do not use Polish quotes at all, you can use "pl_basic" map. 147 148// Basic Polish keymap (without Polish quotes) 149partial alphanumeric_keys 150xkb_symbols "dvorak" { 151 include "us(dvorak)" 152 153 name[Group1] = "Polish (Dvorak)"; 154 155 key <AD08> { [ c, C, cacute, Cacute ] }; 156 key <AD10> { [ l, L, lstroke, Lstroke ] }; 157 key <AC01> { [ a, A, aogonek, Aogonek ] }; 158 key <AC02> { [ o, O, oacute, Oacute ] }; 159 key <AC03> { [ e, E, eogonek, Eogonek ] }; 160 key <AC09> { [ n, N, nacute, Nacute ] }; 161 key <AC10> { [ s, S, sacute, Sacute ] }; 162 key <AB09> { [ v, V, zacute, Zacute ] }; 163 key <AB10> { [ z, Z, zabovedot, Zabovedot ] }; 164 165 include "kpdl(comma)" 166 167 include "level3(ralt_switch)" 168}; 169 170// Default Polish keymap with Polish quotes on quotemark key 171partial alphanumeric_keys 172xkb_symbols "dvorak_quotes" { 173 include "pl(dvorak)" 174 175 name[Group1] = "Polish (Dvorak, with Polish quotes on quotemark key)"; 176 177 key <AD01> { [ apostrophe, quotedbl, doublelowquotemark, rightdoublequotemark ] }; 178 179 // Dead symbols moved to this key 180 key <AE01> { [ 1, exclam, dead_acute, dead_diaeresis ] }; 181}; 182 183// Polish keymap with Polish quotes on key "1/!" 184partial alphanumeric_keys 185xkb_symbols "dvorak_altquotes" { 186 include "pl(dvorak)" 187 188 name[Group1] = "Polish (Dvorak, with Polish quotes on key 1)"; 189 190 key <AE01> { [ 1, exclam, doublelowquotemark, rightdoublequotemark ] }; 191}; 192 193// Polish programmer Dvorak keymap by Michal Nazarewicz <mina86@mina86.com> 194// based on programmer Dvorak by Roland Kaufmann <rlndkfmn at gmail dot com> 195// and Polish Dvorak keymaps by Rafal Rzepecki <divide@users.sf.net 196// and latin(basic) 197// 198// * Numbers are in shift position (like French). 199// * Symbols have been placed in locations that give good 200// hand-alternation and finger rolling with symbols that usually 201// follows. 202// * Polish diacritics on AltGr+"acelnosxz" (same as in basic pl(basic)). 203// * Aditionaly, zacute on AltGr+"v" so that both zacute and zabovedot 204// next to each other same as in pl(basic). 205// * Polish open and close quotes on AltGr+& (same location as in 206// pl(dvp_altquotes)). 207// * English open quote on AltGr+k (same location as in latin(basic)) 208// * English/Polish close quote on AltGr+b (similar location as in 209// latin(basic) but moved right because AltGr+x is taken for zacute). 210// * Polish open and close quote on AltGr+j. 211// 212// Those rules overwrite only the following rules from us(dvp): 213// * ccedilla on AltGr+c 214// * aring on Alt+a 215// * oslash/Ooblique on Alt+o 216// * ae on Alt+e 217// * ntilde on Alt+n 218// 219partial alphanumeric_keys 220xkb_symbols "dvp" { 221 include "us(dvp)" 222 223 name[Group1] = "Polish (programmer Dvorak)"; 224 225 // Unmodified Shift AltGr Shift+AltGr 226 // symbols row, left side 227 key <AE01> { [ ampersand, percent, doublelowquotemark, rightdoublequotemark ] }; 228 229 // symbols row, right side 230 231 // upper row, left side 232 233 // upper row, right side 234 key <AD08> { [ c, C, cacute, Cacute ] }; 235 key <AD10> { [ l, L, lstroke, Lstroke ] }; 236 237 // home row, left side 238 key <AC01> { [ a, A, aogonek, Aogonek ], type[Group1] = "EIGHT_LEVEL_ALPHABETIC" }; 239 key <AC02> { [ o, O, oacute, Oacute ] }; 240 key <AC03> { [ e, E, eogonek, Eogonek ] }; 241 242 // home row, right side 243 key <AC09> { [ n, N, nacute, Nacute ] }; 244 key <AC10> { [ s, S, sacute, Sacute ] }; 245 246 // lower row, left side 247 key <AB03> { [ j, J, doublelowquotemark, rightdoublequotemark ] }; 248 key <AB04> { [ k, K, leftdoublequotemark, leftsinglequotemark ] }; 249 key <AB05> { [ x, X, zacute, Zacute ] }; 250 251 // lower row, right side 252 key <AB06> { [ b, B, rightdoublequotemark, rightsinglequotemark ] }; 253 key <AB09> { [ v, V, zacute, Zacute ] }; 254 key <AB10> { [ z, Z, zabovedot, Zabovedot ] }; 255 256 include "kpdl(comma)" 257 258 include "level3(ralt_switch)" 259}; 260 261// Silesian keyboard layout by Grzegorz Kulik <poslunsku@gmail.com> 262// and Przemysław Buczkowski <przemub@yahoo.pl>. 263// See http://poslunsku.eu/2012/07/slonsko-slabikorzowo-klawiatura-na-windows-i-ubuntu/ 264// for a description. 265 266partial alphanumeric_keys 267xkb_symbols "szl" { 268 269 include "latin" 270 271 name[Group1]="Silesian"; 272 273 key <AD01> { [ q, Q ] }; 274 key <AD02> { [ w, W ] }; 275 key <AD03> { [ e, E, atilde, Atilde ] }; 276 key <AD09> { [ o, O, ocircumflex, Ocircumflex ] }; 277 key <AD07> { [ u, U, omacron, Omacron ] }; 278 key <AD10> { [ p, P, otilde, Otilde ] }; 279 280 key <AC01> { [ a, A, U014F, U014E ] }; 281 key <AC02> { [ s, S, sacute, Sacute ] }; 282 key <AC04> { [ f, F ] }; 283 284 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 285 key <AB02> { [ x, X, zacute, Zacute ] }; 286 key <AB03> { [ c, C, cacute, Cacute ] }; 287 key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 288 key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 289 key <AB06> { [ n, N, nacute, Nacute ] }; 290 291 include "kpdl(comma)" 292 293 include "level3(ralt_switch)" 294}; 295 296partial alphanumeric_keys 297xkb_symbols "csb" { 298 299 include "latin" 300 301 name[Group1]="Kashubian"; 302 303 key <AD01> { [ q, Q ] }; 304 key <AD02> { [ w, W ] }; 305 key <AD03> { [ e, E, eacute, Eacute ] }; 306 key <AD04> { [ r, R, ediaeresis, Ediaeresis ] }; 307 key <AD06> { [ y, Y, EuroSign, cent ] }; 308 key <AD07> { [ u, U, ugrave, Ugrave ] }; 309 key <AD08> { [ i, I, ograve, Ograve ] }; 310 key <AD09> { [ o, O, oacute, Oacute ] }; 311 key <AD10> { [ p, P, ocircumflex, Ocircumflex ] }; 312 313 key <AC01> { [ a, A, aogonek, Aogonek ] }; 314 key <AC02> { [ s, S, atilde, Atilde ] }; 315 key <AC04> { [ f, F ] }; 316 key <AC09> { [ l, L, lstroke, Lstroke ] }; 317 318 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 319 key <AB04> { [ v, V, doublelowquotemark, leftsinglequotemark ] }; 320 key <AB05> { [ b, B, rightdoublequotemark, leftdoublequotemark ] }; 321 key <AB06> { [ n, N, nacute, Nacute ] }; 322 323 include "kpdl(comma)" 324 325 include "level3(ralt_switch)" 326}; 327 328// Russian Polish-phonetic Dvorak 329// by Adrian Dziubek <adrian.dziubek@gmail.com> 330// 331// This layout aims to enable Polish Dvorak users to type with Russian 332// Cyrillic alphabet by using the sound correspondence between Polish and 333// Russian languages. 334// 335// This keyboard should be intuitive. Please let me know, if my intuition 336// lets You down. 337// 338// The guidelines used: 339// - no Cyrillic symbols are placed on punctuation symbols, 340// - visual similarities are ignored if there is a sound correspondence: 341// no Cyrillic_es on c, no Cyrillic_er on p, no Cyrillic_ha on x etc., 342// - the Latin symbols that have close sound correspondence (as read in Polish) 343// to Cyrillic symbols (as read in Russian) are mapped respectively: 344// * j -> Cyrillic_shorti, 345// * k -> Cyrillic_ka, 346// * b -> Cyrillic_be, 347// * m -> Cyrillic_em, 348// * w -> Cyrillic_ve, 349// * z -> Cyrillic_ze 350// * a -> Cyrillic_a, 351// * o -> Cyrillic_o, 352// * u -> Cyrillic_u, 353// * i -> Cyrillic_i, 354// * d -> Cyrillic_de, 355// * h -> Cyrillic_ha, 356// * t -> Cyrillic_te, 357// * n -> Cyrillic_en, 358// * s -> Cyrillic_es, 359// * p -> Cyrillic_pe, 360// * y -> Cyrillic_yeru, 361// * f -> Cyrillic_ef, 362// * g -> Cyrillic_ghe, 363// * c -> Cyrillic_tse, 364// * r -> Cyrillic_er, 365// * l -> Cyrillic_el, 366// - ...and little more distant: 367// * AltGr + s (sacute) -> Cyrillic_sha, 368// * AltGr + z (zabovedot) -> Cyrillic_zhe, 369// * AltGr + c (cacute) -> Cyrillic_che, 370// - the soft versions of Russian vowels are accessible through AltGr + vowel: 371// * AltGr + a -> Cyrillic_ya, 372// * AltGr + o -> Cyrillic_io, 373// * AltGr + u -> Cyrillic_yu, 374// - ...except for Cyrillic_ie which is more frequently used than Cyrillic_e: 375// * AltGr + e -> Cyrillic_e, 376// * e -> Cyrillic_ie, 377// - q is also mapped to Cyrillic_ya, following the US phonetic keyboard 378// choice, as Cyrillic_ya and Cyrillic_a are both often used: 379// * q -> Cyrillic_ya, 380// - the soft and hard symbols that have no Polish counterparts are mapped 381// to rarely used in Polish x character: 382// * x -> Cyrillic_softsign 383// * AltGr + x -> Cyrillic_hardsign, 384// - the soft sign is additionally available as AltGr + consonant combination 385// for every consonant that can be softened or separated by soft sign: 386// * AltGr + l -> Cyrillic_softsign, 387// * AltGr + d -> Cyrillic_softsign, 388// * AltGr + n -> Cyrillic_softsign, 389// * AltGr + r -> Cyrillic_softsign, 390// * AltGr + t -> Cyrillic_softsign, 391// * AltGr + p -> Cyrillic_softsign, 392// - ...and also because of visual similarity under level3 b: 393// * AltGr + b -> Cyrillic_softsign, 394// * Shift + AltGr + b -> Cyrillic_hardsign, 395// - the Cyrillic_shcha symbol is placed under AltGr + w (visual similarity): 396// * AltGr + w -> Cyrillic_shcha 397// - v, also rarely unused in Polish is mapped like w: 398// * v -> Cyrillic_ve, 399// 400partial alphanumeric_keys 401xkb_symbols "ru_phonetic_dvorak" { 402 include "us(dvorak)" 403 404 name[Group1] = "Russian (Poland, phonetic Dvorak)"; 405 406 // lower row 407 key <AB02> { [ Cyrillic_ya, Cyrillic_YA ] }; 408 key <AB03> { [ Cyrillic_shorti, Cyrillic_SHORTI ] }; 409 key <AB04> { [ Cyrillic_ka, Cyrillic_KA ] }; 410 key <AB05> { [ Cyrillic_shcha, Cyrillic_SHCHA ] }; 411 key <AB06> { [ Cyrillic_be, Cyrillic_BE, Cyrillic_hardsign, Cyrillic_HARDSIGN ] }; 412 key <AB07> { [ Cyrillic_em, Cyrillic_EM ] }; 413 key <AB08> { [ Cyrillic_ve, Cyrillic_VE, Cyrillic_shcha, Cyrillic_SHCHA ] }; 414 key <AB09> { [ Cyrillic_ve, Cyrillic_VE, Cyrillic_shcha, Cyrillic_SHCHA ] }; 415 key <AB10> { [ Cyrillic_ze, Cyrillic_ZE, Cyrillic_zhe, Cyrillic_ZHE ] }; 416 // home row 417 key <AC01> { [ Cyrillic_a, Cyrillic_A, Cyrillic_ya, Cyrillic_YA ] }; 418 key <AC02> { [ Cyrillic_o, Cyrillic_O, Cyrillic_io, Cyrillic_IO ] }; 419 key <AC03> { [ Cyrillic_ie, Cyrillic_IE, Cyrillic_e, Cyrillic_E ] }; 420 key <AC04> { [ Cyrillic_u, Cyrillic_U, Cyrillic_yu, Cyrillic_YU ] }; 421 key <AC05> { [ Cyrillic_i, Cyrillic_I ] }; 422 key <AC06> { [ Cyrillic_de, Cyrillic_DE, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 423 key <AC07> { [ Cyrillic_ha, Cyrillic_HA ] }; 424 key <AC08> { [ Cyrillic_te, Cyrillic_TE, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 425 key <AC09> { [ Cyrillic_en, Cyrillic_EN, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 426 key <AC10> { [ Cyrillic_es, Cyrillic_ES, Cyrillic_sha, Cyrillic_SHA ] }; 427 // upper row 428 key <AD04> { [ Cyrillic_pe, Cyrillic_PE, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 429 key <AD05> { [ Cyrillic_yeru, Cyrillic_YERU ] }; 430 key <AD06> { [ Cyrillic_ef, Cyrillic_EF ] }; 431 key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE ] }; 432 key <AD08> { [ Cyrillic_tse, Cyrillic_TSE, Cyrillic_che, Cyrillic_CHE ] }; 433 key <AD09> { [ Cyrillic_er, Cyrillic_ER, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 434 key <AD10> { [ Cyrillic_el, Cyrillic_EL, Cyrillic_softsign, Cyrillic_SOFTSIGN ] }; 435 436 include "kpdl(comma)" 437 438 include "level3(ralt_switch)" 439}; 440 441// EXTRAS: 442 443// A Polish keymap with a comprehensive set of quotes, dashes, and dead accents 444// 445// See http://marcinwolinski.pl/keyboard/ for a description. 446// 447// ┌────┐ 448// │ 2 4│ 2 = Shift, 4 = Level3 + Shift 449// │ 1 3│ 1 = Normal, 3 = Level3 450// └────┘ 451// ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━┓ 452// │ ~ ~ │ ! ' │ @ " │ # ˝ │ $ ¸ │ % ˇ │ ^ ^ │ & ˘ │ * ˙ │ ( ̣ │ ) ° │ _ ¯ │ + ˛ ┃ ⌫ Back ┃ 453// │ ` ` │ 1 ¡ │ 2 © │ 3 • │ 4 § │ 5 € │ 6 ¢ │ 7 − │ 8 × │ 9 ÷ │ 0 ° │ - – │ = — ┃ space ┃ 454// ┢━━━━━┷━┱───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┴─┬───┺━┳━━━━━━━┫ 455// ┃ ┃ Q │ W │ E Ę │ R │ T │ Y │ U │ I │ O Ó │ P │ { « │ } » ┃ Enter ┃ 456// ┃Tab ↹ ┃ q │ w │ e ę │ r │ t │ y │ u │ i │ o ó │ p │ [ ‹ │ ] › ┃ ⏎ ┃ 457// ┣━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓ ┃ 458// ┃ ┃ A Ą │ S Ś │ D │ F │ G │ H │ J │ K │ L Ł │ : “ │ " ” │ | ¶ ┃ ┃ 459// ┃Caps ⇬ ┃ a ą │ s ś │ d │ f │ g │ h │ j │ k │ l ł │ ; ‘ │ ' ’ │ \ ┃ ┃ 460// ┣━━━━━━━━┹────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┬┴────┲┷━━━━━┻━━━━━━┫ 461// ┃ │ Z Ż │ X Ź │ C Ć │ V │ B │ N Ń │ M │ < „ │ > · │ ? ¿ ┃ ┃ 462// ┃Shift ⇧ │ z ż │ x ź │ c ć │ v │ b │ n ń │ m │ , ‚ │ . … │ / ⁄ ┃Shift ⇧ ┃ 463// ┣━━━━━━━┳━━━━━┷━┳━━━┷━━━┱─┴─────┴─────┴─────┴─────┴─────┴───┲━┷━━━━━╈━━━━━┻━┳━━━━━━━┳━━━┛ 464// ┃ ┃ ┃ ┃ ␣ ⍽ ┃ ┃ ┃ ┃ 465// ┃Ctrl ┃Meta ┃Alt ┃ ␣ Space ⍽ ┃AltGr ⇮┃Menu ┃Ctrl ┃ 466// ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹───────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┛ 467 468partial alphanumeric_keys 469xkb_symbols "intl" { 470 471 include "latin(intl)" 472 473 name[Group1]="Polish (intl., with dead keys)"; 474 475 key <AD03> { [ e, E, eogonek, Eogonek ] }; 476 key <AD09> { [ o, O, oacute, Oacute ] }; 477 478 key <AC01> { [ a, A, aogonek, Aogonek ] }; 479 key <AC02> { [ s, S, sacute, Sacute ] }; 480 key <AC09> { [ l, L, lstroke, Lstroke ] }; 481 482 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 483 key <AB02> { [ x, X, zacute, Zacute ] }; 484 key <AB03> { [ c, C, cacute, Cacute ] }; 485 key <AB06> { [ n, N, nacute, Nacute ] }; 486 487 include "kpdl(comma)" 488 489 include "level3(ralt_switch)" 490}; 491 492// Polish Colemak 493// by Tomek Piotrowski <tomek.piotrowski@atteo.com> 494// 495partial alphanumeric_keys 496xkb_symbols "colemak" { 497 include "us(colemak)" 498 name[Group1]= "Polish (Colemak)"; 499 500 key <AB01> { [ z, Z, zabovedot, Zabovedot ] }; 501 key <AB02> { [ x, X, zacute, Zacute ] }; 502 key <AB03> { [ c, C, cacute, Cacute ] }; 503 key <AC01> { [ a, A, aogonek, Aogonek ] }; 504 key <AC03> { [ s, S, sacute, Sacute ] }; 505 key <AC07> { [ n, N, nacute, Nacute ] }; 506 key <AC08> { [ e, E, eogonek, Eogonek ] }; 507 key <AC10> { [ o, O, oacute, Oacute ] }; 508 key <AD01> { [ q, Q, ae, AE ] }; 509 key <AD02> { [ w, W, dead_circumflex, asciitilde ] }; 510 key <AD03> { [ f, F, ssharp, 0x1001e9e ] }; 511 key <AD07> { [ l, L, lstroke, Lstroke ] }; 512 513 include "level3(ralt_switch)" 514}; 515 516// Colemak-DH (ISO), Polish variant, https://colemakmods.github.io/mod-dh/ 517// 518partial alphanumeric_keys 519xkb_symbols "colemak_dh" { 520 include "us(colemak_dh)" 521 name[Group1]= "Polish (Colemak-DH)"; 522 523 key <LSGT> { [ z, Z, zabovedot, Zabovedot ] }; 524 key <AB01> { [ x, X, zacute, Zacute ] }; 525 key <AB02> { [ c, C, cacute, Cacute ] }; 526 key <AB05> { [ backslash, bar, bar, brokenbar ] }; 527 key <AC01> { [ a, A, aogonek, Aogonek ] }; 528 key <AC03> { [ s, S, sacute, Sacute ] }; 529 key <AC07> { [ n, N, nacute, Nacute ] }; 530 key <AC08> { [ e, E, eogonek, Eogonek ] }; 531 key <AC10> { [ o, O, oacute, Oacute ] }; 532 key <AD01> { [ q, Q, ae, AE ] }; 533 key <AD02> { [ w, W, dead_circumflex, asciitilde ] }; 534 key <AD03> { [ f, F, ssharp, 0x1001e9e ] }; 535 key <AD07> { [ l, L, lstroke, Lstroke ] }; 536 537 include "level3(ralt_switch)" 538}; 539 540partial alphanumeric_keys 541xkb_symbols "sun_type6" { 542 include "sun_vndr/pl(sun_type6)" 543}; 544 545//Glagolica 546partial alphanumeric_keys 547xkb_symbols "glagolica" 548{ 549 name[Group1] = "Polish (Glagolica)"; 550 551 key <AD01> { [ U2C21, U2C23, any, any ] };//q/Q/Ⱑ/Ⱓ 552 key <AD02> { [ U2C02, U2C19, any, any ] };//w/W/Ⰲ/Ⱉ/ 553 key <AD03> { [ U2C05, U2C27, U2C24, U2C25 ] };//e/E/Ⰵ/Ⱗ/Ⱔ/Ⱕ 554 key <AD04> { [ U2C13, U2C13, any, any ] };//r/R/Ⱃ/Ⱃ 555 key <AD05> { [ U2C15, U2C15, any, any ] };//t/T/Ⱅ/Ⱅ 556 key <AD06> { [ U2C09, U2C0A, U2C20, any ] };//y/Y/Ⰹ/Ⰺ/Ⱐ 557 key <AD07> { [ U2C16, U2C16, any, any ] };//u/U/Ⱆ/ 558 key <AD08> { [ U2C0B, U2C09, any, any ] };//i/I/Ⰻ/Ⰹ 559 key <AD09> { [ U2C11, U2C19, U2C41, any ] };//o/O/Ⱁ/Ⱉ/ⱁ 560 key <AD10> { [ U2C12, U2C1A, any, any ] };//p/P/Ⱂ/Ⱊ 561 key <AD11> { [ U2C1E, U2C26, any, any ] };//[/{/Ⱎ/Ⱖ 562 key <AD12> { [ U2C1B, U2C29, any, any ] };//]/}/Ⱋ/Ⱙ 563 key <AC01> { [ U2C00, U2C00, U2C28, U2C29 ] };//a/A/Ⰰ/Ⰰ/Ⱘ/Ⱙ 564 key <AC02> { [ U2C14, U2C1E, any, any ] };//[/{/Ⱄ/Ⱎ 565 key <AC03> { [ U2C04, U2C04, any, any ] };//d/D/Ⰴ/Ⰴ 566 key <AC04> { [ U2C17, U2C2A, any, any ] };//f/F/Ⱇ/Ⱚ 567 key <AC05> { [ U2C03, U2C03, any, any ] };//g/G/Ⰳ/Ⰳ 568 key <AC06> { [ U2C18, U2C18, any, any ] };//h/H/Ⱈ/Ⱈ 569 key <AC07> { [ U2C0A, U2C0A, any, any ] };//j/J/Ⰺ/Ⰺ 570 key <AC08> { [ U2C0D, U2C0D, any, any ] };//k/K/Ⰽ/Ⰽ 571 key <AC09> { [ U2C0E, U2C0E, any, any ] };//l/L/Ⰾ/Ⰾ 572 key <AC12> { [ U2C0C, any, any, any ] };//\/|/Ⰼ 573 key <AC10> { [ U2C28, U2C24, any, any ] };//;/:/Ⱘ/Ⱔ 574 key <AC11> { [ U2C06, any, any, any ] };//'/"/Ⰶ 575 key <AB01> { [ U2C08, U2C07, any, any ] };//z/Z/Ⰸ/Ⰷ 576 key <AB02> { [ U2C20, U2C1F, any, any ] };//x/X/Ⱐ/Ⱏ 577 key <AB03> { [ U2C1C, U2C1D, any, any] };//c/C/Ⱌ/Ⱍ 578 key <AB04> { [ U2C02, U2C2B, any, any ] };//v/V/Ⰲ/Ⱛ 579 key <AB05> { [ U2C01, U2C01, any, any ] };//b/B/Ⰱ/Ⰱ 580 key <AB06> { [ U2C10, U2C10, any, any ] };//n/N/Ⱀ/Ⱀ 581 key <AB07> { [ U2C0F, U2C0F, any, any ] };//m/M/Ⰿ/Ⰿ 582 583 include "kpdl(comma)" 584 585 include "level3(ralt_switch)" 586}; 587