emacs-orgmode
[Top][All Lists]
Advanced

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

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


From: Nicolas
Subject: [O] Re: [PATCH] org-latex: Don't append newline to end of footnote
Date: Tue, 29 Mar 2011 19:38:43 +0200

Hello,

Lawrence Mitchell <address@hidden> writes:

> * 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.

The analysis is good, but unfortunately the patch has a flaw.

In fact, your patch work in that particular situation, but not if
a footnote definition ends with a list, nor if it ends with a link. To
solve the latter, you need to insert a white-space before the closing
bracket. To solve the former, I thought adding a newline instead of the
white-space was enough, but it now appears it was a bad idea.

Thus, the solution lies elsewhere.

Regards,

-- 
Nicolas



reply via email to

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