Mapeando AltGr para o controle da esquerda

3

Eu mapeei minha chave AltGr para Ctrl com o seguinte comando:

setxkbmap -option ctrl:ralt_rctrl

No entanto, ao exibir as ligações com

xmodmap -pke

Eu posso ver que o código de acesso está associado a

   keycode 108 = Control_R Control_R Control_R Control_R

Eu gostaria de ligar AltGr ao controle LEFT. É possível?

Isso é importante para o Emacs, caso contrário eu não recebo a mesma entrada ao pressionar C-S-b com o Controle Esquerdo original ou com AltGr.

    
por z1naOK9nu8iY5A 19.06.2013 / 12:36

1 resposta

0

Ele mapeia para Control_R , pois é assim que é configurado em XKB símbolos para CTRL . Alterar a configuração deve resultar em Alt_R sendo mapeado para Control_L . Observe que, com esse método, sua configuração personalizada será substituída por quaisquer atualizações futuras de xkeyboard-config (pelo menos esse é o pacote que possui /usr/share/X11/xkb/symbols/ctrl no Archlinux). Abra /usr/share/X11/xkb/symbols/ctrl , role para baixo até esta seção:

// right alt functions as another ctrl key
partial modifier_keys 
xkb_symbols "ralt_rctrl" {
    replace key <RALT> { type[Group1]    = "TWO_LEVEL",
                         symbols[Group1] = [ Control_R, Control_R ] };
    modifier_map Control { <RALT> }; 
};

e substitua Control_R por Control_L para que ele leia:

// right alt functions as another ctrl key
partial modifier_keys 
xkb_symbols "ralt_rctrl" {
    replace key <RALT> { type[Group1]    = "TWO_LEVEL",
                         symbols[Group1] = [ Control_L, Control_L ] };
    modifier_map Control { <RALT> }; 
};

salvar & reinicie o X e execute:

setxkbmap -option ctrl:ralt_rctrl

verifique com xmodmap :

xmodmap -pke | grep 108
keycode 108 = Control_L Control_L Control_L Control_L

Para torná-lo permanente, adicione setxkbmap -option ctrl:ralt_rctrl à sua inicialização da sessão.
Como alternativa, adicione ctrl:ralt_rctrl aos seus arquivos de configuração xorg.conf.d , por exemplo:

Section "InputClass"
    Identifier         "Keyboard Defaults"
    MatchIsKeyboard    "yes"
    Driver             "evdev"
    Option             "XkbLayout" "us"
    Option             "XkbRules"  "evdev"
    Option             "XkbOptions" "ctrl:ralt_rctrl"
EndSection

Nota para Gnome usuários: Gnome substitui xorg XKB opções então é necessário adicionar ctrl:ralt_rctrl via gsettings (ou dconf-editor ):

gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:ralt_rctrl']"
    
por 20.06.2013 / 16:02