Se você está apenas interessado em remapear as teclas de uma maneira que funcione para qualquer ui, eu acho que tenho um jeito para qualquer wm comum, mas você provavelmente teria que configurá-lo por wm. Por exemplo, no Awesome, adiciono a seguinte linha ao final do meu rc.lua
:
awful.util.spawn_with_shell("/usr/bin/setxkbmap -option caps:swapescape -option altwin:ctrl_win")
com meus outros itens de autostart. As opções acima trocarão escape e capslock e mapear as teclas "windows" (e as teclas ctrl usuais) para ctrl.
Qualquer que seja o DE ou o wm que você usa, ele deve oferecer uma maneira de iniciar automaticamente os comandos. A inicialização automática do comando setxkbmap
apropriado deve remapear suas chaves. Eu fiz isso em vários gerenciadores de janelas. AFAIK, essa é a maneira confiável e "adequada" de remapear as teclas, em contraste com o xmodmap, que parece flakey.
Para remapear as teclas desejadas, você precisa conhecer as opções apropriadas e os valores-chave a serem transmitidos. Você pode encontrar uma lista em /usr/share/X11/xkb/rules/xorg.lst
Claro, você pode usar setxkbmap
em .xinitrc
também, mas como você apontou, o lightdm não parece usá-lo ao carregar as sessões. Como eu uso lightdm também, eu não costumo pensar em editar xinitrc
, mas me ocorreu que deveria haver uma maneira de iniciar uma sessão X definida pelo usuário através do lightdm ... e eu encontrei esta resposta . Isso pode estar mais de acordo com o que você quer fazer.