我想模仿我在vim中的行为,但在emacs恶魔模式中。我希望*
搜索当前可视选择的文本。以下代码有效,但按n
或N
不会保留搜索字符串
(define-key evil-visual-state-map (kbd "*")
(lambda () (interactive)
(let ((search-string (buffer-substring
(evil-range-beginning (evil-visual-range))
(evil-range-end (evil-visual-range)))))
(evil-normal-state)
(evil-search search-string t))))
我是emacs / elisp的新手。关于做到这一点的“正确方法”的任何想法是什么?在evil-search.el source中,我看到一个可能有用的函数evil-ex-search-update-pattern
,但我不确定如何将它组合在一起。
谢谢!
答案 0 :(得分:1)
Bailey Ling(以前的Vim用户)制作了一个插件,可以完成你所追求的同样的事情:https://github.com/bling/evil-visualstar。
您可以安装它,也可以查看源代码(这可能有助于解决您的问题)。