Posicionamento manual para navegação Vim

12

Sou um novo usuário do Vim e quero fazer essa pergunta um tanto elementar para garantir que eu comece a aprender o Vim da maneira certa e não desenvolva maus hábitos.

Quando você usa o Vim, como posiciona sua mão direita? Acho mais natural começar com os dedos nas jkl;teclas, mas então me encontro perdendo a htecla às vezes quando estou navegando. Por outro lado, se eu posicionar meus dedos, hjklentão me vejo digitando palavras incorretamente, pois essa não é a posição em que fui treinada para manter minha mão no teclado, e acho jkdifícil alternar as teclas com o dedo médio e terceiro.

Danny
fonte
6
Definitivamente, mantenha seus dedos j,k,l,;. Por um lado, você aprenderá a bater hrapidamente. Em segundo lugar, quando você conhece melhor o vim, não estará usando hmuito isso realmente. Em terceiro lugar, as combinações de teclas são definidas principalmente com essa posição da mão em mente, então você trocará um problema por outro conjunto de problemas a longo prazo.
precisa saber é o seguinte
3
Não se incomode. O Vim possui comandos de movimento do cursor muito melhores do que hjkl. Veja :help navigation.
Romainl 07/07/2015

Respostas:

12

Antes de tudo, vou assumir que você está usando um teclado QWERTY. Minha resposta não se baseia em minha preferência pessoal, estou apenas reformulando uma parte do incrível Practical Vim, escrito por Drew Neil.

O TL; DR Vim é otimizado para os datilógrafos de toque, para que suas mãos fiquem onde você aprendeu a colocá-las: mão esquerda asdf e mão direitajkl;

Neil diz que colocar a mão direita hjklé uma coisa muito ruim de se fazer. A principal razão é que movendo o cursor com as teclas hjklé algo que deve ser muito ocasional, porque vim fornece movimentos muito mais rápido palavra-wise ou movimento de busca de caracteres ( w, b, f, t, /...).

Também vou citar diretamente esta parte:

Uso as teclas he lpara erros pontuais, quando errei meu alvo por pouco. Além disso, eu quase não os toco. Dado o pouco uso da htecla, fico feliz em ter que buscá-la em um teclado Qwerty. Por outro lado, eu uso frequentemente os comandos de busca de caracteres, por isso estou satisfeito que o; A chave repousa confortavelmente sob o meu dedo mindinho.

Bônus: Mesmo que esse não pareça o seu caso, aqui está uma dica para se livrar do mau hábito dos iniciantes que consiste em usar as teclas de seta para mover: Basta adicionar as seguintes linhas ao seu .vimrcpara desativar totalmente as teclas de seta:

noremap <Up>    <Nop>
noremap <Down>  <Nop>
noremap <Left>  <Nop>
noremap <Right> <Nop>

( <Nop>significa "Sem operação")

statox
fonte
5
O "use hjkl keys, arrow keys are evil" - o dogma é forte na comunidade Vi / Vim, mas de muitas maneiras também é tolo. Além do fato de que não estou absolutamente convencido de que seja realmente mais rápido em todos os cenários, mesmo que seja, isso é realmente a coisa mais importante sobre o aprendizado do Vim? Ou há outras coisas que economizarão muito mais tempo (como movimentos, lidar com marcas, registros, noções básicas sobre VimScript, etc.) .... Todo o "hjkl" - tudo parece, na melhor das hipóteses, uma micro-otimização.
Martin Tournoij 07/07
4
Eu uso computadores há ~ 30 anos. A cada 5 anos, renovo minhas tentativas de aprender a digitar "corretamente". Até agora, toda vez que fiz isso, também desenvolvi sintomas agudos da síndrome do túnel do carpo nos primeiros dias. E toda vez que os sintomas desapareciam assim que eu desistia e voltava aos meus velhos hábitos. Também pratico artes marciais há cerca de 40 anos e nunca tive problemas em comum. Meus hábitos incluem usar as teclas de seta e mover muito as mãos durante a digitação. A hjklcoisa nunca me ajudou. O que ajudou foi a compra de teclados mecânicos de boa qualidade. FWIW.
Lcd047
Respondi à pergunta porque li isso há pouco tempo e achei que se encaixava bem na necessidade do OP. Sobre o tema da colocação de mão, o francês I am usa um teclado AZERTY então a questão na verdade não existe: Minha mão esquerda está na hjklvez que a chave no lado direito do lé mque é bastante inútil. Sobre a otimização do uso dessas teclas para navegar, tento me forçar a usar os movimentos o máximo possível, mas ainda uso com frequência hjkl, ainda sinto que é mais rápido que as teclas de seta, mas acho que esse é um assunto bastante subjetivo.
Statox
Quero equilibrar o comentário de @ lcd047 dizendo que tenho a experiência oposta completa. Eu estava na metade do caminho para digitar por vários anos, voltando aos velhos hábitos, até começar a usar o vim. Para mim, um dos benefícios do uso do vim é que seu sistema de navegação e comandos com teclas simples, por exemplo jkl;, obriga a manter as mãos firmes na posição de digitação com bom toque para navegar no texto. Agora sou um datilógrafo muito mais rápido e preciso como resultado.
Andreas