Code completion, parameter info, quick info, member lists and more!

IntelliSense is a general term for a variety of code editing features including: code completion, parameter info, quick info, and member lists. IntelliSense features are sometimes called by other names such as “code completion”, “content assist”, and “code hinting.”

Syntax Highlighting

Syntax highlighting recognizes all versions of Puppet and displays as you type.

  • Puppet DSL
  • Puppet Grammar
  • Module metadata files


Auto Completion

Auto complete Puppet types and classes and their parameter sets as you type. Tab completion works as you would expect.


Function Signatures

Get hints about the different ways you can call functions, also known as function signatures.

Currently only a single signature will appear for Puppet Functions. When the the puppetstrings feature flag is set, functions will show all available signatures, as it is in the example below.


Hover Support

Hovering over any resource, class declaration or other Puppet symbol provides instant contextual information. For example, hovering over the resource declaration lists the type name and parameter list, with all relevant help text.


Code Snippets

As part of IntelliSense and Snippets, you can quickly create templates to automate repetitive series of code.

Live Workspace Intellisense

If you are editing a module, or a Control Repository, you will get live intellisense of the Puppet Custom Types, Functions, Classes and Defined Types. For example if you are editing the puppetlabs-apache module you will be able to get auto-complete for resources like apache::vhost or apache::mod::php.

Note: Workspace Intellisense is only updated when you save a file, instead of features like linting which update as you type