Comment passer à un personnage spécifique dans vim?


163

Comment puis-je passer au caractère X suivant dans vim?

J'utilise fréquemment, par exemple, dt:ou ct:pour tout supprimer / modifier jusqu'à un deux-points (ou un autre caractère).

Existe-t-il une combinaison de touches courtes pour déplacer simplement la position de mon curseur sur ce caractère?



7
Si seulement les 2 premières réponses partielles avaient été une - et contenaient en plus cette information: le non-mentionné Tsautera après le premier caractère recherché vers la gauche, et je peux confirmer que les répéteurs ;et ,fonctionnent avec tout f/ F/ t/ T.
— underscore_d

Réponses:


276

Vous pouvez taper f<character>pour placer le curseur sur le caractère suivant et F<character>pour le précédent.


90
Vous pouvez également utiliser ;pour répéter l'opération et l'utiliser ,pour la répéter dans la direction opposée.
— Rsh

10
Cela ne semble fonctionner qu'avec des matchs sur la même ligne pour moi.
— Jpaji Rajnish

7
@JpajiRajnish Oui. Utilisez /<character>pour l'assortir n'importe où.
— Lars Kotthoff

Il semble que l'utilisation de f <character> (avec les caractères; et, pour répéter la commande) ne fonctionne que sur la ligne sur laquelle se trouve le curseur. Existe-t-il un moyen de le faire fonctionner dans tout le fichier?
— Aluthren

J'utiliserais la recherche dans ce cas; voir le commentaire ci-dessus.
— Lars Kotthoff

62

tet ffonctionne également sans commande, donc pour passer à l'utilisation des deux points f:et à la droite avant l'utilisation des deux pointst:


7

Si vous effectuez une recherche pour ce caractère avec /, vous pouvez alors frapper npour passer à l'occurrence suivante de celui-ci.


Je me demande comment annuler cette découverte une fois que j'ai trouvé le personnage. Tous les caractères correspondants semblent rester en surbrillance dans la mémoire tampon actuelle.
— newswim

1
@newswim,: nohl
— arkadyt

Vous pouvez également simplement rechercher quelque chose d'autre (par exemple, un tas de déchets qui ne seront pas appariés) pour changer la chaîne de recherche en surbrillance. Il y a aussi :set invhlsce qui est utile pour activer et désactiver les surbrillances (je mappe cela à un raccourci pour un basculement rapide).
— FazJaxton

3

Peut-être que vous recherchez simplement une combinaison vim pure, mais EasyMotion est un plugin qui vaut la peine d'être essayé. HTH. :)


Ouais! EasyMotion est tout ce dont vous avez besoin pour compléter cela de manière élégante.
— Lorem Ipsum Dolor
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.