We forked Puppet Mode about half a year ago, to fix many outstanding issues, and improve the mode to work better with modern Emacsen. It took us longer than expected to bring the mode into shape, but now we are finally there.
This release adds a bunch of brand-new commands to work on Puppet manifests:
puppet parser validate), lint (with
puppet-lint) and apply (with
puppet apply) the current manifest
We completely rewrote the fontification code. Puppet Mode now fontifies more expressions than before:
font-lock-warning-face, to make aware of a possible mistake)
puppet-fontify-variables-in-commentsto a non-nil value.
We also fixed a number of outstanding issues. Notably, Puppet Mode understands C-style comments, and will no longer highlight the names of built-in types or functions in parameters.
This release is the first major step to bring Puppet Mode into a decent shape, but we are far from complete. We currently lack any unit tests, so your immediate focus is now on improving the test coverage to make sure that we never break Puppet Mode for you.
The indentation code also needs a lot of work. Currently Puppet Mode still uses the imperative ad-hoc indentation code we inherited from Puppetlabs Inc. We plain to rewrite indentation based on SMIE, the powerful indentation and navigation engine in Emacs 24. Hopefully this fixes many broken corner-cases and hiccups of the current imperative indentation code we inherited from Puppetlabs Inc.
Beyond these immediate steps we are open for suggestions and contributions to improve the mode and add new features. If you have any idea, please share your thoughts!
Enjoy this release!