Xorg Keyboard – How to Create and Set Custom Keyboard Layout

keyboardkeyboard-layoutxkbxorg

I want to create and set a custom keyboard layout with setxkbmap. I created a file in ~/.xkb/prog with this content:

partial default alphanumeric_keys
xkb_symbols "basic" {

include "latin(type4)"

name[Group1]="es for developers";

key <AE01> {[           1,           exclam,    exclamdown,          bar   ]};    
key <AD03> {[           e,                E,      EuroSign,     sterling   ]};
key <AB06> {[           n,                N,        ntilde,       Ntilde   ]};    
key <AB07> {[           m,                M,            mu,           mu   ]};    
key <AB10> {[       slash,         question,  questiondown,    dead_hook   ]};

include "level3(ralt_switch)"
}; 

And I tried to load it with setxkbmap -I$HOME/.xkb "prog", but I get a 'Error loading new keyboard description'

I also tried it with setxkbmap -I$HOME/.xkb "prog" -print | xkbcomp -I$HOME/.xkb - $DISPLAY, but I get this error: 'Can't find file "prog" for symbols include'

Best Answer

Try that last one, i.e.:

% setxkbmap -I ~/.xkb prog -print | xkbcomp -I$HOME/.xkb - $DISPLAY

But put your layout in ~/.xkb/symbols/prog (note the symbols subdirectory).

Related Question