我希望emacs grep始终从根项目目录中搜索,而不是当前打开的文件的目录。这里的假设是所有编码项目都在同一个文件夹下(如~/repositories/
)。
我尝试使用cd
的命令为grep命令添加前缀到项目根目录中,但这会使emacs工作目录变量保持不变,因此当grep在正确的文件系统位置执行时,跳转到搜索结果被破坏,因为grep匹配的部分文件路径被附加到emacs工作目录。
总结一下,我希望进入~/repositories/my_project/folder1/file1.c
,调用grep命令,它将从~/repositories/my_project/
进行搜索,并跳转到grep缓冲区的文件功能。
我怎样才能做到这一点?
答案 0 :(得分:1)
这不会直接回答您的grep
问题,但特别是在处理项目时,我总觉得projectile是一个很棒的工具。
除了其他方面,Projectile在项目级别上提供grep
,ack
和ag
搜索,这可能是您正在寻找的。 p>
E.g。
C-c p s g
对项目中的文件运行grep
。