Previous: , Up: Autorevert   [Contents][Index]


18.5.2 Diredバッファーの自動リバート

Diredバッファーは、バッファーのメインディレクトリーのファイルリストが変化したとき(たとえば新しいファイルの追加や削除)だけ、自動リバートします。特定のファイルの情報が変化したとき(たとえばサイズの変化)や、サブディレクトリーへの追加は自動リバートしません。すべてのリストされた情報が最新であることを確実にするには、Diredバッファーで自動リバートが有効であっても、手動でgを使ってリバートする必要があります。メインディレクトリーにリストされているファイルへの変更や保存で、実際に自動リバートが起こるのに気付くかもしれません。これはファイルの変更や保存は、たとえばバックアップファイルやauto-saveファイルにより、高い確率でディレクトリー自身を変更するからです。しかし、これは保証されているわけではありません。

Diredバッファーがmodifiedとマークされ、残したい変更がない場合、大抵はgでバッファーを手動でリバートすることにより、自動リバートを再開できます。しかし1つ例外があります。ファイルにフラグやマークをつけた場合、安全にバッファーをリバートできます。これはフラグやマークを消去しません(もちろんマークされたファイルが削除されていない場合です)。しかしバッファーはリバートの後でさえmodifiedの状態に留まるので、自動リバートは再開しません。これは、もしファイルにたいしてフラグやマークをつけた場合、それはバッファーにたいして作業をしており、警告なしにバッファーが変更されることを望まないだろうからです。マークやフラグがある状態で自動リバートを再開したいときは、M-~を使ってバッファーをnon-modifiedとマークします。しかしマークやフラグの追加・削除・変更により、バッファーは再びmodifiedとマークされます。

現在のところ、リモートのDiredバッファーは、自動リバートされません。特定のファイルだけをリストするように、シェルのワイルドカードやファイル引数を与えられたDiredバッファーも同じです。*Find*および*Locate*は、どちらも自動リバートしません。

Diredバッファーの自動リバートは、いくつかのシステムでは満足に機能しないかもしれないことに注意してください。