On this page:
These characters facilitate working with the code at the development and debugging stage by improving the code readability. However at the production stage these characters become extraneous: being insignificant for code execution, they increase the size of code to be transferred. Therefore it is considered good practice to remove them before deployment.
RubyMine supports integration with the YUI Compressor CSS minification tool.
In RubyMine, minifier configurations are called File Watchers. For each supported minifier, RubyMine provides a predefined File Watcher template. Predefined File Watcher templates are available at the RubyMine level. To run a minifier against your project files, you need to create a project-specific File Watcher based on the relevant template, at least, specify the path to the minifier to use on your machine.
Installing and configuring the YUI Compressor
Download and install Node.js. The runtime environment is required for two reasons:
- The CSS minifier is started through Node.js.
- NPM, which is a part of the runtime environment, is also the easiest way to download the CSS minifier.
If you are going to use the command line mode, make sure the path to the parent folder of the Node.js executable file and the path to the
npmfolder are added to the
PATHvariable. This enables you to launch the CSS minifier and npm from any folder.
- Install and enable the NodeJS repository plugin as described in Installing, Updating and Uninstalling Repository Plugins and Enabling and Disabling Plugins.
Switch to the directory where the Node Package Manager (npm) is stored or define a
pathvariable for it so it is available from any folder.
Type the following command at the command line prompt:
npm install yuicompressor
- Switch to the directory where the Node Package Manager (npm) is stored or define a
Creating a file watcher
- To start creating a File Watcher, open the Settings/Preferences dialog box by choosing for Windows and Linux or for macOS on the main menu, and then click File Watchers under the Tools node. 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+Insert and choose the YUI Compressor CSS predefined template from the pop-up list.
In the Program text box, specify the path to the
yuicompressor-<version>.jarfile. If you installed the tool through the Node Package Manager, RubyMine locates the required file itself and fills in the field automatically. Otherwise, type the path manually or click the Browse button and choose the file location in the dialog box that opens.
- Proceed as described on page Using File Watchers.
Minifying the code
When a Minification File Watcher is enabled (see Enabling and disabling File Watchers), minification starts automatically as soon as a file to which compilation is applicable is changed or saved, see Configuring the behaviour of the File Watcher.
RubyMine creates a separate file with the generated output. The file has the name of the source CSS file and the extension
The location of the generated file is defined in the Output paths to refresh text box of the New Watcher dialog.
However, in the Project Tree, it is shown under the source CSS file which is now displayed as a node.