Make backups go into ~/.emacs.d/emacs-backup/ instead of working dir

Closes #5
This commit is contained in:
Ashton Wiersdorf 2023-02-22 00:37:40 -07:00
parent 0d0d5ce95a
commit 411b56ffa3
2 changed files with 13 additions and 0 deletions

1
.gitignore vendored
View file

@ -5,3 +5,4 @@
/transient/
/auto-save-list/
/eshell/
/projects

12
init.el
View file

@ -44,6 +44,18 @@
;; Move through windows with Ctrl-<arrow keys>
(windmove-default-keybindings 'control) ; You can use other modifiers here
;; Don't litter filesystem with *~ backup files; put them all inside
;; ~/.emacs.d/backup or wherever
(defun bedrock--backup-file-name (fpath)
"Return a new file path of a given file path.
If the new path's directories does not exist, create them."
(let* ((backupRootDir "~/.emacs.d/emacs-backup/")
(filePath (replace-regexp-in-string "[A-Za-z]:" "" fpath )) ; remove Windows driver letter in path, for example, “C:”
(backupFilePath (replace-regexp-in-string "//" "/" (concat backupRootDir filePath "~") )))
(make-directory (file-name-directory backupFilePath) (file-name-directory backupFilePath))
backupFilePath))
(setq make-backup-file-name-function 'bedrock--backup-file-name)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;
;;; Discovery aids