我使用Evil模式的Emacs,当我进入搜索模式时,显示ElDoc消息取代当前的搜索模式。这很烦人。我查看了ElDoc,看到了一个函数eldoc-display-message-p
,它检查ElDoc不应该显示消息的条件。
我需要一些提示来建议这个函数,以防止ElDoc干扰Evil搜索
函数eldoc-display-message-no-interference-p
是一个谓词函数,它将决定是否在此时显示eldoc消息。
在Evil中搜索使用isearch,所以当你搜索时,变量isearch-mode
将是非nil。
您可以通过直接编辑自定义eldoc-display-message-no-interference-p
的行为,但这通常不是最好的选择,我们可以通过使用"after advice"来修改它的行为。如果你对建议不熟悉,可以在这里阅读。
(defadvice eldoc-display-message-no-interference-p (after dont-show-when-isearching activate)
"Always return nil if isearch-mode is active."
(setq ad-return-value (and ad-return-value (not isearch-mode))))