Często ładuję informacje do tymczasowego bufora, a następnie zamykam je :clo!
. Ale to ukrywa bufor zamiast całkowicie go rozładowywać, mimo że nohidden
ustawiłem. Uważam to za męczące, ponieważ po wyjściu z Vima otrzymuję dodatkowe potwierdzenie dotyczące treści, które już (myślałem) odrzuciłem.
Mógłbym po prostu użyć :q!
zamiast tego, ale jest to zły nawyk, aby się w niego wpakować, ponieważ całkowicie opuści on Vima, jeśli pozostanie tylko jeden bufor, co również jest denerwujące. Gorzej, gdybym popełnił literówkę :qa!
, mógłbym stracić dużo pracy.
Czy jest środek ziemi? Naprawdę chciałbym jakieś polecenie, które zabija bieżący bufor, ale nie wychodzi z Vima. Nie jestem przeciwny pisaniu go w Vimscript, ale wolałbym go unikać, jeśli polecenie już istnieje.
źródło
:ls
jest łatwiejszy do zapamiętania (imo) i robi to samo, co:buffers
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:
Oto kilka innych przydatnych poleceń bufora:
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
źródło
:bd
jest to preferowane w większości przypadków:bw
robi poza „Utracono wszystko związane z buforem. Wszystkie znaczniki w tym buforze tracą ważność, ustawienia opcji zostają utracone itp.” Wydaje mi się to całkowicie rozsądne, jeśli chcę „zamknąć” bufor, tak jak byłoby, gdybym całkowicie opuścił Vima.