PhpStorm 2018.2 Help

Sass, Less, and SCSS

PhpStorm integrates with compilers that translate Sass, Less, and SCSS code into CSS. To use a compiler in PhpStorm, you need to configure it as a File Watcher. For each supported compiler, PhpStorm provides a predefined File Watcher template. To run a compiler in your project, create a project-specific File Watcher based on the relevant template.

Before you start

Installing Sass/SCSS

  1. Download and install Ruby.
  2. Open the embedded Terminal (View | Tool Windows | Terminal or Alt+F12) type gem install sass at the command prompt. The package is installed in the folder where the Ruby executable file and the gem.bat file are stored.

Installing Less

  1. Install Node.js.
  2. Open the embedded Terminal (View | Tool Windows | Terminal or Alt+F12) and type npm install --global less at the command prompt for global installation. Learn more from the Less Official website.

Compiling the code into CSS

To compile your code on the fly, you need to configure the compiler as a PhpStorm File Watcher.

To create a File Watcher

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), and then click File Watchers under Tools. The File Watchers page that opens, shows the list of File Watchers that are already configured in the project.
  2. Click Add button or press Alt+Insert. Depending on the tool you are going to use, choose the Less, Sass, or SCSS predefined template from the list.
  3. In the Program text box, specify the path to the compiler executable file or archive depending on the chosen predefined template.
    • lessc.cmd for Less. If you installed the tool through npm, PhpStorm locates the required file itself at <node.js_home>/node_modules/bin/lessc.cmd and fills in the field automatically. Otherwise, type the path manually or click Browse button and choose the file location in the dialog box that opens.
    • sass.bat for Sass.
    • scss.bat for SCSS

    If you installed Sass and SCSS through Ruby, PhpStorm locates the required files itself at <ruby_home>/bin/sass.bat or <ruby_home>/bin/scss.bat respectively and fills in the field automatically. Otherwise, type the path manually or click Browse button and choose the file location in the dialog box that opens.

  4. Proceed as described on page Using File Watchers.

Compiling the code

When you open a file, PhpStorm checks whether an applicable file watcher is available in the current project. If such file watcher is configured but disabled, PhpStorm displays a pop-up window that informs you about the configured file watcher and suggests to enable it.

If an applicable file watcher is configured and enabled in the current project, PhpStorm starts it automatically upon the event specified in the New Watcher dialog.

  • If the Auto-save edited files to trigger the watcher checkbox is selected, the File Watcher is invoked as soon as any changes are made to the source code.
  • If the Auto-save edited files to trigger the watcher checkbox is cleared, the File Watcher is started upon save (File | Save All, Ctrl+S) or when you move focus from PhpStorm (upon frame deactivation).

PhpStorm creates a separate file with the generated output. The file has the name of the source Sass, Less, or SCSS file and the extension css. The location of the generated files is defined in the Output paths to refresh text box of the New Watcher dialog. However, in the Project Tree, they are shown under the source file which is now displayed as a node.

Last modified: 28 June 2018

See Also