Подтвердить что ты не робот

Панель Toggle Error Location в синтаксическом

Как установить ярлык на клавиатуре для переключения панели списка местоположений Syntastic Error в vim.

:Errors - показывает панель расположения

:lclose - скрывает панель расположения

Я очень новичок в VimScript, если есть способ проверить видимость панели списка местоположений. Это должно быть довольно легко сделать.

4b9b3361

Ответ 1

Я не знаю, как различать * quickfix и списки местоположений, но вместо проверки отображения списка местоположений я бы предложил просто закрыть его и проверить, изменилось ли число окон:

function! ToggleErrors()
    let old_last_winnr = winnr('$')
    lclose
    if old_last_winnr == winnr('$')
        " Nothing was closed, open syntastic error location panel
        Errors
    endif
endfunction

*, если вы в порядке с решением, которое будет пытаться lclose, если какая-либо активная проверка для буфера, отображаемого с быстрым быстродействием buftype:

function! ToggleErrors()
    if empty(filter(tabpagebuflist(), 'getbufvar(v:val, "&buftype") is# "quickfix"'))
         " No location/quickfix list shown, open syntastic error location panel
         Errors
    else
        lclose
    endif
endfunction

. Обратите внимание, что lclose не будет закрывать список быстрого удаления.

Чтобы переключить панель ошибок с помощью Ctrl-e, вы можете использовать следующее сопоставление

nnoremap <silent> <C-e> :<C-u>call ToggleErrors()<CR>

Ответ 2

Согласно Syntastic help, команда закрытия окна Syntastic:

:SyntasticReset