Como reatribuir as teclas do cursor no vi & vim



Experimente Nosso Instrumento Para Eliminar Problemas

Embora algumas pessoas possam discordar de qualquer alteração nas teclas de cursor clássicas do vi Unix, você pode ser um usuário do vim que deseja alterá-las. O bom do Linux, BSD e Unix como um todo é que você tem a palavra final sobre tudo. Muitos jogadores gostam de usar as teclas WASD como teclas do cursor, e você pode querer usá-las em vez de HJKL. Existem também algumas outras combinações interessantes que você pode querer experimentar e pode tentar qualquer uma delas.



O processo não é muito complicado, mas requer a linha de comando. Se você está acostumado a usar o vi e o vim, já sabe como abri-los. Clique no menu K no KDE ou no menu Whisker no Xfce4 e clique em Terminal nas Ferramentas do Sistema. Você pode encontrá-lo no mesmo local no menu Aplicativos no GNOME Shell e LXDE. Os usuários do Ubuntu Unity podem pesquisar a palavra Terminal no Dash, ou você pode usar Ctrl + Alt + T para abrir uma.



Método 1: atribuindo as teclas WASD para vi & vim

Como as teclas WASD já têm algo atribuído a elas no vim, você vai querer usar uma tecla modificadora. Seria fácil manter pressionada a tecla Alt e essas teclas, mas precisamos ter certeza de que seu emulador de terminal ainda não atribuiu esses atalhos a algo. No terminal, digite gato e pressione Enter. Pressione Alt + W, Alt + A, Alt + S e Alt + D para ver se alguns códigos de comando estranhos aparecem. Você também pode notar que alguns menus caem como fizemos quando fizemos isso com o terminal xfce4 que estávamos usando para tirar screenshots.



Digite Ctrl + C para sair, o que também pode fazer com que alguns caracteres Unicode estranhos não imprimíveis espirrem em seu terminal. Você pode ignorá-los com segurança. Em vez disso, digite vim ~ / .vimrc para carregar seu arquivo de configuração. Mantenha pressionada a tecla j até chegar ao fundo e digite I para entrar no modo de inserção.

Pressione enter para obter uma linha extra e, em seguida, o que você deseja inserir depende se seu emulador de terminal funcionou. Caso contrário, adicione estas quatro linhas:

noremap h

noremap j

noremap k

l noremap

Se você teve um problema, tente o seguinte:

noremap a h

noremap s j

noremap em k

noremap d l

Em qualquer um dos casos, pressione Esc e digite: wq para salvar seu trabalho. Tente carregar o vim novamente e veja se agora você pode usar as teclas WASD quando não estiver no modo de inserção como se fossem as teclas do cursor. Você provavelmente terá que manter pressionado Alt ou Esc ao usá-los, uma vez que essas teclas já estão atribuídas, mas, fora isso, devem funcionar bem. Esta é a maneira mais rápida de fazer isso sem qualquer brincadeira adicional, mas existem alguns outros métodos que você pode tentar se isso não funcionar ou se você preferir outras combinações de teclas.

Método 2: usando atribuições alternativas alternativas

Se nenhuma dessas técnicas funcionar, digite vim ~ / .vimrc novamente para carregar o arquivo rc novamente e segure a tecla J até chegar ao fim. Digite I para editar novamente e agora altere a seção inferior para ler assim:

noremap ^ [a h

noremap ^ [s j

noremap ^ [em k

noremap ^ [d l

Alguns usuários relatam que estão digitando fisicamente um circunflexo (^) seguido por um colchete aberto ([), enquanto outros dizem que precisam manter pressionadas as combinações de teclas Alt ou, alternativamente, copiar e colar os próprios códigos de comando. Você sempre pode digitar gato em uma linha de comando normal e pressione Alt + A, Alt + S, Alt + W e Alt + D para obtê-los, que você pode então destacar, copiar com o menu Editar e depois colar com o menu Editar no vim se necessário . Mais uma vez, esse método é desnecessário para a maioria dos usuários e deve ser evitado. O primeiro método usa muito menos brincadeiras.

Você pode apertar Esc e digitar: wq para salvá-lo. Abra outro arquivo no vim e teste para ver se suas chaves preferidas estão funcionando neste ponto. Isso deve funcionar mesmo com muitos tipos de programas alternativos de emulador de terminal.

Método 3: usando outras ligações de tecla

Você não está restrito às chaves HJKL padrão nem às chaves WASD preferenciais do jogador. Algumas pessoas preferem usar outros conjuntos. No seu arquivo .vimrc, você pode substituir a seção:

noremap h

noremap j

noremap k

l noremap

Isso lhe dá mais opções. Algumas pessoas preferem ESDF, que permite que o dedo mínimo toque em outras teclas enquanto você as usa como teclas do cursor. Você pode usar o seguinte em seu arquivo, se preferir:

noremap h

noremap j

noremap k

l noremap

Algumas pessoas preferem o diamante IJKL do outro lado do teclado. Você pode estar interessado nesta configuração:

noremap h

noremap j

noremap k

l noremap

Observe que este é um pouco mais complicado porque emprega algumas das chaves que as ligações HJKL padrão usariam, mas ainda deve funcionar da mesma maneira. Se você está interessado nessas ligações alternativas, pode se divertir experimentando algumas. Os jogadores que usam outras combinações às vezes as substituem e existem até mesmo alguns tipos de hackers Unix que configuram o vim para funcionar com controladores USB. A maioria dos usuários achará as chaves HJKL e WASD mais do que suficientes.

4 minutos lidos