orgmode-babel.nvim/lua/orgmode-babel/tangle_all.el
marshmallow a870d79674
init
2023-06-25 14:19:22 +10:00

22 lines
697 B
EmacsLisp

(defun tangle-org-babel-blocks (&optional block-names)
"Tangle org-mode code blocks in the current buffer. If BLOCK-NAMES is provided, only tangle those blocks."
(interactive)
(if block-names
(dolist (block block-names)
(save-restriction
(goto-char (point-min))
(while (re-search-forward (concat "#\\+NAME: " (regexp-quote block)) nil t)
(org-babel-tangle-block))))
(org-babel-tangle)))
(setq org-confirm-babel-evaluate nil)
(find-file (nth 0 command-line-args-left))
(let ((blocks (cdr command-line-args-left)))
(if blocks
(tangle-org-babel-blocks blocks)
(tangle-org-babel-blocks)))
(save-buffer)
(save-buffers-kill-emacs)