Using 102 key keyboards with an an Icelandic keyboard layout



One of the most frustrating things about the Icelandic keyboard layout is that the <>| symbols are bound to an extra key only found on 103 + key keyboards, this key is located left of the Z character.
Despite this you will often find 102 key keyboards and laptops with 102 key keyboards being sold in Iceland, while this isn't much of a problem for your standard windows user it's quite annoying for programmers and *nix users which depend on sh/bash shells.

In my frustration I ended up creating a new custom Icelandic keyboard layout for 102 key keyboards, here is the layout along with a guide on how to install it.

This map uses alt-gr and the ,.þ keys for the <>| symbols, this is handy because it's an easy one hand keypress and because 102 key keyboards will have the <> symbols printed in that place.


Windows:


To use the custom keyboard map on a windows machine download the setup file, extract and run the setup to install a new keyboard layout, you can then select via the "Text Services and Input Language" like any regular windows keyboard layout.

Linux:


I have only tested the Linux version on Ubuntu 9.10, let me know if this does not work for you so I can fix the guidelines for more distros/versions.


1. Edit the file /usr/share/X11/xkb/symbols/ and add the following section to the end of the file: (sudo gedit usr/share/X11/xkb/symbols/)
// Icelandic layout for US 102 key keyboards missing the | < > button next to the Z
// Instead these keys are also mapped to alt-gr  and , . þ
partial alphanumeric_keys
xkb_symbols "102" {
    name[Group1]= "Iceland - 102 keys";

    include "is(basic)"
    key   { [   comma,    semicolon,      less,   multiply ] };
    key   { [  period,    colon,          greater,        division ] };
    key   { [   thorn,    THORN,          bar,    dead_abovedot ] };
};

2. Edit the file /usr/share/X11/xkb/rules/evdev.xml , find the Icelandic section and after the variant Dvorak add a new variant called 102 like so (sudo gedit usr/share/X11/xkb/rules/evdev.xml)
    <variant>
        <configItem>
            <name>102</name>
            <description>102 Key keyboards</description>
        </configItem>
    </variant>

3. Edit the file /usr/share/X11/xkb/rules/evdev.lst , find the is section and add the is: 102 section so that it looks like the following (sudo gedit usr/share/X11/xkb/rules/evdev.lst):
  Sundeadkeys     is: Sun dead keys
  nodeadkeys      is: Eliminate dead keys
  mac             is: Macintosh
  dvorak          is: Dvorak
  102             is: 102

4. Configure the system to use the new variant, change the default variant by editing the file /etc/default/console-setup (sudo gedit /etc/default/console-setup)
Add the variant by changing the XKBVARIANT variable to "102" so that the config looks like the following:
# in /etc/X11/xorg.conf.
XKBMODEL="pc105"
XKBLAYOUT="is"
XKBVARIANT="102"
XKBOPTIONS=""

Now all you need to do is restart and you should have your new keyboard layout with <>| buttons available

To top



Creative Commons License
All content on this site is licensed under a Creative Commons License.