Lorsque j'utilise le plugin grep pour VIM, je peux rechercher dans le répertoire actuel toutes les occurrences d'une chaîne dans un ensemble de fichiers, comme ceci:
:grep Ryan *.txt
Cela produit quelque chose comme ceci:
file1.txt:3:Ryan was here
file2.txt:10:Ryan likes VIM
file3.txt:5:superuser.com is a fav of Ryan
(1 of 3): Ryan was here
Press ENTER or type command to continue
Si j'appuie sur Entrée, cela me ramène simplement à mon éditeur. Ce que je veux vraiment faire, c'est être capable d'ouvrir un de ces fichiers et de sauter à l'endroit où la chaîne a été trouvée. Y a-t-il un moyen de faire cela? La 1 of 3
partie me fait penser qu'il existe un moyen de parcourir les résultats, mais je ne sais pas quelles commandes sont disponibles pour moi. Quelqu'un peut-il faire la lumière là-dessus?
la source
:grep
que vous souhaitez ajouter à unegrep
commande exécutée à partir du shell. Ainsi, vous pouvez effectuer une recherche récursive dans tous les fichiers .txt dans et sous le répertoire actuel avec:grep -R --include=*.txt Ryan .
. Vous pouvez également effectuer une recherche récursive en utilisant la:vimgrep
commande de Vim , mais les arguments sont différents et j'utilise rarement car elle est plus lente que:grep
.