.vimrc 中的这一行导致 vim 以“c”模式打开?

.vimrc 中的这一行导致 vim 以“c”模式打开?

我不明白为什么会有这一行:

nmap <C-[> :tabprevious<cr>

... 使 vim 立即以“c”(更改?)模式打开。这是我喜欢在 vim 中用于选项卡导航的一对映射中的一半:

" screw taglist; yay tabs!
nmap <C-[> :tabprevious<cr>
nmap <C-]> :tabnext<cr>

后一条规则运行得很好,但前一条规则在打开 vim 时却出现了这种奇怪的行为。手动返回正常模式后,两个映射都按预期工作(更改选项卡)。

发生了什么事?我是不是忽略了一些简单的事情?

顺便说一句,我在 OSX 10.5 上通过 iTerm2 使用 CLI vim(即不是 MacVim)。我已经仔细检查了整个.vimrc文件并安装了插件,并确认——即使禁用了所有插件并注释掉了所有其他选项——我还是会因为上面的行而出现这种情况。

答案1

您肯定不想将 <C-[> 映射到任何东西,因为它与映射 <esc> 同义,这确实会使 Vim 变得混乱。

编辑:实际上,在正常模式下映射 <esc> 可能不是什么大问题,但我不推荐这种做法。

我可以重现您的问题,但不幸的是我无法弄清楚为什么会发生这种情况或如何解决它。

相关内容