Como posso modificar o Vim para funcionar com um layout de teclado diferente?

11

Eu digito com um layout de teclado não-QWERTY. Agora, muitas das chaves que o Vim usa estão na linha inicial, mas algumas associações de teclas simplesmente não funcionam, sendo a mais óbvia as hjklchaves.

Como e onde posso alterar essas combinações de teclas para funcionar melhor com o layout do meu teclado?

Earthliŋ
fonte

Respostas:

8
:help langmap

Você pode remapear as teclas no modo de comando, mas deixá-las intactas para digitar. Isso significa que você pode usar a intenção de hjkl- teclas de navegação local adjacentes para rolagem - pressionando os equivalentes posicionais no teclado. Suponha que seu layout seja Dvorak, então essas mesmas teclas são htns. hé o mesmo, então precisamos mapear os outros três:

:set langmap=tj,nk,sl

Agora você pode navegar usando htns. Isso não afetará :commands like thise não mudará o modo de inserção (ou seja, pressionar tdará um 't').

David Lord
fonte
1
Para ser justo, Dvorak usa as chaves dhtn, não htns, no local em que o Qwerty usa hjkl.
Anthony
2

Você pode remapear as chaves no vim. nnoremap [ hremaps [para h, para que você possa usar [no lugar de h, você pode remapear hpara o que [originalmente fez para que ele fosse concluído. Você teria que fazer isso para todas as teclas e há modos diferentes a serem considerados, então acho que seria um pouco doloroso.

Dhruva Sagar
fonte
Como vou usar o vim pelos próximos 10 anos, acho que vale o investimento. Onde eu uso isso para que a mudança seja razoavelmente permanente?
Earthliŋ
1
você deve colocar isso no seu ~ / .vimrc
Dhruva Sagar