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

Emacs 有没有办法从elisp返回键盘宏?,emacs,elisp,Emacs,Elisp,我一直在创建宏并保存它们,以便以后使用以下过程 创建键盘宏 编辑宏:C-x C-k C-e 为宏命名:M-x Name last kbd macro 创建一个.el文件,然后插入宏定义:M-x insert kbd macro 保存lisp代码供以后使用后,我将其加载到.emacs文件中。也许是我不熟悉elisp,但是生成的elisp代码看起来相当笨拙。我更喜欢宏编辑器中的语法,我想对我创建的代码进行更新和细化,因此我问: 有没有办法在宏编辑器中将我的elisp代码恢复为合理的格式副本?您可以使

我一直在创建宏并保存它们,以便以后使用以下过程

  • 创建键盘宏
  • 编辑宏:
    C-x C-k C-e
  • 为宏命名:
    M-x Name last kbd macro
  • 创建一个.el文件,然后插入宏定义:
    M-x insert kbd macro
  • 保存lisp代码供以后使用后,我将其加载到
    .emacs
    文件中。也许是我不熟悉elisp,但是生成的elisp代码看起来相当笨拙。我更喜欢宏编辑器中的语法,我想对我创建的代码进行更新和细化,因此我问:


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

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

    也许知道您运行的所有键盘宏都保存在一个全局环中也很有帮助,这样您就可以使用
    C-xc-kc-n
    C-xc-kc-p
    在它们之间来回循环

    顺便说一句,不只是对Elisp不熟悉使这些宏定义难以阅读<代码>插入kbd宏基本上只是将宏作为键序列向量写出。人类书写的Elisp是一种更令人愉快的语言;-)