我喜欢Emacs键盘宏功能,我正在使用它。
有时,我不想只是静态地输入某些键盘宏,但是应该有一个值会在其间发生变化。有Emacs宏计数器(Macro counters in Emacs Manual)的功能。
问题是这个计数器总是只计算一个。有没有办法指定步进尺寸(即在每一步中向前移动4)?
提前感谢您的帮助!
答案 0 :(得分:3)
您可以使用绑定到 C-x C-k C-a 的kmacro-add-counter
。
例如,要向计数器添加3,请使用 M-3 C-x C-k C-a 。
小例子:<f3> <f3> RET M-3 C-x C-k C-a <f4> <f4> <f4> <f4>
将产生:
0
4
8
12
kmacro
有时,您可以使用tiny来执行此操作
kmacro
在更少的击键次数和更好的撤消上下文中的作用。
上面的例子可以通过输入:
生成m\n3*x4
并按下tiny-expand
的快捷方式。我像这样绑定它:
(global-set-key (kbd "C-;") 'tiny-expand)
这里,m\n3
基本上意味着由换行符(\n
)连接的4次重复(索引从0开始)。 *x4
是Elisp (* x 4)
的缩写。