Evil-mode 宏并不特殊,它们只是普通的 Emacs 宏,你用同样的方法保存它们,但是你需要做一些特殊的工作才能将它们放入 evil 寄存器。
让我们来看一个例子:
在缓冲区中,执行qfifoobar
ESCq. 这会将宏保存到f
将 foobar 插入缓冲区的寄存器中。
现在运行M-xname-last-kbd-macro
RETmymacro
RET。
转到您的init.el
文件并执行M-xinsert-kbd-macro
RETmymacro
RET.
这会将您的宏转储到fset
调用中。
(fset 'mymacro [?i ?f ?o ?o ?b ?a ?r escape])
如果你把它放在你的 init.el 中,你就可以mymacro
从M-x.
但是,我们将它保存到寄存器f
中,并且我们希望它在每次启动时都存在。您需要从上面的代码中提取宏向量并将其保存到您的寄存器中,init.el
如下所示:
;; make sure this is done after evil-mode has been loaded
(evil-set-register ?f [?i ?f ?o ?o ?b ?a ?r escape])
现在您可以从@!
请参阅有关将宏命名和插入为文本的文档