Browse Source

ox-latex: Fix LATEX_HEADER_EXTRA keyword

* lisp/ox-latex.el (org-latex-make-preamble): Do not include
  LATEX_HEADER_EXTRA keywords' contents when previewing a LaTeX
  fragment.

Reported-by: Mario Román <mromang08@gmail.com>
<http://lists.gnu.org/archive/html/emacs-orgmode/2017-06/msg00477.html>
Nicolas Goaziou 2 years ago
parent
commit
e903288e50
1 changed files with 10 additions and 8 deletions
  1. 10 8
      lisp/ox-latex.el

+ 10 - 8
lisp/ox-latex.el

@@ -1623,15 +1623,15 @@ non-nil, only includes packages relevant to image generation, as
 specified in `org-latex-default-packages-alist' or
 `org-latex-packages-alist'."
   (let* ((class (plist-get info :latex-class))
-	 (class-options (plist-get info :latex-class-options))
-	 (header (nth 1 (assoc class (plist-get info :latex-classes))))
 	 (class-template
 	  (or template
-	      (and (stringp header)
-		   (if (not class-options) header
-		     (replace-regexp-in-string
-		      "^[ \t]*\\\\documentclass\\(\\(\\[[^]]*\\]\\)?\\)"
-		      class-options header t nil 1)))
+	      (let* ((class-options (plist-get info :latex-class-options))
+		     (header (nth 1 (assoc class (plist-get info :latex-classes)))))
+		(and (stringp header)
+		     (if (not class-options) header
+		       (replace-regexp-in-string
+			"^[ \t]*\\\\documentclass\\(\\(\\[[^]]*\\]\\)?\\)"
+			class-options header t nil 1))))
 	      (user-error "Unknown LaTeX class `%s'" class))))
     (org-latex-guess-polyglossia-language
      (org-latex-guess-babel-language
@@ -1644,7 +1644,9 @@ specified in `org-latex-default-packages-alist' or
 	 snippet?
 	 (mapconcat #'org-element-normalize-string
 		    (list (plist-get info :latex-header)
-			  (plist-get info :latex-header-extra)) ""))))
+			  (and (not snippet?)
+			       (plist-get info :latex-header-extra)))
+		    ""))))
       info)
      info)))