VIM for Windows - What do I type to save and exit

2019-01-20 21:26发布

问题:

Using WinXP I accidentally typed git commit -a instead of git commit -am "My commit message", and now I'm viewing my CMD prompt filled with the file version of my commit message ("Please enter the commit message for your..."). I've added my message to the top, but now I can't figure out how to save and leave. I tried to press CTRL + W + Q, but it doesn't do anything but add ^ where the cursor is.

I also tried esc first, and then CTRL + W + Q, but it says No write since last change (add ! to override).

回答1:

Press ESC to make sure you are out of the edition mode and then type:

:wq


回答2:

Instead of telling you how you could execute a certain command (ESC:wq), I can provide you two links that may help you with VIM:

  • http://bullium.com/support/vim.html provides a HTML quick reference card
  • http://tnerual.eriogerg.free.fr/vim.html provides a PDF quick reference card in several languages, optimized for print-out, fold and put on your desk drawer

However, the best way to learn VIM is not only using it for Git commits but as regular editor for your everyday work.

If you're not going to switch to VIM, it's nonsense to keep it's commands in mind. In that case, go and set up your favourite editor to use with Git.



回答3:

Esc to make sure you exit insert mode, then :wq (colon w q) or ZZ (shift-Z shift-Z).



回答4:

  • Press i or a to get into Insert mode, type message of choice

  • press several times ESC to get out of Insert-Mode, or any other mode you might have ran into by accident

    • to save, :wq, :x or ZZ

    • to exit without saving, :q! or ZQ

EDIT:
To reload a file and undo all changes you have made...
Press several times ESC and then enter :e!.



回答5:

A faster way to

  • Save
  • and quit

would be

:x

If you have opened multiple files you may need to do a

:xa


回答6:

:q! will force an unconditional no-save exit



回答7:

    :wq!

The exclamation mark is used for overriding read only mode.