emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[O] [PATCH] org-latex: Don't append newline to end of footnote


From: Lawrence Mitchell
Subject: [O] [PATCH] org-latex: Don't append newline to end of footnote
Date: Tue, 29 Mar 2011 15:20:54 +0100
User-agent: Gnus/5.110014 (No Gnus v0.14) Emacs/24.0.50 (gnu/linux)

* lisp/org-latex.el (org-export-latex-preprocess): Don't add a newline
character to a processed footnote.

The extra newline before the closing } character in a footnote
confuses the list parsing code.  The } appears at the beginning of a
line, so it looks like the end of the list.  LaTeX gobbles the space
anyway, so don't add it.
---
> Hi

> if I export the fiollowing snippet

> * Project Participants
> - Rainer M Krug :: [fn::My email]
> My address

The list is closed incorrectly.  This appears to be a problem in
the interaction between the list parsing and footnote processing
code.  When exporting footnotes, we add a newline at the end, so
in the above example the intermediate file seen by the list
processing code is:

| * Project Participants
| - Rainer M Krug :: \footnote{My email
| }
| ORG-LIST-END-MARKER
| My address

The } at the beginning of the line below the list entry is
considered to end the list, so we get:

| * Project Participants
| \begin{description}
| \item[Rainer M Krug] \footnote{My email
| \end{description}
| }
| ORG-LIST-END-MARKER
| My address

Note how the description list is ended /inside/ the footnote
command.

Since LaTeX gobbles the trailing space in the footnote anyway, it
makes sense not to insert it in the first place, which this patch
does.  Your test case now exports correctly.

Cheers,

Lawrence

 lisp/org-latex.el |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/lisp/org-latex.el b/lisp/org-latex.el
index 0460a84..3eb54b2 100644
--- a/lisp/org-latex.el
+++ b/lisp/org-latex.el
@@ -2432,9 +2432,7 @@ The conversion is made depending of STRING-BEFORE and 
STRING-AFTER."
               (let ((end (save-excursion
                            (if (re-search-forward "^$\\|^#.*$\\|\\[[0-9]+\\]" 
nil t)
                                (match-beginning 0) (point-max)))))
-                (setq footnote (concat (org-trim (buffer-substring (point) 
end))
-                                       ; last } won't be part of a link or 
list.
-                                       "\n"))
+                (setq footnote (org-trim (buffer-substring (point) end)))
                 (delete-region (point) end))
               (goto-char foot-beg)
               (delete-region foot-beg foot-end)
-- 
1.7.4.rc2.18.gb20e9





reply via email to

[Prev in Thread] Current Thread [Next in Thread]