在 Emacs 中是否有一个模块可以进行多行搜索?
我用过 grep
、pt
和现在的 ag
,它们都很棒。但有时在探索代码库时,您会搜索多行内容(因此一无所获),但将搜索减少到更少的单词会产生很多结果。
有没有办法在整个项目的 Emacs 中进行多行搜索?
最佳答案
当然有。有多种方式。
您没有说明您正在尝试进行哪种搜索:单个文件?多个缓冲区?正则表达式?您需要固定的搜索结果列表还是增量搜索?
这是一个简单的答案:
在 Dired 缓冲区中,标记一些您要搜索的文件,然后点击
A
。键入要匹配的正则表达式。使用
C-q C-j
输入换行符进行匹配。点击RET
以输入正则表达式。
搜索标记的文件,依次在每次搜索命中时停止。使用 M-,
转到下一个命中等。
例如,要搜索变量定义的文档字符串,使用此正则表达式或类似的搜索:
Search marked files (regexp): (defvar.*
.*"Non-nil
在第一个 .*
之后有一个换行符,您可以使用 C-q C-j
输入。
在 Emacs 中还有很多其他的搜索方式。 开始的最佳位置是Search and Replace Emacs Wiki 的类别。在那里,您可以找到按主要特征分割和描述的搜索方法。
关于Emacs - 多行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33025333/