Make vim more Puppet friendly!
- Formatting based on the latest Puppetlabs Style Guide
- Syntax highlighting compatible with puppet 4.x
- by default, highlights errors: mixing spaces and tabs and bad names. If you
don't want this highlighting, add
let g:puppet_display_errors = 0
to your vimrc.
- by default, highlights errors: mixing spaces and tabs and bad names. If you
don't want this highlighting, add
- Automatic => alignment
- If you don't like that, add
let g:puppet_align_hashes = 0
to your vimrc.
- If you don't like that, add
- Ctags support
- gutentags integration
- You can enable loading tags with gutentags by setting
g:gutentags_dont_load = 1
in your vimrc
- You can enable loading tags with gutentags by setting
- gutentags integration
- Doesn't require a bloated JRE
- Doesn't take minutes to open
- vim-yardoc Syntax coloration for YARD tags and directives. It can also colorize the tags and directives in puppet files.
- syntastic plugin for automatic syntax checking while in vim.
- vim-snippets is a library of snippets for multiple languages, including Puppet. Works with both snipmate and ultisnips.
- Tagbar plugin for Ctags support.
With Vim 8 packages:
git clone https://github.com/rodjek/vim-puppet.git ~/.vim/pack/plugins/start/vim-puppet
With Pathogen:
If you're using pathogen to manage
your vim modules (and if you're not, why aren't you), you can simply add this
as a submodule in your ~/.vim/bundle/
directory.
My entire home directory is a git repository, so for me it's simply a case of
git submodule add -f git://github.com/rodjek/vim-puppet.git .vim/bundle/puppet
If you're not using pathogen, you can just manually place the files in the
appropriate places under ~/.vim/
With Plug
In your ~/.vimrc (or stdpath('config') . '/init.vim' for Neovim)
call plug#begin()
rodjek/vim-puppet
call plug#end()
Testing is based on vader.vim testing framework, see:
https://github.com/junegunn/vader.vim . To run full test suit use
./test/run-tests.sh
, this will also download vader.vim plugin to project's
folder.