Ich benutze Vim in Screen. Ich führe den Befehl aus
vim <bigFolder>
Ich stecke fest, da es nicht sinnvoll ist, jeden Puffer zu schließen
:q
Wie können Sie alle aktiven Puffer in Vim mit einem Befehl in Vim schließen?
Ich benutze Vim in Screen. Ich führe den Befehl aus
vim <bigFolder>
Ich stecke fest, da es nicht sinnvoll ist, jeden Puffer zu schließen
:q
Wie können Sie alle aktiven Puffer in Vim mit einem Befehl in Vim schließen?
Antworten:
:qalloder :qaschließt alle Fenster
Mit dem :bufdoBefehl können Sie einen Befehl für alle Puffer ausführen. In diesem Fall möchten Sie :bufdo bdeletealle offenen Puffer auf einmal schließen.
:% bd (elete)
Ich denke, das ist es, wonach du fragst
:bdkönnte sein?
:on
schließt alle Puffer außer dem, den Sie gerade bearbeiten (der Cursor befindet sich in diesem Puffer).
:on!
schließt auch modifizierte Puffer, aber diese werden zu versteckten Puffern.
:ls
listet alle Puffer mit ihrem Status auf (versteckt, ...)
Etwas Hilfe:
:h only
:h hidden-buffer
:h ls
Dies ist nicht genau das, wonach Sie gefragt haben, aber das Folgende kann zu einem gewünschten Ergebnis führen. Es:
:tabo):only)1 b)löscht Puffer mit den Nummern 2 bis 2000 ( 2,2000bd)
:tabo | :only | 1 b | 2,2000 bd
Sollten mehr als 2000 Puffer geöffnet sein, passen Sie diese entsprechend an.
Wenn Sie einfach alle Puffer löschen möchten, 1,2000bdsollten Sie die Aufgabe erledigen. Beachten Sie jedoch, dass für alle geöffneten Registerkarten und Fenster neue, leere Puffer erstellt werden.
Das spart aber nicht die Puffer. Vielleicht: wqall! : xall! ist ein bisschen besser.
Wenn Sie VIM vollständig stecken lassen, sollten Sie es dennoch von außerhalb von VIM töten können.
kill %vimps. Das kannst du töten:$ ps -f -C vim
UID PID PPID C STIME TTY TIME CMD
nfellman 27273 7473 0 Jun24 pts/15 00:00:00 /nfs/iil/home/nfellman/vim/bin/vim a.pl
nfellman 37213 23747 0 Jun23 pts/15 00:00:00 /nfs/iil/home/nfellman/vim/bin/vim b.pl
Wenn ich also das VIM beenden möchte, das gerade bearbeitet wird a.pl, können Sie Folgendes tun:
kill -9 27273
Dies sollte auch innerhalb des Bildschirms funktionieren
:q!
arbeitet immer für mich