emacs-orgmode
[Top][All Lists]

## Re: [Orgmode] latex enumeration issue

 From: Mark Elston Subject: Re: [Orgmode] latex enumeration issue Date: Wed, 03 Feb 2010 18:24:02 -0800 User-agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.7) Gecko/20100111 Thunderbird/3.0.1

Carsten,

Never mind.  I had had problems in the past getting the hook function
to work because I was making it harder than it needed to be.  I just
went back to trying my hand at it and got it working pretty easily.
Sigh.

I added a hook function to org-export-preprocess-hook and removed the
blank headers that way.  That solved the problem before it even starts.
I probably don't have to do any perl post-processing at all, now.

Thanks for all the help.

Mark

P.S.  If anyone is interested here is the embarrassingly simple hook
function I came up with.  I show it not because I think anyone else
will find this thing useful but as an example of how simple it really
is to write this kind of thing.

;;; Export Hooks
(while (re-search-forward "^[*]+   [ ]+:[a-zA-Z0-9]+:\$" nil t)
(progn
(beginning-of-line)
(kill-line 0))))

On 2/3/2010 12:41 PM, Mark Elston wrote:

Hi Carsten,

Thanks for the reply. My responses are below:

On 2/3/2010 2:34 AM, Carsten Dominik wrote:

Hi Mark,

On Feb 2, 2010, at 11:08 PM, Mark Elston wrote:


A year ago Flavio de Souza asked a question about latex enumerations
that is similar to a problem I now have. The answer given then was a
workaround that doesn't apply in my case.

This stems from my project of using a single file to maintain source
for generating my class notes *and* student handouts for my classes.
This allows me to take advantage of the common outline and common
text while specifying text that should go into only one or the other
document.

I manage to do this by something like:

Some common text

More common text

*** :handouts:
Something for handouts only

*** :both:
More common text

*** :notes:
My class notes text

*** :both:
More common text

I have a makefile which creates a temporary .org file by
prepending a specific header on this file for each type of
output (handouts or notes), exporting to a latex file, running
a perl script to remove any (sub)+sections with just the
tags in them, and running pdflatex to generate the output.

So far, so good.

However, I ran into a problem with enumerations. Sometimes I
have enumerations in my original org file which are separated by
the 'empty' sectioning commands. This ends the enumeration and
the next enumerated item starts a new one. The result is a set
of enumerations with a single element in it. I get something
like:

1. Blah

handout-specific text

1. More Blah

etc. These should really have been 1, 2, etc.



I don't understand. Why is the text "handout-specific text" still there?
Do you need it between the items?


Yes (see below). I have in each of these items something I want as part
of the handouts and some additional info I want to include for myself.

> Do you want to make it part of the

item (indentation would solve this).


It will always be a part of the item, otherwise I would have made it a
footnote or left it to after the enumeration.

Unfortunately, indentation doesn't solve this. My example above was a
little shy on details, sorry.

If I have a file with:

------------------------------------
#+EXPORT_EXCLUDE_TAGS: notes

Common Text

1) Blah

** :handouts:
handout-specific text
** :notes:
note-specific text
** :both:

2) More Blah

** :handouts:
handout-specific text
** :notes:
note-specific text
** :both:

3) Even more...
------------------------------------

After I export to latex and post process with my perl script I
have the following for the body of my document:

------------------------------------

\label{sec-1}

Common Text

\begin{enumerate}
\item Blah
\end{enumerate}

handout-specific text

\begin{enumerate}
\item More Blah
\end{enumerate}

handout-specific text

\begin{enumerate}
\item Even more\ldots{}
\end{enumerate}
------------------------------------

This is because the 'empty' placeholder headings (tags-only)
interrupt the enumeration processing for each item, effectively
ending it and causing the insertion of the \end{enumeration}.
So each item is in it's own enumeration and the number restarts
from 1 with each item.





The only workaround I have so far is to make all these items lists
instead of enumerations. This works OK but they would make much more
sense as enumerations.



How does this help?



It eliminates the numbers and uses only list marks instead. That way
I don't have to worry about incorrect numbering of enumerations.
Unfortunately, the text between items is still not indented properly
since it appears outside the list environment.

It is not ideal but it is something I can live with if I have to.

Mark

_______________________________________________
Emacs-orgmode mailing list


`