Задержка, прежде чем 'O' открывает новую строку? - PullRequest
74 голосов
/ 29 января 2010

Я заметил, что иногда, когда я использую O (заглавная 'o'), чтобы создать новую строку и перейти в режим вставки, происходит небольшая задержка, прежде чем что-то случится.

Это часто встречается? Есть ли способ изменить это?

И :map O, и :imap O показывают "Сопоставление не найдено", поэтому я не думаю, что это странное сопоставление.

Ответы [ 3 ]

84 голосов
/ 29 января 2010

Это потому, что опция 'esckeys' включена (следствие nocompatible, как я только что обнаружил). Когда вы нажимаете ^ [ O , возникает небольшая задержка, так как выясняется, используете ли вы стрелку / функциональную клавишу или вы просто имели в виду эти две клавиши последовательно.

Одним из решений является отключение этой опции и отказ от клавиш со стрелками в режиме вставки.
Другой способ - установить для 'timeoutlen' значение меньше 1000, может быть, 100 (но будьте осторожны при медленных соединениях).
Другой способ - использовать ^ C вместо ^ [, чтобы выйти из режима вставки.

3 голосов
/ 29 января 2010

Это происходит, если вы нажмете "O" сразу после клавиши Escape, верно? Я всегда предполагал, что это потому, что драйвер терминала немного ждал, чтобы увидеть, собираетесь ли вы выполнить escape-последовательность.

1 голос
/ 29 января 2010

Я подозреваю, что это когда вам нужно записать файл подкачки на диск. Убедитесь, что вы используете vim на компьютере с быстрым доступом к диску; если вам нужно использовать общую файловую систему, вы можете попробовать переместить файл подкачки, используя

:set directory=/path/to/local/dir
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...