Validate files with Google Linter.
This plugin requires Node ~0.8.19
(for managing peerDependencies), Grunt ~0.4.1
and just python installed.
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-gjslint --save-dev
One the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-gjslint');
Run this tasks with the grunt gjslint
or grunt fixjsstyle
commands.
In your project's Gruntfile, add sections named gjslint
and fixjsstyle
to the data object passed into grunt.initConfig()
. Some of the flags passed to gjslint don't work with fixjsstyle.
grunt.initConfig({
gjslint: {
options: {
flags: [
'--disable 220' //ignore error code 220 from gjslint
],
reporter: {
name: 'console'
}
},
all: {
src: '<%= jshint.all %>'
}
},
fixjstyle: {
options: {
flags: [
'--disable 220' //ignore error code 220 from gjslint
],
reporter: {
name: 'console'
}
},
all: {
src: '<%= jshint.all %>'
}
}
})
As this is a Multitask, you can specify several targets to be called sharing the same root options
grunt-gjslint uses node-closure-linter-wrapper to lint files
Please, refer to node-closure-linter-wrapper documentation for flags and reporter reference.
options.force
flag is a custom option that when disabled, will not fail the grunt task when python is not installed on
the computer. It defaults to true
Use a flag file to store the closure-linter flags, and have two different source directories. Output the lint results to the console. You can use wildcards in file paths.
grunt.initConfig({
gjslint: {
options: {
flags: [
'--flagfile .gjslintrc' //use flag file
],
reporter: {
name: 'console' //report to console
},
force: false //don't fail if python is not installed on the computer
},
lib: {
src: ['lib/module/**/*.js', 'lib/foo.js'],
},
test: {
src: ['test/*.js'],
}
},
fixjstyle: {
options: {
flags: [
'--flagfile .fixjssstylerc' //use flag file
],
reporter: {
name: 'console' //report to console
},
force: false //don't fail if python is not installed on the computer
},
lib: {
src: ['lib/module/**/*.js', 'lib/foo.js'],
},
test: {
src: ['test/*.js'],
}
}
})
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.
-
v0.1.5
- added fixjsstyle task
-
v0.1.4
- bug fixing in filenames with whitespaces. Thanks to @moelders
-
v0.1.3
- bug fixing. Thanks to @dcantelar
-
v0.1.0
- First version