From 184510f1af200772c294a8b366bcdcf3484e97a9 Mon Sep 17 00:00:00 2001 From: Lucien Cartier-Tilet Date: Wed, 3 Apr 2024 06:09:36 +0200 Subject: [PATCH] docs(emacs): add method for tangling all Emacs config files --- docs/emacs/custom-elisp.org | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/docs/emacs/custom-elisp.org b/docs/emacs/custom-elisp.org index 2fb10cf..1279b48 100644 --- a/docs/emacs/custom-elisp.org +++ b/docs/emacs/custom-elisp.org @@ -138,3 +138,21 @@ b s~, which bring the user directly to the ~*Messages*~ buffer and the (interactive) (switch-to-buffer "*scratch*")) #+end_src + +** Tangle all Emacs config files +#+begin_src emacs-lisp :results none +(defvar my/emacs-org-config-directory + (expand-file-name "org/config/docs/emacs" (getenv "HOME")) + "Location of my config as org files.") + +(defun my/tangle-emacs-config () + "Tangle all my Emacs config files from org files." + (interactive) + (let ((files (f-files my/emacs-org-config-directory + (lambda (file) (f-ext-p file "org")) + t)) + (org-confirm-babel-evaluate nil)) + (dolist (file files) + (message "Tangling %s" file) + (org-babel-tangle-file file)))) +#+end_src