Some useful mappings enabled in evdev section
[xorg/xkeyboard-config] / symbols / epo
1 // $XKeyboardConfig$
2
3 // Esperanto keyboard maps -- "Ekverto"
4 //
5 // Ekverto A ("legacy") (2004-01-10)
6 // Chusslove Illich (Ĉaslavo Iliĉo) <caslav.ilic@gmx.net>
7 //
8 // Ekverto B ("basic") (2006-12-02)
9 // Benno Schulenberg (Beno Sĥilenberĥ) <bensberg@justemail.net>
10 // Chusslove Illich (Ĉaslavo Iliĉo) <caslav.ilic@gmx.net>
11
12 default partial alphanumeric_keys
13 xkb_symbols "basic" {
14
15   name[Group1]= "Esperanto";
16
17   include "us(basic)"
18
19   key.type[Group1] = "FOUR_LEVEL_ALPHABETIC";
20
21   key <AD01>  { [ scircumflex,  Scircumflex,  q,             Q          ] };
22   key <AD02>  { [ gcircumflex,  Gcircumflex,  w,             W          ] };
23   key <AB02>  { [ ccircumflex,  Ccircumflex,  x,             X          ] };
24   key <AD06>  { [ ubreve,       Ubreve,       y,             Y          ] };
25
26   key.type[Group1] = "FOUR_LEVEL_SEMIALPHABETIC";
27
28   key <AD11>  { [ jcircumflex,  Jcircumflex,  bracketleft,   braceleft  ] };
29   key <AD12>  { [ hcircumflex,  Hcircumflex,  bracketright,  braceright ] };
30
31   key <AD09>  { [ o,            O,            braceleft,     braceleft  ] };
32   key <AD10>  { [ p,            P,            braceright,    braceright ] };
33
34   key <AC01>  { [ a,            A,     leftsinglequotemark,  NoSymbol   ] };
35   key <AC02>  { [ s,            S,    rightsinglequotemark,  NoSymbol   ] };
36   key <AC03>  { [ d,            D,     leftdoublequotemark,  NoSymbol   ] };
37   key <AC04>  { [ f,            F,    rightdoublequotemark,  NoSymbol   ] };
38
39   key <AB06>  { [ n,            N,            endash,        endash     ] };
40   key <AB07>  { [ m,            M,            emdash,        emdash     ] };
41
42   key.type[Group1] = "FOUR_LEVEL";
43
44   key <AE05>  { [ 5,            percent,      EuroSign,      EuroSign   ] };
45
46   include "level3(ralt_switch)"
47 };
48
49
50 partial alphanumeric_keys
51 xkb_symbols "legacy" {
52
53   name[Group1]= "Esperanto - displaced semicolon and quote (obsolete)";
54
55   key.type[Group1] = "FOUR_LEVEL";
56
57   key <TLDE>  { [ grave,         asciitilde,  NoSymbol,  NoSymbol ] };
58   key <AE01>  { [ 1,             exclam,      NoSymbol,  NoSymbol ] };
59   key <AE02>  { [ 2,             quotedbl,    NoSymbol,  NoSymbol ] };
60   key <AE03>  { [ 3,             numbersign,  NoSymbol,  NoSymbol ] };
61   key <AE04>  { [ 4,             dollar,      NoSymbol,  NoSymbol ] };
62   key <AE05>  { [ 5,             percent,     NoSymbol,  NoSymbol ] };
63   key <AE06>  { [ 6,             apostrophe,  NoSymbol,  NoSymbol ] };
64   key <AE07>  { [ 7,             ampersand,   NoSymbol,  NoSymbol ] };
65   key <AE08>  { [ 8,             asterisk,    NoSymbol,  NoSymbol ] };
66   key <AE09>  { [ 9,             parenleft,   NoSymbol,  NoSymbol ] };
67   key <AE10>  { [ 0,             parenright,  NoSymbol,  NoSymbol ] };
68   key <AE11>  { [ minus,         underscore,  NoSymbol,  NoSymbol ] };
69   key <AE12>  { [ equal,         plus,        NoSymbol,  NoSymbol ] };
70
71   key <AB08>  { [ comma,         semicolon,   NoSymbol,  NoSymbol ] };
72   key <AB09>  { [ period,        colon,       NoSymbol,  NoSymbol ] };
73   key <AB10>  { [ slash,         question,    NoSymbol,  NoSymbol ] };
74
75   key <AD11>  { [ bracketleft,   braceleft,   NoSymbol,  NoSymbol ] };
76   key <AD12>  { [ bracketright,  braceright,  NoSymbol,  NoSymbol ] };
77
78   key <BKSL>  { [ backslash,     bar,         NoSymbol,  NoSymbol ] };
79   key <LSGT>  { [ NoSymbol,      NoSymbol,    NoSymbol,  NoSymbol ] };
80
81   key.type[Group1] = "FOUR_LEVEL_SEMIALPHABETIC";
82
83   key <AD01>  { [ scircumflex,  Scircumflex,  at,                    NoSymbol ] };
84   key <AD02>  { [ jcircumflex,  Jcircumflex,  asciicircum,           NoSymbol ] };
85   key <AD03>  { [ e,            E,            EuroSign,              NoSymbol ] };
86   key <AD04>  { [ r,            R,            emdash,                NoSymbol ] };
87   key <AD05>  { [ t,            T,            endash,                NoSymbol ] };
88   key <AD06>  { [ gcircumflex,  Gcircumflex,  NoSymbol,              NoSymbol ] };
89   key <AD07>  { [ u,            U,            NoSymbol,              NoSymbol ] };
90   key <AD08>  { [ i,            I,            NoSymbol,              NoSymbol ] };
91   key <AD09>  { [ o,            O,            NoSymbol,              NoSymbol ] };
92   key <AD10>  { [ p,            P,            NoSymbol,              NoSymbol ] };
93
94   key <AC01>  { [ a,            A,            less,                  NoSymbol ] };
95   key <AC02>  { [ s,            S,            greater,               NoSymbol ] };
96   key <AC03>  { [ d,            D,            leftdoublequotemark,   NoSymbol ] };
97   key <AC04>  { [ f,            F,            rightdoublequotemark,  NoSymbol ] };
98   key <AC05>  { [ g,            G,            NoSymbol,              NoSymbol ] };
99   key <AC06>  { [ h,            H,            NoSymbol,              NoSymbol ] };
100   key <AC07>  { [ j,            J,            NoSymbol,              NoSymbol ] };
101   key <AC08>  { [ k,            K,            NoSymbol,              NoSymbol ] };
102   key <AC09>  { [ l,            L,            NoSymbol,              NoSymbol ] };
103   key <AC10>  { [ ubreve,       Ubreve,       NoSymbol,              NoSymbol ] };
104   key <AC11>  { [ hcircumflex,  Hcircumflex,  NoSymbol,              NoSymbol ] };
105
106   key <AB01>  { [ z,            Z,            leftsinglequotemark,   NoSymbol ] };
107   key <AB02>  { [ ccircumflex,  Ccircumflex,  rightsinglequotemark,  NoSymbol ] };
108   key <AB03>  { [ c,            C,            NoSymbol,              NoSymbol ] };
109   key <AB04>  { [ v,            V,            NoSymbol,              NoSymbol ] };
110   key <AB05>  { [ b,            B,            NoSymbol,              NoSymbol ] };
111   key <AB06>  { [ n,            N,            NoSymbol,              NoSymbol ] };
112   key <AB07>  { [ m,            M,            NoSymbol,              NoSymbol ] };
113
114   include "level3(ralt_switch)"
115 };
116
117 // Add Esperanto supersignos to the corresponding key in a Qwerty keyboard.
118 // This is a generic "component" that is not used to the other layouts in this
119 // file but it is meant to be applied to any layout. If you have any questions
120 // ask J. Pablo Fernández <pupeno@pupeno.com>.
121 partial
122 xkb_symbols "qwerty" {
123     key <AB03> { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] };
124     key <AC05> { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] };
125     key <AC06> { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] };
126     key <AC07> { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] };
127     key <AC02> { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] };
128     key <AD07> { [ NoSymbol, NoSymbol,      ubreve,      Ubreve ] };
129 };
130
131 // Add Esperanto supersignos to the corresponding key in a Dvorak keyboard.
132 // Same comment as the Qwerty one above applies.
133 partial
134 xkb_symbols "dvorak" {
135     key <AD08> { [ NoSymbol, NoSymbol, ccircumflex, Ccircumflex ] };
136     key <AD07> { [ NoSymbol, NoSymbol, gcircumflex, Gcircumflex ] };
137     key <AC07> { [ NoSymbol, NoSymbol, hcircumflex, Hcircumflex ] };
138     key <AB03> { [ NoSymbol, NoSymbol, jcircumflex, Jcircumflex ] };
139     key <AC10> { [ NoSymbol, NoSymbol, scircumflex, Scircumflex ] };
140     key <AC04> { [ NoSymbol, NoSymbol,      ubreve,      Ubreve ] };
141 };