Fat disclaimer: Only and us-jm.map and us-jm-vim.map is maintained!

The us-jm keyboard layout for Xorg 7.x

Q: What is the us-jm keyboard layout?
A: It's a (Linux) port of Jonas Martinsson keyboard layout.
The original Windows version (NT4/2K/XP/2K3) and a full description can be found here.


Q: How do I download it?
A: Download one of these files: us-jm.patch, us-jm.map, us-jm.xkm.
The patch is for root installation (site global) and the other can be used as a user.

Q: How do I install it?
A: I have some basic installation instructions for Ubuntu Linux which uses a
modern X.org 7.x. If you have XFree or an older version of X.org this will
probably not work.

Q: How can I toggle between us-jm and normal Swedish/US keyboard layout?
A: Use the following snippet:

Section "InputDevice"                                                  
        Identifier "Keyboard0" # Same name as in Section "ServerLayout"
        Driver  "kbd"
        Option  "CoreKeyboard"
        Option  "XkbRules"      "xorg"
        Option  "XkbModel"      "pc104" # "pc105" for Swedish keyboards
        Option  "XkbLayout"     "us,se"
        Option  "XKbVariant"    "jm,"
        Option  "XkbOptions"    "grp:shift_caps_toggle,grp_led:scroll"
You will switch between us-jm and normal se layout using
shift+capslock and the screen lock led is used a state indicator.
Use egrep 'grp|grp_led' /usr/share/X11/xkb/rules/xorg.lst
to see more possible ways to change layout and state indicators.

Installation (as root)

If you have root privileges you can install the patch as follows:
patch -p0 < us-jm.patch
Then you enable it as a variant of the us keyboard layout.
Just edit /etc/X11/xorg.conf and edit in:
Section "InputDevice"
     Identifier "Keyboard0"
     Driver     "kbd"
     Option     "CoreKeyboard"
     Option     "XkbRules"     "xorg"
     Option     "XkbModel"     "pc105" # Depends on keyboard hardware 
     Option     "XkbLayout"    "us"                           
     Option     "XKbVariant"   "jm"

Installation (as user)

The .xkm file is installed like:
xkbcomp us-jm.xkm $DISPLAY
and the .mod file is installed as:
xmodmap us-jm.mod
If you want to have us-jm mapping everytime you logon you need
to have the line above in some script, .xsession or equivalent.

Hacked us-jm for Vim!

A "hacked" layout for us-jm due to Samuel "shardz" Baldwin:
us-jm-vim.patch, us-jm-vim.map
The layout swaps Caps Lock and Escape on your keyboard. Perfect for Vim coding sessions!
How to install? Use keyboard variant jm-vim instead of jm in your xorg.conf.

Please send installation instructions for other mainstream systems.
patch last changed: 2008-07-27, 2008-03-24 and 2007-05-19