Mengapa vim meninggalkan versi file sementara di semua tempat?

9

Pertama-tama saya menganggap file-file yang diakhiri dengan "~" yang dibuat oleh vim saat mengedit file memang melayani tujuan cadangan sementara saat mengedit.

Tetapi setiap kali saya membuka file dengan vim dan menutupnya (: wq) saya kemudian menemukan file seperti itu ~. Mengapa vim tidak dibersihkan? Saya berasumsi ada sesuatu yang tidak dikonfigurasi dengan benar.

Raffael
sumber
2
Itu bukan file cadangan sementara; mereka adalah versi file sebelumnya. Dalam direktori di bawah kontrol versi mereka cenderung menjadi gangguan.
Thorbjørn Ravn Andersen

Jawaban:

19

Anda dapat menonaktifkan file cadangan yang menempatkan baris ini di file vimrc Anda:

mengatur nobackup

Tetapi jika Anda masih ingin membuat cadangan file Anda, pusatkan ke direktori dengan:

atur backupdir = ~ / tmp

sebagai contoh.

periket2000
sumber
1
terima kasih - tetapi apakah ini benar-benar perilaku yang dimaksudkan? Maksud saya bahkan ketika saya tidak mengubah apa pun dalam file file-file tersebut dibuat dan tetap setelah menutup vim. Saya berasumsi (secara intuitif) bahwa vim harus dapat menyingkirkan file-file itu ketika menutup !? Saya tidak ingin menonaktifkannya karena mungkin berguna ketika vim crash. Solusi backupdir tampaknya merupakan kompromi yang baik
Raffael
Iya; Mereka adalah file cadangan; perilaku default adalah membuat file cadangan tersebut.
Ramhound
Яaffael, backupopsi tidak aktif secara default, Anda harus membaca dokumen sebelum mengaktifkan opsi.
romainl
2
@ Яaffael .swpFile-file ini digunakan ketika vim crash, bukan backup
Izkata
1
File cadangan dibuat saat Anda menulis file. Jika Anda belum mengubah apa pun, mengapa Anda menulisnya? Jika Anda hanya terbiasa melakukan :wmungkin Anda bisa melakukan :upsebaliknya yang hanya akan menyimpan jika ada perubahan.
Ben
5

Pertama-tama saya menganggap file-file tersebut [...] memang melayani tujuan backup sementara saat mengedit.

Tidak. Ini adalah cadangan non- sementara yang dibuat saat menyimpan .

File sementara yang dibuat saat mengedit adalah (pada platform yang mirip UNIX) bernama .wibble.swp(untuk file bernama wibble).

: bantuan cadangan
dengan vimsendirinya memberi Anda gen pada yang pertama, termasuk aturan kapan file cadangan dibuat dan kapan tidak.
: bantu swap
memberi Anda gen pada yang terakhir.

JdeBP
sumber
1) apa arti "gen"? 2) tujuan apa yang dilayani oleh cadangan non-sementara itu?
Raffael
2
Dengan tautan itu, Anda memaksa pembaca untuk melihat definisi sampai orang masuk akal. Mengapa tidak mengatakannya sebagai dunia informal untuk "informasi"?
Andrew Cheong