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