【问题标题】:Can Emacs differentiate between ctrl-r and ctrl-shift-r?Emacs 可以区分 ctrl-r 和 ctrl-shift-r 吗?
【发布时间】:2010-10-25 21:57:24
【问题描述】:

我想将 Ctrl + R 绑定到 'isearch-backward 并绑定 Ctrl + Shift + R'tags-apropos 但我无法区分这两个按键。

emacs 能否区分 Ctrl + RCtrl + Shift + R?应该在我的 .emacs 文件中添加什么内容才能允许此键绑定?

【问题讨论】:

    标签: emacs keyboard-shortcuts key-bindings


    【解决方案1】:

    是的。

    (global-set-key (kbd "C-r") 'isearch-backward)
    (global-set-key (kbd "C-S-r") 'tags-apropos)
    

    找出这类问题的答案的方法是对 Ch k 键进行帮助,然后键入您感兴趣的击键。Emacs 在 中显示的内容帮助缓冲区是您可以传递给宏'kbd的字符串。

    【讨论】:

      【解决方案2】:

      是的——一个是"\C-r",另一个是"\C-R"。它们可以很容易地绑定到单独的命令。例如,如果放在您的 .emacs 文件中,这应该可以解决问题:

      (global-set-key "\C-R" 'tags-apropos)
      

      【讨论】:

      • 不幸的是,这不起作用。当您将字符串传递给 global-set-key 时,任何大写字符都会被转换为其等效的小写字母。所以 (global-set-key "\C-R" 'tags-apropos) 实际上会绑定 Ctrl + r,而不是 Ctrl + Shift + r。要解决此翻译问题,您可以使用 'kbd 宏,如其他答案所述。
      猜你喜欢
      • 2011-01-07
      • 2013-01-29
      • 2020-10-22
      • 1970-01-01
      • 1970-01-01
      • 2016-04-12
      • 1970-01-01
      • 2018-06-22
      • 2011-08-09
      相关资源
      最近更新 更多