Jak wyjść z Vi?


81

Uruchomiłem Vi na moim komputerze Ubuntu. Jednak jestem nowy w Vi i teraz nie mogę zrezygnować. Widzę edytor i mogę pisać tekst, w dolnym wierszu znajduje się etykieta „nagranie”.

Jak wyjść z Vi?


1
Nawiasem mówiąc, „nagrywanie” oznaczało, że rejestrujesz makro. To już nie ma znaczenia.
frabjous

4
To pytanie przywraca takie „zabawne” wspomnienia. Cieszę się jednak, że przeszedłem to uczucie.
frabjous

Jak możemy wrócić w trybie wstawiania z trybu tylko do odczytu w systemie Linux (zainstalowany Ubuntu w VMware) VI Editor?

2
Rezygnacja z Vima stała się teraz memem.
noɥʇʎԀʎzɐɹƆ

2
Dla tych, którzy jeszcze nie widzieli tego żartu: twitter.com/iamdevloper/statuses/435555976687923200
Federico Poloni

Odpowiedzi:


91

vim to edytor modalny . Naciśnij ESCklawisz, aby przejść do trybu normalnego (polecenia), a następnie wpisz :qi naciśnij Enter.

Aby wyjść bez zapisywania zmian, wpisz :q!i naciśnij Enter.

Zobacz także Wydostawanie się z dokumentacji Vima.


9
Dzięki: Próbowałem tego polecenia, ale po ich prowadzenia byłem poproszony o: E37: No write since last change (add ! to override). Nie mam nic do zapisania.
Jonas,

12
Użyj, :wqjeśli chcesz zapisać to, co edytowałeś, a następnie wyjdź. :q!jeśli chcesz wyjść i zostawić swoje zmiany za sobą.
Steven D,

Lub jeśli napisałeś coś, co chcesz skopiować :w newFileName.txt, rozwiąż problem tylko do odczytu poza vi lub vim .
Kevin Cantu,

5
rzucić :q; zmusić do rezygnacji :q!; wyjdź i zapisz :wqlub:x
fromnaboo

2
@Jonas, następnym razem :qall!podejrzewam, że masz więcej plików w jednym buforze.
Alan Dong

11

Używam ctrl+ [do generowania escsekwencji, dzięki czemu nie muszę ruszać palcami z rzędu domowego (pamiętaj, że escklucz vizostał wynaleziony w innym miejscu, kiedy został wymyślony. :wqZapisze wszystkie pliki bez względu na konieczność. Sugeruję użycie ZZ(co jest shift+ zdwa razy ), który napisze tylko, jeśli w pliku dokonano zmiany. :xaJest to również to samo, ZZz wyjątkiem tego, że w instancji edytora otwartych jest więcej niż 1 plik (np. karty vim). Uwaga: Nie jestem pewien, czy to wszystko 100% kompatybilny ze wszystkimi klonami vi, ale wiem, że działa z vimem


1
Dzięki. ZZPolecenia wydaje się być przydatna. Rozumiem o co chodzi, Ctrl+[ale używam szwedzkiego układu klawiatury i muszę nacisnąć, AltGr+8aby uzyskać, [więc byłoby to Ctrl+AltGr+8dla mnie :(
Jonas

Uwaga ZQjest również w rzeczywistości taka sama jak :q!. Nie jest to jednak standard. ZZz drugiej strony jest określony w POSIX .
Wildcard,

4

Wyjście z vi to inny sposób Esc :x.

Opcja służy do jednoczesnego zapisywania i wychodzenia.


2
Zauważ, że like ZZ, :xzapisze plik tylko, jeśli jego zawartość uległa zmianie, w przeciwieństwie do :wq.
jlliagre

2

Jak powiedział Sinan, vim jest edytorem modalnym. Jeśli chcesz wiedzieć, czy to działa, powinieneś zainwestować trochę czasu i uruchomić, vimtutorktóry jest interaktywnym sposobem nauki vima. (Obejmuje również sposób wyjścia, co oznaczają tryby i co można zrobić w każdym trybie).


-2

Po modyfikacji naciśnij ESCi podane polecenie :wq!.

Spowoduje to wymuszenie zapisania nowej modyfikacji w pliku tylko do odczytu. Wcześniej nie działało, ponieważ plik jest tylko do odczytu.


1
Dlaczego odpowiadasz na pytanie sprzed 4 lat, w zasadzie powtarzając najlepszą odpowiedź? I tak jest źle: to nie wymusi zapisu pliku tylko do odczytu - spróbuje zapisać, może się nie powieść, a następnie wymusi zakończenie bez zapisywania.
Chris,

Próbowałem z poprzednimi komentarzami i to nie działało. Pomyślałem, że warto podzielić się tym, co zrobiłem. Nie ma znaczenia, kiedy pytanie zostało opublikowane, ale czy rozwiązania mają zastosowanie, czy nie.
Arif A.

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.