Questions tagged «keyboard-macros»

3
如何将键盘宏另存为Lisp函数?
我经常需要执行需要多个击键的一组步骤。对于同一会话,可以将这些步骤记录在键盘宏中。 一个示例是将频繁执行的搜索/替换操作另存为键盘宏。但是当我退出emacs时,该宏丢失了。 如何将常用的键盘宏另存为Lisp函数? 为了简单起见,我想将用“ def”替换“ abc”的动作保存为一个函数,以便可以在emacs会话中重用它。

2
如何处理键盘宏中的下一行?
我创建了一个键盘宏来使用以下命令将缓冲区中的行连接起来: F3 C-n M-x join-line RET F4。 它行之有效,除非行太长并开始换行,这使此宏取决于帧的宽度。next-line似乎并没有转到下一个实际行,而是到了当前行的“包装”部分。 如何解决这个问题?

2
Emacs上通常可以用来绑定键盘宏的未使用键是什么?
我读的是通常的方式绑定键键盘宏C-x C-k 0来9和A到Z。 因此,例如,在定义键盘宏之后,我们可以键入内容 C-x C-k b,Emacs将要求绑定键。并且为此目的保留的键是C-x C-k 0to 9和Ato Z。 但这涉及许多击键。有什么好的按键可以绑定到此?我发现我可以使用Emacs GUI版本将其绑定到运行Ubuntu Virtual Machine的Mac上C-<return>或Option+ Enter。这样就可以了,但是Emacs终端版本和Mac上的本机Emacs都将C-<return>或Option+ Enter视为just <return>,因此不起作用。 Emacs上通常可以用来绑定键盘宏的未使用键是什么? 又或者,是否可以显示所有未绑定到Ctrl和的简单键Meta?

4
如何恢复不完整的键盘宏录制?
经典用例: 您开始记录宏: C-x ( 假设您正在做一些事情hello。 假设您运行了一个引发错误的命令C-g(例如,您错误地运行了该命令,C-s而您必须使用取消该操作C-g,那么您的工作将会丢失)。 现在,您到目前为止的录制已丢失。 我想恢复我中断的地方,然后再运行一条命令中断录音。我看着C-h f start-kbd-macro,但是它是用C编写的,所以我无法对其进行调整。我还current-kbd-macro搜寻了类似的变量,但到目前为止没有找到。 可以恢复吗? 更新: 我不知道为什么C-u C-x (对我不起作用,但是我发现这是因为我正在使用进行测试C-g。 事实证明这C-g很特别-如果您触发其他类型的错误,例如 C-x ( M-: (signal 'quit nil) 然后,这将停止录制,但last-kbd-macro将包含"M-: M-( signal 'quit nil",但带有 C-x ( C-g 这将停止记录并丢弃任何记录的内容。作为对Cg满意的用户(至少有两个我的朋友),这是一个非常不幸的区别。我尝试编辑keyboard-quit,但在那里我无能为力。 看来,恢复此错误的唯一方法是通过recent-keys并自动确定在何处调用了start-kbd-macro(或类似名称),如中所示kmacro-edit-lossage。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.