Vim mode for mustache and handlebars (Deprecated)
Vim script
Switch branches/tags
Nothing to show
Latest commit 0c3900b Oct 24, 2013 @juvenn juvenn Bring in upstream changes
Failed to load latest commit information.
ftdetect Switch to HTML filetype Mar 24, 2013
ftplugin Add section movement Oct 24, 2013
syntax Update syntax file Mar 24, 2013 Bring in upstream changes Oct 25, 2013
example.mustache Update example.mustache Mar 24, 2013

mustache and handlebars mode for vim

Note: This repo is deprecated, active development moved to mustache/vim-mode.

A vim plugin for working with mustache and handlebars templates. It has:

  • syntax highlighting
  • matchit support
  • mustache abbreviations (optional)
  • section movement mappings [[ and ]]

Install for pathogen

cd ~/.vim/
git submodule add git:// bundle/mustache
vim bundle/mustache/example.mustache

Get pathogen.

Manually Install

cd ~/.local/src
git clone git:// mustache.vim
cp -R mustache.vim/syntax/* ~/.vim/syntax/
cp -R mustache.vim/ftdetect/* ~/.vim/ftdetect/
cp -R mustache.vim/ftplugin/* ~/.vim/ftplugin/
vim mustache.vim/example.mustache

Mustache Abbreviations

You can activate mustache abbreviations by putting this line in your .vimrc: let g:mustache_abbreviations = 1

Now you get a set of convenient abbreviations. Underscore _ indicates where your cursor ends up after typing an abbreviation:

  • {{ => {{_}}

  • {{{ => {{{_}}}

  • {{! => {{!_}}

  • {{> => {{>_}}

  • {{< => {{<_}}

  • {{# produces

    {{# _}}
  • {{if produces

    {{#if _}}
  • {{ife produces

    {{#if _}}

Section movement mappings

Following the vim convention of jumping from section to section, [[ and ]] mappings are implemented for easier movement between mustache tags.

  • ]] jumps to the first following tag
  • [[ jumps to the first previous tag

Count with section movements is supported:

  • 2]] jumps to the second next tag


This is combined work from juvenn/mustache.vim and nono/vim-handlebars.

Thanks @5long for adding matchit support.

You're encouraged to propose ideas or have discussions via github issues.