[英]Search directories in Emacs
我最近从Eclipse切换到Emacs,我真正想念的一项功能是Eclipse文件搜索。 它使您可以非常精确地(尽管非常缓慢)搜索特定项目的整个项目。 在Emacs中,我一直在使用Mx rgrep
但似乎无法给出可靠的结果。 例如,如果我搜索0.1,它将不会返回包含“ 0.1”(用引号引起来的匹配项)的代码行的结果。
任何人都可以建议使用rgrep
更为准确的替代rgrep
吗?
我建议在文件中使用“ igrep” lib进行搜索,您可以在这里找到它。 要开始使用,请将以下行添加到您的.emacs文件中(不要忘记将igrep.el添加到emacs-path,例如,它可以是〜/ .emacs.d /):
(require 'igrep)
(global-set-key "\C-cf" 'igrep-find)
因此,您可以使用[C-cf]开始搜索,它会要求模式在搜索中提供文件名,然后查询进行搜索。 希望能帮助到你。
我建议ack 。 它可以智能地忽略您不想搜索的文件(例如,版本控制目录)。
如果您正在处理大型项目,例如linux内核或android,我建议使用beagrep。
它需要桌面搜索引擎beagle和grep在一起,因此可以非常快速地完成常见的编程grep任务。 例如,在android源代码中对readlink进行grepping可能要花费我半个多小时,而使用beagrep则只需要半秒钟。
查看我的github页面 。
Mx multi-occur-in-matching-buffers
一个正则表达式来选择要搜索的缓冲区,并使用第二个正则表达式来搜索您要查找的项目。
emacs的常见工作流程是,在处理项目时,永远不要(或很少会)关闭项目中的缓冲区,因此,经过一段时间的黑客攻击,无论如何,您很可能会打开大多数文件。 当然,如果您不这样工作,则使用multi-occur...
的用处较小。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.