emacs – 如何将恶意模式(vim样式)宏保存到我的init.el?

前端之家收集整理的这篇文章主要介绍了emacs – 如何将恶意模式(vim样式)宏保存到我的init.el?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
一年前从Vim转过来,我正在使用 evil-mode。我已经做了很多定制,但还没有解决如何保存vim风格的键盘宏。

我可以使用与Vim完全相同的键定义并运行它们的恶意模式。

> qa字母开始记录一个宏。
q停止录音。
> @a来运行宏。

我想将其中的一些保存到我的init.el文件中以在会话之间使用,但是我没有找到任何对这个在线的引用,也没有找到正确的语法。

如何将这些恶模式键盘宏保存到文件?有没有原因我应该使用本机Emacs键盘宏,有没有办法我可以通过@a键运行这些?

邪恶模式的宏不是特殊的,它们只是普通的Emacs宏,并且以相同的方式保存它们,但是你需要做一些特别的工作来将它们变成恶意的寄存器。

我们来看一个例子:

在缓冲区中,做qfifoobarESCq。这将把一个宏保存到f寄存器中,将foobar插入缓冲区。

现在运行M-xname-last-kbd-macroRETmemacroRET。

转到你的init.el文件,并做M-xinsert-kbd-macroRETmymacroRET。

这将把您的宏转储成一个fset调用

(fset 'mymacro [?i ?f ?o ?o ?b ?a ?r escape])

如果将其放在init.el中,您将可以从M-x访问命令mymacro。

但是,我们将其保存到寄存器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])

现在你可以从@访问它了!

See the docs about naming and inserting macros as text

猜你在找的Bash相关文章