gpt4 book ai didi

emacs - 为什么是 Ctrl+.当我将它绑定(bind)到 Emacs 中的命令时不起作用?

转载 作者:行者123 更新时间:2023-12-03 23:53:36 27 4
gpt4 key购买 nike

C-。当我将它绑定(bind)到 Emacs 中的命令时,它在终端中不起作用。我在 gnome-terminal 上尝试了这个程序和真正的终端tty1。我用 -nw 启动 Emacs标志,然后按 C-h k(describe-key 的命令),然后按 C-.. Emacs 只接收 . , 没有 Ctrl .我如何让它在 Emacs 中工作?

我正在用这个过程绑定(bind) key :

(define-key c-mode-base-map (kbd "C-.") 'semantic-ia-fast-jump)

或者
(define-key c-mode-base-map [(control .)] 'semantic-ia-fast-jump)

最佳答案

简而言之,大多数终端仿真器在它们可以产生的控制字符方面受到限制(原因很简单,它们所仿真的原始终端同样受到限制)。

所以你的终端很可能除了 . 不会产生任何东西。当您按 C-. (如果是这样的话,这基本上就是你的答案,除非有某种方法可以配置终端来做其他事情)。

(任何时候你认为 Emacs 在终端中运行时没有对某些输入进行操作,你应该尝试验证 Emacs 是否确实接收了你认为的输入。)

如果您的终端生成的不是 . ,然后引用下面的问答,详细了解如何让 Emacs 识别序列:

  • Binding M-<up> / M-<down> in Emacs 23.1.1
  • Shift-Tab produces cryptic error in Emacs
  • http://www.gnu.org/savannah-checkouts/gnu/emacs/manual/html_node/elisp/Translation-Keymaps.html

  • 如果您可以运行 xterm,那么您可能很幸运,因为有一些特定于 xterm 的增强功能。看看以下内容:
  • Send "C-(" to Emacs in VT100/xterm terminal (Mac OS X's Terminal)?
  • http://www.dur.ac.uk/p.j.heslin/Software/Emacs/Download/xterm-extras.el
    (我不确定第二个链接是否与此特定情况相关,但似乎值得包括在内)。

  • 其他一些相关问答:
  • How does one send S-RET to Emacs in a terminal?
  • Why emacs confuse PageDown (<next>) key with M-[?
  • 关于emacs - 为什么是 Ctrl+.当我将它绑定(bind)到 Emacs 中的命令时不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11110801/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com