Richard Jones' Log

Mon, 02 Jun 2008
Bruce: ReStructuredText Presentations, now in beta

Bruce the Presentation Tool

Bruce the Presentation Tool is for people who are tired of fighting with presentation tools. Presentations are composed (edited) in plain text files. In its basic form it allows text, code, image, interative Python sessions and video. It uses pyglet to render in OpenGL.

Get it from PyPI

Bruce 3.0 Features (this being the first 3.0 release)

  • displays ReStructuredText content with one page per section or transition
  • handling of most of ReStructuredText, including:
    • inline markup for emphasis, strong and literal
    • literal and line blocks
    • block quotes
    • definition, bullet and enumerated lists (including nesting)
    • images - inline and stand-alone, including scaling
    • page titles (section headings)
  • page decorations
  • scrolling of content larger than a screenful
  • sensible resource location (images, video, sound from the same directory as the presentation file)
  • and some extensions of ReST:
    • embedded Python interative interpreter sessions
    • videos (embedded just like images) with optional looping
    • stylesheet and decoration changes on the fly (eg. multiple fonts per page)
  • timer and page count display for practicing
  • may specify which screen to open on in multihead
  • runs fullscreen at native resolution
  • may switch to/from fullscreen quickly


Bruce REQUIRES Python 2.5 and pyglet Subversion r2093, or 1.1 later than beta1 when it's released.

Get it from PyPI

How to write presentations using Bruce the Presentation Tool

Bruce presentations are written as plain-text files in the ReStructuredText format with some extensions. See the examples folder *.rst files for some samples, the simplest being "simple.rst" which displays plain text sentences centered on a white background (using the "big-centered" style):

.. load-style:: big-centered

Text displayed centered on the default white background.


A new page, separated from the previous using the four

Ut enim ad minim veniam.

A Page Title

Pages may optionally have titles which are displayed
centered at the top by default.

and so on. For more information see the HOWTO at the Bruce website.