加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

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

发布时间:2020-12-15 19:15:38 所属栏目:安全 来源:网络整理
导读:一年前从Vim转过来,我正在使用 evil-mode。我已经做了很多定制,但还没有解决如何保存vim风格的键盘宏。 我可以使用与Vim完全相同的键定义并运行它们的恶意模式。 qa字母开始记录一个宏。 q停止录音。 @a来运行宏。 我想将其中的一些保存到我的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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读