Aviso: A partir de 2013, o Ubuntu e os derivativos não usam mais o xmodmap
, mas usam xkb
. Para mais informações, consulte esta resposta . A resposta abaixo não é mais relevante para as versões atuais.
Para remapear certas teclas, você precisa de duas ferramentas. Primeiro xev (ferramenta de linha de comando) e segundo xmodmap (também ferramenta de linha de comando) . Ambos devem estar disponíveis no Ubuntu sem instalá-los extra.
-
Inicie a janela do terminal e execute
xev
. Agora está ativo e espera que você pressione uma tecla. Em seguida, pressione a tecla cujo comportamento você deseja alterar. Ou seja, PgUp . -
xev
gerará algumas informações sobre a tecla pressionada. A terceira linha é importante. Deve ser semelhante a:state 0x10, keycode 110 (keysym 0xff55, Prior), same_screen YES,
neste exemplo
Prior
é o nome do comportamento ao qual a chave está atribuída no momento, o código numérico é o ID interno para reconhecer a chave. Agora faça isso com outra chave, ou seja, PgDown dê essa saídastate 0x10, keycode 115 (keysym 0xff56, Next), same_screen YES,
Aqui, novamente, a parte interessante para nós é
keycode 115
eNext
- o nome do comportamento. -
agora, quando você quiser trocar as duas chaves, use
xmodmap
.xmodmap -e "keycode 110 = Next"
Isso altera a chave com o código de tecla 110 no seu teclado para a ação
Next
. É bem simples.Note que se a chave que você está mapeando deve ter um significado diferente quando usada com a tecla Shift (por exemplo, para layouts de teclado britânico, Shift + 2 dá aspas) então você pode simplesmente listar o comando secundário após o primeiro. Por exemplo, se você quiser que a chave com o código 53 seja mapeada para a barra invertida normalmente, mas para o símbolo da barra quando usada com shift, você pode fazer:
xmodmap -e "keycode 53 = backslash bar"
Informações adicionais: A sequência desses mapeamentos é Chave , Shift + Chave , mode_switch + Chave , mode_switch + Shift + Tecla , AltGr + Chave , AltGr + Shift + Tecla . Para pular uma coluna, use NoSymbol
. Além disso, aqui é uma lista abrangente de todos os keyyms.
Nota: Estas alterações são apenas para a sessão X ativa e serão perdidas após a reinicialização. Quando você quiser salvar as alterações permanentemente, execute os seguintes comandos depois dos que estão acima:
xmodmap -pke >~/.Xmodmap
(cria um arquivo chamado .Xmodmap
no seu diretório pessoal ( ~
))
Então você tem que criar um arquivo chamado .xinitrc
no seu diretório home onde você colocou o comando xmodmap .Xmodmap
in.
Agora você pode modificar .Xmodmap
e executar xmodmap .Xmodmap
do console para ver as alterações imediatamente. As alterações em .Xmodmap
persistirão.
fonte: Fóruns do Ubuntu
Coisas bônus:
Se a chave que você está remapeando tiver um comportamento diferente dependendo de um estado (
como como as teclas no teclado numérico dependem do NumLock) você simplesmente tem que fazer xmodmap -pm
para obter uma lista de modificadores e então fazer:
xmodmap -e "KEYCODE MODIFIER = behaviour behaviour_with_modifier"
Suponha, por exemplo, que você deseja obter um ponto em vez de uma vírgula no teclado numérico (útil para a maioria dos programadores), mas deseja manter o comportamento de "excluir" quando o NumLock está desativado.
xmodmap -e "keycode 91 mod2 = KP_Delete period"
mod2
, porque xmodmap -pm
nos diz que mod2
é Num_Lock
, os outros nomes são obtidos pressionando as teclas em xev
.