Nie mogę wyjść z vima nawet podczas pisania :q!
. Dostaję błąd
E37: No write since last change (add ! to override)
E162: No write since last change for buffer...
Myślę, że bufor jest tylko do odczytu NetrwTreeListing.
Aby trwale rozwiązać ten problem z netrw, dodałem to do mojego .vimrc
:
" Per default, netrw leaves unmodified buffers open. This autocommand
" deletes netrw's buffer once it's hidden (using ':q', for example)
autocmd FileType netrw setl bufhidden=delete
Od Tima Pope'a .
Zwykle dzieje się tak, jeśli są zmodyfikowane dwa lub więcej buforów, a Vim zwykle przełącza się między nimi i wyświetla komunikat o błędzie. Kiedy więc :q!
przerwie bieżący bufor, nie przerwie on drugiego zmodyfikowanego bufora, dlatego Vim chroni cię przed utratą zmian i wyświetla ten komunikat o błędzie.
Jeśli masz absolutną pewność, chcesz przerwać wszystkie modyfikacje wszystkich załadowanych buforów, po prostu użyj:qa!
Próbować
:bdelete!
lub
:bd!
w skrócie. Oznacza to „usunięcie bufora” i zamknie otwarty bufor. (Podziękowania dla Emila Asmussena )
Po tym powinieneś być w stanie zrobić :q!
normalnie.