emacs键绑定命令影响另一个
以前我使用emacs键绑定命令影响另一个,emacs,Emacs,以前我使用C-SPC来激活/停用标记,现在我使用扩展区域包并将键绑定设置为C-@,如下所示: (全局设置键(kbd“C-”)er/扩展区域) 但这也影响了C-SPC键绑定,因此它也绑定到扩展区域 我需要的是C-@绑定到扩展区域和C-SPC绑定到旧的激活/停用标记,建议您参考: 及 引用后者的话: 脚注[1]ASCII中没有C-字符;通常,在文本终端上键入C-会得到字符C-@。此键也绑定到set mark命令,因此除非您不幸拥有一个行为不同的文本终端,否则您最好将C-@视为C- 我想你会发现它
C-SPC
来激活/停用标记
,现在我使用扩展区域
包并将键绑定设置为C-@
,如下所示:
(全局设置键(kbd“C-”)er/扩展区域)
但这也影响了C-SPC
键绑定,因此它也绑定到扩展区域
我需要的是C-@
绑定到扩展区域
和C-SPC
绑定到旧的激活/停用标记
,建议您参考:
及
引用后者的话:
脚注[1]ASCII中没有C-字符;通常,在文本终端上键入C-会得到字符C-@。此键也绑定到set mark命令,因此除非您不幸拥有一个行为不同的文本终端,否则您最好将C-@视为C-
我想你会发现它们不是分开的钥匙;C-SPC发送与C-@相同的代码。我认为这意味着您必须找到其他地方来绑定其中一个函数(即使您必须覆盖扩展区域)对于第二个答案,我深表歉意。。。我认为第一个是错误的,因为我现在能够为C-SPC和C-@分别定义,如下所述 这可以分别定义C-@和C-SPC: (全局设置键[?\C-@]'行首) (全局设置键(kbd“C-SPC”)'行尾) 为了证明这一点,我从这里得出了答案: 在谷歌搜索“emacs控制空间”之后
(关于您的问题,“我应该将此扩展区域绑定到什么键?”,我通常使用C-h C-k并键入一些我认为不使用的键。然后查看默认情况下该键绑定的函数。如果它对我有用,我会尝试另一个键并继续查找。如果我觉得我永远不会使用默认定义,我会出于自己的目的重新定义它。)对不起:当我运行
C-hk C-SPC
时,我得到了C-@
的解释,就好像我按下了它一样<代码>C-x C-x工作正常。我认为第一个链接并不能解决我的问题,因为emacs在某种程度上认为C-SPC
与C-@
是一样的@koan911@koan911,堆栈溢出时不建议使用仅链接的答案。但是如果你编辑你的答案并添加你在评论中的引用,这可能是一个好答案。当我按下Ctrl+2
或Ctrl+Shift+2
时,它会发送C-
,(请注意,Shift
没有任何区别),但是当我想发送一个C-#
并按Ctrl+Shift+3
或Ctrl+3
时,它会发送M-[;6 s未定义
,发生了什么事,我如何发送一个C-#
我应该将这个扩展区域绑定到哪个键?最后,为什么移位在这里无关紧要?@koan911你当然可以对C-
和C-SPC
进行单独绑定。问题是Emacs是否真的会收到序列C-SPC
>。如果在GUI模式下运行,它将运行。如果在终端上运行,那么,正如您的另一个答案中包含的报价中所详细说明的,它很可能不会运行。