fork of org mode
Go to file
Carsten Dominik c6fd49726f LaTeX export: Fix some problems with protection of inline latex commands
Scot Becker writes:

>  Prompted by Chris Gray's request for org markup in Latex
>  environment, I thought I'd submit a note (for his sake and
>  others') about a few quirks of org-latex-export's handling
>  of embedded Latex markup in org documents.  I have been
>  puzzling with these for a while but only discovered the
>  problem triggers (and workarounds) this morning just before
>  Chris' mail arrived.  These are both about inline Latex
>  commands:
>
>  I use a few custom commands \mycommand{like this}, and
>  occasionally have to invoke the odd bit of standard LaTeX
>  markup, for example /when \textbf{embedding bold text}
>  inside italics/.  For the most part, these work fine, but
>  I've discovered the following two 'gotchas' that happen when
>  exporting to LaTeX.
>
>  1.  Inline Latex commands get their final curly brace
>  escaped with a slash (and therefore don't work) if they
>  spill over into another line, i.e. if they contain one or
>  more newlines.  This is true also for standard LaTeX
>  commands like \textbf{} and \emph{}.
>
>  ----------------SAMPLE------------------------
>  \mycommand{So, for example this
>  wrapped setence gets a slash added just after the
>  final period and before the curly brace.}  Org is quite
>  helpfully escaping the slash for LaTeX, apparently.
>
>  \mycommand{no trouble if it's all on one line}
>  ------------------END-------------------------
>
>  The workaround of putting all such commands on one line is
>  no hardship for me, since I use visual-line-mode in Emacs 23
>  and keep my paragraphs as single logical lines.  It might be
>  harder for those accustomed to hard-wrapping their
>  paragraphs.
>
>
>  2.  If you have two inline Latex commands on the same
>  logical line, org's latex export doesn't treat the text
>  between them in its usual manner.  Italics get processed,
>  but not the latexification of quotes.  ("this" --> ``this'')
>  For example:
>
>  ----------------SAMPLE------------------------
>  I have a short custom command to tell Latex to invoke a
>  Hebrew-language right-to-left environment when I want to refer to a
>  Hebrew phrase like this: \heb{phrase here}.  But then if I "quote
>  something,"  and follow that by another \heb{phrase}, the inner
>  quotation marks don't get processed.  Oddly enough, this problem is
>  only triggered when there is an inline Latex command both before and
>  after the  quoted material on the same logical line.
>
>  Now if you put a footnote in between those two inline Latex commands,
>  the output is really nutty:
>
>  And \heb{phrase here} with a footnote[fn:: Footnote here.]  I'm not
>  sure what funky org commands get invoked, but again, only when
>  bookended by an inline Latex command like \heb{phrase here}.
>  ------------------END-------------------------
>
>  The nutty output is a number in square brackets like
>  this[1], with the following at the bottom of the document:
>
>  \$\^{}{1}\$ Footnote here.
>
>  This has a the opposite work-around: break the lines so
>  those elements are not all on the same logical line. Put in
>  a few newlines.  Latex, of course doesn't care.  Do take
>  care not to start a newline with the org-footnote, like this
>  [fn:: Org doesn't parse a footnote command which starts on
>  its own line.]
>
>  This is just "for what it's worth" to those who use org-mode
>  as a front-end to writing for LaTeX.

These problems were caused by a regular expression for
matching latex macros with arguments, that did not allow any
newlines.  Now we have a much better regexp, that even
allows for three levels of nested braces.
2009-04-16 14:17:51 +02:00
BUGFIXING Intermediate state, I am just trying comiting now. 2008-01-31 16:04:26 +01:00
EXPERIMENTAL Removed some old, no longer needed files. 2008-12-16 14:08:30 +01:00
ORGWEBPAGE Release 6.25f 2009-04-15 14:37:13 +02:00
UTILITIES Release 6.22b 2009-02-10 20:21:33 +01:00
contrib Bundle htmlize.el with Org in the contrib directory 2009-04-15 17:36:02 +02:00
doc Docs: Fix info structure problem 2009-04-15 14:45:01 +02:00
lisp LaTeX export: Fix some problems with protection of inline latex commands 2009-04-16 14:17:51 +02:00
xemacs Minor patch from Greg Chernov for xemacs/noutline. 2008-04-19 19:07:40 +02:00
.dir-settings.el Add .dir-settings.el file to unify coding styles. 2008-11-20 15:45:22 +01:00
.gitignore Add a variable index to the manual 2009-02-13 17:38:52 +01:00
ChangeLog Inline Tasks: Fix bugs and installation problems 2009-03-31 20:12:37 +02:00
Makefile Rename org-export-latex.el to org-latex.el 2009-04-09 17:25:44 +02:00
README Preparing a new release setup. 2008-03-31 12:59:00 +02:00
README_DIST Version number pushed to 6.25trans 2009-04-07 18:43:42 +02:00
README_GIT Fix typos. 2008-10-24 22:50:36 +02:00
request-assign-future.txt Release 5.13e 2008-01-31 11:37:24 +01:00

README

This is the Emacs Org project, an emacs subsystem for organizing your life

The homepage of Org is at http://orgmode.org

This distribution contains:

README
    This file.

README_DIST
    The README file for the distribution (zip and tar files)

README_GIT
    Information about the git repository and how to contribute
    to Org-mode development. 

lisp/
    Directory with all the Emacs Lisp files that make up Org.

doc/
    The documentation files.  org.texi is the source of the
    documentation, org.html and org.pdf are formatted versions of it.

xemacs/
    The xemacs directory contains special code for XEmacs users, in
    particular a port of the GNU Emacs outline.el to XEmacs.  Org-mode
    does not work under XEmacs without this file installed.  It did
    until version 4.37, but no longer.

CONTRIB/
    A diretory with third-party additions for Org.  Some really cool
    stuff is in there.

ORGWEBPAGE/
    Directory with the source files for the orgmode.org web page.
    
ChangeLog
    The standard ChangeLog file.

Makefile
    The makefile to compile and install Org, and also for maintenance
    tasks.

request-assign-future.txt
    The form that contributors have to sign and get processed with the
    FSF before contributed changes can be integrated into the Org
    core.  All files in this distribution except the CONTRIB directory
    have copyright assigned to the FSF.

EXPERIMENTAL
    Experimental code, not necessarily FSF copyright.