is revision 1.1.1.7 1 // based on
2 // XKB keyboard by Hrafnkell Eiriksson - hkelle (a] rhi.hi.is
3 // fixes by Olafur Osvaldsson - oli (a] isnic.is
4 //
5
6 default partial alphanumeric_keys
7 xkb_symbols "basic" {
8
9 include "latin(type4)"
10
11 name[Group1]="Icelandic";
12
13 key <AE02> { [ 2, quotedbl, twosuperior, oneeighth ] };
14 key <AE04> { [ 4, dollar, onequarter, currency ] };
15 key <AE11> { [odiaeresis, Odiaeresis, backslash, questiondown ] };
16 key <AE12> { [ minus, underscore, ccedilla, dead_ogonek ] };
17
18 key <AD11> { [ eth, ETH, dead_diaeresis, dead_abovering ] };
19 key <AD12> { [apostrophe, question, asciitilde, dead_macron ] };
20
21 key <AC10> { [ ae, AE, asciicircum, dead_doubleacute ] };
22 key <AC11> { [dead_acute, dead_circumflex, dead_circumflex ] };
23 key <TLDE> { [ degree, diaeresis, notsign, notsign ] };
24
25 key <BKSL> { [ plus, asterisk, grave, dead_breve ] };
26 key <AB10> { [ thorn, THORN, dead_belowdot, dead_abovedot ] };
27
28 include "level3(ralt_switch)"
29 };
30
31 partial alphanumeric_keys
32 xkb_symbols "Sundeadkeys" {
33
34 // modify the basic Icelandic layout to use Sun dead keys
35
36 include "is(basic)"
37
38 name[Group1]="Icelandic (Sun dead keys)";
39
40 key <TLDE> { [dead_circumflex, degree, notsign, notsign ] };
41 key <AE12> { [dead_acute, dead_grave, dead_cedilla, dead_cedilla ] };
42 key <AD11> { [udiaeresis, Udiaeresis, dead_diaeresis, dead_diaeresis ] };
43 key <AD12> { [ plus, asterisk, dead_tilde, dead_macron ] };
44 key <AC10> { [odiaeresis, Odiaeresis, dead_acute, dead_acute ] };
45 key <AC11> { [adiaeresis, Adiaeresis, dead_circumflex, dead_circumflex ] };
46 key <BKSL> { [numbersign, acute, dead_grave, dead_grave ] };
47 };
48
49 partial alphanumeric_keys
50 xkb_symbols "nodeadkeys" {
51
52 // modify the basic Icelandic layout to not have any dead keys
53
54 include "is(basic)"
55
56 name[Group1]="Icelandic (eliminate dead keys)";
57
58 key <TLDE> { [asciicircum, degree, notsign, notsign ] };
59 key <AE12> { [apostrophe, grave, cedilla, cedilla ] };
60 key <AD11> { [udiaeresis, Udiaeresis, diaeresis, diaeresis ] };
61 key <AD12> { [ plus, asterisk, asciitilde, macron ] };
62 key <AC10> { [odiaeresis, Odiaeresis, acute, acute ] };
63 key <AC11> { [adiaeresis, Adiaeresis, asciicircum, asciicircum ] };
64 key <BKSL> { [numbersign, acute, grave, grave ] };
65 key <AB10> { [ thorn, THORN, dead_belowdot, abovedot ] };
66 };
67
68 // Copyright (C) 2004, 2006 var Arnfjr Bjarmason <avarab (a] gmail.com>
69 //
70 // = HISTORY
71 // * 2004-09-28:
72 // Initial cleanroom writing of the keymap, I just booted Mac OS X, opened
73 // TextEdit.app and wrote down what the value produced by each key was when I
74 // pressed it, a for a, A for shift + a, for lalt + a etc and made the
75 // keymap from that information
76 //
77 // * 2006-01-14:
78 // Revised the comments in the file
79 //
80 // = NOTES
81 // * 20 characters in this keymap have no named character defined in
82 // include/keysymdef.h and as a result their Unicode code points in
83 // hexadecimal are listed here, these can be generated with the following
84 // perl command:
85 // $ perl -CA -e 'printf "U%x\n", ord shift'
86 // and converted back like:
87 // $ perl -CO -le '$_=shift;s/[^a-f0-9]//ig;print chr hex' Uc6
88 // * The Apple logo appears twice on this keymap like the Mac OS and Mac OS X
89 // keymaps. In the MacRoman encoding it has the code point 0xF0 (240) but it
90 // has no assigned code point in Unicode, the code point Apple uses for it is
91 // U+F8FF (63743) which is in the BMP's Private Use Area (U+E000U+F8FF)
92 // * This keymap has only been tested on a PowerBook6,5 (iBook G4) but it
93 // should work on other Apple laptop models which use the same keyboard
94 // layout. It will probably work on standard sized keyboards with little or
95 // no modification but it might not support them fully, please report if
96 // you're able to get it running with such a keyboard
97
98 // Copied from macintosh_vndr/is
99 partial alphanumeric_keys
100 xkb_symbols "mac" {
101 name[Group1]= "Icelandic (Macintosh)";
102
103 //-- Row 5 (E) --//
104 key <TLDE> { [ sterling, section, UF8FF, apostrophe ] };
105 key <AE01> { [ 1, exclam, exclamdown, VoidSymbol ] };
106 key <AE02> { [ 2, quotedbl, at, VoidSymbol ] };
107 key <AE03> { [ 3, numbersign, U2122, sterling ] };
108 key <AE04> { [ 4, dollar, U00A2, EuroSign ] };
109 key <AE05> { [ 5, percent, U2030, infinity ] };
110 key <AE06> { [ 6, ampersand, asciicircum, U2044 ] };
111 key <AE07> { [ 7, slash, backslash, U00F7 ] };
112 key <AE08> { [ 8, parenleft, bracketleft, braceleft ] };
113 key <AE09> { [ 9, parenright, bracketright, braceright ] };
114 key <AE10> { [ 0, equal, U2260, U2248 ] };
115 key <AE11> { [ odiaeresis, Odiaeresis, oslash, Ooblique ] };
116 key <AE12> { [ minus, underscore, endash, emdash ] };
117
118
119 //-- Row 4 (D) --//
120 key <AD01> { [ q, Q, paragraph, VoidSymbol ] };
121 key <AD02> { [ w, W, U2211, VoidSymbol ] };
122 key <AD03> { [ e, E, dead_grave, VoidSymbol ] };
123 key <AD04> { [ r, R, registered, VoidSymbol ] };
124 key <AD05> { [ t, T, degree, VoidSymbol ] };
125 key <AD06> { [ y, Y, yen, VoidSymbol ] };
126 key <AD07> { [ u, U, dead_diaeresis, VoidSymbol ] };
127 key <AD08> { [ i, I, U0131, U00AA ] };
128 key <AD09> { [ o, O, dead_circumflex,U00BA ] };
129 key <AD10> { [ p, P, Greek_pi, Greek_PI ] };
130 key <AD11> { [ eth, Eth, U201e, U201c ] };
131 key <AD12> { [ apostrophe, question, questiondown, U00B7 ] };
132
133
134 //-- Row 3 (C) --//
135 key <AC01> { [ a, A, aring, Aring ] };
136 key <AC02> { [ s, S, ssharp, abovedot ] };
137 key <AC03> { [ d, D, U2202, U2DA ] };
138 key <AC04> { [ f, F, U192, macron ] };
139 key <AC05> { [ g, G, copyright, breve ] };
140 key <AC06> { [ h, H, bar, VoidSymbol ] };
141 key <AC07> { [ j, J, U2206, U2dd ] };
142 key <AC08> { [ k, K, U00AC, VoidSymbol ] };
143 key <AC09> { [ l, L, U2026, caron ] };
144 key <AC10> { [ ae, AE, oe, OE ] };
145 key <AC11> { [ dead_acute, dead_diaeresis, U201A, U2018 ] };
146 key <BKSL> { [ plus, asterisk, U2022, plusminus ] };
147
148
149 //-- Row 2 (B) --//
150 key <LSGT> { [ less, greater, section, UF8FF ] };
151 key <AB01> { [ z, Z, U3A9, VoidSymbol ] };
152 key <AB02> { [ x, X, asciitilde, VoidSymbol ] };
153 key <AB03> { [ c, C, ccedilla, Ccedilla ] };
154 key <AB04> { [ v, V, U221A, U25CA ] };
155 key <AB05> { [ b, B, U222B, VoidSymbol ] };
156 key <AB06> { [ n, N, dead_tilde, VoidSymbol ] };
157 key <AB07> { [ m, M, U00B5, VoidSymbol ] };
158 key <AB08> { [ comma, semicolon, lessthanequal, guillemotleft ] };
159 key <AB09> { [ period, colon, greaterthanequal,guillemotright ] };
160 key <AB10> { [ thorn, Thorn, U2019, U201d ] };
161
162 include "level3(ralt_switch)"
163 };
164
165 // This is a modified version of the English Dvorak layout that allows
166 // you to type all Icelandic letters under X. It's not a full attempt at
167 // nationalizing the layout as e.g. the Norwegian, Swedish and French
168 // layouts which modify the primary keys of the basic Dvorak layout
169 // extensively.
170
171 // Rather it's a simple modification of 5 keys of the US Dvorak layout,
172 // it adds Germanic/Icelandic style quotation marks (), eth (), ae
173 // (), endash and emdash (), thorn (), EuroSign () and the German
174 // Sharp S (). These keys aren't used in the US version, making the
175 // Icelandic version a superset of it.
176
177 // Maybe someone else will make a "full" attempt at an Icelandic layout
178 // but I was mostly interested in continuing to type English comfortably
179 // as a primary function while being able to type the full Icelandic
180 // alphabet as a secondary function.
181 // -- var Arnfjr Bjarmason <avarab (a] gmail.com>
182
183 // Icelandic Dvorak
184 partial alphanumeric_keys
185 xkb_symbols "dvorak" {
186 name[Group1]= "Icelandic (Dvorak)";
187
188 include "us(dvorak)"
189 include "eurosign(4)"
190
191 key <AD11> { [ slash, question, U201e, U201c ] };
192 key <AC06> { [ d, D, eth, ETH ] };
193 key <AC10> { [ s, S, ae, AE ] };
194 key <AC11> { [ minus, underscore, endash, emdash ] };
195 key <AB10> { [ z, Z, thorn, Thorn ] };
196 key <AB06> { [ b, B, ssharp, U1E9E ] };
197
198 include "level3(ralt_switch)"
199 };
200