有没有办法从elisp返回键盘宏?

时间:2011-12-05 22:55:42

标签: emacs elisp

我一直在创建宏并保存它们以供以后使用。

  1. 创建键盘宏
  2. 编辑宏:C-x C-k C-e
  3. 为宏命名:M-x name-last-kbd-macro
  4. 创建.el文件,然后插入宏定义:M-x insert-kbd-macro
  5. 将lisp代码保存以供日后使用,我会将其加载到.emacs文件中。也许这是我对elisp的不熟悉,但生成的elisp代码似乎相当笨拙。我更喜欢宏编辑器中的语法,我想对我创建的代码进行更新和改进,所以我问:

    有没有办法在宏编辑器中将我的elisp代码恢复到合理的格式?

1 个答案:

答案 0 :(得分:11)

您可以使用C-x C-k e M-x,然后使用要编辑的宏的名称。 (或C-x C-k eedit-kbd-macro)后跟宏绑定的键序列; M-x这里只是一种助记符,正如命令的帮助所解释的那样。)

也许知道您运行的所有键盘宏都保存在全局响铃中也很有帮助,因此您可以使用C-x C-k C-nC-x C-k C-p来循环前进。

顺便说一句,不仅仅是对Elisp的不熟悉使得这些宏定义难以阅读; insert-kbd-macro基本上只是将宏写为关键序列的向量。人类写的Elisp是一种非常愉快的语言; - )