Next: 自動保存からのデータ復旧, Previous: 自動保存ファイル, Up: 自動保存-災害にたいする防御 [Contents][Index]
ファイルをvisitする度に、そのファイルバッファーの自動保存は、オンになります(バッチモードでは異なります。初期化オプションを参照してください)。この変数のデフォルトはt
なので、ファイルをvisitしているバッファーの自動保存は通常、常に行われます。現在のバッファーの自動保存を切り替えるには、M-x
auto-save-modeとタイプします。Auto Saveモードはバッファーローカルに動作するマイナーモードです(マイナーモードを参照してください)。
Emacsは最後に自動保存されてから何文字タイプしたかにもとづいて、定期的に自動保存を行います。変数auto-save-interval
は、自動保存と自動保存の間に何文字タイプされたかを指定します。デフォルトは300です。Emacsは小さすぎる値は受け付けません。auto-save-interval
を20より小さな値にカスタマイズした場合、Emacsは20と指定されたかのように振る舞います。
自動保存はタイピングをストップしたときも行われます。デフォルトでは30秒アイドル状態が続くと実行されます。(このときEmacsはガベージコレクションも実行します;
Garbage Collection in The Emacs Lisp Reference
Manualを参照してください)。この間隔を変更するには、変数auto-save-timeout
をカスタマイズします。実際の実行間隔は、現在のバッファーの大きさに応じて長くなります。これは、自動保存が実感できるほど時間がかかるような大きなバッファーを編集しているときは、それをなるべく無くすようにする狙いです。アイドル状態のときの自動保存は、2つの事を達成します。最初に、端末を少しの間離れるときなどに、すべての作業の保存を保証します。次に、実際にタイプしているときは自動保存を避けます。
auto-save-visited-mode
が有効なとき、Emacsはアイドル5秒後に、ファイルをvisitしているバッファーを自動保存するでしょう。アイドル時の間隔は、変数auto-save-visited-interval
でカスタマイズできます。
Emacsは、致命的なエラーが発生したときも自動保存を行います。これには‘kill %emacs’のようなコマンドによるEmacsジョブのkill、電話回線やネットワーク回線の切断が含まれます。
コマンドM-x do-auto-saveにより、明示的に自動保存を行うことができます。