J'utilise des plugins vim et vim pour Visual Studio lors de l'écriture de C ++. Souvent, je souhaite rechercher une chaîne dans une fonction, par exemple chaque appel à object->public_member.memberfunc()
.
Je sais que vim offre un moyen pratique de rechercher un seul mot, en appuyant sur *
et #
, et il peut également rechercher des chaînes tapées à l'aide de la /
commande slash omniprésente . Lorsque vous essayez de rechercher toutes les instances d'une chaîne plus longue comme celle ci-dessus, il faut un certain temps pour retaper après /
.
Existe-t-il un moyen de rechercher une sélection? Par exemple, mettez en surbrillance avec v
, puis copiez avec y
, y a-t-il un moyen de coller après /
? Existe-t-il un raccourci plus simple?
vim
viemu
string-search
Marcin
la source
la source
Réponses:
Vérifiez cette astuce Vim: recherchez du texte sélectionné visuellement
Ou vous pouvez simplement copier le texte sélectionné avec y et aller en mode recherche / , puis vous pouvez coller le dernier texte extrait avec Ctrl + R 0
la source
Répondre
Explication
q/
fonctionne de la même manière que la recherche vanille,/
sauf que vous êtes en mode commande, doncp
"coller" au lieu de taper le caractèrep
. Ainsi, ce qui précède va copier le texte que vous recherchez et le coller dans une recherche.Pour plus de détails, tapez
:help q/
la source
evil-mode
, cela fonctionne réellement, alors que la réponse acceptée se brise misérablement (probablement à cause de l'utilisation de laCtrl
clé).q/gvp
gv
q/gvp
ne fonctionne pas pour moi. Pouvez-vous clarifier votre suggestion?Utilisez q / au lieu de seulement / . (Même avec q : ). Vous pouvez maintenant éditer VIM via votre historique de commandes et de recherche! (Essayez Ctrl-N et Ctrl-P parfois).
la source
Je viens d'apprendre (grâce à l'excellent livre Practical Vim ) qu'il existe un plugin pour ça. Vous pouvez trouver le plugin sur GitHub .
Le plugin vous permet de rechercher une sélection visuelle avec
*
et#
.la source
magic
paramètre actuel . Cela pourrait même entraîner l'échec de la recherche des métacaractères nécessitant un équilibrage. Le plugin mentionné ici fera un échappement avant de rechercher le texte sélectionné.n
pour aller à l'élément trouvé suivant, alors que les approches de Cory et de CMS le permettent ..Vous pouvez en fait sélectionner du texte visuellement et appuyer sur * et # pour rechercher l'occurrence suivante ... Cela fonctionnera de la même manière, la seule mise en garde est que:
http://vim.wikia.com/wiki/Search_for_visually_selected_text
la source