为什么选择Ctrl +.当我将它绑定到Emacs中的命令时不起作用?

林 孙*_*林 孙 12 emacs terminal key-bindings

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

我正在使用此过程绑定密钥:

(define-key c-mode-base-map (kbd "C-.") 'semantic-ia-fast-jump)
Run Code Online (Sandbox Code Playgroud)

要么

(define-key c-mode-base-map [(control .)] 'semantic-ia-fast-jump)
Run Code Online (Sandbox Code Playgroud)

phi*_*ils 7

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

所以你的终端很可能不会产生除.你按下之外的任何东西C-.(如果是这种情况,那基本上就是你的答案,除非有某种方法配置终端否则).

(每当您认为Emacs在终端中运行时没有对某些输入进行操作时,您应该尝试验证Emacs实际上是否正在接收您认为的输入.)

如果您的终端正在生成其他内容.,请参阅以下问答,了解有关如何让Emacs识别序列的详细信息:

如果您可以运行xterm,那么由于某些特定于xterm的增强功能,您可能很幸运.看看以下内容:

其他一些相关的问答: