System wide key remapping in Ubuntu

By | 20 Jan 2017

On my hp Spectre x360, the Ins key is only reachable via the Fn key as in Fn+PrtScr.

So I wanted to swap both keys. System-wide – so not only in X (using xev).

I finally found this which suggested the following procedure:

  1. Dump the current keyboard layout:
    sudo dumpkeys > backup.kmap
  2. Check the keycodes you want to change (Ins = 110, PrtScr = 99):
    sudo showkey
    (When you’re done, wait 10 seconds for it to exit automatically.)
  3. Copy the dumped keyboard layout:
    cp backup.kmap ins-prt-swap.kmap
  4. Edit it to swap all occurrences of 99 to 110 and vice versa, e.g. change:
    keycode 99 = ...
    ...
    keycode 110 = Insert.....
    to
    keycode 110 = ...
    ...
    keycode 99 = Insert.....
  5. The suggested sudo setcon --save didn’t work for me, but Ubuntu loads the active keymap from the file /etc/console-setup/cached.kmap.gz. So I gzipped my ins-prt-swap.kmap and copied the resulting ins-prt-swap.kmap.gz to /etc/console-setup/cached.kmap.gz.

Leave a Reply

Your email address will not be published. Required fields are marked *

To respond on your own website, enter the URL of your response which should contain a link to this post's permalink URL. Your response will then appear (possibly after moderation) on this page. Want to update or remove your response? Update or delete your post and re-enter your post's URL again. (Find out more about Webmentions.)