Есть ли способ закрыть все списки местоположений и быстро исправить окна с помощью одной команды в vim/gvim?
4 ответа
:windo if &buftype == "quickfix" || &buftype == "locationlist" | lclose | endif
Это выполнит команду:lclose во всех окнах, не отображающих списки исправлений или местоположений. У меня не было набора списков местоположений, чтобы проверить его, поэтому я протестировал с другим типом буфера, и он работал для этого случая.
Возможно, вы захотите сделать это командой или ярлыком в вашем .vimrc.
Я сопоставляю это с <F11>:
nmap <F11> :windo lcl\|ccl<CR>
В основном: в каждом окне запустите lcl
(закрыть список местоположений) и ccl
(закрыть быстрое исправление)
:ccl | lcl
Сопоставьте его с <Leader>c
:
noremap <Leader>c :ccl <bar> lcl<CR>
:windo if &buftype != "quickfix" | lclose | endif
Это выполнит команду :lclose
во всех окнах, не отображающих списки исправлений или местоположений. У меня не было набора списков местоположений, чтобы проверить его, поэтому я протестировал с другим типом буфера, и он работал для этого случая.