diff options
author | Jörn Zaefferer <joern.zaefferer@gmail.com> | 2013-10-10 18:42:21 +0200 |
---|---|---|
committer | Jörn Zaefferer <joern.zaefferer@gmail.com> | 2013-11-13 19:20:16 +0100 |
commit | c462e66f5d2c3da30879e38649e81d34bb7d2587 (patch) | |
tree | a7d38d0274f6bd38cdbbd314307f80a991fd83c8 | |
parent | 0e192979d0401c8cfe889b116fffc43cc85bb9fa (diff) | |
download | jquery-ui-c462e66f5d2c3da30879e38649e81d34bb7d2587.tar.gz jquery-ui-c462e66f5d2c3da30879e38649e81d34bb7d2587.zip |
Build: Add jscs task for code style checking
-rw-r--r-- | .jscs.json | 23 | ||||
-rw-r--r-- | Gruntfile.js | 10 | ||||
-rw-r--r-- | package.json | 1 |
3 files changed, 33 insertions, 1 deletions
diff --git a/.jscs.json b/.jscs.json new file mode 100644 index 000000000..6540c8f39 --- /dev/null +++ b/.jscs.json @@ -0,0 +1,23 @@ +{ + "requireCurlyBraces": [ "if", "else", "for", "while", "do" ], + "requireSpaceAfterKeywords": [ "if", "else", "for", "while", "do", "switch", "return" ], + "requireSpacesInFunctionExpression": { + "beforeOpeningCurlyBrace": true + }, + "disallowSpacesInFunctionExpression": { + "beforeOpeningRoundBrace": true + }, + "requireMultipleVarDecl": true, + "requireSpacesInsideObjectBrackets": "all", + "requireSpacesInsideArrayBrackets": "all", + "disallowLeftStickedOperators": [ "?", "-", "/", "*", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<=" ], + "disallowRightStickedOperators": [ "?", "/", "*", ":", "=", "==", "===", "!=", "!==", ">", ">=", "<", "<="], + "requireRightStickedOperators": [ "!" ], + "requireLeftStickedOperators": [ "," ], + "disallowKeywords": [ "with" ], + "disallowMultipleLineBreaks": true, + "disallowKeywordsOnNewLine": [ "else" ], + "requireLineFeedAtFileEnd": true, + + "excludeFiles": [ "src/intro.js", "src/outro.js" ] +} diff --git a/Gruntfile.js b/Gruntfile.js index e5ee423f1..63ff1cf39 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -105,6 +105,7 @@ grunt.loadNpmTasks( "grunt-contrib-uglify" ); grunt.loadNpmTasks( "grunt-contrib-concat" ); grunt.loadNpmTasks( "grunt-contrib-qunit" ); grunt.loadNpmTasks( "grunt-contrib-csslint" ); +grunt.loadNpmTasks( "grunt-jscs-checker" ); grunt.loadNpmTasks( "grunt-html" ); grunt.loadNpmTasks( "grunt-compare-size" ); grunt.loadNpmTasks( "grunt-git-authors" ); @@ -161,6 +162,13 @@ grunt.initConfig({ dest: "dist/jquery-ui.css" } }, + jscs: { + // datepicker, sortable, resizable and draggable are getting rewritten, ignore until that's done + ui: [ "ui/jquery.ui.*.js", "!ui/jquery.ui.datepicker.js", "!ui/jquery.ui.sortable.js", "!ui/jquery.ui.resizable.js", "!ui/jquery.ui.draggable.js" ], + // TODO enable this once we have a tool that can help with fixing formatting of existing files + // tests: "tests/unit/**/*.js", + grunt: "Gruntfile.js" + }, uglify: minify, htmllint: { // ignore files that contain invalid html, used only for ajax content testing @@ -197,7 +205,7 @@ grunt.initConfig({ }); grunt.registerTask( "default", [ "lint", "test" ] ); -grunt.registerTask( "lint", [ "asciilint", "jshint", "csslint", "htmllint" ] ); +grunt.registerTask( "lint", [ "asciilint", "jshint", "jscs", "csslint", "htmllint" ] ); grunt.registerTask( "test", [ "qunit" ] ); grunt.registerTask( "sizer", [ "concat:ui", "uglify:main", "compare_size:all" ] ); grunt.registerTask( "sizer_all", [ "concat:ui", "uglify", "compare_size" ] ); diff --git a/package.json b/package.json index 02fbf7c5a..a802617b1 100644 --- a/package.json +++ b/package.json @@ -63,6 +63,7 @@ "grunt-contrib-qunit": "0.2.0", "grunt-contrib-csslint": "0.1.1", "grunt-compare-size": "0.4.0-rc.3", + "grunt-jscs-checker": "0.2.0", "grunt-html": "0.3.3", "grunt-git-authors": "1.2.0", "rimraf": "2.1.4", |