在spacemacs中,仅在具有名称匹配模式B的文件中搜索模式A的发生
问题描述:
在spacemacs中,我经常通过SPC-*
或SPC-/
在我的项目中搜索模式。这些命令允许我输入要搜索的模式,例如我想跳转到定义的函数的名称。在spacemacs中,仅在具有名称匹配模式B的文件中搜索模式A的发生
有时,我想限制搜索只有某种类型的文件,例如只搜索*.elm
文件并省略所有其他文件(*.hs
,*.sql
等)。
如何为我的模式搜索指定文件名? 即,如何仅在名称与模式B匹配的文件中搜索模式A?
我想知道是否有一些特殊的键我可以键入作为我的搜索查询的一部分来完成此操作。
答
如果您使用ag
作为搜索后端,则可以执行SPC-/ -G<file name regexp> <search pattern>
,详情请参阅man ag
。
我不确定grep
后端是否可以做类似的事情,我认为对grep
的内部调用要复杂得多,而且添加标志会导致我的emacs会话挂起。从外壳你可以运行grep -n <search pattern> <file pattern>