В чем разница между Ctrl+C и Ctrl+[?

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

 или CTRL-[Завершить вставку или заменить режим, вернуться в обычный режим. Конец
                сокращение.           
                Примечание. Если клавиатуру  сложно нажать на клавиатуре, потренируйтесь
                самостоятельно использовать CTRL-[.
CTRL-C Выйти из режима вставки, вернуться в обычный режим. Не проверять на
                аббревиатуры. Не вызывает |InsertLeave| автокомандного
                событие.
CTRL-C Команда прерывания тока (поиска). Используйте CTRL-Break на
                        MS-DOS | DOS-CTRL-Break |.
                        В обычном режиме любая ожидающая команда отменяется.

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

Разве Ctrl+C также не выходит из режима замены, и как сокращения относятся к ожидающим командам?

1 ответ

Решение

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

Другие вопросы по тегам