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).


13
Och, to taka ulga, że ​​nie jestem jedyną, która utknęła w tym.
Tomáš Zato - Przywróć Monikę

Odpowiedzi:


515

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

:wq

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 .


+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).


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!.


10

Szybsza droga do

  • Zapisać
  • i wyjdź

byłoby

:x

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

:xa

Zauważ, że: x zapisze tylko te pliki, które uległy zmianie.
Simon Richter

5

:q! wymusi bezwarunkowe wyjście bez zapisywania


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.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.