Para fazer grandes alterações em seu teclado, incluindo remapeamento de caracteres e alteração de modificadores, você precisa usar o utilitário xmodmap - consulte man xmodmap
. Existem algumas maneiras de executar as alterações:
-
na linha de comando
xmodmap -e "your commands"
-
ou escreva os comandos em um arquivo como .xmodmaprc, depois execute-o em seus itens de login ou no seu .bashrc com
xmodmap .xmodmaprc
Se você usar o arquivo ~ / .xmodmap, ele será executado automaticamente no login.
Alt e Super (a tecla do Windows) são modificadores e se comportam especialmente para o sistema. As chaves precisarão ser desmapeadas de seu modificador antes que você possa remapear qualquer outra coisa. A barra de espaço é considerada uma chave normal.
Desmapeando o modificador
Abra uma janela de terminal ( Ctrl-Alt-T
, se você não estiver familiarizado com isso).
Execute o comando xmodmap -pm
para obter uma lista das teclas modificadoras em seu sistema. Na saída, a coluna mais à esquerda é a lista de modificadores disponíveis para o sistema. As outras colunas listam as chaves associadas a esses modificadores como pares por keysym (keycode)
. Por exemplo, uma linha da minha saída é
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
Os códigos de tecla correspondem a chaves físicas e podem (hipoteticamente) diferir entre teclados. O keysym é o 'nome' de uma chave. Se a chave for um caractere imprimível, o nome corresponde ao caractere impresso.
Agora você tem o que precisa para remover o mapeamento de uma chave do seu modificador correspondente. Eu vou fingir que estamos trabalhando com Alt_R.
Execute o comando xmodmap (por um dos métodos acima no topo)
remove mod1 = Alt_R
Remapear a barra de espaço
Em seguida, precisamos saber o que é a barra de espaço. Execute xmodmap -pke
na sua janela de terminal. Isso imprimirá o que cada tecla do seu teclado está mapeada. Em algum lugar em que quatro ou cinco telas cheias é uma referência para a barra de espaço. Precisamos do nome dele para mapear uma chave para ele.
Alerta de spoiler: a barra de espaço tem o nome space
Ainda temos uma chave chamada Alt_R, mas não faz nada. Podemos usar seu nome para remapear para a barra de espaço. Execute este comando xmodmap:
keysym Alt_R = space
Isso pode acontecer enquanto você testa isso e já alterou o nome do Alt_R. Talvez você tenha acidentalmente remapeado para a letra 'a'. Você não quer remapear 'a' para outra coisa, porque você ainda precisa de uma das chaves com esse nome. Se você acabar nessa situação, ainda poderá se referir a Alt_R por seu código de acesso. Lembre-se que no meu teclado isso é 0x6c. Pode ser diferente para você. Você pode usar este comando xmodmap para alterá-lo:
keycode 0x6c = space
Boa sorte!