Presentation software
Daniel Barlow <[email protected]> Mon, 04 Aug 2003 12:38:59 +0100
| Newsgroups | gmane.lisp.clump |
|---|---|
| Message-ID | <[email protected]> |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 For my recent presentation at the Linux 2003 conference (SBCL threads), unimpressed with the general state of available presentation software for Linux, I decided to write my own. Acclaim is still very early-days - and probbaly doomed to stay that way until I have another speaking engagement that needs new features - From it - but might be interesting to someone nevertheless * Like magicpoint, in that it reads slide definitions from a file, which can be edited with any text editor * Unlike magicpoint, the file format is not whitespace-sensitive. Instead it uses sexps. (slide (title "LinuxThreads: signals redux") (ul (li "There is some disconnect between the traditional Linux clone() model and the needs of POSIX threads") (li "LinuxThreads, to accomodate these, does strange things with signals to ensure they get delivered to the threads that POSIX says they should") (li "We " (i "don't") " need our signal handling messed with") (li "And actually we don't even want this behaviour. Lisp programmers aren't going to care about the POSIX thread model"))) Element names are chosen to be vaguely reminiscent of HTML, but no real attempt is made to conform to any kind of html standard * Requires CLX. Currently only tested with SBCL, whose clx has a open-default-display extension, but if that's changed ought to work on pretty much anything * Possibly the only presentation software ever where the attributes of an element (font sizes, colours) are specified by :around methods on a CLOS generic function * Single-pass rendering model (render-element renders an element then returns the size used so that we know where to put the following element) will probably need revising as layouts get more complex: to do things like (center) properly requires knowing the size of the child element before deciding where to draw it * There's no reason that it couldn't be used to generate slides programmatically * Most likely future features: - Add pictures - Funky inter-slide dissolves/wipes/fades etc Anyway, My First CLX Program is available for the time being at http://www.linux.org.uk/~dan/linux2003/ - -dan - -- http://www.cliki.net/ - Link farm for free CL-on-Unix resources -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQE/LkXZHDK5ZnWQiRMRAgVcAJ4mBXc+azMmx2hftNJPqsZGHGjTjwCeJyFr 61HfoRvyMSXeUci7fGfNWqE= =liYe -----END PGP SIGNATURE-----