representty
is a tiny presentation framework. TL;DR: You write your slides in
Markdown, rich
renders individual slides, and the whole thing happens in an
IPython shell.
A slide deck is mostly a Markdown file. Individual slides are seperated by a bunch of equals signs.
Additionally, you can start a line with:
//
: comment; the line is ignored (unless the environment variablePRACTICE
is set).!
: special instruction. The line is not included in the output, but can do a variety of things:!!some command
: execute the command withos.system()
the first time this slide is visited.!import somemodule
: silently import the given module.!set flag
/!unset flag
: set/unset a named flag. These can influencerepresentty
behaviour. See flags.!setlocal flag
/!unsetlocal flag
: (un)set a flag, but reset to original value at the end of the slide.!image someimage
: Display an image. This only works if you haveviu
installed.!up some_int
: Move the cursor up by some amount. Useful for drawing over images.!printf something
: Callprintf
with the given args. Better than plain!!printf
, because it will be executed every time the slide is displayed by default.
Python code blocks (language starts with py
) are not just rendered, but also
executed.
The presenter is dropped into a more-or-less normal IPython shell. A few single-letter commands exist which control the slide show:
d
: (Re)draw the current slide.n
: Go to the next slide.p
: Go to the previous slide.q
: Quit.g
: Go to a numbered slide (you will be prompted for a slide number).s
: Go to a slide by searching for a keyword (you will be prompted).
exec
: whether to execute Python code in code blocks. Default: set.alwaysexec
: Always execute shell commands (!!
), rather than just at the first printing of the slide. Default: unset.