Tentando mapear Ctrl + hjkl para Left Down Up Right globalmente (teclas de setas semelhantes a Vim) com xmodmap

7

Eu estou tentando mapear Ctrl + H , J , K , L para as teclas de seta Esquerda , Abaixo , Acima , Direita , respectivamente, no sistema operacional Ubuntu (globalmente, não dentro do Vim).

Eu tentei a solução postada aqui , mas os comandos modificadores não estão funcionando. Aqui está o que estou tentando:

xmodmap -e "keycode 45 Control_L = k Up"
xmodmap -e "keycode 45 control = k Up"

(código de tecla 45 mapeia para "k")

Nenhum comando funciona. (Eles não dão nenhum erro, mas ctrl + k não é remapeado para seta para cima )

Existe uma maneira de fazer este xmodmap, e se não, existe uma solução mais limpa?

Obrigado!

Edit: Eu encontrei minha resposta aqui - graças a rápido

    
por StrugglingProgrammer 30.06.2014 / 18:40

2 respostas

5

É certamente uma ideia muito estranha transformar o Ubuntu no codinome "VimOS". Eu acho muito mais adequado mapear as chaves do Vim para algum cluster mais livre e equable do teclado. Ou definitivamente NÃO devido a isso também pode ser útil.

No entanto, não excluo minha primeira sugestão sobre os mapeamentos do Vim e devo dizer que existe uma resposta à sua pergunta aqui: Navegação no estilo do vim (hjkl) em todo o sistema

Parcialmente, concordo com essa visão (graças a shell hell ):

  

NOTA 3: Configurando Ctrl / Meta + H , J , K , < O kbd> L keybindings parece ser o mais simples   maneira de ter navegação no estilo vim, mas não é. Primeiro: você teria   para fazer isso por aplicativo, o que é um processo cansativo. Segundo:   você provavelmente acabará quebrando os mapeamentos padrão para qualquer   aplicação. Por último, mas não menos importante: alguns aplicativos, por exemplo rtorrent ou htop não   deixe-o mudar seus padrões, salve remendando seu código fonte. Para   Por motivos parecidos, você não conseguirá trabalhar com Super / Hyper .

E também encontrei perto de resposta aqui:
Superusuário : Mapeando Super + hjkl para as teclas de seta em X

O Vim usa um modo de comutação para mapear chaves. Então, o xmodmap para o Vim são alguns globals conectáveis que quebram a experiência clássica do Vim. Mesmo assim, para alegar que soa patético ;)

  

O Vim suporta vários modos de edição - normal, inserir, substituir, visual,   selecione, linha de comando e operador pendente. Você pode mapear uma chave para trabalhar   em todos ou alguns desses modos.

Mapeamento de chaves no Vim - Tutorial (Parte 1)
Marcando as chaves no Vim - Tutorial (Parte 2)
Marcando as chaves no Vim - Tutorial (Parte 3)

    
por swift 01.07.2014 / 10:28
0

Eu tenho o Tux-J e o Tux-K mapeados para Up e Down no KDE, isso é relevante para todos os aplicativos. Na verdade, é bastante fácil de configurar.

  1. Clique aqui: System Settings -> Custom Shorcuts -> Preset Actions
  2. Agora clique com o botão direito do mouse em Preset Actions e escolha New -> Global Shortcut -> Send Keyboard Input
  3. Ligue para o novo atalho VIM-J
  4. Na guia Trigger, clique no botão de atalho e pressione Tux - J .
  5. Na guia Ação, insira Down
  6. Na parte inferior da janela, clique em Apply .
  7. Verifique se o atalho funciona. Em caso afirmativo, configure as chaves HK e L restantes.

Aproveite!

    
por dotancohen 21.01.2015 / 23:01