3

Есть ли способ автоматически выйти из режима вставки, когда MacVim находится в фоновом режиме, поэтому, когда я вернулся, он в обычном режиме?

Часто я меняю главное приложение, и когда я возвращаюсь в MacVim, я вижу, как вставляю множество букв «j» и «k». Лучше было бы привыкнуть к прессе, но это спасет некоторые штрихи, особенно при работе на веб-сайте, который требует много редактирования / обновления.

1 ответ1

2

процитировать https://stackoverflow.com/questions/2968548/vim-return-to-command-mode-when-focus-is-lost:

Следующая автокоманда будет "очевидным" выбором.

au FocusLost,TabLeave * stopinsert

К сожалению, похоже, что он работает правильно только для TabLeave. Событие FocusLost срабатывает, но по какой-то причине команда stopinsert фактически не действует до тех пор, пока не получено ключевое событие, как только Vim восстановит фокус.

Вместо этого, вы можете воспользоваться кормовыми клавишами и «Перевести меня в нормальный режим, несмотря ни на что!"ключ комбо:

au FocusLost,TabLeave * call feedkeys("\<C-\>\<C-n>")

Единственным недостатком является то, что feedkeys() требует как минимум Vim 7. Это не должно иметь большого значения, так как Vim7 был выпущен еще в 2006 году.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .