Schließen Sie alle Standortlisten- oder Schnellkorrekturfenster in vim


10

Gibt es eine Möglichkeit, alle Standortlisten zu schließen und Fenster mit einem einzigen Befehl in vim / gvim schnell zu reparieren?


Sprechen wir über Fenster oder Puffer? Weil ich etwas Ähnliches suche, aber nach Puffern.
Adrien

Antworten:


4
:windo if &buftype == "quickfix" || &buftype == "locationlist" | lclose | endif

Dadurch wird der Befehl: lclose in allen Fenstern ausgeführt, in denen keine Quickfix- oder Standortlisten angezeigt werden. Ich hatte keine Reihe von Standortlisten, mit denen ich es testen konnte, also habe ich mit einem anderen Puffertyp getestet und es hat in diesem Fall funktioniert.

Möglicherweise möchten Sie es auch in Ihrer .vimrc-Datei zu einem Befehl oder einer Verknüpfung machen.


lcloseschließt keine Quickfix-Listen, daher würde dies für diese nicht funktionieren.
Tryse

1

Ich ordne dies <F11> zu:

nmap <F11> :windo lcl\|ccl<CR>

Grundsätzlich gilt: Führen Sie in jedem Fenster lcl(Standortliste schließen) und ccl(Quickfix schließen) aus.


0
:windo if &buftype != "quickfix" | lclose | endif

:lcloseDadurch wird der Befehl in allen Fenstern ausgeführt, in denen keine Quickfix- oder Standortlisten angezeigt werden. Ich hatte keine Reihe von Standortlisten, mit denen ich es testen konnte, also habe ich mit einem anderen Puffertyp getestet und es hat in diesem Fall funktioniert.


Lesen Sie die Frage noch einmal durch und er bittet Sie, alle Schnellreparaturfenster zu schließen, nicht alle außer ihnen.
Deterb

0

:ccl | lcl

Ordnen Sie es zu <Leader>c:

noremap <Leader>c :ccl <bar> lcl<CR>


Dadurch wird nur eine Standortliste geschlossen: die für das aktive Fenster, falls vorhanden.
ches
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.