Using Vim/Neovim for Presentation

4 min readApr 27, 2021

Using Vim or Neovim for presentation.

Vim/Neovim Presentation


In the previous article, I talked about using Emacs for presentations. Specifically for Emacs, we can use Org mode for keeping notes, maintaining to-do lists, planning projects, authoring documents, computational notebooks, literate programming, and more.

In this article, let’s explore the options we have for Vim/Neovim.


There are quite several plugins developed for Vim/Neovim for presentation purposes. However, not many are maintained and updated at this point of writing.

presenting.vim is a Vim plugin that turns your markup into presentable slides in Vim/Neovim. For most scenarios, this plugin should be more than sufficient for presentation purposes. This plugin uses Markdown syntax which makes it very easy for you to create slides for presentation.

Using my dotfiles, I can easily install it using packer.nvim.

return require('packer').startup(function()    -- Packer can manage itself as an optional plugin
use {'wbthomason/packer.nvim', opt = true}
use {'sotte/presenting.vim'}end)

As an example, I am going to use the sample presentation markdown file from presenting.vim.

And below is the key bindings I used.

augroup presentation
" Presentation mode
au Filetype markdown nnoremap <buffer> <F10> :PresentingStart<CR>
" ASCII art
au Filetype markdown nnoremap <buffer> <F12> :.!toilet -w 200 -f term -F border<CR>
augroup end
  • F10 starts the presentation.
  • F12 uses toilet command to draw a rectangle around the text.

By default

  • n: next slide
  • p: previous slide




Software engineer, Data Science and ML practitioner.