2017-09-25 6 views
2

Dans spacemacs, je recherche souvent des motifs dans mon projet via SPC-* ou SPC-/. Ces commandes me permettent d'entrer un motif à rechercher, tel que le nom d'une fonction que je voudrais passer à la définition de.Dans les spacemacs, recherchez les occurrences du motif A uniquement dans les fichiers dont le nom correspond au motif B

Parfois, je voudrais limiter cette recherche aux fichiers de seulement un certain type, comme la recherche uniquement *.elm fichiers et en omettant tous les autres (*.hs, *.sql, etc.).

Comment puis-je spécifier des noms de fichiers pour ma recherche de motif? I.e., Comment rechercher le motif A uniquement dans les fichiers dont le nom correspond au motif B?

Je me demande s'il y a une clé spéciale que je peux taper dans le cadre de ma requête de recherche pour y parvenir.

Répondre

2

Si vous utilisez ag comme moteur de recherche, vous pouvez faire SPC-/ -G<file name regexp> <search pattern>, voir man ag pour plus de détails.

Je ne suis pas sûr si le backend grep peut faire quelque chose de similaire, je pense que l'appel interne à grep est beaucoup plus complexe et l'ajout de drapeaux a tendance à accrocher ma session emacs. A partir d'un shell, vous pouvez exécuter grep -n <search pattern> <file pattern>