1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
| | #+TITLE: Beamer presentations using the new export engine
#+AUTHOR: Suvayu Ali
#+EMAIL: fatkasuvayu+linux at gmail dot com
#+DATE: 2013-02-05
#+DESCRIPTION:
#+KEYWORDS:
#+LANGUAGE: en
#+OPTIONS: H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t
#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
#+INFOJS_OPT: view:nil toc:nil ltoc:t mouse:underline buttons:0 path:http://orgmode.org/org-info.js
#+EXPORT_SELECT_TAGS: export
#+EXPORT_EXCLUDE_TAGS: noexport
#+LINK_UP:
#+LINK_HOME:
#+startup: folded
* Introduction
This tutorial covers exporting org documents to LaTeX Beamer slides
using the new export engine, =org-elements= and =org-export=, written
by Nicolas Goaziou.
_Note:_ It will not cover any of the basic features common with the
old beamer exporter; it will only focus on the improvements, new
additions and backwards incompatibilities. It is also assumed that
the reader is already acquainted with GNU Emacs and Org mode itself.
Basic understanding of LaTeX and the Beamer package is also assumed.
* Configuring export options
Apart from the usual export options provided by the =OPTIONS= keyword,
you can put additional beamer export options in the file header. For
a minimal beamer export, you have to specify the =LaTeX_CLASS= and the
=LaTeX_CLASS_OPTIONS= keywords in the header of a file. A preset
export template can be inserted by calling the interactive function
=org-e-beamer-insert-options-template=. This can be further modified
as per your needs. You can also do a subtree export; in that case you
can provide the keywords as =PROPERTIES=. However the keyword names
should be prepended with =EXPORT_=. A list of supported
keywords are,
#+caption: Export option keywords and corresponding subtree properties.
| File header keywords | Subtree properties |
|-----------------------+------------------------------|
| =OPTIONS= | =EXPORT_OPTIONS= |
| =LaTeX_CLASS= | =EXPORT_LaTeX_CLASS= |
| =LaTeX_CLASS_OPTIONS= | =EXPORT_LaTeX_CLASS_OPTIONS= |
| =LaTeX_HEADER= | =EXPORT_LaTeX_HEADER= |
| =BEAMER_THEME= | =EXPORT_BEAMER_THEME= |
| =BEAMER_FONT_THEME= | =EXPORT_BEAMER_FONT_THEME= |
| =BEAMER_INNER_THEME= | =EXPORT_BEAMER_INNER_THEME= |
| =BEAMER_OUTER_THEME= | =EXPORT_BEAMER_OUTER_THEME= |
For a subtree export, a few extra keywords are supported. For example
you can specify the exported filename with the =EXPORT_FILE_NAME=
property.
#+caption: Properties specific to subtree export
| Subtree properties | Functionality |
|--------------------+------------------|
| =EXPORT_TITLE= | Export title |
| =EXPORT_AUTHOR= | Export author |
| =EXPORT_DATE= | Export date |
| =EXPORT_FILE_NAME= | Export file name |
A simple file header might look like the example below.
#+begin_example
,#+LaTeX_CLASS: beamer
,#+LaTeX_CLASS_OPTIONS: [smaller,presentation]
,#+BEAMER_THEME: default
#+end_example
A corresponding subtree export should have properties as shown below.
#+begin_example
,* Exported title
:PROPERTIES:
:EXPORT_LaTeX_CLASS: beamer
:EXPORT_LaTeX_CLASS_OPTIONS: [presentation,smaller]
:EXPORT_BEAMER_THEME: default
:EXPORT_FILE_NAME: presentation.pdf
:END:
#+end_example
The export class is passed on to the =\documentclass= LaTeX command,
and the options go in as the optional arguments.
: \documentclass[smaller,presentation]{beamer}
** TODO Export level
- To export third level headlines as frames, use the following in the
file header.
: #+OPTIONS: H:3
- Can be overridden with the =frame= beamer environment (maybe link to
new features section below).
** TODO Filters to customise export
* Structure editing and beamer environments
All the usual Org mode structure editing commands work. However there
is also a minor mode called =org-e-beamer-mode=, that makes it very
convenient to insert Beamer specific environments in an org-mode
buffer.
* New features available with the new exporter
** TODO Beamer article
Discuss that =EXPORT_LaTeX_CLASS= need not be beamer. Useful to
export =beamerarticle= document for slides.
Email from Nicolas Goaziou discussing this feature:
http://mid.gmane.org/87hapz3na9.fsf@gmail.com
** TODO Ordered and unordered lists
** TODO Images
** TODO Tables
** TODO Environments
** TODO Overlays
** TODO Example and source blocks
* TODO Examples
1) [ ] Sectioning and TOC (progress state between sections)
2) [ ] Overlays
3) [ ] Blocks
1. [ ] Normal blocks
2. [ ] Verbatim blocks
3. [ ] Source blocks
4) [ ] Columns
5) [ ] Text / LaTeX commands in between frames
6) [ ] Images
+ Centering
+ Captions
7) [ ] Footnotes and references
8) [ ] Backup slides with =\appendix=
9) [ ] Caveats about using alternate TeX binaries
* TODO Migrating from the old to the new exporter
- Backwards incompatible changes in the new exporter
- Configuration:
1. variable name changes,
2. filters instead of hooks (except for two)
|