O Xmodmap não pode fazer o que você está pedindo, mas pode aproximá-lo.
A sintaxe básica para modificar o comportamento de uma chave é
xmodmap -e "keycode KEYCODE = KEYSYMBOL1 KEYSYMBOL1 KEYSYMBOL3 KEYSYMBOL4"
xmodmap -e "keysym KEYSYMBOL = KEYSYMBOL1 KEYSYMBOL1 KEYSYMBOL3 KEYSYMBOL4"
onde
-
KEYSYMBOL2
é acionado ao pressionar a tecla enquanto pressiona Shift . -
KEYSYMBOL3
é acionado ao pressionar a tecla enquanto pressiona ModeSwitch . -
KEYSYMBOL4
é acionado ao pressionar a tecla enquanto pressiona Shift + ModeSwitch . -
KEYSYMBOL1
é acionado ao pressionar a tecla sem nenhuma das opções acima. - ModeSwitch é AltGr por padrão (funciona apenas em alguns layouts de teclado).
Não podemos definir Ctrl ou Alt como a tecla ModeSwitch , já que nenhuma tecla pode servir como dois modificadores diferentes.
No entanto, nós podemos transformar CapsLock na tecla ModeSwitch :
xmodmap -e "keysym Caps_Lock = Mode_switch Mode_switch"
Para remapear CapsLock + Ctrl para a tecla CapsLock , execute os seguintes comandos.
xmodmap -e "keysym Control_L = Control_L Control_L Caps_Lock"
xmodmap -e "keysym Control_R = Control_R Control_R Caps_Lock"
Note que o CapsLock é a tecla modificadora aqui, então você tem que pressionar esta tecla primeiro.
Nós não podemos remapear CapsLock + Alt ou CapsLock + Super para Escape da mesma maneira, já que Alt e Super servem funções diferentes quando pressionados sozinhos e quando usados como teclas modificadoras.
Todas as outras chaves funcionarão bem. Exemplos:
-
Para CapsLock + ' (layout padrão dos EUA), use
xmodmap -e "keysym grave = grave asciitilde Escape"
-
Para CapsLock + Espaço , use
xmodmap -e "keysym space = KP_Space KP_Space Escape"
Dicas:
-
Para tornar os remapeamentos permanentes, crie / edite o arquivo
.gnomerc
em sua pasta pessoal e salve os comandos correspondentes nele. -
Para desfazer todos os remapeamentos, basta executar
setxkbmap