Emacs搜索整个缓冲区时的惰性高亮

3

isearch的默认行为是在当前窗口中高亮匹配的单词。 我如何更改这个行为,让它在整个当前缓冲区中高亮匹配的单词。


你根本看不到这些匹配项。你真正想要实现什么? - Tom
1个回答

6
也许你正在寻找highlight-*命令,它可以在你执行其他操作时始终保持缓冲区中的高亮显示? M-shC-h 列出了相关内容:
Global Bindings Starting With M-s h:

key             binding
---             -------
M-s h l         highlight-lines-matching-regexp
M-s h p         highlight-phrase
M-s h r         highlight-regexp
M-s h u         unhighlight-regexp

您还可以在isearch期间使用M-shr来调用当前搜索词的高亮显示。

顺便提一下,您也可以使用M-so在当前搜索词上调用出现。

在isearch期间使用C-hC-hb查看所有isearch绑定。


谢谢,我知道那种方法。但我仍然想用isearch来实现。 - luozengbin
我现在正在尝试做这件事。如何在isearch操作后自动调用highlight-*?我正在阅读isearch.el,但它似乎很复杂。你能给我一些提示吗? - luozengbin
1
只要您运行的是Emacs 23.1或更高版本,您就应该能够在isearch期间简单地键入'M-s h r'。 这将提示您输入要突出显示的面孔,就像您在isearch之外键入'M-s h r'一样,但无需输入正则表达式。 因此,一个完整的按键序列可能是:C-s p a t t e r n M-s h r RET 来启动对“pattern”的搜索,然后突出显示默认突出显示面孔(hi-yellow)中的所有实例。 - phils
不客气。我注意到您还没有接受任何问题的答案,但是您似乎对其中几个答案感到满意。请阅读有关如何提问和接受答案的常见问题解答:http://stackoverflow.com/faq#howtoask - phils
对此我感到抱歉。我会检查一下。 - luozengbin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接