vim-users.jp

Hack #206: 外部で変更のあったファイルを自動的に読み直す

Posted at 2011/03/12
このエントリーをはてなブックマークに追加

ツール等で出力されたファイルを開いている場合や、VCS で更新した場合など、Vim で開いているファイルが外部で変更されることは割とよくあることでしょう。そういった場合、Vim は自動的に読み直すことができます。

'autoread' オプション

'autoread' オプションを有効にすると、元のファイルの変更を Vim が検知し、かつバッファが変更されていなかった場合、バッファは自動的に再読み込みされます。 これはグローバルまたはバッファについてローカルなオプションであり、バッファ毎に設定が可能です。

変更のチェックを強化する

'autoread' で Vim が変更に気付いたときに読み直されるわけですが、Vim はそこまで頻繁に変更をチェックするわけではありません。もっと頻繁にチェックして欲しい場合、以下のコマンドでチェックを行うことができます。

:checktime

これを autocmd を使って自動的に実行するようにすれば、再読み込みが発生する頻度が上がります。

augroup vimrc-checktime
  autocmd!
  autocmd WinEnter * checktime
augroup END

この設定ではウィンドウを移動する度にチェックを行います。

thinca

もどる
blog comments powered by Disqus