// based on // XKB keyboard by Hrafnkell Eiriksson - hkelle@rhi.hi.is // fixes by Olafur Osvaldsson - oli@isnic.is // // "basic" corrected according to the Icelandic standard for keyboards, // IST 125:1995 (some symbols substituted by a dead diacritic). // Some positions are according to IST ISO/IEC 9995-3:1994 // Added nobreakspace default partial alphanumeric_keys xkb_symbols "basic" { include "latin(type4)" name[Group1]="Icelandic"; // = key { [ 2, quotedbl, twosuperior, oneeighth ] }; key { [ 4, dollar, onequarter, currency ] }; key { [odiaeresis, Odiaeresis, backslash, questiondown ] }; key { [ minus, underscore, dead_cedilla, dead_ogonek ] }; key { [ eth, ETH, dead_diaeresis, dead_abovering ] }; key { [apostrophe, question, asciitilde, dead_macron ] }; key { [ d, D, U201e, U201c ] }; key { [ ae, AE, asciicircum, dead_doubleacute ] }; key { [dead_acute, dead_acute, dead_circumflex, dead_caron ] }; key { [dead_abovering, dead_diaeresis, notsign, hyphen ] }; // = key { [ plus, asterisk, grave, dead_breve ] }; // = , is in file "pc": pc105 key { [ thorn, THORN, dead_belowdot, dead_abovedot ] }; key { [ space, space, space, space ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "Sundeadkeys" { // modify the basic Icelandic layout to use Sun dead keys include "is(basic)" name[Group1]="Icelandic (Sun dead keys)"; key { [dead_circumflex, degree, notsign, notsign ] }; key { [dead_acute, dead_grave, dead_cedilla, dead_cedilla ] }; key { [udiaeresis, Udiaeresis, dead_diaeresis, dead_diaeresis ] }; key { [ plus, asterisk, dead_tilde, dead_macron ] }; key { [odiaeresis, Odiaeresis, dead_acute, dead_acute ] }; key { [adiaeresis, Adiaeresis, dead_circumflex, dead_circumflex ] }; key { [numbersign, acute, dead_grave, dead_grave ] }; }; partial alphanumeric_keys xkb_symbols "nodeadkeys" { // modify the basic Icelandic layout to not have any dead keys include "is(basic)" name[Group1]="Icelandic (no dead keys)"; key { [asciicircum, degree, notsign, notsign ] }; key { [apostrophe, grave, cedilla, cedilla ] }; key { [udiaeresis, Udiaeresis, diaeresis, diaeresis ] }; key { [ plus, asterisk, asciitilde, macron ] }; key { [odiaeresis, Odiaeresis, acute, acute ] }; key { [adiaeresis, Adiaeresis, asciicircum, asciicircum ] }; key { [numbersign, acute, grave, grave ] }; key { [ thorn, THORN, dead_belowdot, abovedot ] }; }; // Copyright (C) 2004, 2006 Ævar Arnfjörð Bjarmason // // = HISTORY // * 2004-09-28: // Initial cleanroom writing of the keymap, I just booted Mac OS X, opened // TextEdit.app and wrote down what the value produced by each key was when I // pressed it, a for a, A for shift + a, å for lalt + a etc and made the // keymap from that information // // * 2006-01-14: // Revised the comments in the file // // * 2013-05-30: // Renamed the old keyboard layout and created a new one that conforms with the later // model Apple laptop and Aluminium USB/Bluetooth keyboards (A1243/A1255 and later) // that are used with the more recent versions of OS X. Also replaced some Unicode // codes with proper symbol names. // // = NOTES // * 20 characters in this keymap have no named character defined in // include/keysymdef.h and as a result their Unicode code points in // hexadecimal are listed here, these can be generated with the following // perl command: // $ perl -CA -e 'printf "U%x\n", ord shift' Æ // and converted back like: // $ perl -CO -le '$_=shift;s/[^a-f0-9]//ig;print chr hex' Uc6 // * The Apple logo appears twice on this keymap like the Mac OS and Mac OS X // keymaps. In the MacRoman encoding it has the code point 0xF0 (240) but it // has no assigned code point in Unicode, the code point Apple uses for it is // U+F8FF (63743) which is in the BMP's Private Use Area (U+E000–U+F8FF) // * This keymap has only been tested on a PowerBook6,5 (iBook G4) but it // should work on other Apple laptop models which use the same keyboard // layout. It will probably work on standard sized keyboards with little or // no modification but it might not support them fully, please report if // you're able to get it running with such a keyboard // Copied from macintosh_vndr/is xkb_symbols "mac_legacy" { name[Group1]= "Icelandic (Macintosh, legacy)"; //-- Row 5 (E) --// key { [ sterling, section, UF8FF, apostrophe ] }; key { [ 1, exclam, exclamdown, VoidSymbol ] }; key { [ 2, quotedbl, at, VoidSymbol ] }; key { [ 3, numbersign, U2122, sterling ] }; key { [ 4, dollar, U00A2, EuroSign ] }; key { [ 5, percent, U2030, infinity ] }; key { [ 6, ampersand, asciicircum, U2044 ] }; key { [ 7, slash, backslash, U00F7 ] }; key { [ 8, parenleft, bracketleft, braceleft ] }; key { [ 9, parenright, bracketright, braceright ] }; key { [ 0, equal, U2260, U2248 ] }; key { [ odiaeresis, Odiaeresis, oslash, Ooblique ] }; key { [ minus, underscore, endash, emdash ] }; //-- Row 4 (D) --// key { [ q, Q, paragraph, VoidSymbol ] }; key { [ w, W, U2211, VoidSymbol ] }; key { [ e, E, dead_grave, VoidSymbol ] }; key { [ r, R, registered, VoidSymbol ] }; key { [ t, T, degree, VoidSymbol ] }; key { [ y, Y, yen, VoidSymbol ] }; key { [ u, U, dead_diaeresis, VoidSymbol ] }; key { [ i, I, U0131, U00AA ] }; key { [ o, O, dead_circumflex, U00BA ] }; key { [ p, P, Greek_pi, Greek_PI ] }; key { [ eth, Eth, U201e, U201c ] }; key { [ apostrophe, question, questiondown, U00B7 ] }; //-- Row 3 (C) --// key { [ a, A, aring, Aring ] }; key { [ s, S, ssharp, abovedot ] }; key { [ d, D, U2202, U2DA ] }; key { [ f, F, U192, macron ] }; key { [ g, G, copyright, breve ] }; key { [ h, H, bar, VoidSymbol ] }; key { [ j, J, U2206, U2dd ] }; key { [ k, K, U00AC, VoidSymbol ] }; key { [ l, L, U2026, caron ] }; key { [ ae, AE, oe, OE ] }; key { [ dead_acute, dead_diaeresis, U201A, U2018 ] }; key { [ plus, asterisk, U2022, plusminus ] }; //-- Row 2 (B) --// key { [ less, greater, section, UF8FF ] }; key { [ z, Z, U3A9, VoidSymbol ] }; key { [ x, X, asciitilde, VoidSymbol ] }; key { [ c, C, ccedilla, Ccedilla ] }; key { [ v, V, U221A, U25CA ] }; key { [ b, B, U222B, VoidSymbol ] }; key { [ n, N, dead_tilde, VoidSymbol ] }; key { [ m, M, U00B5, VoidSymbol ] }; key { [ comma, semicolon, lessthanequal, guillemotleft ] }; key { [ period, colon, greaterthanequal, guillemotright ] }; key { [ thorn, Thorn, U2019, U201d ] }; include "level3(ralt_switch)" }; partial alphanumeric_keys xkb_symbols "mac" { name[Group1]= "Icelandic (Macintosh)"; //-- Row 5 (E) --// key { [ degree, dead_diaeresis, oslash, Ooblique ] }; key { [ 1, exclam, exclamdown, VoidSymbol ] }; key { [ 2, quotedbl, at, VoidSymbol ] }; key { [ 3, numbersign, trademark, sterling ] }; key { [ 4, dollar, cent, EuroSign ] }; key { [ 5, percent, U2030, infinity ] }; key { [ 6, ampersand, asciicircum, U2044 ] }; key { [ 7, slash, braceleft, division ] }; key { [ 8, parenleft, bracketleft, braceleft ] }; key { [ 9, parenright, bracketright, braceright ] }; key { [ 0, equal, braceright, approxeq ] }; key { [ odiaeresis, Odiaeresis, backslash, U2260 ] }; key { [ minus, underscore, endash, emdash ] }; //-- Row 4 (D) --// key { [ q, Q, U0040, paragraph ] }; key { [ w, W, U2211, U00A7 ] }; key { [ e, E, U20AC, U00BF ] }; key { [ r, R, registered, VoidSymbol ] }; key { [ t, T, degree, U2022 ] }; key { [ y, Y, yen, VoidSymbol ] }; key { [ u, U, dead_diaeresis, VoidSymbol ] }; key { [ i, I, idotless, ordfeminine ] }; key { [ o, O, dead_circumflex, U00BA ] }; key { [ p, P, Greek_pi, Greek_PI ] }; key { [ eth, Eth, doublelowquotemark, leftdoublequotemark ] }; key { [ apostrophe, question, asciitilde, periodcentered ] }; //-- Row 3 (C) --// key { [ a, A, aring, Aring ] }; key { [ s, S, ssharp, abovedot ] }; key { [ d, D, partialderivative, U02DA ] }; key { [ f, F, function, macron ] }; key { [ g, G, copyright, breve ] }; key { [ h, H, bar, U00B8 ] }; key { [ j, J, U2206, doubleacute ] }; key { [ k, K, notsign, U2DB ] }; key { [ l, L, ellipsis, caron ] }; key { [ ae, AE, oe, OE ] }; key { [ dead_acute, dead_acute, asciicircum, leftsinglequotemark ] }; key { [ plus, asterisk, grave, plusminus ] }; //-- Row 2 (B) --// key { [ less, greater, bar, UF8FF ] }; key { [ z, Z, Greek_OMEGA, VoidSymbol ] }; key { [ x, X, asciitilde, VoidSymbol ] }; key { [ c, C, ccedilla, Ccedilla ] }; key { [ v, V, radical, U25CA ] }; key { [ b, B, integral, VoidSymbol ] }; key { [ n, N, dead_tilde, VoidSymbol ] }; key { [ m, M, mu, VoidSymbol ] }; key { [ comma, semicolon, lessthanequal, guillemotleft ] }; key { [ period, colon, greaterthanequal, guillemotright ] }; key { [ thorn, Thorn, rightsinglequotemark, rightdoublequotemark ] }; include "level3(ralt_switch)" }; // This is a modified version of the English Dvorak layout that allows // you to type all Icelandic letters under X. It's not a full attempt at // nationalizing the layout as e.g. the Norwegian, Swedish and French // layouts which modify the primary keys of the basic Dvorak layout // extensively. // Rather it's a simple modification of 5 keys of the US Dvorak layout, // it adds Germanic/Icelandic style quotation marks („“), eth (ðÐ), ae // (æÆ), endash and emdash (–—), thorn (þÞ), EuroSign (€) and the German // Sharp S (ßẞ). These keys aren't used in the US version, making the // Icelandic version a superset of it. // Maybe someone else will make a "full" attempt at an Icelandic layout // but I was mostly interested in continuing to type English comfortably // as a primary function while being able to type the full Icelandic // alphabet as a secondary function. // -- Ævar Arnfjörð Bjarmason // Icelandic Dvorak partial alphanumeric_keys xkb_symbols "dvorak" { include "us(dvorak)" include "eurosign(4)" name[Group1]= "Icelandic (Dvorak)"; key { [ slash, question, U201e, U201c ] }; key { [ o, O, odiaeresis, Odiaeresis ] }; key { [ d, D, eth, ETH ] }; key { [ s, S, ae, AE ] }; key { [ minus, underscore, endash, emdash ] }; key { [ z, Z, thorn, Thorn ] }; key { [ b, B, ssharp, U1E9E ] }; include "level3(ralt_switch)" };