diff options
author | Richard Lawrence <richard.lawrence@berkeley.edu> | 2010-10-25 20:41:54 +0000 |
---|---|---|
committer | Carsten Dominik <carsten.dominik@gmail.com> | 2010-11-21 09:51:52 +0100 |
commit | c579f08eeee1cd92b53fdb92925a7d3035012816 (patch) | |
tree | e5767ea9e35226df11a3adb8b0ae4c459d30d571 | |
parent | d637546804727d2fb4eacf3086a923c645efd2e5 (diff) | |
download | org-mode-c579f08eeee1cd92b53fdb92925a7d3035012816.tar.gz |
Preserve math environments in title when exporting to LaTeX
* lisp/org-latex.el (org-export-as-latex): Sent the section title
through the preprocessor.
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
-rw-r--r-- | lisp/org-latex.el | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/lisp/org-latex.el b/lisp/org-latex.el index 33bfc5e..d7677f5 100644 --- a/lisp/org-latex.el +++ b/lisp/org-latex.el @@ -729,13 +729,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 |