在Vim中<C-C>和<C-[>之间有什么区别?

在Vim中<C-C>和<C-[>之间有什么区别?

What is the difference between and in vim?

到目前为止,我了解到的使用vim的最佳技巧之一就是可以按Ctrl + CCtrl + []代替Esc键。 但是,我使用的是dvorak键盘,因此Ctrl + []对我来说也有点遥不可及,因此我主要使用Ctrl + C。 现在,我在某处读到这两个键组合实际上没有完全相同的行为,最好使用Ctrl + []。 到目前为止,我还没有遇到任何问题,所以我想知道两者之间到底有什么区别?


根据Vim的文档,Ctrl + C不检查缩写,并且不触发InsertLeave自动命令事件,而Ctrl + [则可以。

一种选择是使用以下代码重新映射Ctrl + C

1
inoremap <C-c> <Esc><Esc>

答案太晚了,但我只是有一个相同的问题,并找到了一个有助于说明差异的实际示例,所以为什么不这样做。

如果选择一个可视块,然后用c对其进行更改,或者使用A在其末尾附加一些内容,然后再使用退出,则该可视块的所有行都将发生相同的变化( 这真的很有用!请参见:help v_b_A); 如果您使用退出,则不会发生这种情况,只有一行得到更改。 可能还有其他类似的事情,我没有意识到我缺少 ...


事实证明,与Esc完全相同,它们是相同的字符。 因此,无需怀疑那里的任何区别。 :)


推荐阅读