Impossibile uscire da Vim anche usando q!


14

Non riesco ad uscire da Vim anche quando scrivo :q!. Ottengo l'errore

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

Penso che il buffer sia un NetrwTreeListing in sola lettura.

Risposte:


11

Per risolvere definitivamente questo fastidio con netrw, l'ho aggiunto al mio .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

Da Tim Pope .


6

Questo di solito accade, se ci sono due o più buffer che vengono modificati e Vim quindi di solito si alternano tra loro e mostra il messaggio di errore. Quindi, quando :q!si interrompe il buffer corrente , non si interrompe l'altro buffer modificato, quindi Vim ti protegge dalla perdita di modifiche e fornisce questo messaggio di errore.

Se si è assolutamente sicuri, si desidera annullare tutte le modifiche a tutti i buffer caricati, quindi utilizzare semplicemente:qa!


5

Provare

:bdelete!

o

:bd!

in breve. Questo sta per "buffer delete" e chiuderà il buffer che hai aperto. (Il merito va a Emil Asmussen )

Successivamente, dovresti essere in grado di fare :q!normalmente.


2
Ok, ma perché non mi lascia andare?
Tyler Durden,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.