Grunt Tool Window
On this page:
- Accessing the Grunt Tool Window
- Building a Tree of Grunt Tasks
- Running Grunt Tasks and Targets
- Context Menu of a Tree
- Context Menu of a Task or a Target
Accessing the Grunt Tool Window
The tool window is available only when:
- The Node.js runtime environment is installed on your computer.
- The NodeJS repository plugin is installed and enabled. The plugin is not bundled with PhpStorm, but it can be installed from the JetBrains plugin repository as described in Installing, Updating and Uninstalling Repository Plugins and Enabling and Disabling Plugins.
grunt-clipackage is installed globally and the
gruntpackage is installed in the current project, see Installing Grunt for details.
- At least one
Gruntfile.jsfile is available in the current project.
As soon as you invoke Grunt, it starts building a tree of tasks according to the
Gruntfile.js on which it was invoked. If a task has targets, the task is displayed as a node and the targets are listed under it.
If you have several
Gruntfile.js files in your project, you can build a separate tasks tree for each of them and run tasks without abandoning the previously built tasks trees. Each tree is shown in a separate tab.
Building a Tree of Grunt Tasks
To build a tasks tree, do one of the following:
- Select the required
Gruntfile.jsfile in the Project tool window and choose Show Grunt Tasks on the context menu of the selection.
- Open the required
Gruntfile.jsfile in the editor and choose Show Grunt Tasks on the context menu of the editor.
- If the Grunt tool window is already opened, click on the toolbar and choose the required
Gruntfile.jsfile from the list. PhpStorm adds a new node and builds a tasks tree under it. The title of the node shows the path to the
Gruntfile.jsfile according to which the tree is built.
By default, the tasks in a tree a listed in the order in which they are defined in
Gruntfile.js (option Definition order). To have them listed in the alphabetic order, click the toolbar button, then choose Sort by on the menu, and then choose Name.
Running Grunt Tasks and Targets
To run a task or a target from the tree, do one of the following:
- Double click the required task or target in the tree.
- Select the required task or target and choose Run <task name> on the context menu of the selection.
- Select the required task or target and press Enter.
- To run the
defaulttask, select the root node in the tree and choose Run default on the context menu of the selection.
- To navigate to the definition of a task or target, select the required task or target in the tree and choose Jump to source on the context menu of the selection.
The task or target execution output will be displayed in the Run tool window. The name of the target is shown in the format
<task name>:<target name>. The tool window shows the Grunt output, reports the errors occurred, lists the packages or plugins that have not been found, etc. The name of the last executed task is displayed on the title bar of the tool window.
To run several tasks or targets, use the multiselect mode: hold Shift (for adjacent items) or Ctrl (for non-adjacent items) keys and select the required tasks or targets, then choose Run on the context menu of the selection.
|Add Gruntfile|| Click this button to have a tasks tree for another |
|Remove Gruntfile||Click this button to remove the tasks tree under the selected node.|
|Reload tasks|| Click this button to have the tasks tree under the selected node re-built. You may need a tree re-built after updating the corresponding |
|Collapse all|| Click this button to hide all the tasks trees and have only |
| Click this button to configure the current view and to change the viewing modes of the tool window, see Viewing Modes for details. Note that most of the menu items are options that you can turn on or off. An option which is on has a check mark to the left of its name. The Grunt-specific options are: |
|Hide||Click this button to hide the tool window. To have it displayed again, choose on the main menu. The tool window appears again showing all the previously built trees of tasks.|