PhpStorm 2016.2 Help

Refactoring

The plugin supports some of PhpStorm built-in refactorings Rename and Safe Delete for XSLT items such as templates, variables and parameters. It's also possible to create XSLT variables from selected XPath expressions with the well-known Introduce Variable shortcut. Inlining variables is possible with the Inline shortcut as well.

On this page:

Renaming templates

Named templates can be renamed in PhpStorm just like any other symbol. All xsl:call-template invocations that refer to this template will be updated accordingly.

Rename Template

Rename variables and parameters

Just as named templates, it is possible to rename XSLT variables and template parameters, either at a point of their use or at their declaration.

Rename Variable

Safe delete

Named templates, parameters and variables can be deleted using PhpStorm Safe Delete feature, i.e. the item will be removed if there aren't any references left to it in other stylesheets across the project.

This is especially useful if the stylesheet may be included in other ones via xsl:include or xsl:import to make sure that nothing will be deleted that is still used somewhere else.

Introduce variable

It is possible to extract XPath-Expressions and turn them into an xsl:variable declaration. Check the Replace all occurrences check box to replace all other occurrences of the same expression.

Introduce Variable

Introduce parameter

This is similar to Introduce Variable, but it creates a new parameter instead of a variable. It also has an additional option Create with default value that determines if the selected expression should be added as the introduced parameter's default value or if all calls to the template should be updated to pass the selected expression. That option is only available when introducing parameters to named templates.

Introduce Parameter

Inline variable

This is just the opposite of Introduce Variable, it replaces all usages of a variable with the expression that is specified in the variable's select-attribute. Variables that don't have such an attribute cannot be inlined. Inlining variable references that resolve to parameters is not possible as well.

Inline Variable
Last modified: 24 November 2016