• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// based on a keyboard map from an 'xkb/symbols/se' file
2
3default partial alphanumeric_keys
4xkb_symbols "basic" {
5    include "latin(type2)"
6    include "se(se)"
7};
8
9partial alphanumeric_keys
10xkb_symbols "se" {
11
12    name[Group1]="Swedish";
13
14    key <AE05>	{ [         5,    percent,     EuroSign,         cent ]	};
15    key <AE11>	{ [      plus,   question,    backslash, questiondown ]	};
16    key <AE12>	{ [dead_acute, dead_grave,    plusminus,      notsign ]	};
17
18
19    key <AC10>	{ [odiaeresis, Odiaeresis,       oslash,     Ooblique ]	};
20    key <AC11>	{ [adiaeresis, Adiaeresis,           ae,           AE ]	};
21    key <TLDE>	{ [   section,    onehalf,    paragraph, threequarters]	};
22
23    key <BKSL>	{ [apostrophe,   asterisk,        acute,     multiply ]	};
24
25    key <SPCE>	{ [     space,      space,        space, nobreakspace ]	};
26
27    key <LSGT>  { [      less,     greater,         bar,    brokenbar ] };
28    include "kpdl(comma)"
29
30    include "level3(ralt_switch)"
31};
32
33partial alphanumeric_keys
34xkb_symbols "nodeadkeys" {
35
36    // Modifies the basic Swedish layout to eliminate all dead keys
37
38    include "latin(type2)"
39    include "latin(type2_nodeadkeys)"
40    include "se(se)"
41
42    name[Group1]="Swedish (no dead keys)";
43
44    key <AE12>	{ [     acute,      grave,    plusminus,      notsign ]	};
45};
46
47// Swedish Dvorak
48partial alphanumeric_keys
49xkb_symbols "dvorak" {
50
51    include "se(basic)"
52
53    name[Group1]="Swedish (Dvorak)";
54
55    key <AD01> { [     aring,      Aring,    backslash		     ]	};
56    key <AD02> { [  adiaeresis,	Adiaeresis,  braceleft,  bracketleft ]	};
57    key <AD03> { [ odiaeresis, Odiaeresis,  braceright, bracketright ]	};
58    key <AD04> { [         p,          P,        thorn,        THORN ]	};
59    key <AD05> { [         y,          Y,    leftarrow,          yen ]	};
60    key <AD06> { [         f,          F,      dstroke,  ordfeminine ]	};
61    key <AD07> { [         g,          G,          eng,          ENG ]	};
62    key <AD08> { [         c,          C,    copyright,    copyright ]	};
63    key <AD09> { [         r,          R,   registered,   registered ]	};
64    key <AD10> { [         l,          L,      lstroke,      Lstroke ]	};
65    key <AD11> { [     comma,  semicolon, dead_cedilla,  dead_ogonek ]	};
66    key <AD12> { [ dead_diaeresis, dead_circumflex, dead_tilde,	asciicircum	]	};
67
68    key <AC01> { [         a,          A,           ae,           AE ]	};
69    key <AC02> { [         o,          O,           oe,           OE ]	};
70    key <AC03> { [         e,          E,     EuroSign,         cent ]	};
71    key <AC04> { [         u,          U,    downarrow,      uparrow ]	};
72    key <AC05> { [         i,          I,   rightarrow,     idotless ]	};
73    key <AC06> { [         d,          D,          eth,          ETH ]	};
74    key <AC07> { [         h,          H,      hstroke,      Hstroke ]	};
75    key <AC08> { [         t,          T,       tslash,       Tslash ]	};
76    key <AC09> { [         n,          N ]	};
77    key <AC10> { [         s,          S,       ssharp,      section ]	};
78    key <AC11> { [     minus, underscore, dead_belowdot, dead_abovedot ] };
79
80    key <AB01> { [    period,   colon, periodcentered, dead_abovedot ]	};
81    key <AB02> { [         q,          Q,           at,  Greek_OMEGA ]	};
82    key <AB03> { [         j,          J ]	};
83    key <AB04> { [         k,          K,          kra,    ampersand ]	};
84    key <AB05> { [         x,          X, guillemotright,    greater ]	};
85    key <AB06> { [         b,          B, rightdoublequotemark, apostrophe ] };
86    key <AB07> { [         m,          M,           mu,    masculine ]	};
87    key <AB08> { [         w,          W,      lstroke,      Lstroke ]	};
88    key <AB09> { [         v,          V, leftdoublequotemark, grave ]	};
89    key <AB10> { [         z,          Z, guillemotleft,        less ]	};
90};
91
92// Ivan Popov, 2005-07-17
93// phonetic layout for Russian cyrillic letters
94// on Swedish (latin type2) keyboards
95
96// level3 modifier is a shortcut to the "se" meaning of the keys where
97// we place cyrillic letters, handy for accessing the corresponding
98// punctuation marks.
99// It is important to have access to punctuation marks, and the rest of
100// alphabetical keys are added for being consequent so that the users
101// can expect the level3 modifier to give what the key label shows.
102
103partial alphanumeric_keys
104xkb_symbols "rus" {
105    include "se(basic)"
106
107    name[Group1]="Russian (Sweden, phonetic)";
108    key.type[group1]="ALPHABETIC";
109
110    key <TLDE> {	[ Cyrillic_io, Cyrillic_IO ]	};
111    key <AE12> {	[ Cyrillic_hardsign, Cyrillic_HARDSIGN ]	};
112
113    key <AD01> {	[ Cyrillic_ya, Cyrillic_YA ]	};
114    key <AD02> {	[ Cyrillic_ve, Cyrillic_VE ]	};
115    key <AD03> {	[ Cyrillic_ie, Cyrillic_IE ]	};
116    key <AD04> {	[ Cyrillic_er, Cyrillic_ER ]	};
117    key <AD05> {	[ Cyrillic_te, Cyrillic_TE ]	};
118    key <AD06> {	[ Cyrillic_yeru, Cyrillic_YERU ]	};
119    key <AD07> {	[ Cyrillic_u, Cyrillic_U ]	};
120    key <AD08> {	[ Cyrillic_i, Cyrillic_I ]	};
121    key <AD09> {	[ Cyrillic_o, Cyrillic_O ]	};
122    key <AD10> {	[ Cyrillic_pe, Cyrillic_PE ]	};
123    key <AD11> {	[ Cyrillic_e, Cyrillic_E ]	};
124
125    key <AC01> {	[ Cyrillic_a, Cyrillic_A ]	};
126    key <AC02> {	[ Cyrillic_es, Cyrillic_ES ]	};
127    key <AC03> {	[ Cyrillic_de, Cyrillic_DE ]	};
128    key <AC04> {	[ Cyrillic_ef, Cyrillic_EF ]	};
129    key <AC05> {	[ Cyrillic_ghe, Cyrillic_GHE ]	};
130    key <AC06> {	[ Cyrillic_ha, Cyrillic_HA ]	};
131    key <AC07> {	[ Cyrillic_shorti, Cyrillic_SHORTI ]	};
132    key <AC08> {	[ Cyrillic_ka, Cyrillic_KA ]	};
133    key <AC09> {	[ Cyrillic_el, Cyrillic_EL ]	};
134    key <AC10> {	[ Cyrillic_sha, Cyrillic_SHA ]	};
135    key <AC11> {	[ Cyrillic_shcha, Cyrillic_SHCHA ]	};
136    key <BKSL> {	[ Cyrillic_yu, Cyrillic_YU ]	};
137
138    key <LSGT> {	[ Cyrillic_che, Cyrillic_CHE ]	};
139    key <AB01> {	[ Cyrillic_ze, Cyrillic_ZE ]	};
140    key <AB02> {	[ Cyrillic_softsign, Cyrillic_SOFTSIGN ]	};
141    key <AB03> {	[ Cyrillic_tse, Cyrillic_TSE ]	};
142    key <AB04> {	[ Cyrillic_zhe, Cyrillic_ZHE ]	};
143    key <AB05> {	[ Cyrillic_be, Cyrillic_BE ]	};
144    key <AB06> {	[ Cyrillic_en, Cyrillic_EN ]	};
145    key <AB07> {	[ Cyrillic_em, Cyrillic_EM ]	};
146};
147
148partial alphanumeric_keys
149xkb_symbols "rus_nodeadkeys" {
150
151    include "se(nodeadkeys)"
152    include "se(rus)"
153
154    name[Group1]="Russian (Sweden, phonetic, no dead keys)";
155
156    key <AE12> {	[ Cyrillic_hardsign, Cyrillic_HARDSIGN ]	};
157};
158
159xkb_symbols "smi" {
160    include "fi(smi)"
161    name[Group1]= "Northern Saami (Sweden)";
162};
163
164// Copied from macintosh_vndr/se
165partial alphanumeric_keys
166xkb_symbols "mac" {
167
168    // Describes the differences between a very simple en_US
169    // keyboard and a very simple Swedish(Sweden) keyboard.
170
171    include "latin"
172    name[Group1]= "Swedish (Macintosh)";
173
174    key <TLDE> {	[         section,         degree	]	};
175    key <AE01> {	[               1,          exclam,        copyright,      exclamdown	]	};
176    key <AE02> {	[               2,        quotedbl, 	       at,	 oneeighth	]	};
177    key <AE03> {	[               3,      numbersign,         sterling,             yen	]	};
178    key <AE04> {	[               4,        currency, 	   dollar,	      cent	]	};
179    key <AE06> {	[               6,       ampersand     	]	};
180    key <AE07> {	[               7,           slash, 	      bar,       backslash	]	};
181    key <AE08> {	[               8,       parenleft,      bracketleft,       braceleft	]	};
182    key <AE09> {	[               9,      parenright,     bracketright,      braceright	]	};
183    key <AE10> {	[               0,           equal     	]	};
184    key <AE11> {	[            plus,        question      ]	};
185    key <AE12> {	[           acute,           grave	]	};
186    key <AD11> {	[	    aring,           Aring     	]	};
187    key <AD12> {	[       diaeresis,     asciicircum, 	asciitilde			]	};
188    key <AC10> {	[      odiaeresis,      Odiaeresis, 	   oslash,	    Ooblique	]	};
189    key <AC11> {	[      adiaeresis,      Adiaeresis,               ae,		AE	]	};
190    key <BKSL> {	[      apostrophe,        asterisk,               at			]	};
191    key <AB08> {	[           comma,       semicolon     	]	};
192    key <AB09> {	[          period,           colon     	]	};
193    key <AB10> {	[           minus,      underscore     	]	};
194
195    include "kpdl(comma)"
196    include "level3(ralt_switch)"
197};
198
199// Svdvorak
200// This version of Dvorak follows danish and norwegian style in hope for a
201// Scandinavian standard.
202partial alphanumeric_keys
203xkb_symbols "svdvorak" {
204
205   include "se(basic)"
206
207   name[Group1]="Swedish (Svdvorak)";
208
209   key <AD01> { [ aring, Aring, braceleft ] };
210   key <AD02> { [ comma, semicolon, bracketleft ] };
211   key <AD03> { [ period, colon, bracketright ] };
212   key <AD04> { [ p, P, braceright ] };
213   key <AD05> { [ y, Y ] };
214   key <AD06> { [ f, F ] };
215   key <AD07> { [ g, G ] };
216   key <AD08> { [ c, C ] };
217   key <AD09> { [ r, R ] };
218   key <AD10> { [ l, L ] };
219   key <AD11> { [ apostrophe, asterisk ] };
220
221   key <AC01> { [ a, A ] };
222   key <AC02> { [ o, O, parenleft ] };
223   key <AC03> { [ e, E, parenright ] };
224   key <AC04> { [ u, U ] };
225   key <AC05> { [ i, I ] };
226   key <AC06> { [ d, D ] };
227   key <AC07> { [ h, H ] };
228   key <AC08> { [ t, T ] };
229   key <AC09> { [ n, N ] };
230   key <AC10> { [ s, S, ssharp, U1E9E ] };
231   key <AC11> { [ minus, underscore ] };
232   key <BKSL> { [ less, greater, bar ] };
233
234   key <LSGT> { [ odiaeresis, Odiaeresis ] };
235   key <AB01> { [ adiaeresis, Adiaeresis ] };
236   key <AB02> { [ q, Q ] };
237   key <AB03> { [ j, J ] };
238   key <AB04> { [ k, K ] };
239   key <AB05> { [ x, X ] };
240   key <AB06> { [ b, B ] };
241   key <AB07> { [ m, M ] };
242   key <AB08> { [ w, W ] };
243   key <AB09> { [ v, V ] };
244   key <AB10> { [ z, Z ] };
245};
246
247partial alphanumeric_keys
248xkb_symbols "swl" {
249
250//
251// Swedish Sign Language
252// ISO_639-3 language code: swl
253// (called “svenskt teckenspråk” in swedish)
254//
255// Author: Saašha Metsärantala saasha@acc.umu.se
256//
257// A sans-serif font is available at
258// http://www.acc.umu.se/home/saasha/typsnitt/swl_sans.ttf
259//
260
261  include "se(basic)"
262
263  name[Group1]="Swedish Sign Language";
264
265  key <AB01> { [ 0x110c925, 0x110c95f, 0x110c940, 0x110c99a ] };
266  key <AB02> { [ 0x110c96b, 0x110c933, 0x110c920, 0x110c98e ] };
267  key <AB03> { [ 0x110c949, 0x110c94b, 0x110c921, 0x110c99f ] };
268  key <AB04> { [ 0x110c923, 0x110c92d, 0x110c95c, 0x110c96e ] };
269  key <AB05> { [ 0x110c93b, 0x110c927, 0x110c908, 0x110c9a6 ] };
270  key <AB06> { [ 0x110c93a, 0x110c94c, 0x110c93e, 0x110c9a7 ] };
271  key <AB07> { [ 0x110c95b, 0x110c93f, 0x110c907, 0x110c992 ] };
272  key <AC01> { [ 0x110c973, 0x110c924, 0x110c93c, 0x110c9a4 ] };
273  key <AC02> { [ 0x110c972, 0x110c945, 0x110c91a, 0x110c99c ] };
274  key <AC03> { [ 0x110c979, 0x110c929, 0x110c916, 0x110c999 ] };
275  key <AC04> { [ 0x110c976, 0x110c975, 0x110c917, 0x110c994 ] };
276  key <AC05> { [ 0x110c95a, 0x110c926, 0x110c918, 0x110c996 ] };
277  key <AC06> { [ 0x110c96f, 0x110c932, 0x110c915, 0x110c998 ] };
278  key <AC07> { [ 0x110c942, 0x110c922, 0x110c913, 0x110c9a2 ] };
279  key <AC08> { [ 0x110c985, 0x110c94e, 0x110c914, 0x110c97a ] };
280  key <AC09> { [ 0x110c928, 0x110c948, 0x110c919, 0x110c9a5 ] };
281  key <AC10> { [ 0x110c970, 0x110c92b, 0x110c905, 0x110c991 ] };
282  key <AC11> { [ 0x110c92e, 0x110c944, 0x110c904, VoidSymbol ] };
283  key <AD01> { [ 0x110c96c, 0x110c92a, 0x110c900, 0x110c9a1 ] };
284  key <AD02> { [ 0x110c971, 0x110c930, 0x110c903, 0x110c99e ] };
285  key <AD03> { [ 0x110c987, 0x110c947, 0x110c90c, 0x110c96d ] };
286  key <AD04> { [ 0x110c986, 0x110c92c, 0x110c91b, 0x110c993 ] };
287  key <AD05> { [ 0x110c939, 0x110c94a, 0x110c911, 0x110c995 ] };
288  key <AD06> { [ 0x110c952, 0x110c943, 0x110c912, 0x110c99b ] };
289  key <AD07> { [ 0x110c978, 0x110c977, 0x110c95e, 0x110c9a3 ] };
290  key <AD08> { [ 0x110c951, 0x110c931, 0x110c91e, 0x110c997 ] };
291  key <AD09> { [ 0x110c90e, 0x110c946, 0x110c906, 0x110c9a0 ] };
292  key <AD10> { [ 0x110c91f, 0x110c961, 0x110c91c, VoidSymbol ] };
293  key <AD11> { [ 0x110c93d, 0x110c92f, 0x110c902, VoidSymbol ] };
294  key <AE01> { [ 0x110c953, 0x110c936, 0x110c988, 0x110c962 ] };
295  key <AE02> { [ 0x110c954, 0x110c957, 0x110c97d, 0x110c963 ] };
296  key <AE03> { [ 0x110c934, 0x110c937, 0x110c97e, 0x110c983 ] };
297  key <AE04> { [ 0x110c955, 0x110c958, 0x110c98a, 0x110c984 ] };
298  key <AE05> { [ 0x110c935, 0x110c938, 0x110c97f, 0x110c966 ] };
299  key <AE06> { [ 0x110c956, 0x110c959, 0x110c980, 0x110c967 ] };
300  key <AE07> { [ 0x110c960, 0x110c969, 0x110c982, 0x110c96a ] };
301  key <AE08> { [ 0x110c97c, 0x110c90b, 0x110c989, 0x110c964 ] };
302  key <AE09> { [ 0x110c97b, 0x110c90a, 0x110c98b, 0x110c965 ] };
303  key <AE10> { [ 0x110c974, 0x110c909, 0x110c98c, 0x110c968 ] };
304};
305
306partial alphanumeric_keys
307xkb_symbols "us" {
308    include "us"
309
310    name[Group1]="Swedish (US)";
311
312    key <AC10> { [ NoSymbol, NoSymbol, odiaeresis, Odiaeresis ] };
313    key <AC11> { [ NoSymbol, NoSymbol, adiaeresis, Adiaeresis ] };
314    key <AD11> { [ NoSymbol, NoSymbol, aring, Aring ] };
315
316    include "level3(ralt_switch)"
317};
318
319// EXTRAS:
320
321partial alphanumeric_keys
322	xkb_symbols "sun_type6" {
323	include "sun_vndr/se(sun_type6)"
324};
325
326partial alphanumeric_keys
327xkb_symbols "dvorak_a5" {
328
329	include "se(basic)"
330
331	name[Group1]="Swedish (Dvorak A5)";
332
333	key <AE12> { [ dead_acute, dead_grave, plusminus,           none ] };
334
335	key <AD01> { [ aring,      Aring,      braceleft,           none ] };
336	key <AD02> { [ adiaeresis, Adiaeresis, braceright,          none ] };
337	key <AD03> { [ odiaeresis, Odiaeresis, bracketleft,         none ] };
338	key <AD04> { [ p,          P,          bracketright,        none ] };
339	key <AD05> { [ y,          Y,          dollar,              none ] };
340	key <AD06> { [ f,          F,          quotedbl,            none ] };
341	key <AD07> { [ g,          G,          question,            none ] };
342	key <AD08> { [ c,          C,          ampersand,           none ] };
343	key <AD09> { [ r,          R,          less,                none ] };
344	key <AD10> { [ l,          L,          greater,             none ] };
345	key <AD11> { [ comma,      semicolon,  dead_cedilla,        none ] };
346	key <AD12> { [ dead_diaeresis, dead_circumflex, dead_tilde,	asciicircum	]	};
347
348	key <AC01> { [ a,          A,          semicolon,           none ] };
349	key <AC02> { [ o,          O,          slash,               none ] };
350	key <AC03> { [ e,          E,          parenleft,           none ] };
351	key <AC04> { [ u,          U,          parenright,          none ] };
352	key <AC05> { [ i,          I,          bar,                 none ] };
353	key <AC06> { [ d,          D,          numbersign,          none ] };
354	key <AC07> { [ h,          H,          asciicircum,         none ] };
355	key <AC08> { [ t,          T,          numbersign,          none ] };
356	key <AC09> { [ n,          N,          quotedbl,            none ] };
357	key <AC10> { [ s,          S,          asciitilde,          none ] };
358	key <AC11> { [ minus,      underscore, grave,               none ] };
359
360	key <AB01> { [ period,     colon,      colon,               none ] };
361	key <AB02> { [ q,          Q,          equal,               none ] };
362	key <AB03> { [ j,          J,          at,                  none ] };
363	key <AB04> { [ k,          K,          exclam,              none ] };
364	key <AB05> { [ x,          X,          backslash,           none ] };
365	key <AB06> { [ b,          B,          percent,             none ] };
366	key <AB07> { [ m,          M,          grave,               none ] };
367	key <AB08> { [ w,          W,          lstroke,             none ] };
368	key <AB09> { [ v,          V,          leftdoublequotemark, none ] };
369	key <AB10> { [ z,          Z,          guillemotleft,       none ] };
370
371	key <BKSL> { [ apostrophe, asterisk,   asterisk,            none ] };
372
373};
374
375partial alphanumeric_keys
376xkb_symbols "ovd" {
377
378    // Adds combining ogonek (U0328) to the basic Swedish layout to facilitate
379    // typing of Ą ą Ę ę Į į Ų ų Y̨ y̨ Ą̊ ą̊.
380    // The character replaces <dead_diaeresis> which is considered dispensable
381    // since ä and ö have their own keys. <dead_diaeresis> is still available
382    // via <AltGr> + Å.
383
384    include "se(basic)"
385
386    name[Group1]="Elfdalian (Swedish, with combining ogonek)";
387
388    key <AD12> { [ U0328,  dead_circumflex,  dead_tilde,  dead_caron ] };
389};
390
391// us_dvorak
392// Author Thomas Lundqvist http://tlundqvist.org/sv_dvorak/
393
394partial alphanumeric_keys
395xkb_symbols "us_dvorak" {
396  include "us(dvorak-intl)"
397  name[Group1]="Swedish (Dvorak, intl.)";
398
399  key <TLDE> { [ apostrophe,  asciitilde,           grave,      dead_tilde ] };
400  key <AE02> { [          2,    quotedbl,              at                  ] };
401  key <AE06> { [          6, asciicircum, dead_circumflex                  ] };
402  key <AD01> { [      aring,       Aring,      dead_acute                  ] };
403  key <AC11> { [      minus,  underscore,             bar,     dead_macron ] };
404  key <AB01> { [ adiaeresis,  Adiaeresis,      dead_grave,     dead_ogonek ] };
405  key <LSGT> { [ odiaeresis,  Odiaeresis,  dead_diaeresis,   dead_belowdot ] };
406  key <BKSL> { [  semicolon,       colon,       backslash                  ] };
407
408  include "kpdl(comma)"
409  include "level3(ralt_switch)"
410};
411
412