Como mapear minha chave de entrada para uma chave diferente

7

Preciso de ajuda séria. Minha chave Enter acabou de ser danificada e não consigo mais usar o terminal corretamente. Eu divido a bebida no meu teclado, todas as teclas funcionam bem, exceto pela tecla enter.

Então, eu queria perguntar se é de qualquer maneira que eu mapeá-lo para uma chave diferente, como faria ou poderia fazer com o Windows

Obrigado pela ajuda

    
por Rock 07.05.2013 / 13:19

3 respostas

3

Você precisa ter dois aplicativos: xev e xmodmap, ambos são commandline-tool.

Execute o xev. Em seguida, pressione a tecla cujo comportamento você deseja alterar. ou seja, digite. e então xev produzirá alguma informação sobre a tecla pressionada. Preste atenção na terceira linha. Deveria ser assim:

state 0x10, keycode 110 (keysym 0xff55, Prior), same_screen YES,

Neste exemplo, Prior é o nome do comportamento ao qual a chave é atribuída no momento, o código numérico é o ID interno para reconhecer a chave. Agora faça isso com outra chave, ou seja, PgDown dê essa saída

state 0x10, keycode 115 (keysym 0xff56, Next), same_screen YES,

Aqui, novamente, a parte interessante para nós é o código de acesso 115 e o Next. Agora, quando você quiser trocar as duas chaves, use xmodmap.

 xmodmap -e "keycode 110 = Next"

Isso altera a chave com o código de tecla 110 no teclado para a ação Próximo. É bem simples.

    
por Castiblanco 07.05.2013 / 13:29
2

Como pressionar "Enter" se a chave não funcionar

Se você tiver sorte de ter um terminal aberto, pressione simultaneamente Ctrl + Shift + U e pressione Shift + A (maiúscula A) para inserir o Unicode para 'Enter'. / p>

Caso contrário, você terá que usar um teclado na tela (pode haver um instalado como uma ferramenta de acessibilidade) ou usar um teclado externo.

Remapear chave na área de trabalho X11

  1. Obtenha o código de tecla da chave que você deseja remapear usando o comando xev .

    KeyRelease event, serial 34, synthetic NO, window 0x4a00001,
    root 0xc5, subw 0x0, time 482692681, (-95,23), root:(499,342),
    state 0x11, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False
    

    Exemplo de saída ao pressionar a tecla Shift direita, que possui o código de acesso 62.

  2. Remapear o código-chave desejado para Return usando o comando xmodmap , por exemplo:

    xmodmap -e "keycode 62 = Return"
    

    Remaneja o código de acesso 62 de Shift_R para Return .

  3. Quando estiver satisfeito com seu mapa de teclado atual e quiser usá-lo em futuras sessões X, execute o seguinte comando para salvá-lo:

    xmodmap -pke > ~/.Xmodmap
    

Remapear chave no console nativo do Linux

  1. Os códigos de tecla do kernel são diferentes dos códigos X11. Eu encontrei esta tabela de códigos-chave em uma rápida pesquisa no Google. Eu escolheria R Shift , que tem o código-chave do kernel 54.
  2. Execute o seguinte comando para despejar seu mapa de teclado atual:

    dumpkeys > ~/keymap.dmp
    
  3. Agora, modifique o mapa de teclado rejeitado: Você precisa copiar o comportamento do código de tecla 28 para o novo código de chave, ou seja, o código de chave 54, se desejar usar o deslocamento para a direita. Você pode fazer isso manualmente em um editor de texto ou usar os seguintes comandos (copia o comportamento do código 28 para o código 54):

    sed -n '/keycode *28 = /p' ~/keymap.dmp > ~/keymap.return
    sed -i 's/28 =/54 =/' ~/keymap.return
    sed -e '/keycode *54 = /!b;r '$HOME'/keymap.return' -e 'd' ~/keymap.dmp > ~/keymap.new
    

    Seu novo mapa de teclado agora está em ~ / keymap.new

  4. Carregue seu novo mapa de teclado no console (requer acesso root):

    sudo loadkeys ~/keymap.new
    
  5. Feliz com o resultado? No Ubuntu, você pode alterar as configurações padrão do teclado em /etc/default/keyboard . Copie seu arquivo de mapa de chaves modificado para um local seguro e descubra como carregá-lo automaticamente na inicialização, para que você não precise executar loadkeys todas as vezes.

por tachylatus 07.05.2013 / 14:06
-3

Adicionando essa linha funciona para mim.

~/ tail -1 .tmux.conf
run-shell 'xmodmap -e "keycode 104 = Return"'
    
por Gre De Freitas 05.06.2017 / 16:25

Tags