Tutup semua daftar lokasi atau jendela perbaikan cepat di vim

8

Apakah ada cara untuk menutup semua daftar lokasi dan jendela perbaikan cepat dengan satu perintah di vim / gvim?

vonhogen
sumber

Jawaban:

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

Itu akan menjalankan perintah: lclose di semua jendela yang tidak menampilkan quickfix atau daftar lokasi. Saya tidak memiliki satu set daftar lokasi untuk mengujinya, jadi saya menguji dengan jenis buffer yang berbeda dan berfungsi untuk kasus itu.

Anda mungkin ingin membuatnya sebagai perintah atau pintasan di .vimrc Anda juga.

deterb
sumber
lclose tidak menutup daftar perbaikan cepat, jadi ini tidak akan bekerja untuk mereka.
trysis
1

:ccl | lcl

Petakan untuk <Leader>c:

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

Mike Rapadas
sumber
Ini hanya akan menutup satu daftar lokasi: satu untuk jendela aktif, jika ada.
ches
1

Saya memetakan ini untuk & lt; F11 & gt ;:

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

Pada dasarnya: Di setiap jendela, jalankan lcl (daftar lokasi dekat) dan ccl (tutup perbaikan cepat)

Mark K Cowan
sumber
0
:windo if &buftype != "quickfix" | lclose | endif

Itu akan menjalankan :lclose perintah di semua jendela tidak menampilkan perbaikan cepat atau daftar lokasi. Saya tidak memiliki satu set daftar lokasi untuk mengujinya, jadi saya menguji dengan jenis buffer yang berbeda dan itu berfungsi untuk kasus itu.

garyjohn
sumber
Baca kembali pertanyaannya, dia meminta untuk menutup semua jendela perbaikan cepat, tidak menutup semuanya kecuali mereka.
deterb