A stylish summary reporter for jshint. Best used in combination with jshint-stylish.
Brought on by this Stack Overflow question.
Default output with jshint (in combination with jshint-stylish):
Default output with gulp-jshint (in combination with jshint-stylish):
npm install --save-dev jshint-stylish-summary
With jshint
$ jshint --reporter=node_modules/jshint-stylish-summary src/js/*.js
Since jshint's CLI doesn't currently support multiple reporters it is necessary to create a wrapper reporter if jshint-stylish-summary should be used in combination with another reporter.
To use jshint-stylish-summary with, e.g., jshint-stylish, create a file reporter.js
:
module.exports = {
reporter: function(result, config, options) {
require('jshint-stylish').reporter(result, config, options);
require('jshint-stylish-summary').reporter(result, config, options);
}
};
Then pass this file to jshint:
$ jshint --reporter=reporter.js src/js/*.js
With gulp-jshint
Since jshint-stylish-summary needs to collect information about all files passing through the stream before it can log the results, it is not compatible with gulp-jshint's reporter()
interface.
Instead use the collect()
and summarize()
functions that jshint-stylish-summary provides:
var jshintSummary = require('jshint-stylish-summary');
gulp.task('lint', function() {
return gulp.src('src/**/*.js')
.pipe(jshint('.jshintrc'))
.pipe(jshint.reporter('jshint-stylish'))
.pipe(jshintSummary.collect())
.on('end', jshintSummary.summarize());
});
See the API documentation for a complete overview of all available functions and options.