关闭vim中的所有位置列表或快速修复窗口


10

有没有办法用vim / gvim中的一个命令关闭所有位置列表和快速修复窗口?


我们在谈论窗口还是缓冲区?因为我正在寻找类似的东西,但要寻找缓冲区。
阿德里安

Answers:


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

这将在所有不显示快捷修复程序或位置列表的窗口中执行:lclose命令。我没有一组位置列表可以对其进行测试,因此我使用了不同的缓冲区类型进行了测试,并且它适用于这种情况。

您可能还希望在.vimrc中使其成为命令或快捷方式。


lclose不会关闭quickfix列表,因此不适用于这些列表。
trysis

1

我将此映射到<F11>:

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

基本上:在每个窗口中,运行lcl(关闭位置列表)和ccl(关闭quickfix)


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

这将:lclose在所有不显示quickfix或位置列表的窗口中执行该命令。我没有一组位置列表可以对其进行测试,因此我使用了不同的缓冲区类型进行了测试,并且它适用于这种情况。


重读问题,他要求关闭所有快速修复窗口,而不是关闭所有窗口。
威慑

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.