blob: 8748a553ebf25051c2ae619c57257ae151b065ef (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
;;; +ox.el --- org-export helpers -*- lexical-binding: t; -*-
;;; Commentary:
;;; Code:
(require 'ox)
;;; Run hooks before doing any exporting at all
(defcustom +org-export-pre-hook nil
"Functions to run /before/ `org-export-as' does anything.
These will run on the buffer about to be exported, NOT a copy."
:type 'hook)
(defun +org-export-pre-run-hooks (&rest _)
"Run hooks in `+org-export-pre-hook'."
(run-hooks '+org-export-pre-hook))
(defun +org-export-pre-hooks-insinuate ()
"Advise `org-export-as' to run `+org-export-pre-hook'."
(advice-add 'org-export-as :before #'+org-export-pre-run-hooks))
(defun +org-export-pre-hooks-remove ()
"Remove pre-hook advice on `org-export-as'."
(advice-remove 'org-export-as #'+org-export-pre-run-hooks))
(provide '+ox)
;;; +ox.el ends here
|