-
Download and install the Node.js
framework.
The JavaScript minifier is started through Node.js and the Node Package Manager (npm) is also the easiest way to download the minifier.
For details on using Node.js in PhpStorm, see the section Node.Js
Tip
Alternatively, you can define Node.js
as an external tool, as described in the section
Configuring third-party tools. This approach is helpful, when you need
facilities that are missing in the plugin, for example, the possibility to pass certain parameters as wildcards.
- Make sure the File Watchers plugin is enabled. The plugin is bundled with PhpStorm and activated by default. If it is not, enable the plugin.
-
Download and install the JavaScript minification tool. The easiest way is to use the Node Package Manager (npm), which is a part of Node.js
.
- Switch to the directory where the Node Package Manager (npm) is stored or define a path variable for it so it is available from any folder.
-
Depending on the tool you want to use, type one of the following commands at the command line prompt:
-
To have the Closure Compiler installed, type:
npm install closureTip
Alternatively, download the compiled tool at https://github.com/benvanik/google-closure-compiler-bin
.
-
To have the YUI Compressor JS installed, type:
npm install yui -
To have the UglifyJS installed, type:
npm install uglify-js
-
To have the Closure Compiler installed, type:
If you use the Node Package Manager (npm), the tools are installed under Node.js so Node.js, which is required for starting the tool, will be specified in the path to it.
PhpStorm provides a common procedure and user interface for creating File Watchers of all types. The only difference is in the predefined templates you choose in each case.
- To start creating a File Watcher, open the Project Settings and click File Watchers. The File Watchers page that opens, shows the list of File Watchers that are already configured in the project.
-
Click the Add button
or press Alt+InsertAlt+Insert.
Depending on the tool you are going to use, choose the appropriate predefined template from the pop-up list:
- Closure Compiler
- UglifyJS
- YUI Compressor JS
-
In the Program text box, specify the path to the compiler executable file or archive depending on the chosen predefined template:
- compiler.jar for Closure Compiler
- yuicompressor-<version>.jar for YUI Compressor JS
- uglifyjs.cmd for YUI Compressor JS
and choose the file location in the dialog box that opens.
- Proceed as described on page Using File Watchers.
Minifying the code
PhpStorm creates a separate file with the generated output. The file has the name of the source JavaScript file and the extension min.js. The location of the generated file is defined in the Output Paths text box of the New Watcher dialog. However, in the Project Tree, it is shown under the source JavaScript file which is now displayed as a node.
