Это может быть вызвано привязкой к некоторым дополнительным функциям. Например, я использую плагин tabbar, и он отображает 0-9 для переключения на буфер номеров. Всякий раз, когда клавиша сопоставляется с дополнительными функциями, подобными этой, vim ждет несколько секунд после ее нажатия, чтобы увидеть, собираетесь ли вы нажимать какие-либо дополнительные клавиши.
Чтобы увидеть, есть ли дополнительные сопоставления, запустите :map
и найдите <Esc>
в первом столбце. При запуске без каких-либо параметров, :map
будут перечислены все пользовательские сопоставления. Если вы хотите перечислить только сопоставления в визуальном режиме, запустите :vmap
.
Если есть дополнительные сопоставления, я не знаю, как удалить паузу, кроме удаления сопоставлений. Пауза необходима для того, чтобы vim однозначно знал, какое действие вы намерены предпринять.
Esc
также есть префикс для всех специальных клавиш, включая даже клавиши со стрелками.:help 'timeout'
.У меня нет привязки, привязанной к <ESC> глобально или для визуального режима (вызов: verbose vmap <ESC> не дает результатов), но при выходе из визуального режима все еще существует значительная задержка. Даже на свежих установках без vimrc задержка присутствует. Использование <Cc> приводит к немедленному выходу из визуального режима.
Поскольку я не люблю нажимать <Cc> для выхода из любого режима, в настоящее время я отображаю <ESC> на <Cc> в визуальном режиме. Это выходит из визуального режима с использованием <ESC> без какой-либо задержки.
Или вставьте следующую строку в ваш vimrc
Это не будет работать, если у вас есть сопоставления глобального или визуального режима, связанные с <ESC>.
источник
Все, что вы можете сделать, это использовать CTRL+ Cдля выхода из визуального режима, что должно избежать задержки.
источник