I've been trying to migrate my keyboard mapping from xmodmap to xkb, but I'm having some trouble. I can see where to modify the "normal" keys, in /usr/share/X11/xkb/symbol/us for me, but this file seems devoid of "special" keys, including modifiers.

The full remapping that I wish to achieve is:

  • Swap Left Ctrl and Shift
  • Replace Right Ctrl with Shift
  • Replace Right Shift with '
  • Replace ' with /
  • Right blank key (keycode 97) to Menu
  • Left blank key (keycode 92) to AltGr
  • AltGr encodings:
    • keycode 20 = minus underscore minus underscore endash emdash
    • keycode 60 = period greater period greater ellipsis
    • Fn+F5 and Fn+F6 control brightness
    • keycode 148 = XF86MonBrightnessDown NoSymbol XF86MonBrightnessDown
    • keycode 179 = XF86MonBrightnessUp NoSymbol XF86MonBrightnessUp

How can I achieve this?

  • Take a look at my answer Here, see if it helps. – Mitch Aug 1 '13 at 17:18
  • @Mitch I actually did see that already, but as far as I can tell that is to create Xmodmaps? I already have an Xmodmap (which I find much more transparent than xkb), but I'm trying to move to xkb for several reasons: to have specific simultaneous keymaps for multiple keyboards; and to apply this keymap on startup rather than having to reconnect and trigger with a udev rule. – Sparhawk Aug 1 '13 at 22:48

The solution is to create AltGr encodings in /usr/share/X11/xkb/symbol/us, but swap most keys using /usr/share/X11/xkb/keycodes/evdev instead.

(However, I haven't worked out how to map Fn+F5 and Fn+F6 to XF86MonBrightnessDown and XF86MonBrightnessUp yet.)

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.