6 # The zero-argument form lints everything.
8 jsc_opts
='maxerr:10000,devel:true,browser:true'
9 rhino_opts
='maxerr=10000,devel=true,browser=true'
12 echo "Usage: $0 [file.js]"
17 files
=$
(ls dygraph
*.js plugins
/*.js |
grep -v combined |
grep -v dev.js
)
22 if [ -e
/System
/Library
/Frameworks
/JavaScriptCore.framework
/Versions
/A
/Resources
/jsc
]; then
23 # use JSC (Safari/JavaScriptCore) to run JSHint -- much faster than Rhino.
24 echo 'Running JSHint w/ JavaScriptCore (jsc)...'
25 for file in $files; do
26 .
/jshint
/env
/jsc.sh
$file $jsc_opts
30 echo 'Running JSHint w/ Rhino...'
32 for FILE
in $files; do
33 LINT_RESULT
=$
(java
-jar .
/jsdoc-toolkit
/java
/classes
/js.jar .
/jshint
/build
/jshint-rhino.js
$rhino_opts $FILE)
34 ERRORS
=$
(echo ${LINT_RESULT} |
egrep [^\s
] -c
)
35 if [[ ${ERRORS} -ne
0 ]]; then
36 echo "[jshint] Error(s) in ${FILE}:"
37 printf "%s\n" "${LINT_RESULT}"
39 echo "[jshint] ${FILE} passed!"