Sie können den Standort über anpassen backup-directory-alist
. Jeder Eintrag in der Liste gibt an, wo die Sicherungen von Dateien abgelegt werden sollen, die einem Muster entsprechen. Wenn sich der Speicherort befindet nil
, befindet sich die Sicherung im selben Verzeichnis wie das Original. Die Reihenfolge ist wichtig: Das erste Match wird verwendet.
(setq backup-directory-alist '(("-autoloads\\.el\\'")
("." . "~/.emacs.d/backups")))
Wenn Sie Sicherungen auf der Grundlage des Dateinamens oder des Speicherorts vollständig unterdrücken möchten, scheint es dafür keinen integrierten Mechanismus zu geben, aber das Hinzufügen ist einfach genug. Die Variable backup-enable-predicate
enthält den Namen einer Funktion, die bestimmt, ob eine Datei Sicherungen enthalten soll. Die Standardeinstellung verhindert normal-backup-enable-predicate
nur Sicherungen in den Verzeichnissen, die Emacs für temporäre Dateien verwendet. Sie können eine eigene Funktion hinzufügen, die auch den Dateinamen überprüft.
(defvar backup-inhibit-file-name-regexp "-autoloads\\.el\\'"
"Files whose full path matches this regular expression will not be backed up.")
(defun regexp-backup-enable-predicate (filename)
"Disable backups for files whose name matches `backup-inhibit-file-name-regexp'.
Also call `normal-backup-enable-predicate'."
(save-match-data
(and (not (string-match backup-inhibit-file-name-regexp filename))
(normal-backup-enable-predicate filename))))
(setq backup-enable-predicate 'regexp-backup-enable-predicate)
Selbst wenn diese Funktion zurückgegeben wird t
, können andere Mechanismen Sicherungen deaktivieren.
Wenn Sie Sicherungen in einem bestimmten Hauptmodus deaktivieren möchten, stellen Sie make-backup-files
sie nil
im Setup-Hook des Hauptmodus ein (möglicherweise basierend auf dem Dateinamen und anderen Merkmalen). Vergessen Sie nicht, die Variable buffer-local zu machen.
Eine andere Möglichkeit, Sicherungen für bestimmte Dateien zu deaktivieren, ist das Festlegen backup-inhibited
. Diese Variable überlebt einen großen Moduswechsel. Auf diese Weise deaktiviert VC Sicherungen für Dateien unter Versionskontrolle (durch einen Eintrag in file-find-hook
). Vergessen Sie nicht, die Variable buffer-local zu machen.
Gilles 'SO - hör auf böse zu sein'
quelle