Uruchomiłem Vi na moim komputerze z Ubuntu. Jednak jestem nowy w Vi i teraz nie mogę wyjść. Widzę edytor i mogę pisać tekst, w dolnej linii jest etykieta „nagrywanie”.
Jak wyjść z Vi?
Komentarze
- Nagranie " " autorstwa sposób oznaczał, że nagrywasz makro. To już nie ma znaczenia.
- To pytanie przywraca taką " zabawę " wspomnienia. Ja ' cieszę się, że jednak przezwyciężyłem to uczucie.
- Rzucenie Vima stało się teraz memem.
- Dla tych, którzy jeszcze ' nie widzieli tego żartu: twitter.com/iamdevloper/statuses/435555976687923200
- Przepełnienie stosu: pomoc milionowi programistów w wyjściu z Vima , Jak wyjść z edytora Vima ? , Jak wyjść z pomocy w vimie
Odpowiedz
vim jest edytorem modalnym . Naciśnij klawisz ESC , aby przejść do trybu Normalny (polecenie), a następnie wpisz : q i naciśnij klawisz Enter .
Aby wyjść bez zapisywania zmian, wpisz : q! i naciśnij Enter .
Zobacz także Wychodzenie w dokumentacji Vima.
Komentarze
- Dzięki: próbowałem tych poleceń, ale po ich uruchomieniu został wyświetlony monit:
E37: No write since last change (add ! to override)
. Nie mam nic do zapisania. - Użyj
:wq
, jeśli chcesz zapisać to, co edytowałeś, a następnie wyjść.:q!
, jeśli chcesz wyjść i zostawić zmiany. - Lub jeśli ' napisałeś coś, co chcesz aby utworzyć kopię
:w newFileName.txt
, a następnie uporządkuj problem tylko do odczytu poza vi lub vim . - zakończ
:q
; wymuś zakończenie:q!
; wyjdź i zapisz:wq
lub:x
- @Jonas, następnym razem spróbuj
:qall!
, podejrzewam, że otworzyłeś więcej plików w jednym buforze.
Odpowiedź
Używam ctrl + [ aby wygenerować sekwencję esc , dzięki temu nie muszę ruszać palcami z głównego wiersza (pamiętaj o esc był w innym miejscu, kiedy wynaleziono vi
. :wq
zapisze wszystkie pliki bez względu na konieczność. Sugeruję użycie ZZ
(czyli dwukrotnie shift + z ), który zapisze tylko wtedy, gdy w pliku wprowadzono zmianę. Ponadto :xa
to to samo co ZZ
, z wyjątkiem sytuacji, gdy masz więcej niż 1 plik otwarty w instancji edytora (np. zakładki vim). uwaga: Nie jestem pewien, czy to wszystko jest w 100% zgodne ze wszystkimi klonami vi, ale wiem, że działa z vimem
Komentarze
- Dzięki. Polecenie
ZZ
wydaje się być przydatne. Widzę sens zCtrl+[
, ale ' używam szwedzkiego układu klawiatury i muszę nacisnąćAltGr+8
, aby uzyskać[
, czyliCtrl+AltGr+8
dla mnie 🙁 - Zwróć też uwagę na
ZQ
to właściwie to samo, co:q!
. Nie jest to jednak standardowe.ZZ
na z drugiej strony jest określony w POSIX .
Odpowiedź
Wyjście z vi to inny sposób: Esc : x .
Ta opcja jest używana aby zapisać i wyjść jednocześnie.
Komentarze
- Zwróć uwagę, że podobnie jak
ZZ
,:x
zapisze plik tylko wtedy, gdy jego zawartość uległa zmianie, w przeciwieństwie do:wq
.
Odpowiedź
Jak powiedział Sinan, vim jest edytorem modalnym. Jeśli chcesz wiedzieć, czy to działa, może poświęć trochę czasu i uruchom vimtutor
, który jest interaktywnym sposobem nauki vima. (Opisuje również, jak wyjść, co oznaczają tryby i co możesz zrobić w każdym trybie).
Odpowiedz
Po modyfikacji, naciśnij ESC i podaną komendę :wq!
.
Spowoduje to wymuszenie zapisania nowej modyfikacji w pliku tylko do odczytu. Wcześniej to nie działało, ponieważ plik jest tylko do odczytu.
Komentarze
- Dlaczego odpowiadasz na pytanie sprzed 4 lat, zasadniczo powtórzyć najlepszą odpowiedź?To ' i tak jest źle: to nie ' nie wymusza zapisu pliku tylko do odczytu – spróbuje zapisać, może się nie powieść i wtedy wymusi zakończenie bez zapisywania.
- Próbowałem z poprzednimi komentarzami i nie działało. Pomyślałem, że warto podzielić się tym, co zrobiłem. Nie jest ważne, kiedy pytanie zostało opublikowane, ale czy rozwiązania mają zastosowanie, czy nie.
Odpowiedź
spróbuj kombinacji control i Z
Komentarze
- To pozostawi vi w tle;