emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Modifying the Beamer Exporter
@ 2013-06-28 19:15 Josiah Schwab
  2013-06-28 20:14 ` Eric S Fraga
  0 siblings, 1 reply; 6+ messages in thread
From: Josiah Schwab @ 2013-06-28 19:15 UTC (permalink / raw)
  To: emacs-orgmode

Hi All,

I am just starting to dig into using the new exporter for generating
beamer presentations.

I want to include my collaborators in the header of each org file just
as I would authors, that is by including a line like

#+COLLABORATORS: Alice & Bob

I've found some limited documentation on modifying the exporter (manual
section 12.3) and taken a look at ox.el, ox-latex.el, ox-beamer.el, etc.

What I did was:
  + Create a new backend derived from the beamer one
    + add COLLABORATORS to its options-alist
    + set the template (in translate-alist) to one handling collaborators

This works, but before I continued on making other modifications (in a
similar vein), I wanted to check in with people with a higher level
understanding.

Does this sound like a reasonable approach?

Any suggestions or pointers to existing documentation/examples would be
appreciated.

Thanks,
Josiah

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Modifying the Beamer Exporter
  2013-06-28 19:15 Modifying the Beamer Exporter Josiah Schwab
@ 2013-06-28 20:14 ` Eric S Fraga
  2013-06-28 20:53   ` Josiah Schwab
  2013-06-29 13:48   ` Rasmus
  0 siblings, 2 replies; 6+ messages in thread
From: Eric S Fraga @ 2013-06-28 20:14 UTC (permalink / raw)
  To: Josiah Schwab; +Cc: emacs-orgmode

Josiah Schwab <jschwab@gmail.com> writes:

> Hi All,
>
> I am just starting to dig into using the new exporter for generating
> beamer presentations.
>
> I want to include my collaborators in the header of each org file just
> as I would authors, that is by including a line like
>
> #+COLLABORATORS: Alice & Bob
>
> I've found some limited documentation on modifying the exporter (manual
> section 12.3) and taken a look at ox.el, ox-latex.el, ox-beamer.el, etc.
>
> What I did was:
>   + Create a new backend derived from the beamer one
>     + add COLLABORATORS to its options-alist
>     + set the template (in translate-alist) to one handling collaborators
>
> This works, but before I continued on making other modifications (in a
> similar vein), I wanted to check in with people with a higher level
> understanding.
>
> Does this sound like a reasonable approach?

Maybe, maybe not.  Difficult to say unless you give us a better idea of
what kind of changes you plan on making.

In general, I find it sufficient to add a little bit of LaTeX code to my
org files for most customisations or beamer specific commands.  The
great thing about org is that it is easy to write LaTeX directly when
you need it.  It's only if you wish to address different export targets
that things become more complicated, but that's not what you are doing.

Maybe gives us some idea of what it is you cannot do with ox-beamer and
we can suggest whether what you intend to do is reasonable or not.
-- 
: Eric S Fraga (0xFFFCF67D), Emacs 24.3.50.1, Org release_8.0.3-239-gd316ec

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Modifying the Beamer Exporter
  2013-06-28 20:14 ` Eric S Fraga
@ 2013-06-28 20:53   ` Josiah Schwab
  2013-06-29 13:48   ` Rasmus
  1 sibling, 0 replies; 6+ messages in thread
From: Josiah Schwab @ 2013-06-28 20:53 UTC (permalink / raw)
  To: Eric S Fraga; +Cc: emacs-orgmode

> Maybe, maybe not.  Difficult to say unless you give us a better idea of
> what kind of changes you plan on making.

I'm a little hazy, partially because my ideas seem to change quickly as
I learn more.

One of the more ambitious things that I'd like to do is to be able to
associate BibTeX references with a headlines in a way such that they are
collected at the level of the frame-headline and then rendered uniformly
in the page footers.

> In general, I find it sufficient to add a little bit of LaTeX code to my
> org files for most customisations or beamer specific commands.  The
> great thing about org is that it is easy to write LaTeX directly when
> you need it.  It's only if you wish to address different export targets
> that things become more complicated, but that's not what you are doing.

> Maybe gives us some idea of what it is you cannot do with ox-beamer and
> we can suggest whether what you intend to do is reasonable or not.

At least so far, it's no so much a question of "can't", as a matter of
style.

#+AUTHOR: Josiah \\ \small with Alice & Bob

vs

#+AUTHOR: Josiah
#+COLLABORATORS: Alice & Bob

Another example would be the use of a subtitle.

#+LATEX_HEADER: \subtitle{An Illustrative Example}

vs

#+SUBTITLE: An Illustrative Example

I have a preference for the "cleaner" version and wanted to implement it
in a way that it likely to age well as org development progresses.

Best,
Josiah

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Modifying the Beamer Exporter
  2013-06-28 20:14 ` Eric S Fraga
  2013-06-28 20:53   ` Josiah Schwab
@ 2013-06-29 13:48   ` Rasmus
  2013-06-30 23:15     ` Josiah Schwab
  1 sibling, 1 reply; 6+ messages in thread
From: Rasmus @ 2013-06-29 13:48 UTC (permalink / raw)
  To: emacs-orgmode


>> I want to include my collaborators in the header of each org file just
>> as I would authors, that is by including a line like
>>
>> #+COLLABORATORS: Alice & Bob
>>
>> I've found some limited documentation on modifying the exporter (manual
>> section 12.3) and taken a look at ox.el, ox-latex.el, ox-beamer.el, etc.
>>
>> What I did was:
>>   + Create a new backend derived from the beamer one
>>     + add COLLABORATORS to its options-alist
>>     + set the template (in translate-alist) to one handling collaborators
>>
>> This works, but before I continued on making other modifications (in a
>> similar vein), I wanted to check in with people with a higher level
>> understanding.

In general if it's generally useful make a patch (if feasible). . .

Could you point out exactly which function (with ref to the Beamer
manual) you're using?  Searching for collaborator in the manual didn't
give me any hints. . .

> Maybe, maybe not.  Difficult to say unless you give us a better idea of
> what kind of changes you plan on making.

To add to Eric's comment: Filters is a viable option and potentially
more sustainable if your code ain't submitted up stream.

It depends on the nature of your changes.

–Rasmus

-- 
This is the kind of tedious nonsense up with which I will not put

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Modifying the Beamer Exporter
  2013-06-29 13:48   ` Rasmus
