PhpStorm 7.1.0 Web Help

File | Settings | IDE Settings | Live Templates


Use this page to create, manage, and edit live templates.

In this topic:

List of available live templates

Item Tooltip and shortcut Description
By default expand with Use this drop-down list to specify the default invocation key for all templates. Individual invocation keys for particular templates are defined in the editing area below.
Live Templates This list shows all currently available template abbreviations supplied with their descriptions. The abbreviations are grouped below nodes and sorted alphabetically within each group. To activate a template or an entire group, select the check box to its left.


  • Only active templates are displayed upon pressing Ctrl+JCtrl+JCtrl+JCtrl+JCtrl+JCtrl+JCtrl+JCtrl+Shift+Alt+JCommand JCommand JCommand J in the editor.
  • If a template is active, the editor is sensitive to its abbreviation. Otherwise, the abbreviation is considered merely a set of characters.
add,png Add
Alt+InsertAlt+InsertAlt+InsertAlt+InsertAlt+InsertAlt+InsertAlt+Insert or Ctrl+NAlt+InsertCommand N or Control EnterControl N or Control EnterCommand N or Control Enter
Click this button to have a new template item added to the current group of template. You can define the template abbreviation, description, text, variables, expansion key, and context in the editing area below.
delete.png Remove
DeleteDeleteDeleteDeleteDelete or Ctrl+DDeleteDeleteDeleteDelete or BackspaceDeleteDelete or Backspace
Click this button to have the selected live template removed from the list.
copy.gif Copy Click this button to create a new template based on the selected template. A new template item is added to the current node and the fields in the Template Text area show the definition of the selected template.

Template editing area

The focus is moved to this area in the following cases:

  • When you click the Add add,png or Copy copy.gif button.
  • When you select a live template in the list.
  • When you select a fragment of code in the editor and choose Tools | Save as Live Template.

Use controls of this area to create new live templates and edit settings of the existing ones.


You can navigate through the Template Text Area using the hot keys that are marked in the field labels.

Item Description
Abbreviation In this text box, specify the template abbreviation.
Description In this text box, provide optional description of a template or an example of its usage.
Template Text In this text box, type the template body that may contain plain text and variables in the format $<variable name>$.

When editing the live template variables, mind the following helpful hints:

  • If you need a dollar sign ($) in the template text, escape it by duplicating this character ($$).
  • To change variables in a template, click the Edit Variables button.


The Edit Variables button is enabled only if the template body contains at least one user-defined variable, that is, a variable different from $END$ or $SELECTION$.

PhpStorm supports two predefined live template variables: $END$ and $SELECTION$.


You cannot edit the predefined live template variables $END$ and $SELECTION$.

  • $END$ indicates the position of the cursor after the template is expanded. For example, the template return $END$; will be expanded into

    return ;

    with the cursor positioned right before the semicolon.

  • $SELECTION$ is used in surround templates and stands for the code fragment to be wrapped. After the template is expanded, the selected text is wrapped as specified in the template.

    For example, if you select EXAMPLE in your code and invoke the "$SELECTION$" template via the assigned abbreviation or by pressing Ctrl+Alt+TCtrl+Alt+TCtrl+Alt+TCtrl+Alt+TCtrl+Alt+TCtrl+Alt+TCtrl+Alt+TShift+Alt+Z or Ctrl+Alt+TAlt Command TAlt Command TAlt Command Z and selecting the desired template from the list, PhpStorm will wrap the selection in double quotes as follows:


Applicable in: This read-only field shows the languages and/or pieces of code where the editor should be sensitive to the template. Upon pressing Ctrl+JCtrl+JCtrl+JCtrl+JCtrl+JCtrl+JCtrl+JCtrl+Shift+Alt+JCommand JCommand JCommand J in such context, PhpStorm displays a list of templates that are valid for this context.
Change Click this link to modify the set of contexts where the current template is enabled. Upon clicking the link, displays a list of supported language contexts is displayed. To make PhpStorm consider a context sensitive to the template, select a check box next to the context name.

The available context types depend on the enabled plugins.

Edit Variables Click this button to open the Edit Template Variables dialog box, where you can define how PhpStorm should process template variables upon template expansion.


The Edit Variables button is enabled only if the template body contains at least one user-defined variable, that is, a variable different from $END$ or $SELECTION$.

Options In this area, define the behavior of the editor when a template is expanded.
  • Expand with - from this drop-down list, choose the key to invoke the template.
  • Reformat according to style - select this check box to have PhpStorm automatically reformat the expanded text according to the current style settings, defined in the Code Style dialog box.

See Also




Web Resources: