From 7b44a125e95010500fa9373aa413143b6e32d0bb Mon Sep 17 00:00:00 2001 From: Jens Luedicke Date: Sun, 21 Sep 2025 15:37:06 +0200 Subject: [PATCH] Fix paths to handle .config/emacs configuration location --- early-init.el | 3 +++ lisp/init-core.el | 12 ++++++------ lisp/init-qol.el | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/early-init.el b/early-init.el index 6af1461..7f78e27 100644 --- a/early-init.el +++ b/early-init.el @@ -5,6 +5,9 @@ ;;; Code: +;; Set user-emacs-directory to use XDG config location +(setq user-emacs-directory (expand-file-name "~/.config/emacs/")) + ;; Defer garbage collection further back in the startup process ;; This makes startup faster by preventing frequent GC (setq gc-cons-threshold most-positive-fixnum diff --git a/lisp/init-core.el b/lisp/init-core.el index f4ebc59..a704a98 100644 --- a/lisp/init-core.el +++ b/lisp/init-core.el @@ -100,13 +100,13 @@ (setq ring-bell-function 'ignore) ;; Auto-save and backup settings -(setq backup-directory-alist '(("." . "~/.emacs.d/backups"))) +(setq backup-directory-alist `(("." . ,(expand-file-name "backups" user-emacs-directory)))) (setq delete-old-versions t kept-new-versions 6 kept-old-versions 2 version-control t) (setq auto-save-file-name-transforms - '((".*" "~/.emacs.d/auto-save-list/" t))) + `((".*" ,(expand-file-name "auto-save-list/" user-emacs-directory) t))) ;; Use ls-lisp (Emacs's built-in ls emulation) for better cross-platform compatibility (setq ls-lisp-use-insert-directory-program nil) @@ -114,10 +114,10 @@ ;;; Session Management (save-place-mode 1) -(setq save-place-file "~/.emacs.d/saveplace") +(setq save-place-file (expand-file-name "saveplace" user-emacs-directory)) (savehist-mode 1) -(setq savehist-file "~/.emacs.d/savehist") +(setq savehist-file (expand-file-name "savehist" user-emacs-directory)) (setq history-length 1000) (recentf-mode 1) @@ -138,8 +138,8 @@ (desktop-save-mode 1) (setq desktop-save t) (setq desktop-auto-save-timeout 300) - (setq desktop-path '("~/.emacs.d/")) - (setq desktop-dirname "~/.emacs.d/") + (setq desktop-path (list user-emacs-directory)) + (setq desktop-dirname user-emacs-directory) (setq desktop-base-file-name "emacs-desktop") (setq desktop-restore-frames t) ;; Load desktop after a delay diff --git a/lisp/init-qol.el b/lisp/init-qol.el index d712b6c..238f82d 100644 --- a/lisp/init-qol.el +++ b/lisp/init-qol.el @@ -28,7 +28,7 @@ :config (setq undo-tree-visualizer-timestamps t) (setq undo-tree-visualizer-diff t) - (setq undo-tree-history-directory-alist '(("." . "~/.emacs.d/undo-tree-history"))) + (setq undo-tree-history-directory-alist `(("." . ,(expand-file-name "undo-tree-history" user-emacs-directory)))) (setq undo-tree-auto-save-history t) :bind (("C-x u" . undo-tree-visualize) ("C-/" . undo-tree-undo)