Creating Technical Presentations with Vim [video]
youtube.com
youtube.com
But life is too short to not use a slides tool. Manually aligning bullet points, moving around ascii art, all of the settings to remove the vim status bar and a custom syntax mode to style text… I don’t know what you gain other than oh-that’s-not-google-slides brownie points. Your time is probably better spent working on the presentation.
Well, there's at least better version control with git, and the other general benefits of plain text. If you have a bunch of presentations, easier to search among them based on content if they're plain text.
Though, presentations being presentations, the fact that they generally lack content to be useful on their own without their presenter, makes them kind of disposable as documents.
For diagrams, I'm using draw.io (it seems that it's called diagrams.net nowadays), it's FOSS, easy to use and feature-full. It's then easy to add it in the presentation by using the markdown syntax for images.
I think I could be inspired to come up with something somewhere in-between. Doing manual layout adds a lot of burden, but visually the result is nice.
Maybe add something to automatically run some code blocks (like Jupyter Notebooks [+]), and we have a really good time.
[+] Fun note: I wrote something like Jupyter notebooks to run code for LaTeX presentations automatically maybe some 10 years ago.
I wonder what's the best way to have the presentation in a single file instead of using multiple files to switch between slides.
My first approach would be to start each slide with something like
# Slide 1
Switching slides then can be done with a keyboard alias that searches for the next/previous instance of "^# Slide [0-9]".To avoid having the next slide visible at the bottom of the screen, one could put enought empty lines at the end of each slide. This would actually be a bit cumbersome. Maybe there is a better solution?
Another problem I see is margins. In a nice presentation, there is a good bit of margin around the content. Unfortunately, VIM has no concept of margin. And emulating it with newlines and spaces is very cumbersome. As you cannot easily change it.
They are surprisingly high fidelity. You can even do line by line code highlight animations etc.
All defined with markdown.