emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/org 4d8d7d6cb4 5/5: ox-latex: Fix string/symbol engrave


From: ELPA Syncer
Subject: [elpa] externals/org 4d8d7d6cb4 5/5: ox-latex: Fix string/symbol engraved-preamble val
Date: Sat, 17 Sep 2022 07:57:55 -0400 (EDT)

branch: externals/org
commit 4d8d7d6cb42e388572b4f5d227e9b3c9da6ca4a7
Author: TEC <git@tecosaur.net>
Commit: TEC <git@tecosaur.net>

    ox-latex: Fix string/symbol engraved-preamble val
    
    * lisp/ox-latex.el (org-latex-generate-engraved-preamble): The type of
    engraved-theme could be a string or a symbol, depending on whether the
    default value was used.  This can lead to type issue bugs.  It is better
    to have the same type, so let's intern as needed to consistantly have
    symbols.
---
 lisp/ox-latex.el | 26 +++++++++++++++-----------
 1 file changed, 15 insertions(+), 11 deletions(-)

diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el
index fe484a20c3..1eb70ab208 100644
--- a/lisp/ox-latex.el
+++ b/lisp/ox-latex.el
@@ -1264,25 +1264,29 @@ which are given by `org-latex-engraved-preamble' and
          (engraved-preamble (plist-get info :latex-engraved-preamble))
          (engraved-theme (plist-get info :latex-engraved-theme))
          (engraved-themes
-          (cl-delete-duplicates
-           (org-element-map
-               (plist-get info :parse-tree)
-               '(src-block inline-src-block)
-             (lambda (src)
-               (plist-get
-                (org-export-read-attribute :attr_latex src)
-                :engraved-theme))
-             info)))
+          (mapcar
+           #'intern
+           (cl-delete-duplicates
+            (org-element-map
+                (plist-get info :parse-tree)
+                '(src-block inline-src-block)
+              (lambda (src)
+                (plist-get
+                 (org-export-read-attribute :attr_latex src)
+                 :engraved-theme))
+              info))))
          (gen-theme-spec
           (lambda (theme)
             (if (eq engrave-faces-latex-output-style 'preset)
-                (engrave-faces-latex-gen-preamble (when theme (intern theme)))
+                (engrave-faces-latex-gen-preamble theme)
               (engrave-faces-latex-gen-preamble-line
                'default
                (alist-get 'default
                           (if theme
                               (engrave-faces-get-theme (intern theme))
                             engrave-faces-current-preset-style)))))))
+    (when (stringp engraved-theme)
+      (setq engraved-theme (intern engraved-theme)))
     (when (string-match "^[ \t]*\\[FVEXTRA-SETUP\\][ \t]*\n?" 
engraved-preamble)
       (setq engraved-preamble
             (replace-match
@@ -1319,7 +1323,7 @@ which are given by `org-latex-engraved-preamble' and
                (lambda (theme)
                  (format
                   "\n\\newcommand{\\engravedtheme%s}{%%\n%s\n}"
-                  (replace-regexp-in-string "[^A-Za-z]" "" theme)
+                  (replace-regexp-in-string "[^A-Za-z]" "" (symbol-name theme))
                   (replace-regexp-in-string
                    "newcommand" "renewcommand"
                    (replace-regexp-in-string



reply via email to

[Prev in Thread] Current Thread [Next in Thread]