From 0b57fa79b5b4e35642ad5f3183e74585f3be56a2 Mon Sep 17 00:00:00 2001 From: Laurens Miers Date: Wed, 30 Apr 2025 09:36:55 +0200 Subject: [PATCH 1/5] feat: Update elpaca This avoids the warning at startup about not being able to determine elpaca core date. --- config.org | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/config.org b/config.org index 72bc534..24b9c10 100644 --- a/config.org +++ b/config.org @@ -7,13 +7,13 @@ ** Core -#+begin_src emacs-lisp -(defvar elpaca-installer-version 0.7) +#+BEGIN_SRC emacs-lisp +(defvar elpaca-installer-version 0.11) (defvar elpaca-directory (expand-file-name "elpaca/" user-emacs-directory)) (defvar elpaca-builds-directory (expand-file-name "builds/" elpaca-directory)) (defvar elpaca-repos-directory (expand-file-name "repos/" elpaca-directory)) (defvar elpaca-order '(elpaca :repo "https://github.com/progfolio/elpaca.git" - :ref nil :depth 1 + :ref nil :depth 1 :inherit ignore :files (:defaults "elpaca-test.el" (:exclude "extensions")) :build (:not elpaca--activate-package))) (let* ((repo (expand-file-name "elpaca/" elpaca-repos-directory)) @@ -23,30 +23,30 @@ (add-to-list 'load-path (if (file-exists-p build) build repo)) (unless (file-exists-p repo) (make-directory repo t) - (when (< emacs-major-version 28) (require 'subr-x)) + (when (<= emacs-major-version 28) (require 'subr-x)) (condition-case-unless-debug err - (if-let ((buffer (pop-to-buffer-same-window "*elpaca-bootstrap*")) - ((zerop (apply #'call-process `("git" nil ,buffer t "clone" - ,@(when-let ((depth (plist-get order :depth))) - (list (format "--depth=%d" depth) "--no-single-branch")) - ,(plist-get order :repo) ,repo)))) - ((zerop (call-process "git" nil buffer t "checkout" - (or (plist-get order :ref) "--")))) - (emacs (concat invocation-directory invocation-name)) - ((zerop (call-process emacs nil buffer nil "-Q" "-L" "." "--batch" - "--eval" "(byte-recompile-directory \".\" 0 'force)"))) - ((require 'elpaca)) - ((elpaca-generate-autoloads "elpaca" repo))) + (if-let* ((buffer (pop-to-buffer-same-window "*elpaca-bootstrap*")) + ((zerop (apply #'call-process `("git" nil ,buffer t "clone" + ,@(when-let* ((depth (plist-get order :depth))) + (list (format "--depth=%d" depth) "--no-single-branch")) + ,(plist-get order :repo) ,repo)))) + ((zerop (call-process "git" nil buffer t "checkout" + (or (plist-get order :ref) "--")))) + (emacs (concat invocation-directory invocation-name)) + ((zerop (call-process emacs nil buffer nil "-Q" "-L" "." "--batch" + "--eval" "(byte-recompile-directory \".\" 0 'force)"))) + ((require 'elpaca)) + ((elpaca-generate-autoloads "elpaca" repo))) (progn (message "%s" (buffer-string)) (kill-buffer buffer)) (error "%s" (with-current-buffer buffer (buffer-string)))) ((error) (warn "%s" err) (delete-directory repo 'recursive)))) (unless (require 'elpaca-autoloads nil t) (require 'elpaca) (elpaca-generate-autoloads "elpaca" repo) - (load "./elpaca-autoloads"))) + (let ((load-source-file-function nil)) (load "./elpaca-autoloads")))) (add-hook 'after-init-hook #'elpaca-process-queues) (elpaca `(,@elpaca-order)) -#+end_src +#+END_SRC ** Use-package integration From f5ef8d68c597b2c6c0423dc169395b2aab29f738 Mon Sep 17 00:00:00 2001 From: Laurens Miers Date: Wed, 30 Apr 2025 09:37:32 +0200 Subject: [PATCH 2/5] fix: Update visit/reload-config docs --- config.org | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config.org b/config.org index 24b9c10..1eb50cd 100644 --- a/config.org +++ b/config.org @@ -1179,12 +1179,12 @@ This should normally be done by the init.el to load this configuration. #+BEGIN_SRC emacs-lisp (defun myrmi/visit-config () - "Reloads ~/.emacs.d/config.org at runtime" + "Visit emacs config" (interactive) (find-file my-config-file)) (defun myrmi/reload-config () - "Reloads ~/.emacs.d/config.org at runtime" + "Reload emacs config at runtime" (interactive) (org-babel-load-file my-config-file)) #+END_SRC From d3dc9465dd19f2d6139e06b07bf56eba9d2d6e61 Mon Sep 17 00:00:00 2001 From: Laurens Miers Date: Wed, 30 Apr 2025 09:38:32 +0200 Subject: [PATCH 3/5] fix: load init.el of notes repo when org-roam is properly loaded This avoids all kinds of issues about variables not being declared, etc. in the project-notes init.el --- config.org | 1 + init.el | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/config.org b/config.org index 1eb50cd..404cccb 100644 --- a/config.org +++ b/config.org @@ -964,6 +964,7 @@ Preserve indentation in SRC blocks (org-roam-db-autosync-mode) ;; Add todo lists to org-agenda (custom-set-variables '(org-agenda-files (directory-files-recursively org-roam-directory "todo\\.org$"))) + (load (expand-file-name "init.el" org-roam-directory) :no-error-if-file-is-missing) ) #+END_SRC diff --git a/init.el b/init.el index 3d52422..5b96eb9 100644 --- a/init.el +++ b/init.el @@ -7,11 +7,9 @@ (setq custom-file (expand-file-name "custom.el" user-emacs-directory)) ;; This is the actual config file. It is omitted if it doesn't exist so emacs won't refuse to launch. (defvar my-config-file (expand-file-name "config.org" user-emacs-directory)) - (defvar notes-config-file (expand-file-name "init.el" "~/projects/notes/")) (when (file-readable-p my-config-file) (org-babel-load-file (expand-file-name my-config-file))) - (load notes-config-file :no-error-if-file-is-missing) (load custom-file :no-error-if-file-is-missing) ) From 1a21781fba70826d4c71aed51004059833b85313 Mon Sep 17 00:00:00 2001 From: Laurens Miers Date: Wed, 30 Apr 2025 09:39:47 +0200 Subject: [PATCH 4/5] fix: switch back to company from corfu to avoid random crash It seems like a known issue (don't have the link anymore..) but company is doing fine for now so just switch back to it. --- config.org | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/config.org b/config.org index 404cccb..af422e5 100644 --- a/config.org +++ b/config.org @@ -471,7 +471,7 @@ C-c C-c to apply." *** Corfu -#+BEGIN_SRC emacs-lisp +#+BEGIN_SRC (use-package corfu ;; Optional customizations :bind (:map corfu-map ("" . corfu-complete)) @@ -502,7 +502,7 @@ C-c C-c to apply." *** Company-mode -#+BEGIN_SRC +#+BEGIN_SRC emacs-lisp (use-package company :config (define-key prog-mode-map From ff740ce08eb8949437da7ec73533556d26e2d46e Mon Sep 17 00:00:00 2001 From: Laurens Miers Date: Wed, 30 Apr 2025 09:40:43 +0200 Subject: [PATCH 5/5] feat: Add org-download --- config.org | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/config.org b/config.org index af422e5..88e0e25 100644 --- a/config.org +++ b/config.org @@ -1025,6 +1025,15 @@ Preserve indentation in SRC blocks ) #+END_SRC +** Org Download + +#+BEGIN_SRC emacs-lisp +(use-package org-download + :config + (add-hook 'dired-mode-hook 'org-download-enable) + ) +#+END_SRC + * Elisp ** Add demos to describe-function