@ 2013-06-30 23:15     ` Josiah Schwab
  2013-07-01  9:13       ` Rasmus
  0 siblings, 1 reply; 6+ messages in thread
From: Josiah Schwab @ 2013-06-30 23:15 UTC (permalink / raw)
  To: Rasmus; +Cc: emacs-orgmode


>>> I want to include my collaborators in the header of each org file just
>>> as I would authors, that is by including a line like
>>>
>>> #+COLLABORATORS: Alice & Bob
>>>
>>> I've found some limited documentation on modifying the exporter (manual
>>> section 12.3) and taken a look at ox.el, ox-latex.el, ox-beamer.el, etc.
>>>
>>> What I did was:
>>>   + Create a new backend derived from the beamer one
>>>     + add COLLABORATORS to its options-alist
>>>     + set the template (in translate-alist) to one handling collaborators
>>>
>>> This works, but before I continued on making other modifications (in a
>>> similar vein), I wanted to check in with people with a higher level
>>> understanding.
>
> In general if it's generally useful make a patch (if feasible). . .
>
> Could you point out exactly which function (with ref to the Beamer
> manual) you're using?  Searching for collaborator in the manual didn't
> give me any hints. . .

For my subtitle example, \subtitle{} is a beamer command so I can make
a patch for that and see what people think.

There is no beamer command for collaborators -- which is why you didn't
find it in the manual.  But I almost always have collaborators on my
presentations, so I want to choose once how to render collaborators and
then ever after only have to set the content.

That could either mean adding a custom \collaborators{} command in my
personal beamer theme and have the exporter set that appropriately or
just having my local exporter do something like

(format "\\author{%s \\\\{\\small with %s}}\n" author collaborators)

when COLLABORATORS is set.

>> Maybe, maybe not.  Difficult to say unless you give us a better idea of
>> what kind of changes you plan on making.
>
> To add to Eric's comment: Filters is a viable option and potentially
> more sustainable if your code ain't submitted up stream.

Ok, I will go read more about filters in the manual and come back to
the list if I have questions.

Thanks for your time!

Best,
Josiah

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Modifying the Beamer Exporter
  2013-06-30 23:15     ` Josiah Schwab
@ 2013-07-01  9:13       ` Rasmus
  0 siblings, 0 replies; 6+ messages in thread
From: Rasmus @ 2013-07-01  9:13 UTC (permalink / raw)
  To: emacs-orgmode

Josiah Schwab <jschwab@gmail.com> writes:

> For my subtitle example, \subtitle{} is a beamer command so I can make
> a patch for that and see what people think.

It should be rather easy.  With the old exporter you could get subtitles
with '\\' in beamer headlines, but this seems to have been removed 


> There is no beamer command for collaborators -- which is why you didn't
> find it in the manual.  But I almost always have collaborators on my
> presentations, so I want to choose once how to render collaborators and
> then ever after only have to set the content.

there is \and, though (pp. 93 of the Beamer manual).  At least if
implemeting this, it should follow the "recommended" beamer way, IMO.

--Rasmus

-- 
. . . It begins of course with The Internet.  A Net of Peers.

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2013-07-01  9:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-06-28 19:15 Modifying the Beamer Exporter Josiah Schwab
2013-06-28 20:14 ` Eric S Fraga
2013-06-28 20:53   ` Josiah Schwab
2013-06-29 13:48   ` Rasmus
2013-06-30 23:15     ` Josiah Schwab
2013-07-01  9:13       ` Rasmus

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).