2 // X keyboard maps for Finland
4 // SFS 5966 / Kotoistus keymap created by Troy Korjuslommi
5 // Classic keymap based on traditional by Marko Myllynen
6 // Eliminate deadkeys alternative sent by Linus Torvalds
10 // Missing from X11/keysymdef.h as of 2010-05-13
12 // U2030 # PER MILLE SIGN
13 // U0292 # LATIN SMALL LETTER EZH
14 // U01B7 # LATIN CAPITAL LETTER EZH
17 partial alphanumeric_keys default
18 xkb_symbols "kotoistus" {
20 // Official keymap for Finland based on SFS 5966 standard
22 // This keymap implements all the functionality of Annex 1
23 // of the standard and additionally defines the following to
24 // allow entering these characters with keyboars without LSGT.
26 // AE08+4, U+003C : LESS-THAN SIGN (less)
27 // AE09+4, U+003E : GREATER-THAN SIGN (greater)
28 // AD08+4, U+007C : VERTICAL LINE (bar)
30 // Annex 3 of the standard is implemented in fi_FI.UTF-8/Compose
32 name[Group1]="Finnish";
34 key <TLDE> { [ section, onehalf, dead_stroke, NoSymbol ] };
35 key <AE01> { [ 1, exclam, NoSymbol, exclamdown ] };
36 key <AE02> { [ 2, quotedbl, at, rightdoublequotemark ] };
37 key <AE03> { [ 3, numbersign, sterling, guillemotright ] };
38 key <AE04> { [ 4, currency, dollar, guillemotleft ] };
39 key <AE05> { [ 5, percent, U2030, leftdoublequotemark ] };
40 key <AE06> { [ 6, ampersand, singlelowquotemark, doublelowquotemark ] };
41 key <AE07> { [ 7, slash, braceleft, NoSymbol ] };
42 key <AE08> { [ 8, parenleft, bracketleft, less ] };
43 key <AE09> { [ 9, parenright, bracketright, greater ] };
44 key <AE10> { [ 0, equal, braceright, degree ] };
45 key <AE11> { [ plus, question, backslash, questiondown ] };
46 key <AE12> { [ dead_acute, dead_grave, dead_cedilla, dead_ogonek ] };
48 key <AD01> { [ q, Q, q, Q ] };
49 key <AD02> { [ w, W, w, W ] };
50 key <AD03> { [ e, E, EuroSign, NoSymbol ] };
51 key <AD04> { [ r, R, r, R ] };
52 key <AD05> { [ t, T, thorn, THORN ] };
53 key <AD06> { [ y, Y, y, Y ] };
54 key <AD07> { [ u, U, u, U ] };
55 key <AD08> { [ i, I, idotless, bar ] };
56 key <AD09> { [ o, O, oe, OE ] };
57 key <AD10> { [ p, P, dead_horn, dead_hook ] };
58 key <AD11> { [ aring, Aring, dead_doubleacute, dead_abovering ] };
59 key <AD12> { [ dead_diaeresis, dead_circumflex, dead_tilde, dead_macron ] };
61 key <AC01> { [ a, A, schwa, SCHWA ] };
62 key <AC02> { [ s, S, ssharp, NoSymbol ] };
63 key <AC03> { [ d, D, eth, ETH ] };
64 key <AC04> { [ f, F, f, F ] };
65 key <AC05> { [ g, G, g, G ] };
66 key <AC06> { [ h, H, h, H ] };
67 key <AC07> { [ j, J, j, J ] };
68 key <AC08> { [ k, K, kra, NoSymbol ] };
69 key <AC09> { [ l, L, dead_stroke, NoSymbol ] };
70 key <AC10> { [ odiaeresis, Odiaeresis, oslash, Oslash ] };
71 key <AC11> { [ adiaeresis, Adiaeresis, ae, AE ] };
72 key <BKSL> { [ apostrophe, asterisk, dead_caron, dead_breve ] };
74 key <LSGT> { [ less, greater, bar, NoSymbol ] };
75 key <AB01> { [ z, Z, U0292, U01B7 ] };
76 key <AB02> { [ x, X, multiply, periodcentered ] };
77 key <AB03> { [ c, C, c, C ] };
78 key <AB04> { [ v, V, v, V ] };
79 key <AB05> { [ b, B, b, B ] };
80 key <AB06> { [ n, N, eng, ENG ] };
81 key <AB07> { [ m, M, mu, emdash ] };
82 key <AB08> { [ comma, semicolon, rightsinglequotemark, leftsinglequotemark ] };
83 key <AB09> { [ period, colon, dead_belowdot, dead_abovedot ] };
84 key <AB10> { [ minus, underscore, endash, dead_belowcomma ] };
86 include "nbsp(level4)"
87 include "nbsp(level3)"
89 include "level3(ralt_switch)"
90 include "compose(rwin)"
93 partial alphanumeric_keys
94 xkb_symbols "classic" {
98 name[Group1]="Finnish (classic)";
101 partial alphanumeric_keys hidden
104 // Classic Finnish keyboard layout with dead keys support
105 // and all ISO-8859-1 and ISO-8859-15 characters available
107 key <TLDE> { [ section, onehalf, onequarter, threequarters ] };
108 key <AE01> { [ 1, exclam, exclamdown, onesuperior ] };
109 key <AE02> { [ 2, quotedbl, at, twosuperior ] };
110 key <AE03> { [ 3, numbersign, sterling, threesuperior ] };
111 key <AE04> { [ 4, currency, dollar, cent ] };
112 key <AE05> { [ 5, percent, EuroSign, masculine ] };
113 key <AE06> { [ 6, ampersand, yen, ordfeminine ] };
114 key <AE07> { [ 7, slash, braceleft, plusminus ] };
115 key <AE08> { [ 8, parenleft, bracketleft, guillemotleft ] };
116 key <AE09> { [ 9, parenright, bracketright, guillemotright ] };
117 key <AE10> { [ 0, equal, braceright, degree ] };
118 key <AE11> { [ plus, question, backslash, questiondown ] };
119 key <AE12> { [ dead_acute, dead_grave, dead_cedilla, dead_ogonek ] };
121 key <AD01> { [ q, Q, q, Q ] };
122 key <AD02> { [ w, W, w, W ] };
123 key <AD03> { [ e, E, EuroSign, cent ] };
124 key <AD04> { [ r, R, registered, NoSymbol ] };
125 key <AD05> { [ t, T, thorn, THORN ] };
126 key <AD06> { [ y, Y, y, Y ] };
127 key <AD07> { [ u, U, u, U ] };
128 key <AD08> { [ i, I, idotless, bar ] };
129 key <AD09> { [ o, O, o, O ] };
130 key <AD10> { [ p, P, paragraph, NoSymbol ] };
131 key <AD11> { [ aring, Aring, oe, OE ] };
132 key <AD12> { [ dead_diaeresis, dead_circumflex, dead_tilde, dead_caron ] };
134 key <AC01> { [ a, A, schwa, SCHWA ] };
135 key <AC02> { [ s, S, scaron, Scaron ] };
136 key <AC03> { [ d, D, eth, ETH ] };
137 key <AC04> { [ f, F, f, F ] };
138 key <AC05> { [ g, G, eng, ENG ] };
139 key <AC06> { [ h, H, h, H ] };
140 key <AC07> { [ j, J, j, J ] };
141 key <AC08> { [ k, K, kra, NoSymbol ] };
142 key <AC09> { [ l, L, dead_stroke, NoSymbol ] };
143 key <AC10> { [ odiaeresis, Odiaeresis, oslash, Oslash ] };
144 key <AC11> { [ adiaeresis, Adiaeresis, ae, AE ] };
145 key <BKSL> { [ apostrophe, asterisk, dead_caron, dead_breve ] };
147 key <LSGT> { [ less, greater, bar, brokenbar ] };
148 key <AB01> { [ z, Z, zcaron, Zcaron ] };
149 key <AB02> { [ x, X, multiply, division ] };
150 key <AB03> { [ c, C, copyright, cent ] };
151 key <AB04> { [ v, V, v, V ] };
152 key <AB05> { [ b, B, ssharp, NoSymbol ] };
153 key <AB06> { [ n, N, ntilde, Ntilde ] };
154 key <AB07> { [ m, M, mu, NoSymbol ] };
155 key <AB08> { [ comma, semicolon, dead_cedilla, dead_ogonek ] };
156 key <AB09> { [ period, colon, periodcentered, notsign ] };
157 key <AB10> { [ minus, underscore, hyphen, dead_macron ] };
159 include "nbsp(level4)"
160 include "kpdl(comma)"
161 include "level3(ralt_switch)"
162 include "compose(rwin)"
165 partial alphanumeric_keys
166 xkb_symbols "nodeadkeys" {
168 // Classic Finnish keyboard layout without dead keys
172 name[Group1]="Finnish (classic, eliminate dead keys)";
174 key <AE12> { [ acute, grave, cedilla, ogonek ] };
175 key <AD12> { [ diaeresis, asciicircum, asciitilde, caron ] };
176 key <AC09> { [ l, L, l, L ] };
177 key <BKSL> { [ apostrophe, asterisk, caron, breve ] };
178 key <AB08> { [ comma, semicolon, cedilla, ogonek ] };
179 key <AB10> { [ minus, underscore, hyphen, macron ] };
182 partial alphanumeric_keys
185 // Describes the differences between a Norwegian Northern Sami
186 // (keyboard with dead key support) and a Swedish/Finnish Sami
187 // keyboard according to the specs at:
188 // http://www.hum.uit.no/a/trond/se-lat9-sefi-keys.html
192 name[Group1]="Northern Saami (Finland)";
194 key <AC10> { [ odiaeresis, Odiaeresis, oslash, Oslash ] };
195 key <AC11> { [ adiaeresis, Adiaeresis, ae, AE ] };
198 partial alphanumeric_keys
201 // Macintosh keyboard for Finland based on Swedish(Macintosh) keyboard
205 name[Group1]="Finnish (Macintosh)";