Summary

These are my xkb customisations. I have this checked out into my ~/.xkb directory. The customisations in this project, along with an autostart desktop application in .config/autostart configure my keyboards on my various computers.

Sources

The material here was derived from a number of great sources.

I learned about XKB at these locations:

Strategy

The summary of my strategy is as follows

  1. create an explicit keymap which includes my customised symbol definitions
  2. compile and load my keymap with my local include directories so I don't need to modify the system area.
  3. create autostart desktop application that gets called when I login.

I decided on my final customisation strategy after reading this

Contents of directories

The sub-directories are described below

  • applications

    contains example application files to be put in .config/autostart

  • bin

    contains shell commands that the desktop applications use to compile and install the keyboard map.

  • keymaps

    contains the keymaps for customised keyboard settings. These are created by editing original keymap found from "setxkbmap -print" to add customised symbol definitions

  • symbols

    contains the key remapping symbol definitions that are the critical part of the configuration.

Autostart

To configure keyboard on startup (Gnome, Linux) I add an application to .config/autostart which is a copy of the example application in the applications directory, possibly with a modified executable which points to the right keymap for the system in question.

I decided that this was the best strategy based on these sources