Hi all,
This patch fixes the issue I originally described here:
http://article.gmane.org/gmane.emacs.orgmode/32281
It preserves math-mode delimiters (e.g. "$" and "\(") in the document
title when exporting to LaTeX. (That is, it prevents them from being
escaped, by running the title through org-export-preprocess-string,
which marks them with the org-protected property.) It should work
regardless of whether the title is pulled from a headline, from the
text
before the first headline, or from an explicit #+TITLE declaration.
(This is my first time contributing a patch to a Free Software project
-- so please, let me know what you think!)
Best,
Richard
diff --git a/lisp/org-latex.el b/lisp/org-latex.el
index 4fcbbb7..f97436c 100644
--- a/lisp/org-latex.el
+++ b/lisp/org-latex.el
@@ -727,13 +727,33 @@ when PUB-DIR is set, use this as the
publishing directory."
(org-current-export-file buffer-file-name)
(title (or (and subtree-p (org-export-get-title-from-subtree))
(plist-get opt-plist :title)
- (and (not
- (plist-get opt-plist :skip-before-1st-heading))
- (org-export-grab-title-from-buffer))
+ (unless (plist-get opt-plist :skip-before-1st-heading)
+ (let ((pt (org-export-grab-title-from-buffer)))
+ (remove-text-properties 0 (length pt)
+ '(:org-license-to-kill t) pt)
+ pt))
(and buffer-file-name
(file-name-sans-extension
(file-name-nondirectory buffer-file-name)))
"No Title"))
+ ; Preprocessing preserves math environments in title
+ (title
+ (and title (string-match "\\S-" title)
+ (org-export-preprocess-string
+ title
+ :emph-multiline t
+ :for-LaTeX t
+ :comments nil
+ :tags (plist-get opt-plist :tags)
+ :priority (plist-get opt-plist :priority)
+ :footnotes (plist-get opt-plist :footnotes)
+ :drawers (plist-get opt-plist :drawers)
+ :timestamps (plist-get opt-plist :timestamps)
+ :todo-keywords (plist-get opt-plist :todo-keywords)
+ :add-text nil
+ :select-tags nil
+ :exclude-tags nil
+ :LaTeX-fragments nil)))
(filename
(and (not to-buffer)
(concat
_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode