Skip to content

danielppereira/grunt-scss-lint

 
 

Repository files navigation

grunt-scss-lint

Build Status Code Climate NPM version

Lint your .scss files

Getting Started

This plugin requires Grunt >= 0.4.0 and scss-lint >= 0.18.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-scss-lint --save-dev

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

grunt.loadNpmTasks('grunt-scss-lint');

Scss-lint task

Run this task with the grunt scsslint command.

scss-lint is a Ruby gem written by The Causes Engineering Team, 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.

Options

bundleExec

  • Type: Boolean
  • Default: false

You 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: true

Get 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: false

Group related linted files for more easier error review. XML output will still be default from scss-lint.

config

Note that this isn't working correctly yet.

reporterOutput

  • Type: String
  • Default: null

The jUnit XML file to save the output to. If you don't want this then set the option as null.

emitError

  • Type: Boolean
  • Default: false

Emits a Grunt event on scss-lint error called scss-lint-error.

force

  • Type: Boolean
  • Default: false

Set force to true to report scss-lint errors but not fail the task.

Usage Examples

Example config

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']);

Exit error codes

If you're having problems with the task exiting with an error code, then have a look here: https://github.com/causes/scss-lint/blob/master/lib/scss_lint/cli.rb

About

A Grunt task to lint your SCSS

Resources

License

Stars

Watchers

Forks

Packages

No packages published