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 e M-x后跟要编辑的宏的名称。 (或 C-x C-k e ( edit-kbd-macro ) 后跟宏绑定(bind)的键序列;M-x 这里只是一种助记符,正如命令帮助所解释的那样)。

    也许知道您运行的所有键盘宏都保存在全局环中也很有帮助,因此您可以使用 C-x C-k C-n 来回循环它们。和 C-x C-k C-p .

    顺便说一句,让那些宏定义难以阅读的不仅仅是对 Elisp 的不熟悉。 insert-kbd-macro基本上只是将宏写成键序列的向量。由人类编写的 Elisp 是一种更令人愉快的语言 ;-)

    关于emacs - 有没有办法从elisp回到键盘宏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8393084/

    相关文章:

    file - 如何编写以字符串形式返回文件内容的 elisp 函数?

    emacs - 创建每个缓冲区后是否有一个 Emacs Hook ?

    Emacs 次模式编程 : cancel toggle-off procedure?

    python - 有没有办法在 Emacs 中创建 "project file"?

    emacs magit : git-dir is not in the default place

    emacs - EShell中的多行输入

    emacs - 如何调试使 Emacs 崩溃/使用 100% CPU 的 Emacs lisp?

    emacs - 显示 Emacs 中当前缓冲区的语法表名称

    emacs - 如何在 emacs 中查找别名

    html - emacs 是否为 html 模式提供隐藏显示