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