Możesz całkowicie wyczyścić bufor, używając polecenia: bwipeout (lub: bw). To całkowicie usuwa bufor z pamięci, w tym wszelkie dodane do niego znaki, ustawienia opcji itp. Podobnie:: bdelete (lub: bd) usuwa bufor, ale pozostawia go w pamięci i zachowuje znaczniki oraz ustawienia opcji.
Zgodnie z komentarzem Toma Hale'a, dokumentacja Vima zaleca użycie: bd ponad: bw, chyba że wiesz, co robisz. Zwykle używam: bw, ponieważ podobnie jak pomysł całkowitego usunięcia bufora z pamięci, i nie używam znaczników, ustawień opcji specyficznych dla bufora itp., Do tego stopnia, że muszę je pozostać po zamknięciu bufora.
Podobnie jak polecenie: quit (: q), Vim wyświetli błąd, jeśli bufor się zmieni. Aby rozwiązać ten problem, możesz dodać wykrzyknik po poleceniu, aby wyłączyć monit. Inną opcją, zamiast dodawania wykrzykników do wszystkiego, jest dodanie „ustaw potwierdzenie” do vimrc. Z tym zestawem vim wyświetli monit o zapisanie zmian pliku przy zamknięciu.
: bufdo to przydatne polecenie, które wykonuje inne polecenie na wszystkich aktywnych buforach. Połączenie polecenia: bufdo z poleceniem: bw /: bd pozwala usunąć wszystkie aktywne bufory na raz. Nadal możesz używać wykrzyknika, aby ukryć błędy, ale to, czy umieścisz go po: bufdo, po: bw, czy po obu powoduje różne wyniki dla każdego z nich:
:bd - deletes the current buffer, error if there are unwritten changes
:bd! - deletes the current buffer, no error if unwritten changes
:bufdo bd - deletes all buffers, stops at first error (unwritten changes)
:bufdo! bd - deletes all buffers except those with unwritten changes
:bufdo! bd! - deletes all buffers, no error on any unwritten changes
:bw - completely deletes the current buffer, error if there are unwritten changes
:bw! - completely deletes the current buffer, no error if unwritten changes
:bufdo bw - completely deletes all buffers, stops at first error (unwritten changes)
:bufdo! bw - completely deletes all buffers except those with unwritten changes
:bufdo! bw! - completely deletes all buffers, no error on any unwritten changes
:set confirm - confirm changes (Yes, No, Cancel) instead of error
Oto kilka innych przydatnych poleceń bufora:
:ls - list open buffers
:b N - open buffer number N (as shown in ls)
:tabe +Nbuf - open buffer number N in new tab
:bnext - go to the next buffer (:bn also)
:bprevious - go to the previous buffer (:bp also)
Obsługa bufora nie ogranicza się do zakresu tego pytania. Zobacz:
http://vim.wikia.com/wiki/Vim_buffer_FAQ
http://vimdoc.sourceforge.net/htmldoc/windows.html#buffers