* Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
@ 2014-05-07 19:01 Sebastien Vauban
2014-05-07 22:24 ` Suvayu Ali
0 siblings, 1 reply; 12+ messages in thread
From: Sebastien Vauban @ 2014-05-07 19:01 UTC (permalink / raw)
To: emacs-orgmode-mXXj517/zsQ
Hello,
To insert a short title for a Beamer presentation, you can glean the
following answers on the Web:
- Using `#+BEAMER_HEADER_EXTRA' which -is- +was+ exported /after/ the
`\title' command.
See
https://lists.gnu.org/archive/html/emacs-orgmode/2011-01/msg00177.html.
That does not work anymore since Org 8...
- Using a filter to remove the exported title, and replace it with
yours.
See http://comments.gmane.org/gmane.emacs.orgmode/57450.
That does not help when one wants to have portable documents -- that
don't require a particular config to be recompiled correctly by
another end-user.
- Using a very mean workaround (which I found):
#+BIND: org-latex-title-command "\\title[Short title]{Title maybe\\\\very long}\\maketitle"
That's semantically impure IMO, and could prove to be fragile over
time.
Hence, a question: as we have/had both `#+BEAMER_HEADER' and
`#+BEAMER_HEADER_EXTRA', couldn't we have `#+BEAMER_HEADER_EXTRA'
inserted just before the \begin{document}, and let `#+BEAMER_HEADER'
inserted as now?
That would allow to override the title easily with a LaTeX command,
without being impure, doesn't it?
Best regards,
Seb
--
Sebastien Vauban
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-07 19:01 Insert #+BEAMER_HEADER_EXTRA before \begin{document}? Sebastien Vauban
@ 2014-05-07 22:24 ` Suvayu Ali
2014-05-07 23:26 ` Nick Dokos
0 siblings, 1 reply; 12+ messages in thread
From: Suvayu Ali @ 2014-05-07 22:24 UTC (permalink / raw)
To: emacs-orgmode
Hi Seb,
On Wed, May 07, 2014 at 09:01:39PM +0200, Sebastien Vauban wrote:
> Hello,
>
> To insert a short title for a Beamer presentation, you can glean the
> following answers on the Web:
>
> - Using `#+BEAMER_HEADER_EXTRA' which -is- +was+ exported /after/ the
> `\title' command.
I use this:
#+LATEX_HEADER: \subtitle{Some subtitle}
I can confirm this worked with some version of 8.x, however I have not
used it recently.
Hope this helps,
--
Suvayu
Open source is the future. It sets us free.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-07 22:24 ` Suvayu Ali
@ 2014-05-07 23:26 ` Nick Dokos
2014-05-08 1:38 ` Suvayu Ali
0 siblings, 1 reply; 12+ messages in thread
From: Nick Dokos @ 2014-05-07 23:26 UTC (permalink / raw)
To: emacs-orgmode
Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:
> Hi Seb,
>
> On Wed, May 07, 2014 at 09:01:39PM +0200, Sebastien Vauban wrote:
>> Hello,
>>
>> To insert a short title for a Beamer presentation, you can glean the
>> following answers on the Web:
>>
>> - Using `#+BEAMER_HEADER_EXTRA' which -is- +was+ exported /after/ the
>> `\title' command.
>
> I use this:
>
> #+LATEX_HEADER: \subtitle{Some subtitle}
>
> I can confirm this worked with some version of 8.x, however I have not
> used it recently.
>
Are you sure it worked with beamer? AFAICT, it just adds a subtitle
to the title slide, nothing more. In particular, beamer does not seem
to use it for the purpose that Seb wants it: a (limited-length) marker
on each slide.
Tested with this:
--8<---------------cut here---------------start------------->8---
#+LaTeX_CLASS: beamer
#+LaTeX_CLASS_OPTIONS: [presentation]
#+BEAMER_THEME: Madrid
#+COLUMNS: %45ITEM %10BEAMER_env(Env) %10BEAMER_act(Act) %4BEAMER_col(Col) %8BEAMER_opt(Opt)
#+PROPERTY: BEAMER_col_ALL 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0.0 :ETC
#+TITLE: A very long title that will overflow the box that beamer allocates for it on each slide
#+LATEX_HEADER: \subtitle{A shorter title}
* Slide 1
*** Item 1
*** Item 2
* Slide 2
*** Item 3
*** Item 4
--8<---------------cut here---------------end--------------->8---
Nick
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-07 23:26 ` Nick Dokos
@ 2014-05-08 1:38 ` Suvayu Ali
2014-05-08 13:38 ` Sebastien Vauban
0 siblings, 1 reply; 12+ messages in thread
From: Suvayu Ali @ 2014-05-08 1:38 UTC (permalink / raw)
To: emacs-orgmode
Hi Nick,
On Wed, May 07, 2014 at 07:26:26PM -0400, Nick Dokos wrote:
> Suvayu Ali <fatkasuvayu+linux@gmail.com> writes:
>
> > Hi Seb,
> >
> > On Wed, May 07, 2014 at 09:01:39PM +0200, Sebastien Vauban wrote:
> >> Hello,
> >>
> >> To insert a short title for a Beamer presentation, you can glean the
> >> following answers on the Web:
> >>
> >> - Using `#+BEAMER_HEADER_EXTRA' which -is- +was+ exported /after/ the
> >> `\title' command.
> >
> > I use this:
> >
> > #+LATEX_HEADER: \subtitle{Some subtitle}
> >
> > I can confirm this worked with some version of 8.x, however I have not
> > used it recently.
> >
>
> Are you sure it worked with beamer? AFAICT, it just adds a subtitle
> to the title slide, nothing more. In particular, beamer does not seem
> to use it for the purpose that Seb wants it: a (limited-length) marker
> on each slide.
You are right. I misunderstood Seb's question. :-p
I think I looked into this sometime back and I don't think there was a
nice resolution (as evidenced by Seb's links). That said, I vaguely
recall a discussion on this 1 and half to 2 years back (that would be
the old exporter of course). I think supporting this as a feature was
bypassed since this is very much LaTeX specific.
Hope this helps,
--
Suvayu
Open source is the future. It sets us free.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-08 1:38 ` Suvayu Ali
@ 2014-05-08 13:38 ` Sebastien Vauban
2014-05-08 14:49 ` Suvayu Ali
2014-05-08 15:37 ` Eric S Fraga
0 siblings, 2 replies; 12+ messages in thread
From: Sebastien Vauban @ 2014-05-08 13:38 UTC (permalink / raw)
To: emacs-orgmode-mXXj517/zsQ
Suvayu Ali wrote:
> On Wed, May 07, 2014 at 07:26:26PM -0400, Nick Dokos wrote:
>> Suvayu Ali <fatkasuvayu+linux-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:
>>> On Wed, May 07, 2014 at 09:01:39PM +0200, Sebastien Vauban wrote:
>>>
>>>> To insert a short title for a Beamer presentation, you can glean
>>>> the following answers on the Web:
>>>>
>>>> - Using `#+BEAMER_HEADER_EXTRA' which -is- +was+ exported /after/ the
>>>> `\title' command.
>>>
>>> I use this:
>>>
>>> #+LATEX_HEADER: \subtitle{Some subtitle}
>>
>> Are you sure it worked with beamer? AFAICT, it just adds a subtitle
>> to the title slide, nothing more. In particular, beamer does not seem
>> to use it for the purpose that Seb wants it: a (limited-length) marker
>> on each slide.
>
> You are right. I misunderstood Seb's question. :-p
Yes.
> I think I looked into this sometime back and I don't think there was a
> nice resolution (as evidenced by Seb's links). That said, I vaguely
> recall a discussion on this 1 and half to 2 years back (that would be
> the old exporter of course). I think supporting this as a feature was
> bypassed since this is very much LaTeX specific.
While I think that LaTeX should be treated as a first-class backend (and
not just 1 out of 10 or so), I'm not asking for something new to be
added: just that #+BEAMER_HEADER is inserted before
the \begin{document} -- hence *after* things like \title, \author, \date,
and \usetheme.
Right now, in an Org Beamer document, we can add specific code via
3 different types of call (with example data):
- #+LaTeX_HEADER: \institute[short name]{Full name}
- #+LaTeX_HEADER_EXTRA: \usepackage{lxfonts}
- #+BEAMER_HEADER: \setbeamercolor{structure}{fg=craneblue}
If we simply allow the placeholder for #+BEAMER_HEADER to be somewhere
else (right before \begin{document}) than where it currently is, it will
allow one to:
- add a short title of the document for the footer
- add a short author name for the footer (see AnnArbor)
- add a short date version (for example, "May 2014" instead of the full
"8 May 2014")
- customize some colors of the Beamer themes
- and many other things...
The above things are currently (almost, for some) impossible. Changing
where the #+BEAMER_HEADER placeholder gets inserted makes them possible
and easy.
Best regards,
Seb
--
Sebastien Vauban
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-08 13:38 ` Sebastien Vauban
@ 2014-05-08 14:49 ` Suvayu Ali
2014-05-08 15:37 ` Eric S Fraga
1 sibling, 0 replies; 12+ messages in thread
From: Suvayu Ali @ 2014-05-08 14:49 UTC (permalink / raw)
To: emacs-orgmode
On Thu, May 08, 2014 at 03:38:21PM +0200, Sebastien Vauban wrote:
> Suvayu Ali wrote:
> > On Wed, May 07, 2014 at 07:26:26PM -0400, Nick Dokos wrote:
>
> > I think I looked into this sometime back and I don't think there was a
> > nice resolution (as evidenced by Seb's links). That said, I vaguely
> > recall a discussion on this 1 and half to 2 years back (that would be
> > the old exporter of course). I think supporting this as a feature was
> > bypassed since this is very much LaTeX specific.
>
> While I think that LaTeX should be treated as a first-class backend (and
> not just 1 out of 10 or so), I'm not asking for something new to be
> added: just that #+BEAMER_HEADER is inserted before
> the \begin{document} -- hence *after* things like \title, \author, \date,
> and \usetheme.
>
> Right now, in an Org Beamer document, we can add specific code via
> 3 different types of call (with example data):
>
> - #+LaTeX_HEADER: \institute[short name]{Full name}
> - #+LaTeX_HEADER_EXTRA: \usepackage{lxfonts}
> - #+BEAMER_HEADER: \setbeamercolor{structure}{fg=craneblue}
>
> If we simply allow the placeholder for #+BEAMER_HEADER to be somewhere
> else (right before \begin{document}) than where it currently is, it will
> allow one to:
>
> - add a short title of the document for the footer
> - add a short author name for the footer (see AnnArbor)
> - add a short date version (for example, "May 2014" instead of the full
> "8 May 2014")
> - customize some colors of the Beamer themes
> - and many other things...
>
> The above things are currently (almost, for some) impossible. Changing
> where the #+BEAMER_HEADER placeholder gets inserted makes them possible
> and easy.
You have good arguments. Maybe it should be reconsidered.
--
Suvayu
Open source is the future. It sets us free.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-08 13:38 ` Sebastien Vauban
2014-05-08 14:49 ` Suvayu Ali
@ 2014-05-08 15:37 ` Eric S Fraga
2014-05-08 19:55 ` Andreas Leha
[not found] ` <87eh04703g.fsf-hclig2XLE9Zaa/9Udqfwiw@public.gmane.org>
1 sibling, 2 replies; 12+ messages in thread
From: Eric S Fraga @ 2014-05-08 15:37 UTC (permalink / raw)
To: Sebastien Vauban; +Cc: emacs-orgmode
On Thursday, 8 May 2014 at 15:38, Sebastien Vauban wrote:
[...]
> The above things are currently (almost, for some) impossible. Changing
> where the #+BEAMER_HEADER placeholder gets inserted makes them possible
> and easy.
but unfortunately would make other things more difficult. For instance,
I often redefine the date command (and sometimes title and author) to do
something different. If the header entries were placed after the use of
theses, things would break for me.
I think the creation of an ...EXTRA directive would be better but I've
argued for this before and have lost that argument.
You can achieve what you want by redefining \title, I would
suggest. Not pretty but it works.
--
: Eric S Fraga (0xFFFCF67D), Emacs 24.3.1, Org release_8.2.6-937-g60502a
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-08 15:37 ` Eric S Fraga
@ 2014-05-08 19:55 ` Andreas Leha
[not found] ` <87eh04703g.fsf-hclig2XLE9Zaa/9Udqfwiw@public.gmane.org>
1 sibling, 0 replies; 12+ messages in thread
From: Andreas Leha @ 2014-05-08 19:55 UTC (permalink / raw)
To: emacs-orgmode
Eric S Fraga <e.fraga@ucl.ac.uk> writes:
> On Thursday, 8 May 2014 at 15:38, Sebastien Vauban wrote:
>
> [...]
>
>> The above things are currently (almost, for some) impossible. Changing
>> where the #+BEAMER_HEADER placeholder gets inserted makes them possible
>> and easy.
>
> but unfortunately would make other things more difficult. For instance,
> I often redefine the date command (and sometimes title and author) to do
> something different. If the header entries were placed after the use of
> theses, things would break for me.
>
Couldn't you use #+LATEX_HEADER for that sort of thing, then?
> I think the creation of an ...EXTRA directive would be better but I've
> argued for this before and have lost that argument.
I agree here. Why not make that more transparent and
have #+LATEX_HEADER and #+LATEX_HEADER_END as well as #+BEAMER_HEADER
and #+BEAMER_HEADER_END ?
>
> You can achieve what you want by redefining \title, I would
> suggest. Not pretty but it works.
(Isn't that true for your use case of redefining date, too?)
And last but not least: I think the particular use case of adding a
short title to a beamer presentation is common enough to deserve proper
org mode support.
Regards,
Andreas
^ permalink raw reply [flat|nested] 12+ messages in thread
[parent not found: <87eh04703g.fsf-hclig2XLE9Zaa/9Udqfwiw@public.gmane.org>]
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
[not found] ` <87eh04703g.fsf-hclig2XLE9Zaa/9Udqfwiw@public.gmane.org>
@ 2014-05-21 17:59 ` Sebastien Vauban
2014-06-15 20:10 ` Nicolas Goaziou
0 siblings, 1 reply; 12+ messages in thread
From: Sebastien Vauban @ 2014-05-21 17:59 UTC (permalink / raw)
To: emacs-orgmode-mXXj517/zsQ
Hi Eric, Suvayu and al.
Eric S Fraga wrote:
> On Thursday, 8 May 2014 at 15:38, Sebastien Vauban wrote:
>> The above things are currently (almost, for some) impossible. Changing
>> where the #+BEAMER_HEADER placeholder gets inserted makes them possible
>> and easy.
>
> but unfortunately would make other things more difficult. For instance,
> I often redefine the date command (and sometimes title and author) to do
> something different. If the header entries were placed after the use of
> theses, things would break for me.
>
> I think the creation of an ...EXTRA directive would be better but I've
> argued for this before and have lost that argument.
I also think that having 2 locations is better than just 1, as I'm also
sure one will work better or only for specific things, but will break
for others.
Having 2 placeholders allow for full customization, if correctly
placed -- at least, one just before the begin{document}, the other?
> You can achieve what you want by redefining \title, I would
> suggest. Not pretty but it works.
For sure, such a thing is not pretty:
--8<---------------cut here---------------start------------->8---
#+BIND: org-latex-title-command "\\title[Short title]{Title which can be\\\\very long}\n\\author[F. Last]{\\href{mailto:first.last-C43h488GkGQ@public.gmane.org}{First Last}}\n\\date[May 2014]{21 May 2014}\n\\maketitle"
--8<---------------cut here---------------end--------------->8---
But the whole point is that is DOES NOT even WORK for a couple of
things, such as modifying base colors of a theme:
--8<---------------cut here---------------start------------->8---
#+BEAMER_HEADER: \setbeamercolor{frametitle}{bg=blue}
--8<---------------cut here---------------end--------------->8---
won't work because of the misplacement of the BEAMER_HEADER placeholder
regarding to the (color) theme: the above line will be placed before the
choice of the theme... TOO EARLY.
On the contrary, adding it in the above title command (already in the
LaTeX document, that is) is TOO LATE.
Best regards,
Seb
--
Sebastien Vauban
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: Insert #+BEAMER_HEADER_EXTRA before \begin{document}?
2014-05-21 17:59 ` Sebastien Vauban
@ 2014-06-15 20:10 ` Nicolas Goaziou
[not found] ` <871tuqndck.fsf-Gpy5sJQTEQHwkn9pgDnJRVAUjnlXr6A1@public.gmane.org>
0 siblings, 1 reply; 12+ messages in thread
From: Nicolas Goaziou @ 2014-06-15 20:10 UTC (permalink / raw)
To: Sebastien Vauban; +Cc: public-emacs-orgmode-mXXj517/zsQ
Hello,
Sebastien Vauban <sva-news-D0wtAvR13HarG/iDocfnWg@public.gmane.org>
writes:
> But the whole point is that is DOES NOT even WORK for a couple of
> things, such as modifying base colors of a theme:
>
> #+BEAMER_HEADER: \setbeamercolor{frametitle}{bg=blue}
>
> won't work because of the misplacement of the BEAMER_HEADER placeholder
> regarding to the (color) theme: the above line will be placed before the
> choice of the theme... TOO EARLY.
>
> On the contrary, adding it in the above title command (already in the
> LaTeX document, that is) is TOO LATE.
I do not see how to solve this without either adding a new keyword or
extending `org-latex-classes' to support another location (e.g.
"[BEAMER-THEME]"). Actually, both may be needed.
About the keyword, my only concern is that #+LATEX_HEADER_EXTRA has
already a specific meaning, which is different from the one we're going
to implement. So, #+BEAMER_HEADER_EXTRA might be confusing. OTOH
I cannot think of anything much better.
WDYT?
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2014-06-16 14:37 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-07 19:01 Insert #+BEAMER_HEADER_EXTRA before \begin{document}? Sebastien Vauban
2014-05-07 22:24 ` Suvayu Ali
2014-05-07 23:26 ` Nick Dokos
2014-05-08 1:38 ` Suvayu Ali
2014-05-08 13:38 ` Sebastien Vauban
2014-05-08 14:49 ` Suvayu Ali
2014-05-08 15:37 ` Eric S Fraga
2014-05-08 19:55 ` Andreas Leha
[not found] ` <87eh04703g.fsf-hclig2XLE9Zaa/9Udqfwiw@public.gmane.org>
2014-05-21 17:59 ` Sebastien Vauban
2014-06-15 20:10 ` Nicolas Goaziou
[not found] ` <871tuqndck.fsf-Gpy5sJQTEQHwkn9pgDnJRVAUjnlXr6A1@public.gmane.org>
2014-06-16 13:42 ` Sebastien Vauban
2014-06-16 14:37 ` Nick Dokos
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).