3 // This file describes the differences between a Macintosh US Extended
4 // keymap and an Icelandic keyboard layout in the style of Mac OS and Mac OS X
6 // Copyright (C) 2004, 2006 Ævar Arnfjörð Bjarmason <avarab@gmail.com>
8 // Permission to use, copy, modify, distribute, and sell this software and its
9 // documentation for any purpose is hereby granted without fee, provided that
10 // the above copyright notice appear in all copies and that both that
11 // copyright notice and this permission notice appear in supporting
14 // The above copyright notice and this permission notice shall be
15 // included in all copies or substantial portions of the Software.
17 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
20 // IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
21 // OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
22 // ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
23 // OTHER DEALINGS IN THE SOFTWARE.
25 // Except as contained in this notice, the name of a copyright holder shall
26 // not be used in advertising or otherwise to promote the sale, use or
27 // other dealings in this Software without prior written authorization of
28 // the copyright holder.
32 // Initial cleanroom writing of the keymap, I just booted Mac OS X, opened
33 // TextEdit.app and wrote down what the value produced by each key was when I
34 // pressed it, a for a, A for shift + a, å for lalt + a etc and made the
35 // keymap from that information
38 // Revised the comments in the file
41 // * 20 characters in this keymap have no named character defined in
42 // include/keysymdef.h and as a result their Unicode code points in
43 // hexadecimal are listed here, these can be generated with the following
45 // $ perl -CA -e 'printf "U%x\n", ord shift' Æ
46 // and converted back like:
47 // $ perl -CO -le '$_=shift;s/[^a-f0-9]//ig;print chr hex' Uc6
48 // * The Apple logo appears twice on this keymap like the Mac OS and Mac OS X
49 // keymaps. In the MacRoman encoding it has the code point 0xF0 (240) but it
50 // has no assigned code point in Unicode, the code point Apple uses for it is
51 // U+F8FF (63743) which is in the BMP's Private Use Area (U+E000–U+F8FF)
52 // * This keymap has only been tested on a PowerBook6,5 (iBook G4) but it
53 // should work on other Apple laptop models which use the same keyboard
54 // layout. It will probably work on standard sized keyboards with little or
55 // no modification but it might not support them fully, please report if
56 // you're able to get it running with such a keyboard
58 partial default alphanumeric_keys
60 name[Group1]= "Icelandic";
63 key <TLDE> { [ sterling, section ],
64 [ UF8FF, apostrophe ] };
65 key <AE01> { [ 1, exclam ],
66 [ exclamdown, VoidSymbol ] };
67 key <AE02> { [ 2, quotedbl ],
69 key <AE03> { [ 3, numbersign ],
70 [ U2122, sterling ] };
71 key <AE04> { [ 4, dollar ],
72 [ U00A2, EuroSign ] };
73 key <AE05> { [ 5, percent ],
74 [ U2030, infinity ] };
75 key <AE06> { [ 6, ampersand ],
76 [ asciicircum, U2044 ] };
77 key <AE07> { [ 7, slash ],
78 [ backslash, U00F7 ] };
79 key <AE08> { [ 8, parenleft ],
80 [ bracketleft, braceleft ] };
81 key <AE09> { [ 9, parenright ],
82 [ bracketright, braceright ] };
83 key <AE10> { [ 0, equal ],
85 key <AE11> { [ odiaeresis, Odiaeresis ],
86 [ oslash, Ooblique ] };
87 key <AE12> { [ minus, underscore ],
92 key <AD01> { [ q, Q ],
93 [ paragraph, VoidSymbol ] };
94 key <AD02> { [ w, W ],
95 [ U2211, VoidSymbol ] };
96 key <AD03> { [ e, E ],
97 [ dead_grave, VoidSymbol ] };
98 key <AD04> { [ r, R ],
99 [ registered, VoidSymbol ] };
100 key <AD05> { [ t, T ],
101 [ degree, VoidSymbol ] };
102 key <AD06> { [ y, Y ],
103 [ yen, VoidSymbol ] };
104 key <AD07> { [ u, U ],
105 [ dead_diaeresis, VoidSymbol ] };
106 key <AD08> { [ i, I ],
108 key <AD09> { [ o, O ],
109 [ dead_circumflex,U00BA ] };
110 key <AD10> { [ p, P ],
111 [ Greek_pi, Greek_PI ] };
112 key <AD11> { [ eth, Eth ],
114 key <AD12> { [ apostrophe, question ],
115 [ questiondown, U00B7 ] };
119 key <AC01> { [ a, A ],
121 key <AC02> { [ s, S ],
122 [ ssharp, abovedot ] };
123 key <AC03> { [ d, D ],
125 key <AC04> { [ f, F ],
127 key <AC05> { [ g, G ],
128 [ copyright, breve ] };
129 key <AC06> { [ h, H ],
130 [ bar, VoidSymbol ] };
131 key <AC07> { [ j, J ],
133 key <AC08> { [ k, K ],
134 [ U00AC, VoidSymbol ] };
135 key <AC09> { [ l, L ],
137 key <AC10> { [ ae, AE ],
139 key <AC11> { [ dead_acute, dead_diaeresis ],
141 key <BKSL> { [ plus, asterisk ],
142 [ U2022, plusminus ] };
146 key <LSGT> { [ less, greater ],
147 [ section, UF8FF ] };
148 key <AB01> { [ z, Z ],
149 [ U3A9, VoidSymbol ] };
150 key <AB02> { [ x, X ],
151 [ asciitilde, VoidSymbol ] };
152 key <AB03> { [ c, C ],
153 [ ccedilla, Ccedilla ] };
154 key <AB04> { [ v, V ],
156 key <AB05> { [ b, B ],
157 [ U222B, VoidSymbol ] };
158 key <AB06> { [ n, N ],
159 [ dead_tilde, VoidSymbol ] };
160 key <AB07> { [ m, M ],
161 [ U00B5, VoidSymbol ] };
162 key <AB08> { [ comma, semicolon ],
163 [ lessthanequal, guillemotleft ] };
164 key <AB09> { [ period, colon ],
165 [ greaterthanequal,guillemotright ] };
166 key <AB10> { [ thorn, Thorn ],
169 // Special keys and modifiers
170 key <LWIN> { [ Alt_L, Meta_L ] };
171 key <LFSH> { [ Shift_L ] };
172 key <LCTL> { [ Control_L ] };
173 key <LALT> { [ Mode_switch ] };
174 key <RMTA> { [ Meta_R ] };
175 key <RTSH> { [ Shift_R ] };
176 key <RCTL> { [ Control_R ] };
177 key <RALT> { [ script_switch ] };
179 // And now to map those modifiers ...
180 modifier_map Shift { Shift_L, Shift_R };
181 modifier_map Lock { Caps_Lock };
182 modifier_map Control { Control_L, Control_R };
183 modifier_map Mod1 { Meta_L, Meta_R };
184 //modifier_map Mod2 { Alt_L, Alt_R };
185 modifier_map Mod3 { Mode_switch };
188 partial alphanumeric_keys
189 xkb_symbols "nodeadkeys" {
190 include "macintosh_vndr/is(basic)" // for consistent naming