Bagaimana saya keluar dari Vi?


81

Saya memulai Vi di mesin Ubuntu saya. Namun saya baru mengenal Vi, dan sekarang saya tidak bisa berhenti. Saya melihat editor dan saya bisa menulis teks, di baris paling bawah ada label "rekaman".

Bagaimana saya keluar dari Vi?


1
"Rekaman" omong-omong berarti Anda merekam makro. Bukan berarti itu tidak penting lagi.
frabjous

4
Pertanyaan ini mengembalikan kenangan "menyenangkan" seperti itu. Saya sangat senang bisa melupakan perasaan itu.
frabjous

Bagaimana kita bisa kembali dalam mode penyisipan dari mode hanya baca di Linux (Ubuntu di VMware diinstal) VI Editor?

2
Berhenti Vim telah menjadi meme sekarang.
noɥʇʎԀʎzɐɹƆ

2
Bagi mereka yang belum melihat lelucon itu: twitter.com/iamdevloper/statuses/435555976687923200
Federico Poloni

Jawaban:


91

vim adalah editor modal . Tekan ESCtombol untuk masuk ke mode Normal (perintah) lalu ketik :qdan tekan Enter.

Untuk berhenti tanpa menyimpan perubahan apa pun, ketik :q!dan tekan Enter.

Lihat juga Keluar dalam dokumentasi Vim.


9
Terima kasih: Aku mencoba itu perintah, tapi setelah berjalan mereka saya diminta dengan: E37: No write since last change (add ! to override). Saya tidak punya apa-apa untuk diselamatkan.
Jonas

12
Gunakan :wqjika Anda ingin menyimpan apa yang telah Anda edit dan kemudian keluar. :q!jika Anda ingin keluar dan tinggalkan perubahan Anda.
Steven D

Atau jika Anda telah menulis sesuatu yang ingin Anda buat salinannya :w newFileName.txt,, lalu pilah masalah baca-saja di luar vi atau vim .
Kevin Cantu

5
berhenti :q; berhenti secara paksa :q!; keluar dan simpan :wqatau:x
fromnaboo

2
@Jonas, lain kali coba :qall!, saya curiga Anda telah membuka lebih banyak file dalam satu buffer tunggal.
Alan Dong

11

Saya menggunakan ctrl+ [untuk menghasilkan escurutan, ini membuat saya tidak harus memindahkan jari-jari saya dari baris rumah (ingat esckuncinya ada di tempat yang berbeda ketika viditemukan. :wqAkan menulis semua file terlepas dari kebutuhan. Saya sarankan menggunakan ZZ(yaitu shift+ zdua kali ) yang hanya akan menulis jika ada perubahan dalam file tersebut. Juga :xasama dengan ZZkecuali jika Anda memiliki lebih dari 1 file yang terbuka dalam instance editor (seperti tab vim). catatan: Saya tidak yakin semua ini 100% kompatibel dengan semua klon vi, tapi saya tahu ini berfungsi dengan vim


1
Terima kasih. The ZZperintah tampaknya berguna. Saya dapat mengerti intinya dengan Ctrl+[tetapi saya menggunakan tata letak keyboard Swedia dan saya harus menekan AltGr+8untuk mendapatkan [itu Ctrl+AltGr+8bagi saya :(
Jonas

Catatan ZQjuga secara efektif sama dengan :q!. Namun, ini bukan standar. ZZ, Di sisi lain, adalah ditentukan dalam POSIX .
Wildcard

4

Berhenti dari vi adalah cara lain Esc :x.

Opsi ini digunakan untuk menyimpan dan keluar pada saat yang sama.


2
Perhatikan bahwa suka ZZ, :xakan menulis file hanya jika isinya telah berubah, tidak seperti :wq.
jlliagre

2

Seperti yang dikatakan Sinan, vim adalah editor modal. Jika Anda ingin tahu apakah itu cocok untuk Anda, Anda mungkin harus menginvestasikan waktu dan menjalankan vimtutoryang merupakan cara interaktif untuk belajar vim. (Ini juga mencakup cara keluar, apa arti mode dan apa yang dapat Anda lakukan di setiap mode).


-2

Setelah modifikasi, silakan tekan ESCdan perintah yang diberikan :wq!.

Ini akan dengan paksa menulis modifikasi baru pada file read-only. Sebelumnya itu tidak berfungsi karena file hanya-baca.


1
Mengapa Anda menjawab pertanyaan dari 4 tahun yang lalu, dengan pada dasarnya pengulangan dari jawaban teratas? Itu salah pula: ini tidak akan memaksa menulis file read-only - itu akan mencoba untuk menulis, mungkin gagal, dan kemudian akan memaksa berhenti tanpa menyimpan.
Chris

Saya mencoba dengan komentar sebelumnya dan tidak berhasil. Saya pikir akan bermanfaat untuk membagikan apa yang telah saya lakukan. Tidak penting ketika pertanyaan diposting, tetapi apakah solusinya berlaku atau tidak.
Arif A.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.