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?

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.


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>


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)


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.


Baca kembali pertanyaannya, dia meminta untuk menutup semua jendela perbaikan cepat, tidak menutup semuanya kecuali mereka.
deterb
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.