gb revision 1.1.1.16 1 // Keyboard layouts for Great Britain.
2
3 default partial alphanumeric_keys
4 xkb_symbols "basic" {
5
6 // The basic UK layout, also known as the IBM 166 layout,
7 // but with the useless brokenbar pushed two levels up.
8
9 include "latin"
10
11 name[Group1]="English (UK)";
12
13 key <TLDE> { [ grave, notsign, bar, bar ] };
14 key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] };
15 key <AE03> { [ 3, sterling, threesuperior, sterling ] };
16 key <AE04> { [ 4, dollar, EuroSign, onequarter ] };
17
18 key <AC11> { [apostrophe, at, dead_circumflex, dead_caron] };
19 key <BKSL> { [numbersign, asciitilde, dead_grave, dead_breve ] };
20
21 key <LSGT> { [ backslash, bar, bar, brokenbar ] };
22
23 include "level3(ralt_switch)"
24 };
25
26 partial alphanumeric_keys
27 xkb_symbols "intl" {
28
29 // A UK layout but with five accents made into dead keys:
30 // grave, diaeresis, circumflex, acute, and tilde.
31 // By Phil Jones <philjones1 at blueyonder.co.uk>.
32
33 include "latin"
34
35 name[Group1]="English (UK, intl., with dead keys)";
36
37 key <TLDE> { [ dead_grave, notsign, bar, bar ] };
38 key <AE02> { [ 2, dead_diaeresis, twosuperior, onehalf ] };
39 key <AE03> { [ 3, sterling, threesuperior, onethird ] };
40 key <AE04> { [ 4, dollar, EuroSign, onequarter ] };
41 key <AE06> { [ 6, dead_circumflex, threequarters, onesixth ] };
42
43 key <AC11> { [ dead_acute, at, apostrophe, bar ] };
44 key <BKSL> { [ numbersign, dead_tilde, bar, bar ] };
45
46 key <LSGT> { [ backslash, bar, bar, bar ] };
47 key <AB08> { [ comma, less, ccedilla, Ccedilla ] };
48
49 include "level3(ralt_switch)"
50 };
51
52 partial alphanumeric_keys
53 xkb_symbols "extd" {
54 // Clone of the Microsoft "United Kingdom Extended" layout, which
55 // includes dead keys for: grave; diaeresis; circumflex; tilde; and
56 // accute. It also enables direct access to accute characters using
57 // the Multi_key (Alt Gr).
58 //
59 // Taken from...
60 // "Windows Keyboard Layouts"
61 // https://docs.microsoft.com/en-gb/globalization/windows-keyboard-layouts#U
62 //
63 // -- Jonathan Miles <jon (a] cybah.co.uk>
64
65 include "latin"
66
67 name[Group1]="English (UK, extended, Windows)";
68
69 key <TLDE> { [ dead_grave, notsign, brokenbar, NoSymbol ] };
70 key <AE02> { [ 2, quotedbl, dead_diaeresis, onehalf ] };
71 key <AE03> { [ 3, sterling, threesuperior, onethird ] };
72 key <AE04> { [ 4, dollar, EuroSign, onequarter ] };
73 key <AE06> { [ 6, asciicircum, dead_circumflex, NoSymbol ] };
74
75 key <AD02> { [ w, W, wacute, Wacute ] };
76 key <AD03> { [ e, E, eacute, Eacute ] };
77 key <AD06> { [ y, Y, yacute, Yacute ] };
78 key <AD07> { [ u, U, uacute, Uacute ] };
79 key <AD08> { [ i, I, iacute, Iacute ] };
80 key <AD09> { [ o, O, oacute, Oacute ] };
81 key <AD12> { [ bracketright, braceright, NoSymbol, bar ] };
82
83 key <AC01> { [ a, A, aacute, Aacute ] };
84 key <AC11> { [ apostrophe, at, dead_acute, grave ] };
85 key <BKSL> { [ numbersign, asciitilde, dead_tilde, backslash ] };
86
87 key <LSGT> { [ backslash, bar, NoSymbol, NoSymbol ] };
88 key <AB03> { [ c, C, ccedilla, Ccedilla ] };
89
90 include "level3(ralt_switch)"
91 };
92
93 // Describe the differences between the US Colemak layout
94 // and a UK variant. By Andy Buckley (andy (a] insectnation.org)
95
96 partial alphanumeric_keys
97 xkb_symbols "colemak" {
98 include "us(colemak)"
99
100 name[Group1]="English (UK, Colemak)";
101
102 key <TLDE> { [ grave, notsign, bar, asciitilde ] };
103 key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] };
104 key <AE03> { [ 3, sterling, threesuperior, sterling ] };
105 key <AE04> { [ 4, dollar, EuroSign, onequarter ] };
106
107 key <AC11> { [apostrophe, at, dead_circumflex, dead_caron] };
108 key <BKSL> { [numbersign, asciitilde, dead_grave, dead_breve ] };
109
110 key <LSGT> { [ backslash, bar, asciitilde, brokenbar ] };
111
112 include "level3(ralt_switch)"
113 };
114
115 // Colemak-DH (ISO) layout, UK Variant, https://colemakmods.github.io/mod-dh/
116
117 partial alphanumeric_keys
118 xkb_symbols "colemak_dh" {
119 include "us(colemak_dh)"
120
121 name[Group1]="English (UK, Colemak-DH)";
122
123 key <TLDE> { [ grave, notsign, bar, asciitilde ] };
124 key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] };
125 key <AE03> { [ 3, sterling, threesuperior, sterling ] };
126 key <AE04> { [ 4, dollar, EuroSign, onequarter ] };
127
128 key <AC11> { [apostrophe, at, dead_circumflex, dead_caron] };
129 key <BKSL> { [numbersign, asciitilde, dead_grave, dead_breve ] };
130
131 key <AB05> { [ backslash, bar, asciitilde, brokenbar ] };
132
133 include "level3(ralt_switch)"
134 };
135
136
137 // Dvorak (UK) keymap (by odaen) allowing the usage of
138 // the and ? key and swapping the @ and " keys.
139
140 partial alphanumeric_keys
141 xkb_symbols "dvorak" {
142 include "us(dvorak-alt-intl)"
143
144 name[Group1]="English (UK, Dvorak)";
145
146 key <TLDE> { [ grave, notsign, bar, bar ] };
147 key <AE02> { [ 2, quotedbl, twosuperior, NoSymbol ] };
148 key <AE03> { [ 3, sterling, threesuperior, NoSymbol ] };
149 key <AD01> { [ apostrophe, at ] };
150 key <BKSL> { [ numbersign, asciitilde ] };
151 key <LSGT> { [ backslash, bar ] };
152 };
153
154 // Dvorak letter positions, but punctuation all in the normal UK positions.
155
156 partial alphanumeric_keys
157 xkb_symbols "dvorakukp" {
158 include "gb(dvorak)"
159
160 name[Group1]="English (UK, Dvorak, with UK punctuation)";
161
162 key <AE11> { [ minus, underscore ] };
163 key <AE12> { [ equal, plus ] };
164 key <AD11> { [ bracketleft, braceleft ] };
165 key <AD12> { [ bracketright, braceright ] };
166 key <AD01> { [ slash, question ] };
167 key <AC11> { [apostrophe, at, dead_circumflex, dead_caron] };
168 };
169
170 partial alphanumeric_keys
171 xkb_symbols "mac" {
172
173 include "latin"
174
175 name[Group1]= "English (UK, Macintosh)";
176
177 key <TLDE> { [ section, plusminus ] };
178 key <AE02> { [ 2, at, EuroSign ] };
179 key <AE03> { [ 3, sterling, numbersign ] };
180 key <LSGT> { [ grave, asciitilde ] };
181
182 include "level3(ralt_switch)"
183 include "level3(enter_switch)"
184 };
185
186
187 partial alphanumeric_keys
188 xkb_symbols "mac_intl" {
189
190 include "latin"
191
192 name[Group1]="English (UK, Macintosh, intl.)";
193
194 key <TLDE> { [ section, plusminus, notsign, notsign ] }; //dead_grave
195 key <AE02> { [ 2, at, EuroSign, onehalf ] };
196 key <AE03> { [ 3, sterling, twosuperior, onethird ] };
197 key <AE04> { [ 4, dollar, threesuperior, onequarter ] };
198 key <AE06> { [ 6, dead_circumflex, NoSymbol, onesixth ] };
199 key <AD09> { [ o, O, oe, OE ] };
200
201 key <AC11> { [ dead_acute, dead_diaeresis, dead_diaeresis, bar ] }; //dead_doubleacute
202 key <BKSL> { [ backslash, bar, numbersign, bar ] };
203
204 key <LSGT> { [ dead_grave, dead_tilde, brokenbar, bar ] };
205
206 include "level3(ralt_switch)"
207 };
208
209 partial alphanumeric_keys
210 xkb_symbols "pl" {
211
212 // Polish accented letters on upper levels of corresponding base letters.
213 // Idea from Wawrzyniec Niewodniczaski, adapted by Aleksander Kowalski.
214
215 include "gb(basic)"
216
217 name[Group1]="Polish (British keyboard)";
218
219 key <AD03> { [ e, E, eogonek, Eogonek ] };
220 key <AD09> { [ o, O, oacute, Oacute ] };
221
222 key <AC01> { [ a, A, aogonek, Aogonek ] };
223 key <AC02> { [ s, S, sacute, Sacute ] };
224
225 key <AB01> { [ z, Z, zabovedot, Zabovedot ] };
226 key <AB02> { [ x, X, zacute, Zacute ] };
227 key <AB03> { [ c, C, cacute, Cacute ] };
228 key <AB06> { [ n, N, nacute, Nacute ] };
229 };
230
231 partial alphanumeric_keys
232 xkb_symbols "gla" {
233
234 // Grave-accented letters on the upper levels of the relevant vowels.
235
236 include "gb(basic)"
237
238 name[Group1]="Scottish Gaelic";
239
240 key <AD03> { [ e, E, egrave, Egrave ] };
241 key <AD07> { [ u, U, ugrave, Ugrave ] };
242 key <AD08> { [ i, I, igrave, Igrave ] };
243 key <AD09> { [ o, O, ograve, Ograve ] };
244
245 key <AC01> { [ a, A, agrave, Agrave ] };
246 };
247
248 // EXTRAS:
249
250 partial alphanumeric_keys
251 xkb_symbols "sun_type6" {
252 include "sun_vndr/gb(sun_type6)"
253 };
254