From 10f81ec220477c7b8c7ea637639f78e90c7a4c3e Mon Sep 17 00:00:00 2001 From: Alan Pearce Date: Sat, 9 Jan 2016 17:46:23 +0100 Subject: Emacs: Add sync version of tangle-init --- tag-emacs/emacs.d/init.org | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tag-emacs/emacs.d/init.org b/tag-emacs/emacs.d/init.org index 410a18b..2c86143 100644 --- a/tag-emacs/emacs.d/init.org +++ b/tag-emacs/emacs.d/init.org @@ -2462,6 +2462,20 @@ the =org=-document after changes. :commands (async-start) :defer 2) + (defun tangle-init-sync () + (interactive) + (when (string-suffix-p "init.org" (buffer-file-name)) + (message "Tangling init") + ;; Avoid running hooks when tangling. + (let ((prog-mode-hook nil) + (dest (concat user-emacs-directory "init.el"))) + (require 'ob-tangle) + (org-babel-tangle-file (buffer-file-name) dest) + (if (byte-compile-file dest) + dest + (with-current-buffer byte-compile-log-buffer + (buffer-string)))))) + (defun tangle-init () "If the current buffer is 'init.org' the code-blocks are tangled, and the tangled file is compiled." -- cgit 1.4.1