[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ANN: Guile-Present 0.1.0 released

From: Andy Wingo
Subject: ANN: Guile-Present 0.1.0 released
Date: Wed, 11 Jul 2007 12:50:45 +0200

Hey hackers,

I am pleased to announce the first release of Guile-Present, version
0.1.0. It may be obtained at:

What is Guile-Present

Guile-Present is a library to make presentations with Guile Scheme. See for more information.

Since this is the first release, I'll explain a bit more here. I've been
trying to avoid powerpoint-style applications for a while, especially
OpenOffice. It's good for some people but it hurts my brain.

After poking about for a while, I decided to make presentations with SVG
graphics, with each layer being one slide. I wrote a tool (in Guile) to
split the SVG file into layers, and then make a PDF out of that.

However, the process was not satisfying: it was too hard to enter in the
text, and I always had to think about alignment. I wanted to be able to
make an SVG presentation programmatically. It turns out that the
standard XML manipulation combinator, pre-post-order (available from
guile-lib's packaging of ssax), is not well-suited to performing layout

This is because pre-post-order effectively maps across XML child
elements instead of passing a layout seed. So I started looking how to
recast pre-post-order as an extended tree fold (foldts from Oleg's SSAX
paper). I wrote up the results in a paper that I submitted to SFP 2007, We'll see if it
gets accepted, but in any case, Guile-Present is an application of the
fold-layout operator presented there.

(Guile-Present's fold-layout is slightly different, as it allows for
external stylesheets.)

In addition to the ability to render declarative SXML documents into
SVG, Guile-Present can also parse files written in Emacs' Org Mode. So,
you can write a presentation like this:

* Slide title

Some text
 * Bullet point
   * subpoint

** Another slide
** Another..

You get the idea. Guile-Present provides a command-line script to
transform org-mode files into PDF presentations. The resulting
presentations are clean but not pretty; I'd like to add more in that
regard in the future (read: the next time I have to give a

As a bonus, Guile-Present is completely documented! You have PDF, info,
online help, etc. You can read it all from the web site.

Well, that's that. Comments welcome.

Happy hacking,


reply via email to

[Prev in Thread] Current Thread [Next in Thread]