【问题标题】:Hydra disable interpretation of prefix argumentHydra 禁用前缀参数的解释
【发布时间】:2018-12-15 23:14:37
【问题描述】:

很长一段时间以来,我一直使用常见的 emacs hydra 来导航表达式,类似于

(defhydra hydra-word (:color red) "word"
  ("M-f" forward-word)
  ("M-b" backward-word)
  ("f" forward-word)
  ("b" backward-word)
  ;; etc..
  )

但是我一直有一个烦人的问题:当我总是想简单地插入一个数字时,按一个数字被解释为一个前缀参数。我浏览了 hydra wiki,但找不到禁用前缀解释的答案。我知道我可以为每个数字写一个("1" self-insert-command nil :exit t),但这很愚蠢,并且会导致创建一堆额外的函数。

如何在活动 hydra 期间禁用前缀 arg 的解释?而且,我想更一般地说,有一种方法可以暂时禁用前缀参数的解释。

【问题讨论】:

    标签: emacs key-bindings hydra


    【解决方案1】:

    查看代码后,我发现您可以覆盖 hydras 基本地图,例如 universal-argument-map。因此,要实现上述仅以 C-u 开头的前缀,但所有数字和 - 自插入,以下工作

    (defhydra hydra-word (:color red :base-map (make-sparse-keymap)) "word"
      ("M-f" forward-word)
      ("M-b" backward-word)
      ("f" forward-word)
      ("b" backward-word)
      ;; etc..
      )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-06-08
      • 1970-01-01
      • 2011-09-22
      • 2013-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多