【问题标题】:Defining step size of Emacs Macro Counter定义 Emacs 宏计数器的步长
【发布时间】:2015-10-30 13:17:50
【问题描述】:

我喜欢 Emacs 键盘宏功能,并且经常使用它。

有时,我不想只是静态输入某些键盘宏,但应该有一个值会在两者之间发生变化。有 Emacs 宏计数器的功能 (Macro counters in Emacs Manual)。

问题是这个计数器总是加一。有没有办法指定步进大小(即每一步向前移动 4 步)?

提前感谢您的帮助!

【问题讨论】:

    标签: emacs macros counter


    【解决方案1】:

    你可以使用kmacro-add-counter,绑定到C-x C-k C-a。 例如要将 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) 的简写。

    【讨论】:

    • 谢谢!这很hacky,我希望在某个地方可以设置一个额外的参数......但无论如何......我想这就是我需要走的路:-)
    猜你喜欢
    • 2011-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多