vimでSyntastic Error Location List Panelを切り替えるキーボードショートカットを設定するにはどうすればよいですか。
:Errors
- ロケーションパネルを表示
:lclose
- ロケーション パネルを非表示にします
Location List Panel の可視性を確認する方法があれば、私は VimScript を初めて使用します。これはかなり簡単に行うことができます。
クイックフィックスとロケーション リストを区別する*方法がわかりませんが、ロケーション リストが表示されているかどうかを確認する代わりに、リストを閉じて、表示されているウィンドウの数が変更されたかどうかを確認することをお勧めします。
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>
Syntastic helpによると、Syntastic エラー ウィンドウを閉じるコマンドは次のとおりです。
:SyntasticReset