grunt-sass-fork

Compile Sass to CSS

grunt-contrib-sass v0.5.0

Compile Sass to CSS

This plugin requires Grunt ~0.4.0

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-contrib-sass --save-dev

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-contrib-sass');

Run this task with the grunt sass command.

Sass is a preprocessor that adds nested rules, variables, mixins and functions, selector inheritance, and more to css. Sass files compile into well-formatted, standard CSS to use in your site or application.

This task requires you to have Ruby and Sass installed. If you're on OS X or Linux you probably already have Ruby installed; test with ruby -v in your terminal. When you've confirmed you have Ruby installed, run gem install sass to install Sass.

Type: Boolean
Default: false

Enable Source Maps.

Requires Sass 3.3.0, which can be installed with gem install sass --pre

Type: Boolean
Default: false

Show a full traceback on error.

Type: Boolean
Default: false on Windows, otherwise true

Force Unix newlines in written files.

Type: Boolean
Default: false

Just check syntax, don't evaluate.

Type: String
Default: nested

Output style. Can be nested, compact, compressed, expanded.

Type: Number
Default: 3

How many digits of precision to use when outputting decimal numbers.

Type: Boolean
Default: false

Silence warnings and status messages during compilation.

Type: Boolean
Default: false

Make Compass imports available and load project configuration (config.rb located close to the Gruntfile.js).

Type: Boolean
Default: false

Emit extra information in the generated CSS that can be used by the FireSass Firebug plugin.

Type: Boolean
Default: false

Emit comments in the generated CSS indicating the corresponding source line.

Type: String|Array

Add a (or multiple) Sass import path.

Type: String|Array

Require a (or multiple) Ruby library before running Sass.

Type: String
Default: .sass-cache

The path to put cached Sass files.

Type: Boolean
Default: false

Don't cache to sassc files.

Type: Boolean
Default: false

Run sass with bundle exec: bundle exec sass.

Type: String

Prepend the specified string to the output file. Useful for licensing information.

Can't be used if you use the sourcemap option.

grunt.initConfig({
  sass: {                              // Task 
    dist: {                            // Target 
      options: {                       // Target options 
        style: 'expanded'
      },
      files: {                         // Dictionary of files 
        'main.css': 'main.scss',       // 'destination': 'source' 
        'widgets.css': 'widgets.scss'
      }
    }
  }
});
 
grunt.loadNpmTasks('grunt-contrib-sass');
 
grunt.registerTask('default', ['sass']);
grunt.initConfig({
  sass: {
    dist: {
      files: {
        'main.css': 'main.scss'
      }
    }
  }
});

Instead of concatenating the files, just @import them into another .sass file eg. main.scss.

You can specify multiple destination: source items in files.

grunt.initConfig({
  sass: {
    dist: {
      files: {
        'main.css': 'main.scss',
        'widgets.css': 'widgets.scss'
      }
    }
  }
});

Instead of naming all files you want to compile, you can use the expand property allowing you to specify a directory. More information available in the grunt docs - Building the files object dynamically.

grunt.initConfig({
  sass: {
    dist: {
      files: [{
        expand: true,
        cwd: 'styles',
        src: ['*.scss'],
        dest: '../public',
        ext: '.css'
      }]
    }
  }
});
  • 2013-08-21 v0.5.0 Add banner option.
  • 2013-07-06 v0.4.1 Use file.orig.src if file.src does not exist and return early to avoid passing non-existent files to sass binary.
  • 2013-06-30 v0.4.0 Rewrite task to be able to support Source Maps. Compile Sass files in parallel for better performance.
  • 2013-03-26 v0.3.0 Add support for bundle exec. Make sure .css files are compiled with SCSS.
  • 2013-02-15 v0.2.2 First official release for Grunt 0.4.0.
  • 2013-01-25 v0.2.2rc7 Updating grunt/gruntplugin dependencies to rc7. Changing in-development grunt/gruntplugin dependency versions from tilde version ranges to specific versions.
  • 2013-01-09 v0.2.2rc5 Updating to work with grunt v0.4.0rc5. Switching to this.files api. Add separator option.
  • 2012-11-05 v0.2.0 Grunt 0.4 compatibility. Improve error message when Sass binary couldn't be found
  • 2012-10-12 v0.1.3 Rename grunt-contrib-lib dep to grunt-lib-contrib.
  • 2012-10-08 v0.1.2 Fix regression for darwin.
  • 2012-10-05 v0.1.1 Windows support.
  • 2012-09-24 v0.1.0 Initial release.

Task submitted by Sindre Sorhus

This file was generated on Thu Aug 22 2013 03:28:49.