1default partial alphanumeric_keys 2xkb_symbols "ipa" { 3 4 name[Group1]="International Phonetic Alphabet"; // also serves extIPA and orientalistic conversions 5 key.type[Group1]="EIGHT_LEVEL"; 6 7//━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\\ 8 key <TLDE> {[ grave, asciitilde, minutes, seconds, U2053, NoSymbol, U2015, asciicircum ]}; // ` ~ ′ ″ SwungDash QuotDash ^ 9 key <AE01> {[ 1, exclam, onesuperior, exclamdown, U02E5, U030B, NoSymbol, NoSymbol ]}; // 1 ! ¹ ¡ ˥ ̋◌┎────┒ 10 key <AE02> {[ 2, quotedbl, twosuperior, oneeighth, U02E6, U0301, U25CB, U20DD ]}; // 2 " ² ⅛ ˦ ́◌┃○ ⃝ ┃ 11 key <AE03> {[ 3, section, threesuperior, sterling, U02E7, U0304, NoSymbol, U0348 ]}; // 3 § ³ £ ˧ ̄◌┖─┒◌͆ ┃ 12 key <AE04> {[ 4, dollar, onequarter, currency, U02E8, U0300, NoSymbol, U032A ]}; // 4 $ ¼ ¤ ˨ ̀◌ ┃̪◌ ┃ 13 key <AE05> {[ 5, percent, U0331, threeeighths, U02E9, U030F, NoSymbol, U0347 ]}; // 5 % ̱◌ ⅜ ˩ ̏◌ ┃◌͇ ┃ 14 key <AE06> {[ 6, ampersand, U032E, fiveeighths, U0323, U0311, NoSymbol, U02EC ]}; // 6 & ̮◌ ⅝ ̣◌ ̑◌ ┃ˬ ┃ 15 key <AE07> {[ 7, slash, braceleft, seveneighths, U0307, U0313, NoSymbol, U02ED ]}; // 7 / { ⅞ ̇◌ ̓◌ ┃˭ ┃ Disordered 16 key <AE08> {[ 8, parenleft, bracketleft, U2E28, U27E8, U032D, U27EA, U0354 ]}; // 8 ( [ ⸨ ⟨ ̭◌ ⟪┃◌͔┃ Speech 17 key <AE09> {[ 9, parenright, bracketright, U2E29, U27E9, NoSymbol, U27EB, U0355 ]}; // 9 ) ] ⸩ ⟩ ⟫┃◌͕┃ 18 key <AE10> {[ 0, equal, braceright, degree, U02BE, notequal, U2248, U034E ]}; // 0 = } ° ʾ ≠ ≈┃◌͎ ┃ 19 // ┃ ┃ 20 key <AE11> {[ U0294, question, backslash, questiondown, U0295, U02A1, U02A2, U0362 ]}; // ʔ ? \ ¿ ʕ ʡ ʢ┃◌͢◌┃ 21 // ┎───┚ ┃ 22 key <AE12> {[ U2197, U2198, UA71C, UA71B, U02BF, asterisk, U2193, U2191 ]}; // ↗ ↘ ꜜ ꜛ ʿ┃* ↓ ↑ ┃ 23//─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────//──────────┸──────┸───────────────\\ 24 key <AD01> {[ q, U025C, at, Greek_OMEGA, U02DE, NoSymbol, U20BD, Q ]}; // q ɜ @ Ω ˞ ₽ Q 25 key <AD02> {[ w, U028D, U0270, NoSymbol, U026F, NoSymbol, U031D, W ]}; // w ʍ ɰ ɯ ̝◌ W 26 key <AD03> {[ e, schwa, U025B, U025C, U0258, NoSymbol, EuroSign, E ]}; // e ə ɛ ɜ ɘ € E 27 key <AD04> {[ r, U027E, U0281, U0280, U0279, U027B, U027D, R ]}; // r ɾ ʁ ʀ ɹ ɻ ɽ R 28 key <AD05> {[ t,Greek_theta, U0288, NoSymbol, U01C0, U01C1, U01C2, T ]}; // t θ ʈ ǀ ǁ ǂ T 29 key <AD06> {[ z, U0292, U0291, U0293, U0290, U026E, U261C, Z ]}; // z ʒ ʑ ʓ ʐ ɮ ☜ Z 30 key <AD07> {[ u, U028A, U0289, U028C, U025E, U02AA, U261D, U ]}; // u ʊ ʉ ʌ ɞ ʪ ☝ U 31 key <AD08> {[ i, U026A, U0268, U0264, U0275, U02AB, U261F, I ]}; // i ɪ ɨ ɤ ɵ ʫ ☟ I 32 key <AD09> {[ o, U0254, oslash, oe, U032A, U025E, U261E, O ]}; // o ɔ ø œ ̪◌ ɞ ☞ O 33 key <AD10> {[ p, U0303, U031F, U2038, U033A, NoSymbol, U1D513, P ]}; // p ̃◌ ̟◌ ‸ ̻̺◌ P 34 // ┎─┒ 35 key <AD11> {[ U02E4, U0330, U0308, U033D, U033B, U02C0, U02C1, U02AC ]}; // ˤ ̰◌ ̈◌ ̽◌ ̻◌ ˀ ˁ┃ʬ┃ 36 key <AD12> {[ U02D0, U02D1, U0320, U0304, U033C, NoSymbol, NoSymbol, U02AD ]}; // ː ˑ ̠◌ ̄◌ ̼◌ ┃ʭ┃ 37//─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────//──────────────┸─┸────────────────\\ 38 key <AC01> {[ a, U0251, ae, U0252, U0250, U0276, U031E, A ]}; // a ɑ æ ɒ ɐ ɶ ̞◌ A 39 key <AC02> {[ s, U0283, NoSymbol, U0286, U0282, U031C, U0318, S ]}; // s ʃ ʆ ʂ ̜◌ ̘◌ S 40 key <AC03> {[ d, eth, U0256, U0257, U1D91, U0339, U0319, D ]}; // d ð ɖ ɗ ᶑ ̹◌ ̙◌ D 41 // ┎─┒ 42 key <AC04> {[ f, U0278, NoSymbol, NoSymbol, NoSymbol, NoSymbol, U02A9, F ]}; // f ɸ ┃ʩ┃F 43 // ┖─┚ 44 key <AC05> {[ g, U0263, U0262, U0260, U029B, U0261, U20B8, G ]}; // g ɣ ɢ ɠ ʛ ɡ ₸ G 45 key <AC06> {[ h, U0266, U0267, U029C, hstroke, NoSymbol, U20B4, H ]}; // h ɦ ɧ ʜ ħ ₴ H 46 key <AC07> {[ j, U029D, U025F, U0284, NoSymbol, NoSymbol, NoSymbol, J ]}; // j ʝ ɟ ʄ J 47 key <AC08> {[ k, U02B0, U02B1, U029E, NoSymbol, UA78E, U2113, K ]}; // k ʰ ʱ ʞ ꞎ ℓ K 48 key <AC09> {[ l, U028E, U026B, U026C, U029F, U026D, U027A, L ]}; // l ʎ ɫ ɬ ʟ ɭ ɺ L 49 // ┎────┒ 50 key <AC10> {[ U02B2, U02B7, U02E0, U02B8, U207F, U02E1, U034C, U034D ]}; // ʲ ʷ ˠ ʸ ⁿ ˡ┃◌͌ ◌͍ ┃ Disordered 51 key <AC11> {[ U032F, U0325, U032C, U030C, U031A, U0327, U034B, U0348 ]}; // ̯◌ ̥◌ ̬◌ ̌◌◌̚ ̧◌┃◌͋ ◌͈ ┃ Speech 52 key <BKSL> {[ U0329, U02C8, U02CC, U0306, U02BC, U0328, U034A, U0349 ]}; // ̩◌ ˈ ˌ ̆◌ ʼ ̨◌┃◌͊ ◌͉┃ 53//─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────//────────────┸────┸───────────────\\ 54 key <LSGT> {[ bar, U2016, U203F, U035C, U0361, NoSymbol, NoSymbol, NoSymbol ]}; // | ‖ ‿ ◌͜◌ ◌͡◌ 55 key <AB01> {[ y, U028F, guillemotright, U203A, U0265, NoSymbol, U0287, Y ]}; // y ʏ » › ɥ ʇ Y 56 key <AB02> {[ x, Greek_chi, guillemotleft, U2039, UA725, UA724, U0297, X ]}; // x χ « ‹ ꜥ Ꜥ ʗ X 57 key <AB03> {[ c, ccedilla, U0255, U023C, UA723, UA722, U0296, C ]}; // c ç ɕ ȼ ꜣ Ꜣ ʖ C 58 key <AB04> {[ v, U028B, U2C71, U0274, doublelowquotemark, singlelowquotemark, NoSymbol, V ]}; // v ʋ ⱱ ɴ „ ‚ V 59 key <AB05> {[ b, Greek_beta, U0299, U0253, leftdoublequotemark, leftsinglequotemark, U0298, B ]}; // b β ʙ ɓ “ ‘ ʘ B 60 key <AB06> {[ n, eng, U0272, U0273, rightdoublequotemark, rightsinglequotemark, U01C3, N ]}; // n ŋ ɲ ɳ ” ’ ǃ N 61 key <AB07> {[ m, U0271, mu, U22C5, U0298, U01C3, U20BC, M ]}; // m ɱ µ ⋅ ʘ ǃ ₼ M 62 key <AB08> {[ comma, semicolon, periodcentered, multiply, U2020, U2021, NoSymbol, NoSymbol ]}; // , ; · × † ‡ 63 key <AB09> {[ period, colon, ellipsis, division, enfilledcircbullet, NoSymbol, NoSymbol, NoSymbol ]}; // . : … ÷ • 64 key <AB10> {[ minus, underscore, endash, emdash, U2011, U00AD, U2010, U2212 ]}; // - _ – — NoBrHyphen SHy Hy Minus 65//━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\\ 66 //│\\ 67// Makes <KPDL> return comma instead of dot, as the comma is decimal separator outside the English dominions //\\ 68 include "kpdl(comma)" //│\\ 69 //│\\ 70// Maps Right Alt for reaching the third level //\\ 71 include "level3(ralt_switch)" //│\\ 72 //│\\ 73// Maps <CAPS> for reaching the fifth level //\\ 74 include "level5(caps_switch)" //│\\ 75 //\\ 76// Offers pressing both shift keys for capslock //│\\ 77 include "shift(both_shiftlock)" //│\\ 78 //│\│╱ 79//──────────────────────────────────────────────────────────────────────────────────────────────────────────────┴─┘˝˝ 80 81// Note about a bug in XKB: One has to set lv5:rwin_switch_lock or one of the other level 5 locks for the caps switch to work! 82// https://bugs.freedesktop.org/show_bug.cgi?id=102189 83}; 84 85partial alphanumeric_keys 86xkb_symbols "qwerty" { 87 include "trans(ipa)" 88 89 name[Group1] = "International Phonetic Alphabet (QWERTY)"; 90 91 key <AB01> {[ z, U0292, U0291, U0293, U0290, U026E, U261C, Z ]}; // z ʒ ʑ ʓ ʐ ɮ ☜ Z 92 key <AD06> {[ y, U028F, guillemotright, U203A, U0265, NoSymbol, U0287, Y ]}; // y ʏ » › ɥ ʇ Y 93}; 94