Navigation

Jump from template paths and custom tags to their files, hover ISML tags for docs, and outline a template's structure and variables

The ISML language server connects a template to the rest of your project - so you can move from an include to its target, from a custom tag to its module, and see a template's structure at a glance.

Template references are turned into clickable document links: Ctrl/Cmd-click a template="…" value - on <isinclude>, <isdecorate>, <iscomponent>, and friends - to open the referenced template.

<isinclude template="checkout/billing" />
<!--                  ^ Ctrl/Cmd+click opens checkout/billing.isml -->

Custom tags are linked the same way: clicking an <ismodule>-defined tag jumps to the template it renders (see Custom Tags & Modules).

When the same template path exists in more than one cartridge, the editor offers a quick-pick so you choose which cartridge's copy to open - matching how the overlay resolves at runtime.

Hover

Hover an ISML tag or attribute to see its documentation. For symbols inside ${ … } and <isscript> blocks you get the full script hover - dw.* signatures and JSDoc - described in Scripting in ISML.

Outline & Breadcrumbs

The server provides document symbols, so the Outline view and the editor breadcrumb bar reflect the template's structure. Beyond the tag hierarchy, the symbols include the variables a template introduces - your <isset> names and <isloop> variables - making it easy to see what a template defines and to jump around large templates.

On this page