For my (mostly internal technical) presentations I used to use the S5 system, driven by reStructuredText
For this usecase, this seemed perfect: reStructuredText is, frankly, fun to write, there is some Emacs support, it can be machine-edited quite easily.
So when I started with my database course at first I produced the slides with this tool chain. However, it turned out there were some issues with this approach:
Although my course is not heavy on math, I needed at least some math formatting. There are ways to format math via a special role and LaTeX, but none I could find for S5
Layout capabilities as a whole are rather limited
And last but not least, there is no sane way of producing true printed output of the slides as they appear on screen. My students hated this — they like to write on slide printouts, and I think thats a very valid use case.
So, I’ve gone back to LaTeX and the Beamer class (which I used to use for previous courses). This is slightly more verbose to produce but alleviates the aforementioned problems. Plus, I’ve got access to a whole lot of LaTeX niceties. For example automatic TOCs, automatical overviews on section change, and of course great typography.
The “production environment” now looks like this:
- Emacs with AuCTeX
- XeTeX engine (Unicode yay!)
- Beamer
- minted and Pygments for source code highlighting
- booktabs for table layout
I’ve set up some Emacs macros to deal with the LaTeX verbosity and am quite happy with this setup now.
Some caveats:
One has to be careful to use the [fragile] option of frames if minted-formatted source is to be inserted, otherwise LaTeX will report a “FancyVerb Error” (I believe this also happens with verb environments)
Also, for frame titles, the \frametitle command seems to be more robust than the implied frame title option of the frame environment
And: creating templates for beamer is still hard :–)
