xmodmap não tem efeito

3

Primeiro post. Aqui vai:

Eu tenho o Ubuntu 10.10, o maverick.

Alguns dias atrás, eu estava tentando converter minha tecla 'command' no meu computador apple para uma tecla 'ctrl' e, depois de pesquisar on-line, corri para o xmodmap. Deixe-me primeiro ir em frente e dizer que descobri no final como remapear minha chave (vá para System- > preferences- > keyboard, layouts, win / alt key e mapeie-a para controlá-la). Mas antes disso, eu estava tentando usar o xmodmap para fazer o remapeamento. No processo, percebi que o xmodmap simplesmente não funciona para mim, e não há nada que eu possa encontrar online relatando um problema similar.

Mesmo antes de criar qualquer tipo de arquivo .Xmodmap a ser executado toda vez no login, o comando simplesmente parece não funcionar no terminal. Se eu executar xev, a saída da minha chave de comando esquerda é:

KeyPress event, serial 33, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 2747931, (120,-383), root:(123,436),
state 0x0, keycode 133 (keysym 0x85, (no name)), same_screen YES,
XLookupString gives 2 bytes: (c2 85) ""
XmbLookupString gives 2 bytes: (c2 85) ""
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 2748059, (120,-383), root:(123,436),
state 0x4, keycode 133 (keysym 0x85, (no name)), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

O que significa que o código de tecla do meu caractere de comando é 133. Fazer o mesmo com a tecla ctrl me diz que o código de tecla da minha tecla de controle esquerda é 37.

Mas fazendo este comando:

xmodmap -e "keycode 133 = Control_L"

não faria a minha função de tecla de comando como um caractere de controle. Além disso, eu sei que o xmodmap fez o mapeamento, porque digitar o caractere de comando no xev agora fornece:

KeyPress event, serial 33, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 3016638, (293,-389), root:(296,430),
state 0x0, keycode 133 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 36, synthetic NO, window 0x4600001,
root 0xc9, subw 0x0, time 3016750, (293,-389), root:(296,430),
state 0x4, keycode 133 (keysym 0xffe3, Control_L), same_screen YES,
XKeysymToKeycode returns keycode: 37
XLookupString gives 0 bytes: 
XFilterEvent returns: False

E a entrada do keycode 133 da saída xmodmap -pke também parece correta:

keycode 133 = Control_L NoSymbol Control_L

Neste ponto, a chave de comando ainda agiria como uma tecla de comando. A minha pergunta é, é algo que sobrepõe os mapeamentos de chaves do xmodmap e, em caso afirmativo, onde e como?

    
por bhh1988 15.06.2011 / 09:26

0 respostas