From 31b3239f080b4e0707c1e2cb7e88f28ce1e0ef50 Mon Sep 17 00:00:00 2001 From: Carsten Dominik Date: Wed, 11 Mar 2009 10:32:54 +0100 Subject: [PATCH] LaTeX export: Fix subscript export here as well. --- lisp/ChangeLog | 3 +++ lisp/org-export-latex.el | 12 +++++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 8eabac9d2..680e4b8e3 100755 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2009-03-11 Carsten Dominik + * org-export-latex.el (org-export-latex-special-chars) + (org-export-latex-treat-sub-super-char): Fix subscript export. + * org-exp.el (org-create-multibrace-regexp): Do not add backslashes to the class. diff --git a/lisp/org-export-latex.el b/lisp/org-export-latex.el index ebb7ade19..6ea323cc9 100644 --- a/lisp/org-export-latex.el +++ b/lisp/org-export-latex.el @@ -968,7 +968,7 @@ See the `org-export-latex.el' code for a complete conversion table." (match-string 3))) "") t t))))))) '(;"^\\([^\n$]*?\\|^\\)\\(\\\\?\\$\\)\\([^\n$]*\\)$" "\\(\\(\\\\?\\$\\)\\)" - "\\([a-za-z0-9]+\\|[ \t\n]\\|\\b\\|\\\\\\)\\(_\\|\\^\\)\\([a-za-z0-9]+\\|[ \t\n]\\|[:punct:]\\|{[a-za-z0-9]+}\\|([a-za-z0-9]+)\\)" + "\\([a-za-z0-9]+\\|[ \t\n]\\|\\b\\|\\\\\\)\\(_\\|\\^\\)\\({[^{}]+}\\|[a-za-z0-9]+\\|[ \t\n]\\|[:punct:]\\|{[a-za-z0-9]+}\\|([a-za-z0-9]+)\\)" "\\(.\\|^\\)\\(\\\\\\)\\([ \t\n]\\|[a-zA-Z&#%{}\"]+\\)" "\\(.\\|^\\)\\(&\\)" "\\(.\\|^\\)\\(#\\)" @@ -1007,10 +1007,12 @@ Convert CHAR depending on STRING-BEFORE and STRING-AFTER." (or (eq subsup t) (and (equal subsup '{}) (eq (string-to-char string-after) ?\{))) (string-match "[({]?\\([^)}]+\\)[)}]?" string-after)) - (format "%s$%s{%s}$" string-before char - (if (> (match-end 1) (1+ (match-beginning 1))) - (concat "\\mathrm{" (match-string 1 string-after) "}") - (match-string 1 string-after)))) + (org-export-latex-protect-string + (format "%s$%s{%s}$" string-before char + (if (and (> (match-end 1) (1+ (match-beginning 1))) + (not (equal (substring string-after 0 2) "{\\"))) + (concat "\\mathrm{" (match-string 1 string-after) "}") + (match-string 1 string-after))))) ((eq subsup t) (concat string-before "$" char string-after "$")) (t (org-export-latex-protect-string (concat string-before "\\" char "{}" string-after)))))