Câu trả lời:
Đọc tài liệu cho bufdo
, nó nên làm những gì bạn muốn.
set noconfirm
trước khi sử dụng bufdo
lệnh ( set confirm
sau đó để reanable).
bufdo e
tò mò để lại tất cả các bộ đệm không được tô sáng
Các :checkt[ime]
lệnh được thiết kế cho mục đích này rất.
Nó sẽ nhắc bạn tải lại bất kỳ bộ đệm nào đã thay đổi; nếu bạn muốn bỏ qua lời nhắc, bạn có thể thực hiện :set autoread
trước (bạn vẫn sẽ nhận được lời nhắc về bộ đệm với các thay đổi chưa được lưu cục bộ).
Nó cũng tránh vấn đề làm nổi bật cú pháp được đề cập bởi Steven Lu về câu trả lời được chấp nhận; :bufdo
tắt đánh dấu cú pháp theo thiết kế .
Tìm thấy qua: http://vim.1045645.n5.nabble.com/Bug-report-bufdo-e-breaking-syntax-highlighting-on-displayed-buffers-tp1209995p1209998.html
Từ :help autoread
:
Khi một tệp đã được phát hiện đã bị thay đổi bên ngoài Vim và nó không bị thay đổi bên trong Vim, hãy tự động đọc lại. Khi tập tin đã bị xóa, điều này không được thực hiện.
Nếu, giống như tôi, bạn chỉ muốn luôn luôn tải lại bộ đệm cũ nhưng chưa được sửa đổi, thì điều này có vẻ như nó sẽ hoàn thành công việc.
Tuy nhiên, chi tiết cuối cùng là khi vim thông báo bộ đệm cũ. Điều đó có thể bị ép buộc với checktime
. Nếu bạn có các sự kiện tập trung được thiết lập , thì chúng ta có thể chạy checktime
bất cứ khi nào chúng ta đạt được tiêu điểm như vậy:
set autoread
autocmd FocusGained * checktime
Câu trả lời này cũng có một số chi tiết thú vị.
Như @Matthew S đã đề cập ở đây https://vi.stackexchange.com/a/462 , bạn có thể sử dụng:
:set noconfirm
:bufdo !e
:set confirm