以下に示す変数は、(あるファイルに対しその)バックアップコピーを作るか否か、どの ように作るか、バックアップファイルの名前をどうするかを定めます。バックアップを 作るためには 2つの基本的な方法が存在します。 (それは)ファイルのリネーミングと ファイルのコピーイングです。リネーミングというのは、(Emacs が) 既存のファイル をそれがバックアップファイルになるようリネームすることを意味します。 (前のファ イルが持っていた) 他の名前(e.g., ハードリンク)は全て、今度はそのバックアップ ファイルを指すことになります。新しいファイルは、そのユーザーの所有になり、グ ループはそのユーザーのデフォルトのグループになります。
コピーイングというのは、(Emacs が) 既存のファイルをバックアップファイルにコ ピーし、その既存のファイルの先頭にバッファを書き込むことを意味します。 (前の ファイルが持っていた) 他の名前(e.g., ハードリンク)は全て、今度はその最もカレン トなバージョンのファイルを指すことになります。そのファイルのオーナーとグループ は変更されません。
Variable: make-backup-files
このグローバル変数は、"バックアップファイルを作るか否か" を定めます。これ が non-nil の場合、Emacs は各ファイルに対し(最初にセーブを行なう際)バック アップを作ります。次の例は、make-backup-files を (他には影響を与えずに) RMAIL バッファに対しバッファローカルにする方法を示しています。
(setq rmail-mode-hook '(lambda () (make-local-variable 'make-backup-files) (setq make-backup-files nil)))
Variable: backup-by-copying
このグローバル変数は、 "コピーでバックアップファイルを作るか否か" を定めま す。これが non-nil の場合、(Emacs は)バックアップファイルを作るのに (常に) コピーを用います。
Variable: backup-by-copying-when-linked
このグローバル変数は、複数の名前を持つファイル(ハードリンク) に対し、 "コ ピーでバックアップファイルを作るか否か" を定めます。これが non-nil の場 合、(Emacs は)それらのファイルのバックアップファイルを作るのにコピーを用い ます。
この変数は、backup-by-copying が nil の場合のみ意味を持ちます(訳注: relevant)。
Variable: backup-by-copying-when-mismatch
このグローバル変数は、リネームすることがファイルのオーナーもしくはグループ を変える可能性がある場合、 "コピーでバックアップファイルを作るか否か" を定 めます。これが non-nil の場合、(Emacs は)それらのファイルのバックアップ ファイルを作るのにコピーを用います。
それがファイルのオーナーもしくはグループを変更することにならない場合、つま りそのユーザーとそのグループによって所有されているファイルがそのユーザーに よって作られる新しいファイルに対するデフォルト(訳注:のファイル)にマッチす る場合、リネームはまだ用いられます(他の変数により制御されます)。
この変数は、backup-by-copying が nil の場合のみ意味を持ちます(訳注: relevant)。
Function: backup-buffer
この関数は、カレントバッファで visit されているファイルをバックアップしま す。この関数は、バッファの最初のセーブを行なう前に save-buffer から呼ばれ ます。
Function: delete-auto-save-file-if-necessary
この関数は、変数 delete-auto-save-files が non-nil の場合、カレントバッ ファに対するオートセーブファイルを削除します。この関数は、バッファをセーブ するたびに呼ばれます。
Variable: delete-auto-save-files
このグローバル変数は、関数 delete-auto-save-file-if-necessary で用いられま す。 non-nil の場合、バッファに対するオートセーブファイルが削除されます(い つ??)。
Function: rename-auto-save-files
この関数は、カレントバッファのオートセーブファイルの名前を今の状態用に調整 (訳注:adjust)します。この関数は、そのファイルをリネームされたものと考え、 そのオートセーブファイルもリネームします。そのファイル名が変更されていない 場合、この関数は何もしません。