trans revision 1.1.1.3 1 1.1.1.2 mrg default partial alphanumeric_keys
2 1.1 mrg xkb_symbols "ipa" {
3 1.1 mrg
4 1.1 mrg name[Group1]="International Phonetic Alphabet"; // also serves extIPA and orientalistic conversions
5 1.1 mrg key.type[Group1]="EIGHT_LEVEL";
6 1.1 mrg
7 1.1 mrg //\\
8 1.1 mrg key <TLDE> {[ grave, asciitilde, minutes, seconds, U2053, NoSymbol, U2015, asciicircum ]}; // ` ~ SwungDash QuotDash ^
9 1.1 mrg key <AE01> {[ 1, exclam, onesuperior, exclamdown, U02E5, U030B, NoSymbol, NoSymbol ]}; // 1 !
10 1.1 mrg key <AE02> {[ 2, quotedbl, twosuperior, oneeighth, U02E6, U0301, U25CB, U20DD ]}; // 2 "
11 1.1 mrg key <AE03> {[ 3, section, threesuperior, sterling, U02E7, U0304, NoSymbol, U0348 ]}; // 3
12 1.1 mrg key <AE04> {[ 4, dollar, onequarter, currency, U02E8, U0300, NoSymbol, U032A ]}; // 4 $
13 1.1 mrg key <AE05> {[ 5, percent, U0331, threeeighths, U02E9, U030F, NoSymbol, U0347 ]}; // 5 %
14 1.1 mrg key <AE06> {[ 6, ampersand, U032E, fiveeighths, U0323, U0311, NoSymbol, U02EC ]}; // 6 &
15 1.1 mrg key <AE07> {[ 7, slash, braceleft, seveneighths, U0307, U0313, NoSymbol, U02ED ]}; // 7 / { Disordered
16 1.1 mrg key <AE08> {[ 8, parenleft, bracketleft, U2E28, U27E8, U032D, U27EA, U0354 ]}; // 8 ( [ Speech
17 1.1 mrg key <AE09> {[ 9, parenright, bracketright, U2E29, U27E9, NoSymbol, U27EB, U0355 ]}; // 9 ) ]
18 1.1 mrg key <AE10> {[ 0, equal, braceright, degree, U02BE, notequal, U2248, U034E ]}; // 0 = }
19 1.1 mrg //
20 1.1 mrg key <AE11> {[ U0294, question, backslash, questiondown, U0295, U02A1, U02A2, U0362 ]}; // ? \
21 1.1 mrg //
22 1.1 mrg key <AE12> {[ U2197, U2198, UA71C, UA71B, U02BF, asterisk, U2193, U2191 ]}; // *
23 1.1 mrg ////\\
24 1.1 mrg key <AD01> {[ q, U025C, at, Greek_OMEGA, U02DE, NoSymbol, U20BD, Q ]}; // q @ Q
25 1.1 mrg key <AD02> {[ w, U028D, U0270, NoSymbol, U026F, NoSymbol, U031D, W ]}; // w W
26 1.1 mrg key <AD03> {[ e, schwa, U025B, U025C, U0258, NoSymbol, EuroSign, E ]}; // e E
27 1.1 mrg key <AD04> {[ r, U027E, U0281, U0280, U0279, U027B, U027D, R ]}; // r R
28 1.1 mrg key <AD05> {[ t,Greek_theta, U0288, NoSymbol, U01C0, U01C1, U01C2, T ]}; // t T
29 1.1 mrg key <AD06> {[ z, U0292, U0291, U0293, U0290, U026E, U261C, Z ]}; // z Z
30 1.1 mrg key <AD07> {[ u, U028A, U0289, U028C, U025E, U02AA, U261D, U ]}; // u U
31 1.1 mrg key <AD08> {[ i, U026A, U0268, U0264, U0275, U02AB, U261F, I ]}; // i I
32 1.1 mrg key <AD09> {[ o, U0254, oslash, oe, U032A, U025E, U261E, O ]}; // o O
33 1.1 mrg key <AD10> {[ p, U0303, U031F, U2038, U033A, NoSymbol, U1D513, P ]}; // p P
34 1.1 mrg //
35 1.1 mrg key <AD11> {[ U02E4, U0330, U0308, U033D, U033B, U02C0, U02C1, U02AC ]}; //
36 1.1 mrg key <AD12> {[ U02D0, U02D1, U0320, U0304, U033C, NoSymbol, NoSymbol, U02AD ]}; //
37 1.1 mrg ////\\
38 1.1 mrg key <AC01> {[ a, U0251, ae, U0252, U0250, U0276, U031E, A ]}; // a A
39 1.1 mrg key <AC02> {[ s, U0283, NoSymbol, U0286, U0282, U031C, U0318, S ]}; // s S
40 1.1 mrg key <AC03> {[ d, eth, U0256, U0257, U1D91, U0339, U0319, D ]}; // d D
41 1.1 mrg //
42 1.1 mrg key <AC04> {[ f, U0278, NoSymbol, NoSymbol, NoSymbol, NoSymbol, U02A9, F ]}; // f F
43 1.1 mrg //
44 1.1 mrg key <AC05> {[ g, U0263, U0262, U0260, U029B, U0261, U20B8, G ]}; // g G
45 1.1 mrg key <AC06> {[ h, U0266, U0267, U029C, hstroke, NoSymbol, U20B4, H ]}; // h H
46 1.1 mrg key <AC07> {[ j, U029D, U025F, U0284, NoSymbol, NoSymbol, NoSymbol, J ]}; // j J
47 1.1 mrg key <AC08> {[ k, U02B0, U02B1, U029E, NoSymbol, UA78E, U2113, K ]}; // k K
48 1.1 mrg key <AC09> {[ l, U028E, U026B, U026C, U029F, U026D, U027A, L ]}; // l L
49 1.1 mrg //
50 1.1 mrg key <AC10> {[ U02B2, U02B7, U02E0, U02B8, U207F, U02E1, U034C, U034D ]}; // Disordered
51 1.1 mrg key <AC11> {[ U032F, U0325, U032C, U030C, U031A, U0327, U034B, U0348 ]}; // Speech
52 1.1 mrg key <BKSL> {[ U0329, U02C8, U02CC, U0306, U02BC, U0328, U034A, U0349 ]}; //
53 1.1 mrg ////\\
54 1.1 mrg key <LSGT> {[ bar, U2016, U203F, U035C, U0361, NoSymbol, NoSymbol, NoSymbol ]}; // |
55 1.1 mrg key <AB01> {[ y, U028F, guillemotright, U203A, U0265, NoSymbol, U0287, Y ]}; // y Y
56 1.1 mrg key <AB02> {[ x, Greek_chi, guillemotleft, U2039, UA725, UA724, U0297, X ]}; // x X
57 1.1 mrg key <AB03> {[ c, ccedilla, U0255, U023C, UA723, UA722, U0296, C ]}; // c C
58 1.1 mrg key <AB04> {[ v, U028B, U2C71, U0274, doublelowquotemark, singlelowquotemark, NoSymbol, V ]}; // v V
59 1.1 mrg key <AB05> {[ b, Greek_beta, U0299, U0253, leftdoublequotemark, leftsinglequotemark, U0298, B ]}; // b B
60 1.1 mrg key <AB06> {[ n, eng, U0272, U0273, rightdoublequotemark, rightsinglequotemark, U01C3, N ]}; // n N
61 1.1 mrg key <AB07> {[ m, U0271, mu, U22C5, U0298, U01C3, U20BC, M ]}; // m M
62 1.1 mrg key <AB08> {[ comma, semicolon, periodcentered, multiply, U2020, U2021, NoSymbol, NoSymbol ]}; // , ;
63 1.1 mrg key <AB09> {[ period, colon, ellipsis, division, enfilledcircbullet, NoSymbol, NoSymbol, NoSymbol ]}; // . :
64 1.1 mrg key <AB10> {[ minus, underscore, endash, emdash, U2011, U00AD, U2010, U2212 ]}; // - _ NoBrHyphen SHy Hy Minus
65 1.1 mrg //\\
66 1.1 mrg //\\
67 1.1 mrg // Makes <KPDL> return comma instead of dot, as the comma is decimal separator outside the English dominions //\\
68 1.1 mrg include "kpdl(comma)" //\\
69 1.1 mrg //\\
70 1.1 mrg // Maps Right Alt for reaching the third level //\\
71 1.1 mrg include "level3(ralt_switch)" //\\
72 1.1 mrg //\\
73 1.1 mrg // Maps <CAPS> for reaching the fifth level //\\
74 1.1 mrg include "level5(caps_switch)" //\\
75 1.1 mrg //\\
76 1.1 mrg // Offers pressing both shift keys for capslock //\\
77 1.1 mrg include "shift(both_shiftlock)" //\\
78 1.1 mrg //\
79 1.1 mrg //
80 1.1 mrg
81 1.1 mrg // 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 1.1 mrg // https://bugs.freedesktop.org/show_bug.cgi?id=102189
83 1.1 mrg };
84 1.1.1.3 mrg
85 1.1.1.3 mrg partial alphanumeric_keys
86 1.1.1.3 mrg xkb_symbols "qwerty" {
87 1.1.1.3 mrg include "trans(ipa)"
88 1.1.1.3 mrg
89 1.1.1.3 mrg name[Group1] = "International Phonetic Alphabet (QWERTY)";
90 1.1.1.3 mrg
91 1.1.1.3 mrg key <AB01> {[ z, U0292, U0291, U0293, U0290, U026E, U261C, Z ]}; // z Z
92 1.1.1.3 mrg key <AD06> {[ y, U028F, guillemotright, U203A, U0265, NoSymbol, U0287, Y ]}; // y Y
93 1.1.1.3 mrg };
94