UNPKG

grunt-lesshint

Version:
141 lines (115 loc) 6.24 kB
# grunt-lesshint > Lint LESSCSS files with grunt [![Dependency Status](https://david-dm.org/lesshint/grunt-lesshint.svg?theme=shields.io&style=flat)](https://david-dm.org/lesshint/grunt-lesshint) [![devDependency Status](https://david-dm.org/lesshint/grunt-lesshint/dev-status.svg?theme=shields.io&style=flat)](https://david-dm.org/lesshint/grunt-lesshint#info=devDependencies) [![Build Status](https://travis-ci.org/lesshint/grunt-lesshint.svg)](https://travis-ci.org/lesshint/grunt-lesshint) ## Getting Started This plugin requires Grunt `~0.4.5` If you haven't used [Grunt](http://gruntjs.com/) before, be sure to check out the [Getting Started](http://gruntjs.com/getting-started) guide, as it explains how to create a [Gruntfile](http://gruntjs.com/sample-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-lesshint --save-dev ``` Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript: ```js grunt.loadNpmTasks( 'grunt-lesshint' ); ``` ## The "lesshint" task ### Overview In your project's Gruntfile, add a section named `lesshint` to the data object passed into `grunt.initConfig()`. ```js grunt.initConfig({ lesshint: { options: { // Task-specific options go here. }, your_target: { // Target-specific file lists and/or options go here. }, }, }); ``` ## Options #### force Type: `Boolean` Default value: `false` Set `force` to `true` to report lesshint errors but not fail the task. #### reporter Type: `Object` Refer to the lesshint docs for more examples: https://github.com/lesshint/lesshint#writing-your-own-reporter Define your own custom reporter: ```javascript options { reporter: { name: "foo-reporter", // optional but recommended report: function(errors) { errors.forEach(function(error) { console.log(error); // error object looks like: // { // column: 5, // file: 'file.less', // fullPath: 'path/to/file.less', // line: 1, // linter: 'spaceBeforeBrace', // message: 'Opening curly brace should be preceded by one space.', // severity: 'warning', // source: '.foo{' // } }); } } } ``` #### lesshintrc Type: `String` or `true` Default: `null` If set to `true`, no config will be sent to lesshint and lesshint will search for `.lesshintrc` files relative to the files being linted. If a filename is specified, options and globals defined therein will be used. The `lesshintrc` file must be valid JSON and looks something like this: ```json { "spaceAfterPropertyColon": "no_space", "spaceBeforeBrace": "no_space" } ``` #### allowWarnings Type: `Boolean` Default value: `false` Set `allowWarnings` to `true` to allow the task to succeed if only warnings occur. ## Contributing In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/). ## Release History |Date|Version|Changes| |---|---|---| |2017-04-21|1.5.1|Fix so we don't break if Lesshint changes config setup in the future| |2017-03-12|1.5.0|<ul><li>Update lesshint to 3.0.0</li><li>Update grunt-mocha-test to 0.13.2</li><li>Update mocha to 3.2.0</li></ul>| |2016-10-10|1.4.0|Added support for allowing warnings without exiting. Thanks [@mmckenziedev](https://github.com/mmckenziedev)!| |2016-09-22|1.3.0|Added support for custom reporters. Thanks [@scttdavs](https://github.com/scttdavs)!| |2016-09-05|1.2.0|<ul><li>Update grunt to 1.0.0</li><li>Update lesshint to 2.0.0</li><li>Added node 6.* to Travis</li></ul>| |2016-01-26|1.1.1|Update grunt-contrib-jshint to 0.12.0| |2015-10-20|1.1.0|<ul><li>Update lesshint to 1.0.0</li><li>Switch lesshint back to ^ to ~</li><li>Update mocha to 2.3.3</li><li>Update grunt-contrib-jshint to 0.11.3</li></ul>| |2015-09-08|1.0.0|Switch lesshint dependency from ^ to ~ because of the [Caret: Major Zero](https://nodesource.com/blog/semver-tilde-and-caret) issue. *Note: Bumping to 1.0.0 to avoid the issue for this repo*| |2015-09-01|0.9.1|Fix readme and version for 0.9.0 and 0.9.1| |2015-09-01|0.9.0|<ul><li>Update lesshint to 0.8.0</li><li>Update mocha to 2.3.0</li></ul>| |2015-08-27|0.8.0|<ul><li>Update lesshint to 0.8.0</li><li>Update spawn-sync to 1.0.11</li><li>Update chalk to 1.1.1</li></ul>| |2015-06-25|0.7.0|<ul><li>Update lesshint to 0.7.0</li><li>Move grunt-lesshint to it's new home</li></ul>| |2015-06-28|0.6.1|Update lesshint to 0.6.2| |2015-05-28|0.6.0|Update lesshint to 0.6.1| |2015-05-25|0.5.1|Fix readme and version for 0.5.0| |2015-05-25|0.5.0|Add CI support with Travis-ci and some experimental coveralls.io support| |2015-05-25|0.4.0|Add support for using custom ```.lesshintrc``` files| |2015-05-21|0.3.1|Forgot to update everything for the 0.3.0 release....| |2015-05-21|0.3.0|<ul><li>Use a real force system instead of faking the <code>--force</code> grunt parameter</li><li>Update JSHint options and clean up errors</li></ul>| |2015-05-19|0.2.7|Update lesshint to 0.5.1| |2015-05-18|0.2.6|Fix NPM publish| |2015-05-18|0.2.5|Update lesshint to 0.5.0| |2015-05-11|0.2.3|Update lesshint to 0.4.1| |2015-05-11|0.2.2|<ul><li>Use <code>Lesshint</code> instead of <code>LessHint</code></li><li>Don't fail the linter after every file with errors</li></ul>| |2015-05-11|0.2.1|Update lesshint to 0.4.0| |2015-05-03|0.2.0|Add support for passing options to lesshint| |2015-05-03|0.1.6|Update lesshint to 0.3.1| |2015-05-03|0.1.5|Update lesshint to 0.3.0| |2015-04-27|0.1.4|<ul><li>Update lesshint to 0.2.0</li><li>Fix duplicate whitespace</li></ul>| |2015-04-24|0.1.3|<ul><li>Update lesshint to 0.1.5</li><li>Use lesshint defaults instead of our own</li></ul>| |2015-04-22|0.1.2|<ul><li>Updated testfiles and tests</li><li>Update devDependencies</li></ul>| |2015-04-21|0.1.1|Readme fixes| |2015-04-21|0.1.0|Initial release|