Vim kann auch mit q nicht beendet werden!


14

Ich kann vim nicht verlassen, auch wenn ich tippe :q!. Ich bekomme den Fehler

E37: No write since last change (add ! to override)
E162: No write since last change for buffer...

Ich denke, der Puffer ist ein NetrwTreeListing readonly.

Antworten:


11

Um dieses Problem dauerhaft mit netrw zu lösen, fügte ich Folgendes hinzu .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

Von Tim Papst .


6

Dies ist normalerweise der Fall, wenn zwei oder mehr Puffer geändert wurden und Vim normalerweise zwischen diesen umschaltet und die Fehlermeldung anzeigt. Wenn also :q!der aktuelle Puffer abgebrochen wird, wird der andere geänderte Puffer nicht abgebrochen. Daher schützt Vim Sie vor dem Verlust von Änderungen und gibt diese Fehlermeldung aus.

Wenn Sie absolut sicher sind, dass Sie alle Änderungen an allen geladenen Puffern abbrechen möchten, verwenden Sie einfach:qa!


5

Versuchen

:bdelete!

oder

:bd!

kurz gesagt. Dies steht für "Puffer löschen" und schließt den von Ihnen geöffneten Puffer. (Dank geht an Emil Asmussen )

Danach sollten Sie in der Lage sein, :q!wie gewohnt vorzugehen.


2
Ok, aber warum lässt es mich nicht aufhören?
Tyler Durden
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.