Como definir o Alt certo para funcionar como uma chave Win (Super)?

11

Embora existam muitos artigos diferentes sobre como alterar a Alt esquerda para simular a vitória, quero mapear a Alt direita para fazer isso. Quero passar para a 11.10, volto à unidade 2d e não tenho uma chave de vitória. Ainda não recebi o código-chave nos artigos que encontrei ... Alguma ajuda ou boas sugestões?

deckoff
fonte

Respostas:

12

Você pode usar o xmodmap para remapear qualquer tecla do teclado; em particular, você pode remapear o Alt certo para atuar como uma chave Super / Win .

Crie um arquivo nomeado .Xmodmapem seu diretório pessoal com o seguinte conteúdo:

! free up right-Alt for remapping
remove mod1 = Alt_R

! Right-Alt remapped to Super
clear mod4
keycode 108 = Super_R
add mod4 = Super_R

Quando você se desconecta e depois se conecta novamente, o GNOME deve perguntar se você deseja carregar o .Xmodmaparquivo; responda "sim" e você está pronto para ir. (Você será solicitado apenas uma vez.)

Como alternativa, você pode carregar a .Xmodmapconfiguração de um terminal a qualquer momento:

xmodmap .Xmodmap

Existem algumas coisas que podem variar dependendo da versão do servidor X e do modelo do teclado. Os itens a seguir podem ajudá-lo a adaptar o .Xmodmaparquivo ao seu ambiente específico.

  1. Verifique se a tecla Alt direita está inicialmente no mod1 : Emita o comando xmodmapem uma janela do terminal e você deve obter uma saída como esta:

    xmodmap:  up to 3 keys per modifier, (keycodes in parentheses):
    
    shift       Shift_L (0x32),  Shift_R (0x3e)
    lock        Caps_Lock (0x9),  Caps_Lock (0x4e)
    control     Control_L (0x25),  Control_R (0x69)
    mod1        Alt_L (0x40),  Alt_R (0x6c),  Alt_L (0xcc)
    mod2      
    mod3        Mode_switch (0xcb)
    mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce)
    mod5      
    

    Se a Alt_Rtag não aparecer na linha mod1 , mas em uma linha diferente, ajuste-a de .Xmodmapacordo.

  2. Verifique se a tecla Alt direita é o código 108: em uma janela do terminal, digite o comando xev e , em seguida, foque a pequena janela quadrada que apareceu. Se você digitar a tecla Alt correta , deverá ver linhas aparecendo na janela do terminal. Procure uma estrofe como esta:

    KeyPress event, serial 25, synthetic NO, window 0x5000001,
        root 0xbd, subw 0x5000002, time 867397196, (53,48), root:(54,49),
        state 0x0, keycode 108 (keysym 0xffea, Alt_R), same_screen YES,
        XLookupString gives 0 bytes: 
        XmbLookupString gives 0 bytes: 
        XFilterEvent returns: False
    

    O número após a keycodepalavra é o que você deseja em seu .Xmodmaparquivo para remapear a tecla Alt .

Riccardo Murri
fonte
Obrigado. Eu posso manter minha esquerda por todas as coisas que eu preciso.
deckoff 23/10
estranho, embora a solução funcionasse, agora parou ??? Quando eu reiniciar o PC e recriar a solução, ele funciona até a próxima reinicialização ...
deckoff
1
@deckoff Significa que seu .Xmodmaparquivo não está sendo lido no início da sessão do X. Tente adicionar xmodmap ~/.Xmodmapao seu .gnomercarquivo (ou equivalente).
Riccardo Murri 25/10
Eu vou tentar isso. Parece que não funciona quando o login da senha está desativado. Se eu ver uma tela de login (não importa se eu sair e eu estou login, ou se eu tiver habilitado o login senha na inicialização ele irá trabalhar) .Por favor, olhar aqui se você estiver disposto a ajudar. Parece que o arquivo está carregado, mas não foi executado corretamente.
deckoff 26/10/11
1
Sim, adicionando xmodmap ~ / .Xmodmap ao .gnomerc funcionou
deckoff 26/10
3

Eu achei isso simplesmente:

remove mod1 = Alt_R
add mod4 = Alt_R

funciona como esperado. Estou faltando alguma "dica" com esse método?

Brian Harvey
fonte