diff --git a/core/siren-core-editor.el b/core/siren-core-editor.el index c48723a..044e0d7 100644 --- a/core/siren-core-editor.el +++ b/core/siren-core-editor.el @@ -28,7 +28,7 @@ (setq sentence-end-double-space nil) ;; Save place in files -(setq save-place-file (expand-file-name "saveplace" siren-cache-dir)) +(setq save-place-file (siren-cache-dir "saveplace")) (save-place-mode 1) ;; Electric behavior @@ -51,11 +51,10 @@ kept-old-versions 0 vc-make-backup-files t version-control t - backup-directory-alist - `((".*" . ,(expand-file-name "backup" siren-cache-dir)))) + backup-directory-alist `((".*" . ,(siren-cache-dir "backup")))) ;; Auto-save files -(let ((auto-save-dir (expand-file-name "autosave/" siren-cache-dir))) +(let ((auto-save-dir (siren-cache-dir "autosave/"))) (unless (file-exists-p auto-save-dir) (make-directory auto-save-dir)) (setq auto-save-interval 20 diff --git a/core/siren-core-init.el b/core/siren-core-init.el index fe53ec4..795db56 100644 --- a/core/siren-core-init.el +++ b/core/siren-core-init.el @@ -33,6 +33,14 @@ (unless (file-exists-p siren-cache-dir) (make-directory siren-cache-dir)) +(defun siren-dir (name) + "Return absolute path to sub-directory NAME under siren-dir." + (expand-file-name name siren-dir)) + +(defun siren-cache-dir (name) + "Return absolute path to sub-directory NAME under siren-cache-dir." + (expand-file-name name siren-cache-dir)) + ;; Setup load-path (add-to-list 'load-path siren-core-dir) @@ -57,7 +65,7 @@ (require 'siren-core-linux)) ;; Config changes made through the customize UI will be store here -(setq custom-file (expand-file-name "custom.el" siren-dir)) +(setq custom-file (siren-dir "custom.el")) (load-file custom-file) ;; Enable custom themes diff --git a/core/siren-core-modules.el b/core/siren-core-modules.el index fa82fcb..ed79e1d 100644 --- a/core/siren-core-modules.el +++ b/core/siren-core-modules.el @@ -6,7 +6,7 @@ ;;; Code: -(defvar siren-modules-dir (expand-file-name "modules" siren-dir) +(defvar siren-modules-dir (siren-dir "modules") "Root directory for Emacs Siren modules.") (siren-recursive-add-to-load-path siren-modules-dir) diff --git a/core/siren-core-themes.el b/core/siren-core-themes.el index ffc4921..31ad04a 100644 --- a/core/siren-core-themes.el +++ b/core/siren-core-themes.el @@ -6,7 +6,7 @@ ;;; Code: -(defvar siren-themes-dir (expand-file-name "themes" siren-dir) +(defvar siren-themes-dir (siren-dir "themes") "Root directory for Emacs Siren custom themes.") (add-to-list 'custom-theme-load-path siren-themes-dir) diff --git a/modules/editor/siren-amx.el b/modules/editor/siren-amx.el index 097d2b4..2142012 100644 --- a/modules/editor/siren-amx.el +++ b/modules/editor/siren-amx.el @@ -17,7 +17,7 @@ (amx-backend 'ido) (amx-histroy-lenth 15) (amx-prompt-string "M-x ") - (amx-save-file (expand-file-name "amx-items" siren-cache-dir)) + (amx-save-file (siren-cache-dir "amx-items")) (amx-show-key-bindings t) :config diff --git a/modules/editor/siren-ido.el b/modules/editor/siren-ido.el index 5a8e38d..9e4ab4f 100644 --- a/modules/editor/siren-ido.el +++ b/modules/editor/siren-ido.el @@ -17,7 +17,7 @@ (ido-enable-flex-matching t) (ido-enable-prefix nil) (ido-max-prospects 12) - (ido-save-directory-list-file (expand-file-name "ido.hist" siren-cache-dir)) + (ido-save-directory-list-file (siren-cache-dir "ido.hist")) (ido-use-faces t) (ido-use-filename-at-point nil) diff --git a/modules/editor/siren-prescient.el b/modules/editor/siren-prescient.el index 628ae4c..5fcae63 100644 --- a/modules/editor/siren-prescient.el +++ b/modules/editor/siren-prescient.el @@ -12,7 +12,7 @@ :custom (prescient-filter-method '(literal-prefix literal regexp initialism fuzzy)) (prescient-history-length 100) - (prescient-save-file (expand-file-name "prescient-save.el" siren-cache-dir)) + (prescient-save-file (siren-cache-dir "prescient-save.el")) (prescient-sort-full-matches-first t) (prescient-sort-length-enable nil) diff --git a/modules/editor/siren-recentf.el b/modules/editor/siren-recentf.el index f6ac467..c3f1aa9 100644 --- a/modules/editor/siren-recentf.el +++ b/modules/editor/siren-recentf.el @@ -11,7 +11,7 @@ :demand t :custom - (recentf-save-file (expand-file-name "recentf" siren-cache-dir)) + (recentf-save-file (siren-cache-dir "recentf")) (recentf-max-saved-items 5000) (recentf-max-menu-items 1000) (recentf-auto-cleanup 'never) diff --git a/modules/editor/siren-savehist.el b/modules/editor/siren-savehist.el index 0a6d285..76d61e1 100644 --- a/modules/editor/siren-savehist.el +++ b/modules/editor/siren-savehist.el @@ -12,7 +12,7 @@ :custom (savehist-additional-variables '(search-ring regexp-search-ring)) (savehist-autosave-interval 60) - (savehist-file (expand-file-name "savehist" siren-cache-dir)) + (savehist-file (siren-cache-dir "savehist")) :init (savehist-mode +1)) diff --git a/modules/editor/siren-smex.el b/modules/editor/siren-smex.el index c736571..81c7644 100644 --- a/modules/editor/siren-smex.el +++ b/modules/editor/siren-smex.el @@ -14,7 +14,7 @@ ("C-c C-c M-x" 'execute-extended-command) :custom - (smex-save-file (expand-file-name "smex-items" siren-cache-dir)) + (smex-save-file (siren-cache-dir "smex-items")) :config (smex-initialize)) diff --git a/modules/editor/siren-undo-tree.el b/modules/editor/siren-undo-tree.el index 24ebb8d..0021556 100644 --- a/modules/editor/siren-undo-tree.el +++ b/modules/editor/siren-undo-tree.el @@ -21,7 +21,7 @@ :custom (undo-tree-history-directory-alist - `((".*" . ,(expand-file-name "undo-tree-history" siren-cache-dir)))) + `((".*" . ,(siren-cache-dir "undo-tree-history")))) ;; Use undohist package to persist history to disk, it seems more reliable ;; than undo-tree's auto-save feature which randomly fails to restore history ;; for no obvious reason. diff --git a/modules/editor/siren-undohist.el b/modules/editor/siren-undohist.el index 35d185c..6c3730c 100644 --- a/modules/editor/siren-undohist.el +++ b/modules/editor/siren-undohist.el @@ -9,7 +9,7 @@ (use-package undohist :demand :custom - (undohist-directory (expand-file-name "undohist" siren-cache-dir)) + (undohist-directory (siren-cache-dir "undohist")) (undohist-ignored-files '("COMMIT_EDITMSG")) :config diff --git a/modules/projects/siren-project-explorer.el b/modules/projects/siren-project-explorer.el index 48d0847..7928938 100644 --- a/modules/projects/siren-project-explorer.el +++ b/modules/projects/siren-project-explorer.el @@ -13,7 +13,7 @@ :custom (pe/follow-current t) (pe/width 54) - (pe/cache-directory (expand-file-name "project-explorer" siren-cache-dir)) + (pe/cache-directory (siren-cache-dir "project-explorer")) :config ;; Make Project Explorer open selected file in last used buffer diff --git a/modules/projects/siren-projectile.el b/modules/projects/siren-projectile.el index bd79d01..535f035 100644 --- a/modules/projects/siren-projectile.el +++ b/modules/projects/siren-projectile.el @@ -27,7 +27,7 @@ :custom (projectile-buffers-filter-function 'projectile-buffers-with-file-or-process) - (projectile-cache-file (expand-file-name "projectile" siren-cache-dir)) + (projectile-cache-file (siren-cache-dir "projectile")) (projectile-completion-system 'default) (projectile-enable-caching nil) (projectile-globally-ignored-directories '(".bzr" diff --git a/modules/projects/siren-treemacs.el b/modules/projects/siren-treemacs.el index 96c64e3..f6f4673 100644 --- a/modules/projects/siren-treemacs.el +++ b/modules/projects/siren-treemacs.el @@ -26,9 +26,9 @@ (treemacs-sorting 'alphabetic-asc) (treemacs-width 40) - (treemacs-persist-file (expand-file-name "treemacs-persist" siren-cache-dir)) + (treemacs-persist-file (siren-cache-dir "treemacs-persist")) (treemacs-last-error-persist-file - (expand-file-name "treemacs-persist-at-last-error" siren-cache-dir)) + (siren-cache-dir "treemacs-persist-at-last-error")) :preface (defgroup siren-treemacs nil diff --git a/modules/text-editing/siren-tempel.el b/modules/text-editing/siren-tempel.el index 6f47146..fe1ef7e 100644 --- a/modules/text-editing/siren-tempel.el +++ b/modules/text-editing/siren-tempel.el @@ -15,7 +15,7 @@ "TAB" 'tempel-next) :custom - (tempel-path (expand-file-name "templates/*.el" siren-dir)) + (tempel-path (siren-dir "templates/*.el")) :hook (prog-mode . siren-tempel-setup-capf) diff --git a/modules/version-control/siren-code-review.el b/modules/version-control/siren-code-review.el index 95c087b..5282f28 100644 --- a/modules/version-control/siren-code-review.el +++ b/modules/version-control/siren-code-review.el @@ -9,8 +9,7 @@ (use-package code-review :defer t :custom - (code-review-db-database-file (expand-file-name - "code-review-db.sqlite" siren-cache-dir)) + (code-review-db-database-file (siren-cache-dir "code-review-db.sqlite")) (code-review-fill-column 80) (code-review-lgtm-message "lgtm :)") (code-review-new-buffer-window-strategy 'switch-to-buffer)) diff --git a/modules/version-control/siren-forge.el b/modules/version-control/siren-forge.el index 4940c38..fcb66d6 100644 --- a/modules/version-control/siren-forge.el +++ b/modules/version-control/siren-forge.el @@ -16,8 +16,7 @@ :after magit :custom - (forge-database-file (expand-file-name - "forge-database.sqlite" siren-cache-dir)) + (forge-database-file (siren-cache-dir "forge-database.sqlite")) :config (transient-insert-suffix 'forge-dispatch '(1) diff --git a/modules/version-control/siren-magit.el b/modules/version-control/siren-magit.el index 487963f..23883db 100644 --- a/modules/version-control/siren-magit.el +++ b/modules/version-control/siren-magit.el @@ -59,12 +59,9 @@ (use-package transient :defer t :custom - (transient-history-file - (expand-file-name "transient/history.el" siren-cache-dir)) - (transient-levels-file - (expand-file-name "transient/levels.el" siren-cache-dir)) - (transient-values-file - (expand-file-name "transient/values.el" siren-cache-dir))) + (transient-history-file (siren-cache-dir "transient/history.el")) + (transient-levels-file (siren-cache-dir "transient/levels.el")) + (transient-values-file (siren-cache-dir "transient/values.el"))) (use-package magit-delta :hook diff --git a/modules/workspaces/siren-desktop.el b/modules/workspaces/siren-desktop.el index f9fb3b3..1917563 100644 --- a/modules/workspaces/siren-desktop.el +++ b/modules/workspaces/siren-desktop.el @@ -94,7 +94,7 @@ (make-directory desktop+-base-dir)) :preface - (defvar desktop+-base-dir (expand-file-name "desktops" siren-dir) + (defvar desktop+-base-dir (siren-dir "desktops") "Base directory for desktop files.") (defun siren-desktop+-current-desktop ()