Perintah untuk menyegarkan file dari versi di disk adalah :e!
Bagaimana saya bisa melakukan hal yang sama untuk semua file di buffer?
Latar belakang: Saya membutuhkannya karena saya menggunakan git dengan banyak cabang dengan satu vim terbuka yang berisi buffer. Saat saya melakukan pembayaran di cabang, saya ingin mendapatkan penyegaran vim.
set noconfirm
sebelum menggunakanbufdo
perintah (set confirm
setelah itu dapat digunakan kembali).bufdo e
anehnya meninggalkan semua buffer tidak disorot sintaksThe
:checkt[ime]
perintah dirancang untuk tujuan ini.Ini akan meminta Anda untuk memuat ulang semua buffer yang telah berubah; jika Anda ingin melewatkan prompt, Anda dapat melakukannya
:set autoread
sebelumnya (Anda masih akan mendapatkan prompt tentang buffer dengan perubahan lokal yang belum disimpan).Ini juga menghindari masalah penyorotan sintaks yang disebutkan oleh Steven Lu pada jawaban yang diterima;
:bufdo
mematikan penyorotan sintaks menurut desain .Ditemukan melalui: http://vim.1045645.n5.nabble.com/Bug-report-bufdo-e-breaking-syntax-highlighting-on-displayed-buffers-tp1209995p1209998.html
sumber
Inilah yang akhirnya saya masukkan ke .vimrc saya:
sumber
Dari
:help autoread
:Jika, seperti saya, Anda hanya ingin selalu memuat ulang buffer yang sudah basi-tapi-tidak diubah secara pasif , maka sepertinya ini harus menyelesaikan pekerjaan.
Namun detail terakhirnya adalah ketika vim memperhatikan buffer yang sudah lama. Itu bisa dipaksakan
checktime
. Jika Anda telah menyiapkan acara fokus , maka kami dapat menjalankannyachecktime
kapan pun kami mendapatkan fokus seperti:Jawaban ini juga memiliki beberapa detail menarik.
sumber
Seperti yang Disebutkan @Matthew S di sini https://vi.stackexchange.com/a/462 , Anda dapat menggunakan:
sumber