summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Udaltsov <sergey.udaltsov@gmail.com>2014-08-18 00:16:14 +0100
committerSergey Udaltsov <sergey.udaltsov@gmail.com>2014-08-18 00:16:14 +0100
commit10fce2c2baae471795d069f3a5f1307eedb9ff0a (patch)
tree4de2d415e8daa915f22521f44d12c495e8220fb3
parente56ecb3002fbcb91e78f32a0e7483050cd375b2a (diff)
Icelandic keyboard layout for newer Apple keyboards
https://bugs.freedesktop.org/show_bug.cgi?id=79982
-rw-r--r--rules/base.xml.in6
-rw-r--r--symbols/is188
2 files changed, 136 insertions, 58 deletions
diff --git a/rules/base.xml.in b/rules/base.xml.in
index 71f374ab..a7aa5de2 100644
--- a/rules/base.xml.in
+++ b/rules/base.xml.in
@@ -3513,6 +3513,12 @@
</variant>
<variant>
<configItem>
+ <name>mac_legacy</name>
+ <_description>Icelandic (Macintosh, legacy)</_description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
<name>mac</name>
<_description>Icelandic (Macintosh)</_description>
</configItem>
diff --git a/symbols/is b/symbols/is
index 93af3f80..20d36549 100644
--- a/symbols/is
+++ b/symbols/is
@@ -87,6 +87,12 @@ xkb_symbols "nodeadkeys" {
// * 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
@@ -106,68 +112,134 @@ xkb_symbols "nodeadkeys" {
// 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 <TLDE> { [ sterling, section, UF8FF, apostrophe ] };
+ key <AE01> { [ 1, exclam, exclamdown, VoidSymbol ] };
+ key <AE02> { [ 2, quotedbl, at, VoidSymbol ] };
+ key <AE03> { [ 3, numbersign, U2122, sterling ] };
+ key <AE04> { [ 4, dollar, U00A2, EuroSign ] };
+ key <AE05> { [ 5, percent, U2030, infinity ] };
+ key <AE06> { [ 6, ampersand, asciicircum, U2044 ] };
+ key <AE07> { [ 7, slash, backslash, U00F7 ] };
+ key <AE08> { [ 8, parenleft, bracketleft, braceleft ] };
+ key <AE09> { [ 9, parenright, bracketright, braceright ] };
+ key <AE10> { [ 0, equal, U2260, U2248 ] };
+ key <AE11> { [ odiaeresis, Odiaeresis, oslash, Ooblique ] };
+ key <AE12> { [ minus, underscore, endash, emdash ] };
+
+
+ //-- Row 4 (D) --//
+ key <AD01> { [ q, Q, paragraph, VoidSymbol ] };
+ key <AD02> { [ w, W, U2211, VoidSymbol ] };
+ key <AD03> { [ e, E, dead_grave, VoidSymbol ] };
+ key <AD04> { [ r, R, registered, VoidSymbol ] };
+ key <AD05> { [ t, T, degree, VoidSymbol ] };
+ key <AD06> { [ y, Y, yen, VoidSymbol ] };
+ key <AD07> { [ u, U, dead_diaeresis, VoidSymbol ] };
+ key <AD08> { [ i, I, U0131, U00AA ] };
+ key <AD09> { [ o, O, dead_circumflex, U00BA ] };
+ key <AD10> { [ p, P, Greek_pi, Greek_PI ] };
+ key <AD11> { [ eth, Eth, U201e, U201c ] };
+ key <AD12> { [ apostrophe, question, questiondown, U00B7 ] };
+
+
+ //-- Row 3 (C) --//
+ key <AC01> { [ a, A, aring, Aring ] };
+ key <AC02> { [ s, S, ssharp, abovedot ] };
+ key <AC03> { [ d, D, U2202, U2DA ] };
+ key <AC04> { [ f, F, U192, macron ] };
+ key <AC05> { [ g, G, copyright, breve ] };
+ key <AC06> { [ h, H, bar, VoidSymbol ] };
+ key <AC07> { [ j, J, U2206, U2dd ] };
+ key <AC08> { [ k, K, U00AC, VoidSymbol ] };
+ key <AC09> { [ l, L, U2026, caron ] };
+ key <AC10> { [ ae, AE, oe, OE ] };
+ key <AC11> { [ dead_acute, dead_diaeresis, U201A, U2018 ] };
+ key <BKSL> { [ plus, asterisk, U2022, plusminus ] };
+
+
+ //-- Row 2 (B) --//
+ key <LSGT> { [ less, greater, section, UF8FF ] };
+ key <AB01> { [ z, Z, U3A9, VoidSymbol ] };
+ key <AB02> { [ x, X, asciitilde, VoidSymbol ] };
+ key <AB03> { [ c, C, ccedilla, Ccedilla ] };
+ key <AB04> { [ v, V, U221A, U25CA ] };
+ key <AB05> { [ b, B, U222B, VoidSymbol ] };
+ key <AB06> { [ n, N, dead_tilde, VoidSymbol ] };
+ key <AB07> { [ m, M, U00B5, VoidSymbol ] };
+ key <AB08> { [ comma, semicolon, lessthanequal, guillemotleft ] };
+ key <AB09> { [ period, colon, greaterthanequal, guillemotright ] };
+ key <AB10> { [ thorn, Thorn, U2019, U201d ] };
+
+ include "level3(ralt_switch)"
+};
+
partial alphanumeric_keys
xkb_symbols "mac" {
name[Group1]= "Icelandic (Macintosh)";
- //-- Row 5 (E) --//
- key <TLDE> { [ sterling, section, UF8FF, apostrophe ] };
- key <AE01> { [ 1, exclam, exclamdown, VoidSymbol ] };
- key <AE02> { [ 2, quotedbl, at, VoidSymbol ] };
- key <AE03> { [ 3, numbersign, U2122, sterling ] };
- key <AE04> { [ 4, dollar, U00A2, EuroSign ] };
- key <AE05> { [ 5, percent, U2030, infinity ] };
- key <AE06> { [ 6, ampersand, asciicircum, U2044 ] };
- key <AE07> { [ 7, slash, backslash, U00F7 ] };
- key <AE08> { [ 8, parenleft, bracketleft, braceleft ] };
- key <AE09> { [ 9, parenright, bracketright, braceright ] };
- key <AE10> { [ 0, equal, U2260, U2248 ] };
- key <AE11> { [ odiaeresis, Odiaeresis, oslash, Ooblique ] };
- key <AE12> { [ minus, underscore, endash, emdash ] };
-
-
- //-- Row 4 (D) --//
- key <AD01> { [ q, Q, paragraph, VoidSymbol ] };
- key <AD02> { [ w, W, U2211, VoidSymbol ] };
- key <AD03> { [ e, E, dead_grave, VoidSymbol ] };
- key <AD04> { [ r, R, registered, VoidSymbol ] };
- key <AD05> { [ t, T, degree, VoidSymbol ] };
- key <AD06> { [ y, Y, yen, VoidSymbol ] };
- key <AD07> { [ u, U, dead_diaeresis, VoidSymbol ] };
- key <AD08> { [ i, I, U0131, U00AA ] };
- key <AD09> { [ o, O, dead_circumflex,U00BA ] };
- key <AD10> { [ p, P, Greek_pi, Greek_PI ] };
- key <AD11> { [ eth, Eth, U201e, U201c ] };
- key <AD12> { [ apostrophe, question, questiondown, U00B7 ] };
-
-
- //-- Row 3 (C) --//
- key <AC01> { [ a, A, aring, Aring ] };
- key <AC02> { [ s, S, ssharp, abovedot ] };
- key <AC03> { [ d, D, U2202, U2DA ] };
- key <AC04> { [ f, F, U192, macron ] };
- key <AC05> { [ g, G, copyright, breve ] };
- key <AC06> { [ h, H, bar, VoidSymbol ] };
- key <AC07> { [ j, J, U2206, U2dd ] };
- key <AC08> { [ k, K, U00AC, VoidSymbol ] };
- key <AC09> { [ l, L, U2026, caron ] };
- key <AC10> { [ ae, AE, oe, OE ] };
- key <AC11> { [ dead_acute, dead_diaeresis, U201A, U2018 ] };
- key <BKSL> { [ plus, asterisk, U2022, plusminus ] };
-
-
- //-- Row 2 (B) --//
- key <LSGT> { [ less, greater, section, UF8FF ] };
- key <AB01> { [ z, Z, U3A9, VoidSymbol ] };
- key <AB02> { [ x, X, asciitilde, VoidSymbol ] };
- key <AB03> { [ c, C, ccedilla, Ccedilla ] };
- key <AB04> { [ v, V, U221A, U25CA ] };
- key <AB05> { [ b, B, U222B, VoidSymbol ] };
- key <AB06> { [ n, N, dead_tilde, VoidSymbol ] };
- key <AB07> { [ m, M, U00B5, VoidSymbol ] };
- key <AB08> { [ comma, semicolon, lessthanequal, guillemotleft ] };
- key <AB09> { [ period, colon, greaterthanequal,guillemotright ] };
- key <AB10> { [ thorn, Thorn, U2019, U201d ] };
+ //-- Row 5 (E) --//
+ key <TLDE> { [ less, greater, bar, UF8FF ] };
+ key <AE01> { [ 1, exclam, exclamdown, VoidSymbol ] };
+ key <AE02> { [ 2, quotedbl, at, VoidSymbol ] };
+ key <AE03> { [ 3, numbersign, trademark, sterling ] };
+ key <AE04> { [ 4, dollar, cent, EuroSign ] };
+ key <AE05> { [ 5, percent, U2030, infinity ] };
+ key <AE06> { [ 6, ampersand, asciicircum, U2044 ] };
+ key <AE07> { [ 7, slash, braceleft, division ] };
+ key <AE08> { [ 8, parenleft, bracketleft, braceleft ] };
+ key <AE09> { [ 9, parenright, bracketright, braceright ] };
+ key <AE10> { [ 0, equal, braceright, approxeq ] };
+ key <AE11> { [ odiaeresis, Odiaeresis, backslash, U2260 ] };
+ key <AE12> { [ minus, underscore, endash, emdash ] };
+
+
+ //-- Row 4 (D) --//
+ key <AD01> { [ q, Q, U0040, paragraph ] };
+ key <AD02> { [ w, W, U2211, U00A7 ] };
+ key <AD03> { [ e, E, U20AC, U00BF ] };
+ key <AD04> { [ r, R, registered, VoidSymbol ] };
+ key <AD05> { [ t, T, degree, U2022 ] };
+ key <AD06> { [ y, Y, yen, VoidSymbol ] };
+ key <AD07> { [ u, U, dead_diaeresis, VoidSymbol ] };
+ key <AD08> { [ i, I, idotless, ordfeminine ] };
+ key <AD09> { [ o, O, dead_circumflex, U00BA ] };
+ key <AD10> { [ p, P, Greek_pi, Greek_PI ] };
+ key <AD11> { [ eth, Eth, doublelowquotemark, leftdoublequotemark ] };
+ key <AD12> { [ apostrophe, question, asciitilde, periodcentered ] };
+
+
+ //-- Row 3 (C) --//
+ key <AC01> { [ a, A, aring, Aring ] };
+ key <AC02> { [ s, S, ssharp, abovedot ] };
+ key <AC03> { [ d, D, partialderivative, U02DA ] };
+ key <AC04> { [ f, F, function, macron ] };
+ key <AC05> { [ g, G, copyright, breve ] };
+ key <AC06> { [ h, H, bar, U00B8 ] };
+ key <AC07> { [ j, J, U2206, doubleacute ] };
+ key <AC08> { [ k, K, notsign, U2DB ] };
+ key <AC09> { [ l, L, ellipsis, caron ] };
+ key <AC10> { [ ae, AE, oe, OE ] };
+ key <AC11> { [ dead_acute, dead_acute, asciicircum, leftsinglequotemark ] };
+ key <BKSL> { [ plus, asterisk, grave, plusminus ] };
+
+
+ //-- Row 2 (B) --//
+ key <LSGT> { [ degree, dead_diaeresis, oslash, Ooblique ] };
+ key <AB01> { [ z, Z, Greek_OMEGA, VoidSymbol ] };
+ key <AB02> { [ x, X, asciitilde, VoidSymbol ] };
+ key <AB03> { [ c, C, ccedilla, Ccedilla ] };
+ key <AB04> { [ v, V, radical, U25CA ] };
+ key <AB05> { [ b, B, integral, VoidSymbol ] };
+ key <AB06> { [ n, N, dead_tilde, VoidSymbol ] };
+ key <AB07> { [ m, M, mu, VoidSymbol ] };
+ key <AB08> { [ comma, semicolon, lessthanequal, guillemotleft ] };
+ key <AB09> { [ period, colon, greaterthanequal, guillemotright ] };
+ key <AB10> { [ thorn, Thorn, rightsinglequotemark, rightdoublequotemark ] };
include "level3(ralt_switch)"
};