Org: LaTeX engraved code, detect actual exporting
If you have :exports none for example, no code will actually be exported. So we clear a local variable when exporting starts then watch to see if any code is actually exported.
This commit is contained in:
parent
ae057f61da
commit
6f8fbb44d7
13
config.org
13
config.org
|
@ -7638,13 +7638,24 @@ entry in ~org-latex-scr-block~ we can easily add this as a recognised
|
|||
(org-latex-inline-scr-block--engraved inline-src-block contents info)
|
||||
(funcall orig-fn src-block contents info)))
|
||||
|
||||
(defvar-local org-export-has-code-p nil)
|
||||
|
||||
(defadvice! org-export-expect-no-code (&rest _)
|
||||
:before #'org-export-as
|
||||
(setq org-export-has-code-p nil))
|
||||
|
||||
(defadvice! org-export-register-code (&rest _)
|
||||
:after #'org-latex-src-block-engraved
|
||||
:after #'org-latex-inline-src-block-engraved
|
||||
(setq org-export-has-code-p t))
|
||||
|
||||
(setq org-latex-engraved-code-preamble "
|
||||
<<org-latex-engraved-code-preamble>>
|
||||
")
|
||||
|
||||
(add-to-list 'org-latex-feature-implementations '(engraved-code-setup :snippet org-latex-engraved-code-preamble :order 98) t)
|
||||
(add-to-list 'org-latex-feature-implementations '(engraved-code :requires engraved-code-setup :snippet (engrave-faces-latex-gen-preamble) :order 99) t)
|
||||
(add-to-list 'org-latex-conditional-features '("^[ \t]*#\\+begin_src\\|^[ \t]*#\\+BEGIN_SRC\\|src_[A-Za-z]" . engraved-code) t)
|
||||
(add-to-list 'org-latex-conditional-features '((and org-export-has-code-p "^[ \t]*#\\+begin_src\\|^[ \t]*#\\+BEGIN_SRC\\|src_[A-Za-z]") . engraved-code) t)
|
||||
|
||||
(defun org-latex-scr-block--engraved (src-block contents info)
|
||||
(let* ((lang (org-element-property :language src-block))
|
||||
|
|
Loading…
Reference in New Issue