watchdogs.vim で終了時に別のウィンドウへカーソルが移動してしまう問題の解決
既知の問題としてあったんですが、quickrun.vim 側で対応したので対応方法を書いておきます。
さて、今までは watchdogs.vim のシンタックスチェックで quickfix ウィンドウを開かないようにする場合、
let g:quickrun_config = { \ 'watchdogs_checker/_' : { \ 'outputter/close_quickfix/enable_exit' : 1, \ } \ }
のようにシンタックスチェック後に quickfix ウィンドウと閉じるような hook を設定する必要がありました。
しかし、この場合、最終的には quickfix ウィンドウは閉じられるんですが一時的に quickfix ウィンドウへとカーソルが移動してしまい、シンタックスチェックを行ったウィンドウとは別のウィンドウへと移動してしまうことがあります。
そこで、次のように『quickfix ウィンドウと閉じる』のではなくて『quickfix ウィンドウを開かない』ようにすることで解決することができます。
let g:quickrun_config = { \ 'watchdogs_checker/_' : { \ 'outputter/quickfix/open_cmd' : '', \ } \ }
outputter/quickfix/open_cmd は quickfix ウィンドウの開き方を設定することができます。
これに空の文字列を設定することで quickfix ウィンドウを開かなくすることができるので、この問題を解決することができます。