From: "Thomas S. Dye" <tsd@tsdye.com>
To: Carsten Dominik <carsten.dominik@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: Unnumbered sections in LaTeX export
Date: Sat, 19 Sep 2009 06:32:20 -1000 [thread overview]
Message-ID: <811FAA65-7717-46AC-88FB-2122F31ACCFD@tsdye.com> (raw)
In-Reply-To: <B6274A02-DA5B-41C8-93BA-C73770FD651E@gmail.com>
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" <tsd@tsdye.com> 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.
>> Emacs-orgmode@gnu.org
>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
>
prev parent reply other threads:[~2009-09-19 16:45 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-09-13 21:06 Unnumbered sections in LaTeX export Thomas S. Dye
2009-09-14 1:26 ` Matt Lundin
2009-09-14 20:21 ` Sebastian Rose
[not found] ` <1CCB79D7-DB7A-4274-B6E8-F53EE2B69638@tsdye.com>
[not found] ` <87ocpcvq2t.fsf@gmx.de>
2009-09-15 7:43 ` Thomas S. Dye
[not found] ` <87iqfkayuc.fsf@gmx.de>
2009-09-15 22:04 ` Thomas S. Dye
2009-09-18 17:29 ` Carsten Dominik
2009-09-19 16:32 ` Thomas S. Dye [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=811FAA65-7717-46AC-88FB-2122F31ACCFD@tsdye.com \
--to=tsd@tsdye.com \
--cc=carsten.dominik@gmail.com \
--cc=emacs-orgmode@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.