无法在Vim中反转Ctrl-O
我要的是相反的无法在Vim中反转Ctrl-O,vim,buffer,keyboard-shortcuts,Vim,Buffer,Keyboard Shortcuts,我要的是相反的 Ctrl+O 将来 Shift+Ctrl+O 原来的反面是 Ctrl+I 如何将Vim中CTRL+O的相反方向重新映射为Shift+CTRL+O?如下面的帮助中所示 :help C-o Ctrl+o的“反转”是 不幸的是,Vim将Control-o和Control-o识别为同义词。 有一些关于为什么不能映射Control-Shift-o的信息,但看起来不可能 我对Idigas的答案投了赞成票,记住Control-I并不难。Vim将Ctrl+Shift+O视为Ctrl
- Ctrl+O
- Shift+Ctrl+O
- Ctrl+I
:help C-o
Ctrl+o的“反转”是
不幸的是,Vim将Control-o和Control-o识别为同义词。
有一些关于为什么不能映射Control-Shift-o的信息,但看起来不可能 我对Idigas的答案投了赞成票,记住Control-I并不难。Vim将Ctrl+Shift+O视为Ctrl+O,因为终端仿真器有一个限制。实际上,如果使用xterm,可以通过在
.Xresources
文件中重新映射键来绕过终端仿真器的限制。使用您无论如何都不会使用的密钥序列,例如C-M-7(0x9f):
XTerm*vt100*翻译:#覆盖\n\
Ctrl Shift O:字符串(0x9f)
然后执行一个xrdb-merge~/.Xresources
并在Vim中将C-M-7映射到C-i
诚然,这是一个黑客,但它帮助了我很多。查看我的灵感。@Idigas:你如何重新映射Shift-Ctrl-O键。我永远记不起C-I键。@Idigas:谢谢你的回答@Ruslan
Ctrl-i
和Ctrl-i
是synonymous@törzsmókus不,他们不是Ctrl-I
相当于Ctrl-Shift-I
。而且撤销Ctrl-o
实际上并不起作用,不像Ctrl-i
那样起作用。在大多数终端上,您(或vim)无法判断用户是按了Ctrl-i
还是按了Ctrl-Shift-i
,这就是我所说的“同义词”。请参阅中的链接以了解此所属的解释。它与编程无关。是否有关于这些限制的详细信息?是的,请参阅中的
XTerm*vt100*translations: #override\n\
Ctrl Shift <Key> O: string(0x9f)