Polecenie odświeżania pliku z wersji na dysku to :e!
Jak mogę zrobić to samo dla wszystkich plików w buforze?
Tło: potrzebuję tego, ponieważ używam git z wieloma gałęziami z jednym otwartym vimem, który zawiera bufor. Kiedy sprawdzam oddział, chciałbym odświeżyć vim.
set noconfirm
przed użyciembufdo
polecenia (set confirm
później, aby ponownie naprawić).bufdo e
co ciekawe, wszystkie bufory nie są podświetlone:checkt[ime]
Polecenie jest przeznaczone do tego samego celu.Wyświetli monit o ponowne załadowanie wszystkich zmienionych buforów; jeśli chcesz pominąć monit, możesz to zrobić
:set autoread
wcześniej (nadal będziesz otrzymywać monit o buforach z lokalnymi niezapisanymi zmianami).Unika również kwestii podkreślania składni, o której wspomniał Steven Lu w zaakceptowanej odpowiedzi;
:bufdo
wyłącza podświetlanie składni według projektu .Znalezione przez: http://vim.1045645.n5.nabble.com/Bug-report-bufdo-e-breaking-syntax-highlighting-on-displayed-buffers-tp1209995p1209998.html
źródło
Oto, co ostatecznie umieściłem w moim .vimrc:
źródło
Od
:help autoread
:Jeśli, tak jak ja, chcesz zawsze biernie ponownie ładować stare, ale niezmodyfikowane bufory, to wydaje się, że powinno to wykonać zadanie.
Jednak ostatni szczegół jest wtedy, gdy vim zauważy nieaktualny bufor. Można to wymusić
checktime
. Jeśli masz skonfigurowane zdarzenia fokusowe , możemy je uruchomić,checktime
gdy tylko się skupimy:Ta odpowiedź zawiera również kilka interesujących szczegółów.
źródło
Jak @Matthew S wspomniano tutaj https://vi.stackexchange.com/a/462 , możesz użyć:
źródło