Emacs - 多行搜索
Emacs - multiline search
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 中还有许多其他搜索方式。 开始 的最佳位置是 Emacs Wiki 的 Search and Replace 类别。在那里您可以找到按主要特征细分和描述的搜索方法。
我现在使用 helm-swoop,它非常适合我的工作流程。
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 中还有许多其他搜索方式。 开始 的最佳位置是 Emacs Wiki 的 Search and Replace 类别。在那里您可以找到按主要特征细分和描述的搜索方法。
我现在使用 helm-swoop,它非常适合我的工作流程。