Validate `.scss` files with `scss-lint`.
npm install grunt-scss-lint
   
> Lint your .scss files
>= 0.4.0 and scss-lint >= 0.18.0. It is recommended to use the scss_lint gem as that is the currently maintained version.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:
``shell`
npm install grunt-scss-lint --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
`js`
grunt.loadNpmTasks('grunt-scss-lint');
command._scss-lint is a Ruby gem written by The Causes Engineering Team. It is currently owned and maintained by brigade. This plugin is simply a grunt wrapper for the gem.
This task requires you to have Ruby, and scss-lint 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 update --system && gem install scss_lint to install the scss_lint gem.$3
#### bundleExec
- Type:
Boolean
- Default: falseYou can choose to have your gems installed via bundler and if so, set this option to
true to use the local gems.#### colorizeOutput
- Type:
Boolean
- Default: trueGet some nice looking output.
For colors to work on Windows, you first need to install 2 extra gems. This is because of Rainbow, a dependency of scss-lint.
gem install windows-pr win32console
#### compact
- Type:
Boolean
- Default: falseGroup related linted files for more easier error review. XML output will still be default from scss-lint.
#### config
- Type:
String
- Default: node_modules/grunt-scss-lint/.scss-lint.yml.Specify a configuration file.
#### gemVersion
- Type:
String
- Default: null.Specify a gem version for the scsslint gem.
#### exclude
- Type:
String or Array
- Default: nullExclude one or more files from being linted.
#### reporterOutput
- Type:
String
- Default: nullThe file to save the output to. If you don't want this then set the option as
null.#### reporterOutputFormat
- Type:
String
- Default: null
- Options: txt, xmlThis will ultimately default to the file extension used for
reporterOutput if left null#### emitError
- Type:
Boolean
- Default: falseEmits a Grunt event on scss-lint error called
scss-lint-error.#### emitSuccess
- Type:
Boolean
- Default: falseEmits a Grunt event on scss-lint success called
scss-lint-success.#### failOnWarning
- Type:
Boolean
- Default: trueDisable to fail the task only on errors. You can set the severity level for individual linters in your configuration file.
#### force
- Type:
Boolean
- Default: falseSet
force to true to report scss-lint warnings and errors but not fail the task. This overrides failOnWarning.#### maxBuffer
- Type:
Number or Boolean
- Default: 300 * 1024Set
maxBuffer for the child_process.exec process, if you're linting a lot of files and you're recieving no output then you can try and increase this value. Setting it to false, 0, NaN or Infinite will not return any stdout or stderr and the task will think that everything's fine.$3
#### Example config
`javascript
grunt.initConfig({
scsslint: {
allFiles: [
'test/fixtures/*.scss',
],
options: {
bundleExec: true,
config: '.scss-lint.yml',
reporterOutput: 'scss-lint-report.xml',
colorizeOutput: true
},
}
});grunt.loadNpmTasks('grunt-scss-lint');
grunt.registerTask('default', ['scsslint']);
``