Skip to content
Emacs flymake integration for puppet-lint
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Emacs flymake support for puppet, via puppet-lint.
Deepak Giridharagopal, 2011

This code is mostly based on flymake-coffee
(, and leverages the excellent
puppet-lint (

What it does:

Live, as-you-type, warning and error highlighting for your puppet code. Huzzah!


First, you need to have flymake working in Emacs. Next, you need to have
puppet-lint in your $PATH somewhere such that emacs can execute "puppet-lint".
Take the supplied flymake-puppet.el script, and place it in your emacs load
path somewhere (which is likely ~/.emacs.d).

I use emacs' puppet-mode for editing puppet files, so the stuff I've added to
my .emacs looks like so:

    # Start puppet-mode when editing a .pp file
    (autoload 'puppet-mode "puppet-mode" "Major mode for editing puppet manifests")
    (add-to-list 'auto-mode-alist '("\\.pp$" . puppet-mode))
    (require 'flymake-puppet)
    (add-hook 'puppet-mode-hook (lambda () (flymake-puppet-load)))
You can’t perform that action at this time.