jslint
Simple gem to handle jslint.
In a rails project:
$ rails g jslint:update_config
$ vim config/jslint.yml
$ bundle exec jslint path/to/javascript/file.js
As a standalone script:
$ jslint --indent=2 --predef='[\"Ajax\"]' ... path/to/javascript/file.js
Configuration
Config file lives in config/jslint.yml, following format is accepted:
jslint:
options:
anon: true # true, if the space may be omitted in anonymous function declarations
bitwise: true # true, if bitwise operators should be allowed
cap: true # true, if upper case HTML should be allowed
continue: true # true, if the continuation statement should be tolerated
css: true # true, if CSS workarounds should be tolerated
debug: true # true, if debugger statements should be allowed
eqeq: true # true, if == should be allowed
es5: true # true, if ES5 syntax should be allowed
evil: true # true, if eval should be allowed
forin: true # true, if for in statements need not filter
fragment: true # true, if HTML fragments should be allowed
newcap: true # true, if constructor names capitalization is ignored
node: true # true, if Node.js globals should be predefined
nomen: true # true, if names may have dangling _
on: true # true, if HTML event handlers should be allowed
plusplus: true # true, if increment/decrement should be allowed
properties: true # true, if all property names must be declared with /*properties*/
regexp: true # true, if the . should be allowed in regexp literals
undef: true # true, if variables can be declared out of order
unparam: true # true, if unused parameters should be tolerated
sloppy: true # true, if the 'use strict'; pragma is optional
stupid: true # true, if really stupid practices are tolerated
sub: true # true, if all forms of subscript notation are tolerated
vars: true # true, if multiple var statements per function should be allowed
white: true # true, if sloppy whitespace is tolerated
maxlen: 150 # the maximum length of a source line
indent: 2 # the indentation factor
maxerr: 50 # the maximum number of errors to allow
passfail: true # true, if the scan should stop on first error
# following are relevant only if undef = false
browser: true # true, if the standard browser globals should be predefined
rhino: true # true, if the Rhino environment globals should be predefined
windows: true # true, if MS Windows-specific globals should be predefined
widget: true # true if the Yahoo Widgets globals should be predefined
devel: true # true, if logging should be allowed (console, alert, etc.)
predefined:
- Ajax # list of predefinied globals
Copyright
Copyright (c) 2010 Geraud. See LICENSE for details.