到目前为止,我学到的使用 vim 的最佳技巧之一是可以按Ctrl+C或Ctrl+[而不是Esc键。但是我使用的是德沃夏克键盘,所以Ctrl+[对我来说也有点遥不可及,所以我主要使用Ctrl+ C。现在我在某处读到这两个组合键实际上并不具有完全相同的行为,最好使用Ctrl+ [。到目前为止我还没有遇到任何问题,所以我想知道两者之间到底有什么区别?
问问题
8567 次
3 回答
15
根据 Vim 的文档,Ctrl+C不会检查缩写,也不会触发InsertLeave
自动命令事件,而Ctrl+[会。
一种选择是使用以下重新映射Ctrl+C
inoremap <C-c> <Esc><Esc>
于 2008-09-17T07:20:28.597 回答
4
非常晚的答案,但我只是有同样的问题,并找到了一个有助于解释差异的实际例子,所以为什么不呢。
如果您选择了一个可视块,然后用 更改它c
或在其末尾添加一些内容A
,如果您随后使用 退出<Esc>
,则该可视块的所有行都会发生相同的更改(这非常有用!请参阅:help v_b_A
);如果您使用 退出<C-c>
,则不会发生这种情况,只有一行得到更改。可能还有其他类似的事情我没有意识到我错过了<C-c>
......
于 2012-07-04T18:25:02.437 回答
1
事实证明,<C-[>
与 Esc 完全相同,它们是相同的字符。因此,无需怀疑那里有什么不同。:)
于 2008-09-17T07:34:29.890 回答