Chaves de alteração de terminal

6

É possível no terminal Unix alterar algumas das teclas do teclado?

Por exemplo: quando pressiono , , então _ é impresso?

Se isso for realmente possível, como vou fazer isso?

Estou no Ubuntu.

    
por Hermann Ingjaldsson 20.03.2012 / 10:40

3 respostas

6

Para citar aqui :

Custom table

You can create your own map and store it in your home directory (i.e. ~/.Xmodmap). Print the current keymap table into a configuration file:

xmodmap -pke > ~/.Xmodmap

Make the desired changes to ~/.Xmodmap and then test the new configuration with:

xmodmap ~/.Xmodmap

To activate your custom table when starting Xorg add the following:

~/.xinitrc
if [ -f $HOME/.Xmodmap ]; then
    /usr/bin/xmodmap $HOME/.Xmodmap
fi

Alternatively, edit the global startup script /etc/X11/xinit/xinitrc.

Test changes

You can also make temporary changes for the current session. For example:

xmodmap -e "keycode  46 = l L l L lstroke Lstroke lstroke"
xmodmap -e "keysym a = e E"

Também:

Veja man xmodmap para mais detalhes.

EDITAR:

Para esclarecer: o xmodmap ~/.Xmodmap pode ser usado em muitos lugares, não apenas ao iniciar o Xorg. Por exemplo, eu tenho essas duas funções no meu ~ / .bashrc:

   # map caps to esc

   mapcaps(){
      xmodmap -e "clear lock"
      xmodmap -e "keycode 0x42 = Escape"
      echo mapcaps: caps-lock set to Escape via xmodmap
   }
   unmapcaps(){
      xmodmap -e "keycode 0x42 = Caps_Lock"
      xmodmap -e "add lock = Caps_Lock"
      echo unmapcaps: caps-lock set to caps-lock via xmodmap
   }

Isso é para que eu possa mapear dinamicamente Caps para Esc.

Realmente não há limitação. Sinta-se à vontade para chamar xmodmap de ~ / .xinitrc, ~ / .bash_profile, de um script personalizado, etc.

    
por 20.03.2012 / 21:35
3

Para ser honesto, nunca tentei fazer o que você está tentando. Eu adicionei ligações de teclas alternativas (combinação de teclas) antes de um terminal (não-X).

Você pode ver suas combinações de teclas com: showkey ou showkey -s

Você usará os programas relacionados para realizar pesquisas e modificações adicionais.

loadkeys dumpkeys keymaps setkeycodes

Para mim, para fazer a mudança no Slackware, é bem fácil. Eu passei algum tempo olhando no Ubuntu, mas não encontrei os mesmos arquivos /usr/share/kbd/keymaps/i386/qwerty/*map.gz . Embora eu só tivesse acesso a um sistema Ubuntu ao vivo. Você pode se sair melhor.

    
por 20.03.2012 / 21:15
1

Se você quiser fazer isso no X Windowing System, você pode usar o Xmodmap. Eu nunca tive controle sobre a sintaxe, então encontre um exemplo de trabalho e de lá ir.

    
por 20.03.2012 / 13:07