Eu enfrentei alguns problemas depois de remapear o teclado com o xmodmap: as configurações são redefinidas aleatoriamente após 2-20 minutos após a aplicação. Pesquisei no Google, mas não adianta: algo as redefine, mas todas as menções se aplicam ao xfce, enquanto eu estou sob o habitual Ubuntu 14.04 com unidade.
Vi frases como 'use xkb, esqueça xmodmap', mas ainda não faço ideia de como fazer isso. É classificado ou muito complicado, porque a quantidade de informações é significativamente menor do que a maneira xmodmap.
Aqui está minha lista de personalizações:
xmodmap -e "keycode 84 = Down"
xmodmap -e "keycode 79 = Home"
xmodmap -e "keycode 80 = Up"
xmodmap -e "keycode 83 = Left"
xmodmap -e "keycode 85 = Right"
xmodmap -e "keycode 87 = End"
xmodmap -e "keycode 90 = Insert"
xmodmap -e "keycode 91 = Delete"
xmodmap -e "keycode 89 = Next"
xmodmap -e "keycode 81 = Prior"
onde códigos são chaves correspondentes no numpad, com numlock = off (basicamente, eu estou substituindo KP_Del por Delete, KP_Home por Home etc - não pergunte por que))
Alguém pode ajudar a encontrar uma maneira de fazer isso usando xkb - pelo menos uma das linhas? E onde encontrar os "nomes" das chaves para outras, para que eu pudesse fazer o resto pelo exemplo?
xkb
sem reescrever os arquivos do sistema, escreva uma resposta aqui ... você será recompensado por zilhões de votos.Respostas:
Você pode seguir a ideia geral vista na minha resposta sobre um problema semelhante ; se você ainda deseja alternar o layout (embora ainda esteja bastante quebrado ), defina um novo layout ou variante .
Observe que o modelo a ser copiado e modificado para a edição de um teclado é um pouco difícil de encontrar. No meu teclado, por exemplo, a geometria é "pc105"; isso é definido em
/usr/share/X11/xkb/symbols/pc
. Se você olhar para ele, ele inclui :O teclado está definido no arquivo
/usr/share/X11/xkb/symbols/keypad
Para o nome dos símbolos de chave (keysims), o melhor lugar para procurar é no arquivo
/usr/include/X11/keysymdef.h
; pode ser necessário instalar os pacotes de desenvolvimento para instalá-lo (ou instalá-lo instalandox11proto-core-dev
):o nome da chave é aquele que você removeu uma vez a string "XK_".
fonte