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