Как выйти из VIM при выполнении меркуриального коммита в командной строке? - PullRequest
26 голосов
/ 29 июня 2010

Я на Mac под управлением Snow Leopard.У меня установлен Mercurial 1.1.

После того, как я нажал "esc", чтобы выйти из режима вставки, я не могу понять, как сохранить и выйти.Нажатие клавиши control + c показывает мне инструкции, в которых написано, что «quit» напишет и выйдет, но, похоже, это не сработает.

Ответы [ 5 ]

44 голосов
/ 29 июня 2010

:q[uit] выходит.

:w[rite] сохраняет.

:wq является ярлыком для обоих

:!command запускает команду в оболочке (вы можете использовать ее для фиксации, не покидая vim)

23 голосов
/ 30 июня 2010

Также полезно знать, что

:q!

выходит из vi без сохранения, и Mercurial интерпретирует это как отказ от регистрации. Это может быть полезно, если вы редактируете сообщение коммита и вдруг понимаете, что вам нужно сделать что-то еще.

10 голосов
/ 29 июня 2010

После того как вы нажмете «Esc», чтобы выйти из режима вставки, вы также можете набрать «ZZ», который запишет ваш файл на диск и выйдет.

2 голосов
/ 09 октября 2015

В моем случае VIM говорит мне: --INSERT-- recording. Нажатие ESC дает звук «ошибка» на Mac. Ввод любого вида команды не имеет никакого эффекта. Я не хочу выходить из всего терминала. Просто ВИМ. - Кокодоко 25 мая в 11: 05

У меня была такая же проблема, но она работала для меня (я на Mac, если это делает какой-либо различий).

  1. на VIM прессе esc
  2. type : - это приведет вас к приглашению внизу терминала.
  3. введите q!, затем нажмите enter.

Это должно вывести вас из Vim без сохранения.

Какая боль в заднице.

0 голосов
/ 17 сентября 2015

Верхний ответ правильный. Для тех из вас, кто похож на меня и нуждается в более подробном описании шагов:

Если он показывает --Insert-- и вы не можете понять, как из него выйти, сначала нажмите Esc один раз , затем наберите :w, чтобы сохранить, :q, чтобы выйти без сохраняя, :wq, чтобы сделать оба, затем нажмите Enter. Мне пришлось сделать :wq, чтобы полностью выйти из файла и вернуться в командную строку.

* ПРИМЕЧАНИЕ. Вы должны ввести ':'.

...