Какая разница между Ctrl + C и Ctrl + [?

В чем разница между Ctrl + C и Ctrl + [? В документах содержится следующее, что я могу найти:

<Esc> or CTRL-[ End insert or Replace mode, go back to Normal mode.  Finish
                abbreviation.           
                Note: If your <Esc> key is hard to hit on your keyboard, train
                yourself to use CTRL-[.
CTRL-C          Quit insert mode, go back to Normal mode.  Do not check for
                abbreviations.  Does not trigger the |InsertLeave| autocommand
                event.
CTRL-C                  Interrupt current (search) command.  Use CTRL-Break on
                        MS-DOS |dos-CTRL-Break|.
                        In Normal mode, any pending command is aborted.

Кажется, есть некоторые разногласия относительно того, что именно делают команды.

Не работает ли Ctrl + C режим Replace и как аббревиатуры относятся к отложенным командам?

Ответ 1

Это помогает думать о Ctrl C в vim так же, как вы думаете о Ctrl C в оболочке - вы хотите остановить все, что вы делали как можно скорее, и получить контроль обратно. Таким образом, в vim, если вы используете Ctrl C для выхода из режима вставки, vim не собирается проверять, просто ли вы написали часть аббревиатуры, и она не будет запускать причудливый авто команды, которые ваши плагины настроили для каждого раза, когда вы покидаете режим вставки, он просто сбрасывает вас в нормальном режиме, как только это возможно. Если вы не используете аббревиатуры или autocmds, то вы не заметите эту разницу.