@CamilB Tente algo como $3h, que o moverá para o final da linha e, em seguida, 3 caracteres para a esquerda.
Jeff Klein
Mais sobre isso em vim help :help bar. Quando descobri sobre isso, ficou muito mais fácil comentar e descomentar XD. Depois de descobrir isso, não confio em plug-ins de comentário / descomentar externos, a vida de edição de código é muito melhor agora :)
Avi Mehenwal
41
EDITAR: interpretou mal sua pergunta.
você pode avançar para um determinado símbolo digitando fseguido pelo símbolo em questão:
se você quiser passar para o terceiro $, digite:
3f$
para voltar, você usa "F" maiúsculo
F$
para chegar ao final da linha primeiro, você usa "$"
portanto, suas teclas para localizar o terceiro $ do final de uma linha são:
Esse foi o primeiro resultado no google e era isso que eu procurava, obrigado
kgwong
1
este movimento também pode ser adicionado a outros comandos, como: mudar da posição atual para a 2ª aparência do caractere "e" - c2te :)
Vũ Tô
8
Não tenho certeza se você quer dizer o enésimo caractere ou a enésima ocorrência de um caractere; a segunda foi respondida, então responderei a primeira.
^irá levá-lo para o início da linha excluindo os espaços em branco (portanto, para a primeira coluna não branca) e |(barra vertical) ou 0(zero) irá levá-lo para o primeiro caractere. Então l(L minúsculo) o levará para a direita; e 7lo levará sete caracteres à direita. Então, todos juntos, para ir para o (n + 1) ésimo caractere na linha, para n = 7 07l,.
Vejo que você editou a pergunta agora; lem vez da seta para a direita, é o melhor que você obterá. (você está familiarizado com a navegação hjkl?)
Chris Morgan
Eu sei que o verdadeiro vimmer não deve usar setas, mas eu uso alguns outros aplicativos que não suportam atalhos de teclado de baixo nível e a única maneira de navegar são as setas, então para tornar mais fácil alternar entre eles eu uso setas
Nutel
@Vetal: Ocasionalmente fico frustrado quando a rolagem simplesmente não funciona em outros aplicativos ... hjkl são muito melhores do que as setas.
Chris Morgan
Como a resposta de Herbert Sitz aponta, |só vai para o primeiro caractere porque o [count]padrão é 1 - na verdade vai para o [count]º caractere na linha, então 8|é como, 07lexceto que é um único movimento em vez de dois.
hobbs
Acho que devo prestar atenção ao que os personagens fazem. Deveria ter achado improvável que houvesse duas maneiras de fazer a mesma coisa.
<right arrow>
vez del
in vim?Respostas:
O tubo '|' personagem pode ser o que você deseja:
Para ir para a 25ª coluna em uma linha no modo normal, pressione
25|
Para ir para a 37ª coluna em uma linha no modo normal, pressione
37|
e assim por diante. . .
fonte
$3h
, que o moverá para o final da linha e, em seguida, 3 caracteres para a esquerda.:help bar
. Quando descobri sobre isso, ficou muito mais fácil comentar e descomentar XD. Depois de descobrir isso, não confio em plug-ins de comentário / descomentar externos, a vida de edição de código é muito melhor agora :)EDITAR: interpretou mal sua pergunta.
você pode avançar para um determinado símbolo digitando fseguido pelo símbolo em questão:
se você quiser passar para o terceiro
$
, digite:para voltar, você usa "F" maiúsculo
para chegar ao final da linha primeiro, você usa "$"
portanto, suas teclas para localizar o terceiro $ do final de uma linha são:
Gosto de manter algo assim à mão ao usar o Vim:
http://www.lagmonster.org/docs/vi.html
fonte
Não tenho certeza se você quer dizer o enésimo caractere ou a enésima ocorrência de um caractere; a segunda foi respondida, então responderei a primeira.
^
irá levá-lo para o início da linha excluindo os espaços em branco (portanto, para a primeira coluna não branca) e|
(barra vertical) ou0
(zero) irá levá-lo para o primeiro caractere. Entãol
(L minúsculo) o levará para a direita; e7l
o levará sete caracteres à direita. Então, todos juntos, para ir para o (n + 1) ésimo caractere na linha, para n = 707l
,.fonte
l
em vez da seta para a direita, é o melhor que você obterá. (você está familiarizado com a navegação hjkl?)|
só vai para o primeiro caractere porque o[count]
padrão é 1 - na verdade vai para o[count]
º caractere na linha, então8|
é como,07l
exceto que é um único movimento em vez de dois.