Mapear um símbolo para uma chave específica

9

Eu tenho o seguinte problema: eu uso o intl variant do gb layout de teclado, ou seja, o que você obtém com:

setxkbmap -layout gb -variant intl

Eu uso o gmail no Firefox e, por alguma razão, o atalho do gmail para se mover entre as guias na caixa de entrada, que é acionado com a tecla ~ , não funciona.

O problema vem de ter que pressionar ~ e Espaço depois, então 2 chaves, para obter o símbolo (que é a variante intl, que me permite escrever ñ , a letra espanhola).

Eu tentei o layout us com a variante intl e, nesse caso, o atalho funciona, porque o símbolo ~ pode ser acionado com AltGr + ~ .

Então, o que eu quero é ter o mesmo comportamento com o layout gb . Ou, geralmente, mapear ~ para qualquer outra combinação (não envolvendo mais de uma chave).

    
por Alejandro DC 16.09.2013 / 19:49

1 resposta

4

Você pode usar xmodmap para alterar o mapeamento da chave ~ .

Por exemplo, no meu sistema (layout padrão dos EUA), ele é configurado por padrão assim:

$ xev # then pressing Shift + ~
[..]
KeyRelease event, serial 36, synthetic NO, [..]
root 0xa3, [..]
state 0x11, keycode 49 (keysym 0x7e, asciitilde), same_screen YES,
XLookupString gives 1 bytes: (7e) "~"
XFilterEvent returns: False

Então, posso verificar como o keycode 49 está exatamente configurado:

$ xmodmap -pke | grep 'keycode *49'
keycode  49 = grave asciitilde grave asciitilde

Você pode alimentar uma expressão como essa de volta ao xmodmap, por exemplo com algo parecido com isto:

$ xmodmap -e 'keycode  49 = grave asciitilde grave asciitilde'
    
por 16.09.2013 / 20:46