Uma vez eu tentei escrever uma solução genérica para o caso de uma chave física quebrada empregando XKB; Salvei minhas alterações de configuração no link . Eu não limpei tudo. (Ou seja, infelizmente, eu não cometi o estado inalterado inicial, então não é fácil inspecionar as mudanças que eu introduzi. Eu poderia tentar limpá-lo, e postar o histórico de revisão resultante quando eu terminar.) Se eu me lembro corretamente, funcionou.
Minha idéia era (para ter um teclado totalmente funcional) para remapear a chave no nível mais baixo (códigos de teclas), para que todas as combinações e layouts usem a nova chave física que deve substituir a quebrada ("T" meu caso).
Você pode ver o novo mapeamento de códigos de teclas em o último commit na ramificação "nohack" . Eu biferei /usr/share/X11/xkb/keycodes/evdev
como /usr/share/X11/xkb/keycodes/evdev-with-broken-t
mudando a linha:
alias <AD05> = <PAUS>;
(Na minha primeira revisão, que eu considerei um hack, eu simplesmente editei o pristine /usr/share/X11/xkb/keycodes/evdev
. Esse hack é desfeito no commit vinculado. Eu lembro com certeza que a versão "hack" funcionou, não tinha certeza o ramo "nohack".)
Então eu defini uma nova opção XKB ("broken: t" - veja no commit acima), e usei em o arquivo de configuração para XKB que é processado no ALTLinux ao iniciar o X. (Eu acho que você também poderia colocar opções similares em xorg.conf
, com uma sintaxe diferente, claro, ou peça ao seu xinit
ou algo semelhante para executar setxkbmap
com essas opções na inicialização.)