Jak wyjść z Vi?

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

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 z Ctrl+[, ale ' używam szwedzkiego układu klawiatury i muszę nacisnąć AltGr+8, aby uzyskać [, czyli Ctrl+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;

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *