7

目前,如果我按C-h c,然后ESC在键盘上按三次键,我会得到结果

ESC ESC ESC (translated from <escape> <escape> <escape>) runs the command keyboard-escape-quit

有什么区别ESC以及<escape>如何使用这种区别来进行更多的键绑定?

4

1 回答 1

11

emacs 在邮件列表存档中找到解决方案:

转义键通常链接到转义字符,但两者是不同的。在 tty 下,如果您键入转义键或键入 C-[(两者都发送转义字符),Emacs 从终端接收完全相同的字节序列。

另一方面,在 GUI 下,Emacs 可以区分这两者,因此在 GUI 下,转义键不发送?\e(又名ESCkbd),而是escape (又名<escape>kbd)通常?\e通过 function-key-map转换为(即仅当键序列没有对应的绑定时escape)。

C-i选项卡(即 TAB (aka ) vs tab) 和 return(即 RET (aka C-m) vs return)也会发生同样的事情。

于 2013-05-21T20:15:28.233 回答