【问题标题】:How to get emacs grep to search based on project root?如何让emacs grep根据项目根目录进行搜索?
【发布时间】:2014-11-16 11:53:08
【问题描述】:

我希望 emacs grep 始终从根项目目录搜索,而不是当前打开文件的目录。这里的假设是你所有的编码项目都在同一个文件夹下(比如~/repositories/)。

我尝试在 grep 命令前加上 cds 到项目根目录的命令,但这使 emacs 工作目录变量保持不变,因此当 grep 在正确的文件系统位置执行时,跳转到搜索结果是损坏,因为 grep 匹配的部分文件路径附加到 emacs 工作目录。

总而言之,我想在~/repositories/my_project/folder1/file1.c,调用将从~/repositories/my_project/ 搜索的grep 命令,并使用grep 缓冲区的跳转到文件功能。

我怎样才能做到这一点?

【问题讨论】:

    标签: emacs


    【解决方案1】:

    这并不能直接回答您的grep 问题,但尤其是在处理项目时,我总是发现projectile 是一个很棒的工具。

    Projectile 在项目级别提供grepackag 搜索,这可能是您正在寻找的。​​p>

    例如

    C-c p s g 在项目中的文件上运行grep

    【讨论】:

    • 如果您能发布命令名称,我将不胜感激
    • @Asalle 弹丸命令很容易用 m+x 找到,然后输入“projectile-”。都是从那个前缀开始的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多