branch: externals-release/org
commit c4eb9b45cecaad7f6623433fcec0373374a51ddb
Author: Ihor Radchenko <yanta...@posteo.net>
Commit: Ihor Radchenko <yanta...@posteo.net>

    org-latex-export-as-latex: Work around LaTeX-mode + Auctex bug
    
    * lisp/ox-latex.el (org-latex-export-as-latex): Let-bind
    `TeX-parse-self' to avoid error in non-file buffers.  This issue is
    only fixed in Emacs 31, so we need a workaround for earlier Emacs
    versions.
    
    Reported-by: Vangelis Evangelou <evange...@gmail.com>
    Link: 
https://orgmode.org/list/cad1af2ci+662zzyfxqv-opmnmvwwqggm15zsbhrv5wotupj...@mail.gmail.com
---
 lisp/ox-latex.el | 15 ++++++++++-----
 1 file changed, 10 insertions(+), 5 deletions(-)

diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el
index e62e8404b6..9d1777c43f 100644
--- a/lisp/ox-latex.el
+++ b/lisp/ox-latex.el
@@ -4282,11 +4282,16 @@ Export is done in a buffer named \"*Org LATEX 
Export*\", which
 will be displayed when `org-export-show-temporary-export-buffer'
 is non-nil."
   (interactive)
-  (org-export-to-buffer 'latex "*Org LATEX Export*"
-    async subtreep visible-only body-only ext-plist
-    (if (fboundp 'major-mode-remap)
-        (major-mode-remap 'latex-mode)
-      #'LaTeX-mode)))
+  (defvar TeX-parse-self) ;; defined in tex.el
+  (let (;; FIXME: Working around LaTeX-mode being broken in non-file buffers.
+        ;; To be removed once we drop Emacs 30 and earlier, where the problem
+        ;; is not yet fixed.
+        (TeX-parse-self nil))
+    (org-export-to-buffer 'latex "*Org LATEX Export*"
+      async subtreep visible-only body-only ext-plist
+      (if (fboundp 'major-mode-remap)
+          (major-mode-remap 'latex-mode)
+        #'LaTeX-mode))))
 
 ;;;###autoload
 (defun org-latex-convert-region-to-latex ()

Reply via email to