updated Finnish layout, b.fd.o#18742
[xorg/xkeyboard-config] / symbols / fi
1 // based on a keyboard map from an 'xkb/symbols/fi' file
2 //
3 // $XKeyboardConfig$
4 // $XFree86: xc/programs/xkbcomp/symbols/fi,v 1.9 2003/01/29 17:17:31 dawes Exp $
5
6 // Troy Korjuslommi, 
7 // Jan  6, 2006
8 // May  5, 2006
9 // May  6, 2006
10 // May 12, 2006
11 // Oct 10, 2007
12 // Nov 11, 2008
13 // Nov 29, 2008
14 // Dec 31, 2008
15 // Jan 22, 2009
16 //
17 //
18 // Jan 22, 2009
19 // Submit requests to change all remaining Uxxxx values to named versions
20 // in keysymdef.h.
21 // ezh      : U0292: LATIN SMALL LETTER EZH
22 // Ezh      : U01B7: LATIN CAPITAL LETTER EZH
23 // permille : U2030: PER MILLE SIGN
24 // 
25 // Dec 31, 2008
26 // U0326 replaced with dead_belowcomma.
27 // 
28 // Nov 29, 2008
29 // dead_belowcomma has been added to keysymdef.h, so the U0326 can be replaced with
30 // it, as long as the version of X11 is built with the new keysymdef.h file.
31 // 
32 // Nov 11, 2008.
33 // (a) Changed <AC10> level 4 from Ooblique to Oslash. The two names are synonyms. Since level 3 is already
34 //     specified as oslash, the change adds consistency.
35 // (b) The new Finnish keyboard standard (SFS 5966) reserves <AB10> level 4 for U0326, the combining comma below. 
36 //     Removed the previous dead_abovedot entry there and replaced it with U0326, which can be replaced
37 //     with dead_commabelow if that is added to keysymdef.h.
38 // 
39 // Oct 10, 2007.
40 // -Changed space column 3 to nobreakspace (from space).
41 // -Changed UFE63 entries to dead_stroke.
42 // 
43 // Nov 29, 2006.
44 // UFE63 can be changed to dead_stroke starting with version 7.0.7. of the X server.
45 //
46 // Dec 05, 2006.
47 // Changed instances of NoSymbol in columns 3 and 4 to characters in columns 1 and 2.
48 // This fixes a bug where the mappings couldn't be changed (with xmodmap for example).
49 // NoSymbol left in other positions, so nothing is output from those key presses.
50 //
51 // Dec 11, 2006.
52 // Changed all Uxxxx values to named versions.
53 // If you have problems, check these defines (when compiling X):
54 // XK_LATIN9: oe, OE.
55 // XK_CURRENCY: EuroSign.
56 // XK_LATIN2: caron.
57 // XK_LATIN3: idotless.
58 // XK_LATIN4: kra, eng, ENG.
59 // XK_CAUCASUS: schwa, SCHWA.
60 // XK_PUBLISHING: rightdoublequotemark, leftdoublequotemark, singlelowquotemark, doublelowquotemark, emdash,
61 //                rightsinglequotemark, leftsinglequotemark, endash.
62 // 
63 // Unnamed positions: 
64 // UFE63: dead_stroke. Will be fixed, once the entry is in keysymdef.h.
65 // U0292: LATIN SMALL LETTER EZH. 
66 // U01B7: LATIN CAPITAL LETTER EZH.
67 // U2030: PER MILLE SIGN.
68 //        Comment: XK_MillSign is U+20A5 MILL SIGN. 
69 //                 Per mille is a generic term for 1/1000. Mill is 1/1000 of a dollar.
70 // 
71
72 partial default alphanumeric_keys
73 xkb_symbols "kotoistus" {
74
75     name[Group1]="Finland";
76
77     key <TLDE> { [  section,         onehalf,          dead_stroke,          NoSymbol             ] };
78     key <AE01> { [  1,               exclam,           NoSymbol,             exclamdown           ] };
79     key <AE02> { [  2,               quotedbl,         at,                   rightdoublequotemark ] };
80     key <AE03> { [  3,               numbersign,       sterling,             guillemotright       ] };
81     key <AE04> { [  4,               currency,         dollar,               guillemotleft        ] };
82     key <AE05> { [  5,               percent,          U2030,                leftdoublequotemark  ] };
83     key <AE06> { [  6,               ampersand,        singlelowquotemark,   doublelowquotemark   ] };
84     key <AE07> { [  7,               slash,            braceleft,            NoSymbol             ] };
85     key <AE08> { [  8,               parenleft,        bracketleft,          NoSymbol             ] };
86     key <AE09> { [  9,               parenright,       bracketright,         NoSymbol             ] };
87     key <AE10> { [  0,               equal,            braceright,           degree               ] };
88     key <AE11> { [  plus,            question,         backslash,            questiondown         ] };
89     key <AE12> { [  dead_acute,      dead_grave,       dead_cedilla,         dead_ogonek          ] };
90     key <AD01> { [  q,               Q,                q,                    Q                    ] };
91     key <AD02> { [  w,               W,                w,                    W                    ] };
92     key <AD03> { [  e,               E,                EuroSign,             NoSymbol             ] };
93     key <AD04> { [  r,               R,                r,                    R                    ] };
94     key <AD05> { [  t,               T,                thorn,                THORN                ] };
95     key <AD06> { [  y,               Y,                y,                    Y                    ] };
96     key <AD07> { [  u,               U,                u,                    U                    ] };
97     key <AD08> { [  i,               I,                idotless,             NoSymbol             ] };
98     key <AD09> { [  o,               O,                oe,                   OE                   ] };
99     key <AD10> { [  p,               P,                dead_horn,            dead_hook            ] };
100     key <AD11> { [  aring,           Aring,            dead_doubleacute,     dead_abovering       ] };
101     key <AD12> { [  dead_diaeresis,  dead_circumflex,  dead_tilde,           dead_macron          ] };
102     key <AC01> { [  a,               A,                schwa,                SCHWA                ] };
103     key <AC02> { [  s,               S,                ssharp,               NoSymbol             ] };
104     key <AC03> { [  d,               D,                eth,                  ETH                  ] };
105     key <AC04> { [  f,               F,                f,                    F                    ] };
106     key <AC05> { [  g,               G,                g,                    G                    ] };
107     key <AC06> { [  h,               H,                h,                    H                    ] };
108     key <AC07> { [  j,               J,                j,                    J                    ] };
109     key <AC08> { [  k,               K,                kra,                  NoSymbol             ] };
110     key <AC09> { [  l,               L,                dead_stroke,          NoSymbol             ] };
111     key <AC10> { [  odiaeresis,      Odiaeresis,       oslash,               Oslash               ] };
112     key <AC11> { [  adiaeresis,      Adiaeresis,       ae,                   AE                   ] };
113     key <BKSL> { [  apostrophe,      asterisk,         dead_caron,           dead_breve           ] };
114     key <LSGT> { [  less,            greater,          bar,                  NoSymbol             ] };
115     key <AB01> { [  z,               Z,                U0292,                U01B7                ] };
116     key <AB02> { [  x,               X,                multiply,             periodcentered       ] };
117     key <AB03> { [  c,               C,                c,                    C                    ] };
118     key <AB04> { [  v,               V,                v,                    V                    ] };
119     key <AB05> { [  b,               B,                b,                    B                    ] };
120     key <AB06> { [  n,               N,                eng,                  ENG                  ] };
121     key <AB07> { [  m,               M,                mu,                   emdash               ] };
122     key <AB08> { [  comma,           semicolon,        rightsinglequotemark, leftsinglequotemark  ] };
123     key <AB09> { [  period,          colon,            dead_belowdot,        dead_abovedot        ] };
124     key <AB10> { [  minus,           underscore,       endash,               dead_belowcomma      ] };
125
126     include "nbsp(level3)"
127
128     include "kpdl(comma)"
129
130     include "level3(ralt_switch)"
131
132     include "compose(rwin)"
133 };
134
135
136 partial alphanumeric_keys
137 xkb_symbols "classic" {
138     include "latin(type2)"
139     include "fi(fi)"
140
141     name[Group1]="Finland - Classic";
142 };
143
144 hidden partial alphanumeric_keys
145 xkb_symbols "fi" {
146
147     // a Finnish keyboard with dead key support and all of
148     // ISO-8859-1 and ISO-8859-15 characters available.
149
150     key <TLDE> { [ section,    onehalf,     onequarter,   threequarters ] };
151     key <LSGT> { [    less,    greater,            bar,       brokenbar ] };
152     // AltGr+<SPCE> is pressed accidentally too often after AltGr+<LSGT>,
153     // hence AltGr+<SPCE> produces now space, not nobreakspace.
154     key <SPCE> { [   space,      space,          space,    nobreakspace ] };
155     key <AE01> { [       1,     exclam,     exclamdown,     onesuperior ] };
156     key <AE02> { [       2,   quotedbl,             at,     twosuperior ] };
157     key <AE03> { [       3, numbersign,       sterling,   threesuperior ] };
158     key <AE04> { [       4,   currency,         dollar,            cent ] };
159     key <AE05> { [       5,    percent,       EuroSign,       masculine ] };
160     key <AE06> { [       6,  ampersand,            yen,     ordfeminine ] };
161     key <AE07> { [       7,      slash,      braceleft,       plusminus ] };
162     key <AE08> { [       8,  parenleft,    bracketleft,   guillemotleft ] };
163     key <AE09> { [       9, parenright,   bracketright,  guillemotright ] };
164     key <AE10> { [       0,      equal,     braceright,          degree ] };
165     key <AB09> { [  period,      colon, periodcentered,         notsign ] };
166     key <AB01> { [       z,          Z,         zcaron,          Zcaron ] };
167     key <AB02> { [       x,          X,       multiply,        division ] };
168     key <AB03> { [       c,          C,      copyright,            cent ] };
169     key <AB05> { [       b,          B,         ssharp,        NoSymbol ] };
170     key <AB06> { [       n,          N,         ntilde,          Ntilde ] };
171     key <AB07> { [       m,          M,             mu,        NoSymbol ] };
172     key <AB10> { [   minus, underscore,         hyphen,     dead_macron ] };
173     key <AC02> { [       s,          S,         scaron,          Scaron ] };
174     key <AC03> { [       d,          D,            eth,             ETH ] };
175     key <AD03> { [       e,          E,       EuroSign,            cent ] };
176     key <AD04> { [       r,          R,     registered,        NoSymbol ] };
177     key <AD05> { [       t,          T,          thorn,           THORN ] };
178     key <AD10> { [       p,          P,      paragraph,        NoSymbol ] };
179     key <AC10> { [ odiaeresis, Odiaeresis,      oslash,        Ooblique ] };
180     key <AE11> { [    plus,      question,   backslash,    questiondown ] };
181     key <AC11> { [ adiaeresis, Adiaeresis,         ae,               AE ] };
182     key <BKSL> { [ apostrophe,   asterisk ] };
183     key <AD11> { [   aring,         Aring,         oe,               OE ] };
184     key <AE12> { [ dead_acute, dead_grave ] };
185     key <AD12> { [ dead_diaeresis, dead_circumflex, dead_tilde, dead_caron ] };
186
187     // End alphanumeric section, begin "Keypad"
188     include "kpdl(comma)"
189     // End "Keypad" section
190
191     include "level3(ralt_switch)"
192 };
193
194 partial alphanumeric_keys
195 xkb_symbols "nodeadkeys" {
196     include "latin(type2)"
197     include "latin(type2_nodeadkeys)"
198     include "fi(fi)"
199
200     name[Group1]="Finland - Eliminate dead keys";
201
202     key <AE12> { [     acute,       grave ] };
203     key <AD12> { [ diaeresis, asciicircum, asciitilde,  caron ] };
204     key <AB10> { [     minus,  underscore,     hyphen, macron ] };
205 };
206
207 xkb_symbols "smi" {
208
209     // Describes the differences between a Norwegian Northern Sami
210     // (keyboard with dead key support) and a Swedish/Finnish Sami
211     // keyboard according to the specs at:
212     // http://www.hum.uit.no/a/trond/se-lat9-sefi-keys.html
213
214     include "no(smi)"
215
216     name[Group1]= "Finland - Northern Saami";
217
218     key <AC10>  { [odiaeresis, Odiaeresis,       oslash,     Ooblique ] };
219     key <AC11>  { [adiaeresis, Adiaeresis,           ae,           AE ] };
220 };
221
222 // Copied from macintosh_vndr/fi
223 partial alphanumeric_keys 
224 xkb_symbols "mac" {
225
226     // Describes the differences between a very simple mac_US
227     // keyboard and a very simple Swedish(Finland) keybaord
228
229     include "se(mac)"
230     name[Group1]= "Finland - Macintosh";
231 };