Emacs-Can';t图C-[

Emacs-Can';t图C-[,emacs,elisp,key-bindings,Emacs,Elisp,Key Bindings,我尝试在Emacs中映射C-[以实现与C-g相同的功能。我尝试了以下方法: (global-set-key "\C-[" 'keyboard-escape-quit) 但是重新映射C-[]后Emacs的行为异常。例如,M-x停止工作,如果我尝试重新映射M-x,则会出现以下错误: 错误:键序列M-x以非前缀键ESC开始 为什么会发生这种情况?有解决办法吗?C-[/code>与ESC键相同,ESC键是转义键。您可能不想重新绑定ESC,因为它在许多、许多、许多键绑定中用作前缀键。它在许多情况下都实现

我尝试在Emacs中映射C-[以实现与C-g相同的功能。我尝试了以下方法:

(global-set-key "\C-[" 'keyboard-escape-quit)
但是重新映射C-[]后Emacs的行为异常。例如,M-x停止工作,如果我尝试重新映射M-x,则会出现以下错误:

错误:键序列M-x以非前缀键ESC开始


为什么会发生这种情况?有解决办法吗?

C-[/code>与ESC键相同,ESC键是转义键。您可能不想重新绑定
ESC
,因为它在许多、许多、许多键绑定中用作前缀键。它在许多情况下都实现了元键修饰符,这可能就是您这么说的原因反弹后的“Emacs行为异常”(删除其前缀键行为)。请参阅Emacs手册,节点
用户输入

至于“是否有解决办法?”——选择另一个键(不要使用
ESC


和wrt
ESC
C-g
:参见Emacs手册,节点
退出
(也指节点
菜单栏
)。

C-[
与ESC
(转义键)相同。您可能不想重新绑定
ESC
,因为它在许多、许多、许多键绑定中用作前缀键。在许多情况下,它实现了元键修饰符,这可能就是为什么您在反弹它(删除其前缀键行为)后会说“Emacs行为异常”的原因。请参阅Emacs手册,节点
用户输入

至于“是否有解决办法?”——选择另一个键(不要使用
ESC


和wrt
ESC
C-g
:请参阅Emacs手册,节点
退出
(也是节点
菜单栏
)。

Ctrl-[
Escape
,至少在某些终端中是这样。我使用的是emacs gui,所以这不重要,对吗?而且,emacs已经覆盖了一些终端命令,比如Ctrl h…对于
m-
键绑定,至少有3次按键:
ESC
C-[
Alt
。它们使用公共键映射:
M-x
,其他键在其中定义。创建此键是为了方便:用于没有
Alt
或有限终端的键盘。
Ctrl-[
Escape
,至少在某些终端中是这样。我使用的是emacs gui,所以这不重要,对吗?而且,emacs已经覆盖了一些终端命令,比如Ctrl h…对于
m-
键绑定,至少有3次按键:
ESC
C-[
Alt
。它们使用公共键映射:
M-x
,其他的都在其中定义。这是为了方便:为没有
Alt
或有限终端的键盘创建的。这很奇怪,因为
(全局设置键[escape]'键盘escape退出)
工作正常。我会等着看是否有人提出解决方案,如果没有,我会接受你的解决方案。谢谢这不是一个好主意,IMHO。Emacs和Emacs库通常希望
ESC
在多个级别上都能正常工作。你可以随心所欲地进行调整,但我不建议你去摆弄
ESC
。瞧,IMO,不是解决方案,因为不是真正的问题(只有一个意见)。换句话说,真正的问题是什么?听起来这可能是一个。重新映射
ESC
听起来像是一个解决方案的尝试,但导致尝试的问题是什么?这很奇怪,因为
(全局设置键[escape]'键盘escape退出)
工作正常。我会等着看是否有人提出解决方案,如果没有,我会接受你的解决方案。谢谢这不是一个好主意,IMHO。Emacs和Emacs库通常希望
ESC
在多个级别上都能正常工作。你可以随心所欲地进行调整,但我不建议你去摆弄
ESC
。瞧,IMO,不是解决方案,因为不是真正的问题(只有一个意见)。换句话说,真正的问题是什么?听起来这可能是一个。重新映射
ESC
听起来像是一个解决方案的尝试,但导致这种尝试的问题是什么?