autocmdがあり、BufWritePost
バッファに書き込むたびにそれを実行したいと思います。しかし、Vimが終了しようとしたとき。
この変数は、シグナルv:dying
のためにVimが生きているかどうかを示すため、実際には役に立ちません。しかし、私は通常のシャットダウンも検出したいと思います。だから私は次のようなものを探しています。
au BufWritePost * if ! s:do_we_quit() | Neomake | endif
s:do_we_quit()
しかし、これまで私はテストを書く方法がわかりません。
コンテキスト::Neomake
autocmdは私のファイルに対して構文チェックとリンターの実行を呼び出し、それをクイックフィックス/ロケーションリストにロードします。しかし、これは明らかにon:w
ではなくonでのみ意味があります:wq
。通常は非同期で動作しますが、vimがシャットダウンしたときに停止して待機しても何らかの方法で無限ループに陥るようNeomake
です。Neomake
ベストアンサー1
あなたが探しているものQuitPre
:
let s:quitting = 0
autocmd QuitPre * let s:quitting = 1
autocmd BufWritePost * if ! s:quitting | Neomake endif
これは最近Vim(QuitPre
Vim 7.3.544に追加)を実行していると仮定します。
無限ループのバグレポートを投稿する必要があります。