presenting.vim is a vim plugin that turns your markup into presentable slides (in vim).
It is a clone of present.vim which is a clone of presen.vim. In contrast to its predecessors, presenting.vim:
- has support for common markup languages,
- can be extended, and
- is documented
Great, hey?
Here is what the examples/PresentingDemo.rst
file looks like when presented.
Markdown files are rendered a bit more fancifully. Be sure to read the help file. Here is the examples/PresentingDemo.markdown
being presented.
Use pathogen or vundle to install presenting.vim.
Simply write your presentation in your favorite markup language. Every slide is separated by a markup language specific marker.
Filetype | Slide Separator |
---|---|
markdown | # heading |
rst | ~~~~ |
orgmode | #---- |
GoLang slide | * title |
These can be overridden or extended by setting b:presenting_slide_separator
for your preferred filetype in your .vimrc
. For example, set the .rst
slide
separator to ~~~~
via:
au FileType rst let b:presenting_slide_separator = '\v(^|\n)\~{4,}'
When you want to start presenting, execute
:PresentingStart
It is possible to have multiple presentations running at the same time. Just run the command in each source document, and each slide show will be displayed in its own tab.
Once presenting, slide navigation is accomplished via these keys:
Key | Action |
---|---|
n |
next slide |
p |
previous slide |
q |
quit |
For examples of presenting.vim presentations, see:
Of course you can configure the slide separators.
The code and issue tracker are on github. Pull requests are welcome!