Emacs转义键

7

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

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

ESC<escape>有什么区别,我该如何利用这种差异来创建更多的键位绑定?


我相信它们是一样的。这只是符号上的差异。 - Eric
1
可以接受自己的答案(在您的答案旁边点击复选标记)是可以的。这对其他人也有帮助,因为它标记了问题为“已回答”。 - Tyler
1个回答

11

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

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

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

Tab键(即TAB(又名C-i)与tab)以及回车(即RET(又名C-m)与return)发生的情况也是如此。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接