Answers:
Ctrl-C和Esc不在同一vi/ vim在大多数模式,包括插入模式。区别在于不Esc触发触发器的缩写Ctrl-c。这对您而言是否重要取决于您或您使用的任何插件是否都使用缩写。
请注意,它是安全的假设Esc和Ctrl-C不不意味着同样的事情vim。来自同一站点的另一个示例是退出块插入模式时(不在中vi)。
如果您指的是vim,则略有不同。CTRL-C不检查缩写,也不触发InsertLeave事件。因此,您或插件已定义了任何autocmd依赖的语句InsertLeave,它们不会被触发。
从官方文档http://vimhelp.appspot.com/insert.txt.html:
<Esc> or CTRL-[ End insert or Replace mode, go back to Normal mode. Finish
abbreviation.
CTRL-C Quit insert mode, go back to Normal mode. Do not check for
abbreviations. Does not trigger the InsertLeave autocommand
event.
您可以定义映射CTRL-C到<esc>,那么就会触发InsertLeave。
Type :quit<Enter> to exit Vim并使我成为Google的后盾。击中会使i您立即回到插入模式。