Revised build.el to deal with Org import, Python3 import

This commit is contained in:
Wesley R. Elsberry 2025-10-07 05:01:39 -04:00
parent 883e6f8829
commit 8fbcdc0417
1 changed files with 30 additions and 0 deletions

View File

@ -1,12 +1,39 @@
;; Load org and Babel tangle explicitly
(require 'ob-tangle)
(require 'ob-org)
(org-babel-do-load-languages 'org-babel-load-languages
'((org . t))) ;; <-- enable tangling of #+BEGIN_SRC org blocks
;; Batch export & site publish
(setq org-confirm-babel-evaluate nil)
(setq org-latex-pdf-process '("latexmk -pdf -interaction=nonstopmode -shell-escape %f"))
;; --- Babel / Python setup for batch exports ---
(setq org-confirm-babel-evaluate nil)
(setq org-babel-python-command "python3")
(setenv "MPLBACKEND" "Agg") ;; headless matplotlib
;; Load languages you use in code blocks
(org-babel-do-load-languages 'org-babel-load-languages
'((python . t)))
(defun wes--inject-setupfile (venue)
"Insert a per-venue #+SETUPFILE line at the top of the current buffer."
(save-excursion
(goto-char (point-min))
;; remove any previously injected line from a prior run
(when (looking-at "^#\\+SETUPFILE: setup/venue-.*\\.org")
(delete-region (line-beginning-position) (1+ (line-end-position))))
(insert (format "#+SETUPFILE: setup/venue-%s.org\n" venue))))
(defun wes/export-pdf (&optional venue)
(let* ((v (or venue (or (getenv "VENUE") "arxiv")))
(outfile (format "paper-%s.pdf" v)))
(with-current-buffer (find-file-noselect "paper.org")
(setenv "VENUE" v)
(wes--inject-setupfile v)
(org-latex-export-to-pdf nil nil nil t)
(when (file-exists-p "paper.pdf")
(rename-file "paper.pdf" outfile t))
@ -18,6 +45,7 @@
(defun wes/publish-site (&optional venue)
(let* ((v (or venue (or (getenv "VENUE") "arxiv"))))
(setenv "VENUE" v)
(wes--inject-setupfile v)
(setq org-publish-project-alist
`(("site-html"
:base-directory "."
@ -67,6 +95,7 @@
(progn
(with-current-buffer (find-file-noselect "paper.org")
(setenv "VENUE" tmp-name)
(wes--inject-setupfile v)
(org-latex-export-to-pdf nil nil nil t)
(when (file-exists-p "paper.pdf")
(rename-file "paper.pdf" outfile t))
@ -83,6 +112,7 @@
(org-export-exclude-tags '("noexport")))
(with-current-buffer (find-file-noselect "paper.org")
(setenv "VENUE" v)
(wes--inject-setupfile v)
(org-latex-export-to-pdf nil nil nil t)
(when (file-exists-p "paper.pdf")
(rename-file "paper.pdf" outfile t))