Vim dla Windows - co mam wpisać, aby zapisać i wyjść z pliku?

265

W systemie Windows XP przypadkowo wpisałem git commit -azamiast git commit -am "My commit message", a teraz wyświetlam monit CMD wypełniony wersją pliku mojej wiadomości zatwierdzenia („Wprowadź wiadomość zatwierdzenia dla ...”). Dodałem moją wiadomość na górę, ale teraz nie mogę wymyślić, jak zapisać i wyjść. Próbowałem nacisnąć Ctrl+ W+ Q, ale to nic nie robi, ale dodaje, ^gdzie jest kursor.

Próbowałem też Escnajpierw, a potem Ctrl+ W+ Q, ale mówi No write since last change (add ! to override).

orokusaki
źródło
13
Och, to taka ulga, że ​​nie jestem jedyną, która utknęła w tym.
Tomáš Zato - Przywróć Monikę
1
Możliwy duplikat Jak wyjść z edytora Vima?
Peter Mortensen

Odpowiedzi:

515

Naciśnij, ESCaby upewnić się, że nie jesteś w trybie edycji, a następnie wpisz:

:wq
nunopolonia
źródło
6
@ User789 dla czegoś konkretnego lub ogólnie? Jeśli szukasz ogólnych poleceń, wypróbuj tę stronę: viemu.com/a_vi_vim_graphical_cheat_sheet_tutorial.html
nunopolonia
1
Naprawdę mogli dodać to jako komentarz, więc tysiące z nas nie zostało wysłanych z terminalu na trzy znaki !! Ale myślę, że nunopolonia jest zadowolona, ​​że ​​tego nie zrobili =)
Casey Murray
Pamiętaj, że jeśli masz wiele układów klawiatury i zapomniałeś, że nie masz angielskiego układu klawiatury , możesz utknąć i myśleć, że to nie działa. Mam nadzieję, że pomogłem komuś nie marnować czasu tak jak ja.
Djuka
3
Dzięki Bogu znalazłem to. Poważnie, nie zaszkodzi po prostu dodać ten jeden kierunek do ekranu komunikatu zatwierdzenia?
voidzero
52

Zamiast mówić, jak wykonać określone polecenie ( Esc:wq), mogę podać dwa łącza, które mogą pomóc w VIM:

Jednak najlepszym sposobem na naukę Vima jest nie tylko używanie go do Git commits, ale również jako zwykłego edytora do codziennej pracy.

Jeśli nie zamierzasz przestawić się na Vima, to nonsens, aby pamiętać o jego poleceniach. W takim przypadku skonfiguruj swojego ulubionego edytora do używania z Git .

eckes
źródło
+1 za tę naprawdę pomocną odpowiedź. Wolę Emacsa i dzięki Twojemu linkowi nie muszę szukać rozwiązania w Google.
Keks Dose
+1 za wyjaśnienie na temat VIM i jak skonfigurować własnego edytora
EdmundYeung99
Nauczenie, jak łowić ryby jest lepsze niż dawanie mu ryby do jedzenia. Dzięki.
matryca
Najlepszy sposób na odpowiedź na pytanie, które powinno być zadane. Thx
moemen.ahmed
Link HTML jest zepsuty.
Naxos84,
35

Escaby upewnić się, że wyjdziesz z trybu wstawiania, a następnie :wq(dwukropek wq) lub ZZ(shift-Z shift-Z).

efemeryczny
źródło
2
Ktoś inny zauważył, o ile Shift-Z Shift-Zjest to łatwiejsze od drugiego? A tak przy okazji, czy coś staje się mniej intuicyjne? O tak, jestem obywatelem Windows!
Ifedi Okonkwo
30
  • Naciśnij ilub, aaby przejść do trybu wstawiania i wpisz wybraną wiadomość

  • Naciśnij ESCkilka razy, aby wyjść z trybu wstawiania lub dowolnego innego trybu, na który przypadkowo natknąłeś się

    • zapisać :wq, :xlubZZ

    • wyjść bez zapisywania, :q!lubZQ

Aby ponownie załadować plik i cofnąć wszystkie dokonane zmiany ...:

Naciśnij kilka razy, ESCa następnie wprowadź :e!.

sjas
źródło
10

Szybsza droga do

  • Zapisać
  • i wyjdź

byłoby

:x

Jeśli otworzyłeś wiele plików, może być konieczne wykonanie

:xa
Fabian Schuh
źródło
Zauważ, że: x zapisze tylko te pliki, które uległy zmianie.
Simon Richter
5

:q! wymusi bezwarunkowe wyjście bez zapisywania

Marc B.
źródło
6
To powinien być komentarz. Jest to bardzo istotne, ale nie odpowiada na pytanie. Przeciwnie, mówi o poleceniu, które robi coś przeciwnego do tego, o co jest proszony. Istotna, ale nie odpowiedź
Rune FS
0

Posługiwać się:

:wq!

Wykrzyknik służy do zastępowania trybu tylko do odczytu.

Hedego
źródło