xkeyboard-config
379 строк · 16.7 Кб
1// Keyboard layouts for Canada.
2
3default partial
4xkb_symbols "fr" {
5name[Group1] = "French (Canada)";
6
7key <TLDE> {[ numbersign, bar, backslash ]};
8key <AE01> {[ 1, exclam, plusminus ]};
9key <AE02> {[ 2, quotedbl, at ]};
10key <AE03> {[ 3, slash, sterling ]};
11key <AE04> {[ 4, dollar, cent ]};
12key <AE05> {[ 5, percent, currency ]};
13key <AE06> {[ 6, question, notsign ]};
14key <AE07> {[ 7, ampersand, brokenbar ]};
15key <AE08> {[ 8, asterisk, twosuperior ]};
16key <AE09> {[ 9, parenleft, threesuperior ]};
17key <AE10> {[ 0, parenright, onequarter ]};
18key <AE11> {[ minus, underscore, onehalf ]};
19key <AE12> {[ equal, plus, threequarters ]};
20
21key <AD01> {[ q, Q ]};
22key <AD02> {[ w, W ]};
23key <AD03> {[ e, E, EuroSign ]};
24key <AD04> {[ r, R ]};
25key <AD05> {[ t, T ]};
26key <AD06> {[ y, Y, yen ]};
27key <AD07> {[ u, U ]};
28key <AD08> {[ i, I ]};
29key <AD09> {[ o, O, section ]};
30key <AD10> {[ p, P, paragraph ]};
31key <AD11> {[dead_circumflex, dead_circumflex, bracketleft ]};
32key <AD12> {[ dead_cedilla, dead_diaeresis, bracketright ]};
33
34key <AC01> {[ a, A ]};
35key <AC02> {[ s, S ]};
36key <AC03> {[ d, D ]};
37key <AC04> {[ f, F ]};
38key <AC05> {[ g, G ]};
39key <AC06> {[ h, H ]};
40key <AC07> {[ j, J ]};
41key <AC08> {[ k, K ]};
42key <AC09> {[ l, L ]};
43key <AC10> {[ semicolon, colon, asciitilde ]};
44key <AC11> {[dead_grave, dead_grave, braceleft ]};
45key <BKSL> {[ less, greater, braceright ]};
46
47key <LSGT> {[guillemotleft, guillemotright, degree]};
48key <AB01> {[ z, Z ]};
49key <AB02> {[ x, X ]};
50key <AB03> {[ c, C ]};
51key <AB04> {[ v, V ]};
52key <AB05> {[ b, B ]};
53key <AB06> {[ n, N ]};
54key <AB07> {[ m, M, mu ]};
55key <AB08> {[ comma, apostrophe, macron ]};
56key <AB09> {[ period, period, hyphen ]};
57key <AB10> {[ eacute, Eacute, dead_acute ]};
58
59key <SPCE> {[ space, space, nobreakspace ]};
60
61include "level3(ralt_switch)"
62};
63
64xkb_symbols "fr-dvorak" {
65name[Group1] = "French (Canada, Dvorak)";
66
67key <TLDE> {[ numbersign, bar, backslash ]};
68key <AE01> {[ 1, exclam, plusminus ]};
69key <AE02> {[ 2, quotedbl, at ]};
70key <AE03> {[ 3, slash, sterling ]};
71key <AE04> {[ 4, dollar, cent ]};
72key <AE05> {[ 5, percent, currency ]};
73key <AE06> {[ 6, question, notsign ]};
74key <AE07> {[ 7, ampersand, brokenbar ]};
75key <AE08> {[ 8, asterisk, twosuperior ]};
76key <AE09> {[ 9, parenleft, threesuperior ]};
77key <AE10> {[ 0, parenright, onequarter ]};
78key <AE11> {[dead_circumflex, dead_circumflex, bracketleft ]};
79key <AE12> {[ dead_cedilla, dead_diaeresis, bracketright ]};
80
81key <AD01> {[dead_grave, dead_grave, braceleft ]};
82key <AD02> {[ comma, apostrophe, macron ]};
83key <AD03> {[ period, period, hyphen ]};
84key <AD04> {[ p, P, paragraph ]};
85key <AD05> {[ y, Y ]};
86key <AD06> {[ f, F ]};
87key <AD07> {[ g, G ]};
88key <AD08> {[ c, C ]};
89key <AD09> {[ r, R ]};
90key <AD10> {[ l, L ]};
91key <AD11> {[ eacute, Eacute, dead_acute ]};
92key <AD12> {[ equal, plus, threequarters ]};
93
94key <AC01> {[ a, A ]};
95key <AC02> {[ o, O, section ]};
96key <AC03> {[ e, E ]};
97key <AC04> {[ u, U ]};
98key <AC05> {[ i, I ]};
99key <AC06> {[ d, D ]};
100key <AC07> {[ h, H ]};
101key <AC08> {[ t, T ]};
102key <AC09> {[ n, N ]};
103key <AC10> {[ s, S ]};
104key <AC11> {[ minus, underscore, onehalf ]};
105key <BKSL> {[ less, greater, braceright ]};
106
107key <LSGT> {[guillemotleft, guillemotright, degree]};
108key <AB01> {[ semicolon, colon, asciitilde ]};
109key <AB02> {[ q, Q ]};
110key <AB03> {[ j, J ]};
111key <AB04> {[ k, K ]};
112key <AB05> {[ x, X ]};
113key <AB06> {[ b, B ]};
114key <AB07> {[ m, M, mu ]};
115key <AB08> {[ w, W ]};
116key <AB09> {[ v, V ]};
117key <AB10> {[ z, Z ]};
118
119key <SPCE> {[ space, space, nobreakspace ]};
120
121include "level3(ralt_switch)"
122};
123
124partial
125xkb_symbols "fr-legacy" {
126
127include "ca(fr)"
128
129name[Group1] = "French (Canada, legacy)";
130
131key <TLDE> {[ degree, degree, notsign ]};
132key <AE01> {[ 1, exclam, onesuperior ]};
133
134key <AE03> {[ 3, numbersign, threesuperior ]};
135key <AE04> {[ 4, dollar, onequarter ]};
136key <AE05> {[ 5, percent, onehalf ]};
137key <AE06> {[ 6, question, threequarters ]};
138key <AE07> {[ 7, ampersand, braceleft ]};
139key <AE08> {[ 8, asterisk, bracketleft ]};
140key <AE09> {[ 9, parenleft, bracketright, plusminus ]};
141key <AE10> {[ 0, parenright, braceright ]};
142key <AE11> {[ minus, underscore, bar, questiondown]};
143key <AE12> {[ equal, plus, dead_cedilla ]};
144
145key <AD04> {[ r, R, paragraph, registered ]};
146key <AD06> {[ y, Y, yen ]};
147key <AD09> {[ o, O, oslash, Oslash ]};
148key <AD10> {[ p, P, thorn, THORN ]};
149key <AD11> {[dead_circumflex, dead_circumflex, degree ]};
150key <AD12> {[ ccedilla, Ccedilla, dead_tilde, dead_diaeresis ]};
151
152key <AC01> {[ a, A, ae, AE ]};
153key <AC02> {[ s, S, ssharp, section ]};
154key <AC03> {[ d, D, eth, ETH ]};
155key <AC04> {[ f, F, ordfeminine ]};
156key <AC10> {[ semicolon, colon, dead_acute, dead_acute ]};
157key <AC11> {[ egrave, Egrave ]};
158key <BKSL> {[ agrave, Agrave, dead_grave ]};
159
160key <LSGT> {[ ugrave, Ugrave, backslash, bar ]};
161key <AB01> {[ z, Z, guillemotleft ]};
162key <AB02> {[ x, X, guillemotright]};
163key <AB03> {[ c, C, cent, copyright ]};
164key <AB07> {[ m, M, mu, masculine ]};
165key <AB08> {[ comma, apostrophe, less ]};
166key <AB09> {[ period, period, greater ]};
167key <AB10> {[ eacute, Eacute, slash ]};
168};
169
170// Inuktitut keyboard layout, by Pablo Saratxaga <pablo@mandrakesoft.com>.
171alphanumeric_keys
172xkb_symbols "ike" {
173
174name[Group1]= "Inuktitut";
175
176key <TLDE> {[ U157b, U1575 ]};
177key <AE01> {[ U1595, 1 ]};
178key <AE02> {[ U1449, 2 ]};
179key <AE03> {[ U1550, 3 ]};
180key <AE04> {[ U1483, 4 ]};
181key <AE05> {[ U1466, 5 ]};
182key <AE06> {[ U1585, 6 ]};
183key <AE07> {[ U14bb, 7 ]};
184key <AE08> {[ U14d0, 8 ]};
185key <AE09> {[ U14ea, 9 ]};
186key <AE10> {[ U153e, 0 ]};
187key <AE11> {[ minus, underscore]};
188key <AE12> {[ U155d, equal ]};
189
190key <AD01> {[ U158f, U148b ]};
191key <AD02> {[ U1403, U1431 ]};
192key <AD03> {[ U157f, U1546 ]};
193key <AD04> {[ U146d, U1596 ]};
194key <AD05> {[ U144e, U1671 ]};
195key <AD06> {[ U14ef, U1673 ]};
196key <AD07> {[ U14a5, U1675 ]};
197key <AD08> {[ U14c2, U15a4 ]};
198key <AD09> {[ U14d5, U15a0 ]};
199key <AD10> {[ U1528, U15a6 ]};
200key <AD11> {[ U14a1, U1505 ]};
201key <AD12> {[dead_abovedot,U141e]};
202
203key <AC01> {[ U1591, U148d ]};
204key <AC02> {[ U1405, U1433 ]};
205key <AC03> {[ U1581, U1548 ]};
206key <AC04> {[ U146f, U1555 ]};
207key <AC05> {[ U1450, parenleft]};
208key <AC06> {[ U14f1, parenright]};
209key <AC07> {[ U14a7, U152a ]};
210key <AC08> {[ U14c4, U1557 ]};
211key <AC09> {[ U14d7, U15a2 ]};
212key <AC10> {[ semicolon, colon ]};
213key <AC11> {[apostrophe,quotedbl]};
214key <BKSL> {[ backslash, bar ]};
215
216key <LSGT> {[ U1579, U1577 ]};
217key <AB01> {[ U1593, U1490 ]};
218key <AB02> {[ U140a, U1438 ]};
219key <AB03> {[ U1583, U154b ]};
220key <AB04> {[ U1472, question ]};
221key <AB05> {[ U1455, U157c ]};
222key <AB06> {[ U14f4, U14c7 ]};
223key <AB07> {[ U14aa, U14da ]};
224key <AB08> {[ comma, less ]};
225key <AB09> {[ period, greater ]};
226key <AB10> {[ U152d, U1559 ]};
227};
228
229partial
230xkb_symbols "multix" {
231
232name[Group1] = "Canadian (CSA)";
233
234key.type[group1]="EIGHT_LEVEL";
235key <TLDE> {[ slash, backslash, bar, NoSymbol, NoSymbol, hyphen ]};
236key <AE01> {[ 1, exclam, plusminus, NoSymbol, onesuperior, exclamdown ]};
237key <AE02> {[ 2, at, at, NoSymbol, twosuperior, NoSymbol ]};
238key <AE03> {[ 3, numbersign, sterling, NoSymbol, threesuperior, sterling ]};
239key <AE04> {[ 4, dollar, currency, NoSymbol, onequarter, EuroSign ]};
240key <AE05> {[ 5, percent, NoSymbol, NoSymbol, onehalf, threeeighths ]};
241key <AE06> {[ 6, question, NoSymbol, NoSymbol, threequarters, fiveeighths ]};
242key <AE07> {[ 7, ampersand, braceleft, NoSymbol, NoSymbol, seveneighths ]};
243key <AE08> {[ 8, asterisk, braceright, NoSymbol, NoSymbol, trademark ]};
244key <AE09> {[ 9, parenleft, bracketleft, NoSymbol, NoSymbol, plusminus ]};
245key <AE10> {[ 0, parenright, bracketright, NoSymbol ]};
246key <AE11> {[ minus, underscore, onehalf, NoSymbol, NoSymbol, questiondown ]};
247key <AE12> {[ equal, plus, notsign, NoSymbol, dead_cedilla, dead_ogonek ]};
248
249key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
250key <AD01> {[ q, Q, NoSymbol, NoSymbol, NoSymbol, Greek_OMEGA ]};
251key <AD02> {[ w, W, NoSymbol, NoSymbol, lstroke, Lstroke ]};
252key <AD03> {[ e, E, EuroSign, NoSymbol, oe, OE ]};
253key <AD04> {[ r, R, NoSymbol, NoSymbol, paragraph, registered ]};
254key <AD05> {[ t, T, NoSymbol, NoSymbol, tslash, Tslash ]};
255key <AD06> {[ y, Y, NoSymbol, NoSymbol, leftarrow, yen ]};
256key <AD07> {[ u, U, NoSymbol, NoSymbol, downarrow, uparrow ]};
257key <AD08> {[ i, I, NoSymbol, NoSymbol, rightarrow, idotless ]};
258key <AD09> {[ o, O, section, NoSymbol, oslash, Oslash ]};
259key <AD10> {[ p, P, paragraph, NoSymbol, thorn, THORN ]};
260
261key.type[group1]="EIGHT_LEVEL";
262key <AD11> {[dead_circumflex, dead_diaeresis, dead_grave, NoSymbol, NoSymbol, dead_abovering ]};
263
264key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
265key <AD12> {[ ccedilla, Ccedilla, asciitilde, NoSymbol, dead_tilde, dead_macron ]};
266
267key <AC01> {[ a, A, NoSymbol, NoSymbol, ae, AE ]};
268key <AC02> {[ s, S, NoSymbol, NoSymbol, ssharp, section ]};
269key <AC03> {[ d, D, NoSymbol, NoSymbol, eth, ETH ]};
270key <AC04> {[ f, F, NoSymbol, NoSymbol, NoSymbol, ordfeminine ]};
271key <AC05> {[ g, G, NoSymbol, NoSymbol, eng, ENG ]};
272key <AC06> {[ h, H, NoSymbol, NoSymbol, hstroke, Hstroke ]};
273key <AC07> {[ j, J, NoSymbol, NoSymbol, U0133, U0132 ]}; // ij IJ
274key <AC08> {[ k, K, NoSymbol, NoSymbol, kra, NoSymbol ]};
275key <AC09> {[ l, L, NoSymbol, NoSymbol, U0140, U013F ]}; // ŀ Ŀ
276
277key.type[group1]="EIGHT_LEVEL";
278key <AC10> {[ semicolon, colon, degree, NoSymbol, dead_acute, dead_doubleacute ]};
279
280key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
281key <AC11> {[ egrave, Egrave, braceleft, NoSymbol, NoSymbol, dead_caron ]};
282key <BKSL> {[ agrave, Agrave, braceright, NoSymbol, NoSymbol, dead_breve ]};
283
284key <LSGT> {[ ugrave, Ugrave, degree, NoSymbol, NoSymbol, brokenbar ]};
285key <AB01> {[ z, Z, guillemotleft, NoSymbol ]};
286key <AB02> {[ x, X, guillemotright, NoSymbol ]};
287key <AB03> {[ c, C, NoSymbol, NoSymbol, cent, copyright ]};
288key <AB04> {[ v, V, NoSymbol, NoSymbol, leftdoublequotemark, leftsinglequotemark ]};
289key <AB05> {[ b, B, NoSymbol, NoSymbol, rightdoublequotemark, rightsinglequotemark ]};
290key <AB06> {[ n, N, NoSymbol, NoSymbol, U0149, U266A ]}; // ʼn ♪
291key <AB07> {[ m, M, mu, NoSymbol, mu, masculine ]};
292
293key.type[group1]="EIGHT_LEVEL";
294key <AB08> {[ comma, apostrophe, less, NoSymbol, Greek_horizbar, multiply ]};
295key <AB09> {[ period, quotedbl, greater, NoSymbol, periodcentered, division ]};
296
297key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
298key <AB10> {[ eacute, Eacute, dead_acute, NoSymbol, NoSymbol, dead_abovedot ]};
299
300include "nbsp(level3)"
301
302include "level3(ralt_switch)"
303include "level5(rctrl_switch)"
304};
305
306// OLPC Section
307xkb_symbols "olpc" {
308
309include "ca(fr)"
310
311key <AE02> {[ 2, quotedbl, ograve, Ograve ]};
312key <AE03> {[ 3, slash, at, none ]};
313
314key <AD03> {[ e, E, EuroSign, none ]};
315
316key <AB09> {[ period, period, U2010, none ]}; // HYPHEN
317
318key <I219> {[ guillemotleft, guillemotright, degree, none ]};
319};
320
321partial alphanumeric_keys
322xkb_symbols "eng" {
323include "us(basic)"
324name[Group1] = "English (Canada)";
325
326key <LSGT> {[ backslash, bar, none, none ]};
327};
328
329
330// EXTRAS:
331
332partial alphanumeric_keys
333xkb_symbols "kut" {
334
335// Ejective U+0313 and acute accents are taken from shs layout.
336
337include "ca(shs)"
338
339name[Group1]= "Kutenai";
340
341key <AD05> {[ t, T, U01C2, U01C2 ]}; // alveolar click
342
343key <AB03> {[ c, C, cent, cent ]};
344key <AB09> {[ period, greater, periodcentered ]};
345key <AB10> {[ slash, question, U0294 ]}; // glottal stop
346
347key <AC10> {[ semicolon, colon, U02BE, U02BE ]}; // MODIFIER LETTER RIGHT HALF RING
348key <AC11> {[ apostrophe, quotedbl, U0315, U0315 ]}; // COMBINING COMMA ABOVE RIGHT
349};
350
351// Secwepemctsin keyboard for X11
352// written by Neskie Manuel <neskiem@gmail.com>
353partial alphanumeric_keys
354xkb_symbols "shs" {
355
356include "us"
357
358name[Group1]= "Secwepemctsin";
359
360// Using a "dead key" to get a COMBINING COMMA ABOVE
361// for ejectives on q, l, t, s, m, g, k, p, w, y, r.
362// The Compose key is used for the other acutes and grave.
363
364key <AB08> {[ comma, less, U0313 ]};
365key <AC01> {[ a, A, aacute, Aacute ]};
366key <AD03> {[ e, E, eacute, Eacute ]};
367key <AD07> {[ u, U, uacute, Uacute ]};
368key <AD08> {[ i, I, iacute, Iacute ]};
369key <AD09> {[ o, O, oacute, Oacute ]};
370
371include "level3(ralt_switch)"
372include "compose(rctrl)"
373};
374
375
376partial alphanumeric_keys
377xkb_symbols "sun_type6" {
378include "sun_vndr/ca(sun_type6)"
379};
380