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