我确实搜索了其他帖子,但无济于事。
使用C-xC-kn NameOfMacro
,我可以将我的宏定义为一个名称(ddd 表示删除 DD 标记)并使用M-x ddd
... np.随意重用它。
然后我在另一个缓冲区中打开我的 .emacs 并使用M-x insert-kbd-macro
RET ddd
RET将 lambda 代码插入其中。工作得很好。
我也曾经C-xC-kb将它分配给一个数字,就像 Emacs 手册显示的那样:(C-xC-kb4我选择 4 因为“d”是第四个字母)。然后我可以随意重用它C-xC-k4。
回到我的 .emacs 缓冲区并M-x insert-kbd-macro
输入单个数字“4”,它给了我一个“不匹配”错误。很奇怪,因为我实际上可以C-xC-k4在 .emacs 缓冲区中使用宏。我推断这insert-kbd-macro
是保存单个数字命名宏的错误命令。
但是在手册中的 21.5 结尾处它说:
“如果你给出
insert-kbd-macro
一个数字参数,它会生成额外的 Lisp 代码来记录你绑定到宏名称的键(如果有的话),这样当你加载文件时,宏将被重新分配相同的键。”
我不明白...
seh,安格斯……请你的智慧。感谢所有回复的人。
PS 我认为我的问题是以下最后一篇文章:
如何在我的 Emacs 初始化文件中生成键盘宏?