24

我想要相反的

  • Ctrl+O

成为

  • Shift+ Ctrl+O

原来的反面是

  • Ctrl+I

您如何将Vim 中CTRL+的反面重新映射为++ ?OShiftCTRLO

4

4 回答 4

59

如帮助中所示

:help C-o

Ctrl+的“反向”o

Ctrl+iTab

于 2009-05-09T16:58:49.623 回答
11

不幸的是,Vim 将 Control-o 和 Control-O 识别为同义词。这里
有一些关于为什么你不能映射 Control-Shift-o 的信息,但看起来不可能。

我赞成 Idigas 的回答,记住 Control-I 并不难。

于 2009-05-12T13:01:37.813 回答
4

实际上,如果您使用xterm,您可以通过重新映射文​​件中的键来绕过终端仿真器的限制.Xresources。使用一个无论如何都不会使用的键序列,例如 CM-7 (0x9f):

XTerm*vt100*translations: #override\n\
    Ctrl Shift <Key> O: string(0x9f)

然后xrdb -merge ~/.Xresources在 Vim 中将 CM-7 映射到 Ci。

诚然,这是一个 hack,但它对我帮助很大。查看我的.Xresources以获得灵感。

于 2010-11-28T21:34:05.083 回答
1

由于终端仿真器的限制,VimCtrl++视为Shift+ 。OCtrlO

于 2009-10-30T22:07:38.960 回答