Created: 2015-07-28 04:45
Updated: 2019-03-08 08:59


Build Status

vim-markdown-composer is a plugin that adds asynchronous Markdown preview to Neovim and Vim.

By default, vim-markdown-composer uses a blazing-fast CommonMark (and GitHub)-compliant renderer. However, it can be configured to use any external program for rendering, such as pandoc.


This plugin requires Neovim or Vim 8. If you are using an OS with Vim pre-installed, the system Vim might be too old (see vim --version).

This plugin supports Windows, macOS, and Linux.

In addition to Neovim or Vim, vim-markdown-composer requires a distribution of Rust with cargo. Check out the Rust installation guide.

vim-markdown-composer officially targets the latest version of stable Rust.


Use whatever plugin manager you like. If you aren't familiar with plugin managers, I recommend vim-plug.


Here's an example of managing installation with vim-plug:

function! BuildComposer(info)
  if a:info.status != 'unchanged' || a:info.force
    if has('nvim')
      !cargo build --release
      !cargo build --release --no-default-features --features json-rpc

Plug 'euclio/vim-markdown-composer', { 'do': function('BuildComposer') }


In your .vimrc:

Plugin 'euclio/vim-markdown-composer'

Once you have installed the plugin, close Vim/Neovim then (on Linux):

$ cd ~/.vim/bundle/vim-markdown-composer/
# Vim
$ cargo build --release --no-default-features --features json-rpc
# Neovim
$ cargo build --release

Other plugin managers

You should run cargo build --release in the plugin directory after installation. Vim support requires the json-rpc cargo feature.

If you use the above snippet, everything should be taken care of automatically.


:help markdown-composer, or check out the doc directory.


This plugin is inspired by suan's vim-instant-markdown.

This plugin was built with aurelius, a Rust library for live-updating Markdown previews.

Cookies help us deliver our services. By using our services, you agree to our use of cookies Learn more