emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [Orgmode] Unnumbered sections in LaTeX export


From: Thomas S. Dye
Subject: Re: [Orgmode] Unnumbered sections in LaTeX export
Date: Sat, 19 Sep 2009 06:32:20 -1000

Hi Carsten,

I was trying to combine these two variables cleverly but couldn't come up with a solution that worked. I'd like a certain level, say ***, to be one thing some times and another thing at other times in the same output.

It would be neat if org-export-latex-low-levels could be set up like this:
("\\begin{%s}" "\\end{%s}" "\\begin{%s}" "\\end{%s}")
but when I tried it, %s was expanded only in the first of each pair.

A construct like this would allow the user to export any environment on a case by case basis.
So, in my case, I could have this in my org file when I want columns:
*** columns
And this in the instances where I don't want columns:
*** nocolumns
(assuming nocolumns is a suitably defined LaTeX command).

All the best,
Tom

On Sep 18, 2009, at 7:29 AM, Carsten Dominik wrote:

Hi Thomas,

I have not really looks at this problem, but would it help to use
a clever combination of org-export-latex-low-levels and org- export=headline-levels?

- Carsten

On Sep 15, 2009, at 11:04 PM, Thomas S. Dye wrote:


On Sep 15, 2009, at 7:42 AM, Sebastian Rose wrote:

"Thomas S. Dye" <address@hidden> writes:

Thanks Sebastian. I appreciate the expert assistance. I have a simple export to Beamer working and was trying to implement automatic export of columns, too. The starred sections were going to be placeholders for the columns heading level when it wasn't used. I've found that skipping a headline level in the source causes the latex exporter to skip over subsequent inferior levels, so it isn't possible to assign a heading level to columns and then use them or not as
the  case requires.

You could try to add a class to `org-export-latex-classes'. For such a
class, you can define a mapping for each headline level:


("my-beamer-class" "\\documentclass...\\usepackage{beamer}"
("\\chapter{%s}" . "\\my-chapter*{%s}")
("\\section{%s}" . "\\my-section*{%s}")
("\\subsection{%s}" . "\\my-subsection*{%s}")
("\\subsubsection{%s}" . "\\my-subsubsection*{%s}")))

I don't know if this is an easy thing to do, since I only did this once
a long time ago.
But it seems it's worth a try.


See:
http://orgmode.org/manual/Sectioning-structure.html#Sectioning-structure
http://127.0.0.1/devel/org-notes/org-search.php?speedbar=1&main=/devel/org-notes/org-search.php




Sebastian

Yes, that is what I'm playing around with. I have a useful, but simple export to beamer working. I've been trying without success to implement beamer's \begin{columns} ... \end{columns} environment. This is a fairly common construct in beamer that occurs inside some frames but not in others. It seems natural to put it like this:

("\\section{%s}" . "\\section{%s}")
("\\subsection{%s}" . "\\subsection{%s}")
("\\begin{frame}\\frametitle{%s}" "\\end{frame}" "\\begin{frame}\ \frametitle{%s}" "\\end{frame}") ("\\begin{columns}\\label{%s}" "\\end{columns}" "\\begin{columns}\ \label{%s}" "\\end{columns}")

where the \label{%s} puts the mandatory use of %s somewhere it won't affect the LaTeX compilation.

The problem with this is that for frames where columns aren't wanted, simply leaving out the fourth level in org means that everything below it won't be exported.

This example results in an empty frame (Item 1 and Item 2 are dropped from the export):

* Section head
** Subsection head
*** Frame title
***** Item 1
***** Item 2

It seems that a placeholder of some kind is needed if the columns environment isn't wanted.

Initially, I explored using the definition for the unnumbered sections, like this:

("\\begin{columns}\\label{%s}" "\\end{columns}" "%%\\begin{columns}\ \label{%s}" "%%\\end{columns}")

which would use a LaTeX comment as a placeholder. This won't work because the switch for numbered/unnumbered sections is set at the file level and not for individual instances.

Then, I thought to define a do-nothing environment in LaTeX

\newenvironment{nocolumns}{}{}

set it up in .emacs like this:

("\\begin{%s}" "\\end{%s}" "\\begin{%s}" "\\end{%s}")

and then put this in my .org file:

* Section head
** Subsection head
*** Frame title
**** nocolumns
***** Item 1
***** Item 2

But this doesn't work because %s doesn't expand in \\end{%s}. I get \begin{nocolumns} ... \end{%s}, which LaTeX doesn't like.

So, I'm stumped for now, but still pleased to have a simple export from org to beamer working, albeit one that produces frames without columns.

All the best,
Tom





_______________________________________________
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
address@hidden
http://lists.gnu.org/mailman/listinfo/emacs-orgmode






reply via email to

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