Janus経由で(Mac)Vim Syntasticプラグインをインストールしました。 :Errors
ウィンドウを開いて構文エラーの理由を表示すると、エラーのあるファイルが1行に縮小され、残りの領域が[エラー]ウィンドウに使用されます。
エラーが発生する余地を少なくする方法はありますか?さらに重要なことに、どうすればjustエラーウィンドウを閉じることができますか?通常の:q
は、カーソルが[エラー]ウィンドウ内にある場合でも、[エラー]ウィンドウと元のファイルの両方を閉じます。 (これは100%正しくありません-ファイルがまだ保存されていない場合、ありがたいことにファイルを閉じません)。
Syntasticはlocation list(quickfix listのウィンドウローカルバリアント)を使用するため、:lclose
はそれを閉じますが、他のバッファは保持します。
syntasticのヘルプページ に従って、初期の高さを構成できます。
:let g:syntastic_loc_list_height=5
しかし、私はあなたの煩わしいJanusディストリビューションがそれに関与していると思います。 spf-1やJanusのようなVimの「ディストリビューション」は、クイックインストールとすぐに使える設定であなたを魅了しますが、複雑さを増して価格を支払います(理解する必要があります) Vimの実行時ロードスキームと配布の任意の規則)と柔軟性(配布によって、いくつかのことは簡単になるかもしれませんが、他のことは非常に難しいかもしれません)。 Vimは信じられないほどカスタマイズ可能です。他の誰かのカスタマイズを使用しても意味がありません。
Syntasticエラーウィンドウを閉じるコマンドは次のとおりです。
:SyntasticReset
1つの画面で複数のバッファをジャグリングすると、Syntasticが混乱するため、状況に関する情報を収集して適切な処理を行うスクリプトを次に示します。
function JustCloseSyntasticWindow()
"Check which buffer we are in, and if not, return to the main one:
if &ft == "qf"
normal ZZ
endif
"Since different buffers have different command spaces, check if we've
"escaped the other buffer and then tell syntastic to stop.
if &ft != "qf"
SyntasticReset
" --- or ----
SyntasticToggleMode
endif
endfunction
au FileType buffer1_ft nnoremap :yourcmd<CR>:call JustCloseSyntasticWindow()<cr>
au FileType main_win_ft nnoremap :yourcmd<CR>:call JustCloseSyntasticWindow()<cr>
この仕事のためにダクトテープを恥ずかしがらないでください。それがユニットをまとめる唯一のものです。
:lclose
を使用して閉じることができます。