Vim для Windows - Что мне ввести, чтобы сохранить файл и выйти из него?

265

Используя Windows XP, я случайно набрал git commit -aвместо git commit -am "My commit message", и теперь я просматриваю приглашение CMD, заполненное версией файла моего сообщения о коммите («Пожалуйста, введите сообщение о коммите для вашего ...»). Я добавил свое сообщение в начало, но теперь не могу понять, как сохранить и уйти. Я пытался нажать Ctrl+ W+ Q, но это ничего не делает, но добавляет, ^где находится курсор.

Я также попытался Escпервым, а затем Ctrl+ W+ Q, но он говорит No write since last change (add ! to override).

orokusaki
источник
13
О, это такое облегчение, что я не единственный, кто застрял в этом.
Томаш Зато - Восстановить Монику
1
Возможный дубликат Как выйти из редактора Vim?
Питер Мортенсен

Ответы:

515

Нажмите, ESCчтобы убедиться, что вы вышли из режима редактирования, а затем введите:

:wq
nunopolonia
источник
6
@ User789 для чего-то конкретного или вообще? Если вы ищете общие команды, попробуйте этот веб-сайт: viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
nunopolonia
1
Они действительно могли бы добавить это в качестве комментария, чтобы тысячи из нас не были отправлены из терминала для трех персонажей !! Но я думаю, что nunopolonia рада, что они этого не сделали =)
Кейси Мюррей,
Имейте в виду, что если у вас несколько раскладок клавиатуры и вы забыли, что не используете раскладку на английском языке , вы можете застрять и подумать, что это не сработает. Надеюсь, я помог кому-то не тратить время, как я.
Джука
3
Слава богу, я нашел это. Серьезно, не мешало бы просто добавить этот кусочек направления на экран сообщения ввода фиксации ??
voidzero
52

Вместо того, чтобы рассказать вам, как вы можете выполнить определенную команду ( Esc:wq), я могу предоставить вам две ссылки, которые могут помочь вам с VIM:

Однако лучший способ изучить Vim - это не только использовать его для коммитов Git, но и как обычный редактор для вашей повседневной работы.

Если вы не собираетесь переключаться на Vim, то не стоит забывать о его командах. В этом случае перейдите и настройте свой любимый редактор для использования с Git .

Экес
источник
+1 за этот действительно полезный ответ. Я предпочитаю Emacs, и благодаря вашей ссылке мне не нужно искать решение в Google.
Кекс Доза
+1 за объяснение VIM и как настроить мой собственный редактор
EdmundYeung99
Научить ловить рыбу лучше, чем давать ему рыбу. Спасибо.
матрица
Лучший способ ответить на вопрос, который должен был быть задан. Thx
moemen.ahmed
HTML-ссылка не работает.
Naxos84
35

Escчтобы выйти из режима вставки, затем :wq(двоеточие wq) или ZZ(shift-Z shift-Z).

ephemient
источник
2
Кто-нибудь еще заметил, насколько это проще, Shift-Z Shift-Zчем другой? И, кстати, что-нибудь становится менее интуитивным? Ах да, я гражданин Windows!
Ифеди Оконкво
30
  • Нажмите iили, aчтобы войти в режим вставки, и введите сообщение выбора

  • Нажмите ESCнесколько раз, чтобы выйти из режима вставки или любого другого режима, в который вы могли случайно войти

    • для сохранения, :wq, :xилиZZ

    • выйти без сохранения :q!илиZQ

Чтобы перезагрузить файл и отменить все внесенные изменения ...:

Нажмите несколько раз, ESCа затем введите :e!.

sjas
источник
10

Более быстрый способ

  • Сохранить
  • и выйти

было бы

:x

Если вы открыли несколько файлов, вам может понадобиться

:xa
Фабиан Шух
источник
Обратите внимание: x будет записывать только файлы, которые были изменены.
Саймон Рихтер
5

:q! вызовет безусловный выход без сохранения

Марк Б
источник
6
Это должен быть комментарий. Это очень актуально, но не отвечает на вопрос. Напротив, он говорит о команде, которая делает противоположное тому, что просят. Соответствующий, но не ответ
Rune FS
0

Использование:

:wq!

Восклицательный знак используется для переопределения режима только для чтения.

Hedego
источник