-
-
Save adamduren/8043245 to your computer and use it in GitHub Desktop.
This is my preferred .jshintrc configuration
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// JSHint Option Reference http://www.jshint.com/docs/options/ | |
{ | |
// Settings | |
"passfail" : false, // Stop on first error. | |
"maxerr" : 100, // Maximum error before stopping. | |
// Predefined globals whom JSHint will ignore. | |
"browser" : true, // Standard browser globals e.g. `window`, `document`. | |
"jquery" : true, | |
"predef" : [ // Custom globals. | |
], | |
// Development. | |
"debug" : false, // Allow debugger statements e.g. browser breakpoints. | |
"devel" : false, // Allow developments statements e.g. `console.log();`. | |
// ECMAScript settings | |
"es3" : true, // Require ECMAScript 3 compatible syntax. | |
"strict" : true, // Require `use strict` pragma in every file. | |
"globalstrict" : false, // Allow global "use strict" (also enables 'strict'). | |
// The Good Parts. | |
"asi" : true, // Tolerate Automatic Semicolon Insertion (no semicolons). | |
"laxbreak" : false, // Tolerate unsafe line breaks e.g. `return [\n] x` without semicolons. | |
"bitwise" : true, // Prohibit bitwise operators (&, |, ^, etc.). As they are most often mistakes of &&, ||, etc | |
"boss" : false, // x assignments inside if, for & while. Usually conditions & loops are for comparison, not assignments. | |
"curly" : false, // Require {} for every new block or scope. | |
"eqeqeq" : true, // Require triple equals i.e. `===`. | |
"eqnull" : false, // Tolerate use of `== null`. | |
"evil" : false, // Tolerate use of `eval`. | |
"expr" : false, // Tolerate `ExpressionStatement` as Programs. | |
"forin" : false, // Tolerate `for in` loops without `hasOwnPrototype`. | |
"immed" : true, // Require immediate invocations to be wrapped in parens e.g. `( function(){}() );` | |
"latedef" : true, // Prohibit variable use before definition. | |
"loopfunc" : false, // Allow functions to be defined within loops. | |
"noarg" : true, // Prohibit use of `arguments.caller` and `arguments.callee`. | |
"scripturl" : false, // Tolerate script-targeted URLs. | |
"shadow" : false, // Allows re-define variables later in code e.g. `var x=1; function foo() { var x=10; return x }`. | |
"supernew" : false, // Tolerate `new function () { ... };` and `new Object;`. | |
"undef" : true, // Require all non-global variables be declared before they are used. | |
// Personal styling preferences. | |
"newcap" : true, // Require capitalization of all constructor functions e.g. `new F()`. | |
"noempty" : true, // Prohibit use of empty blocks. | |
"nonew" : true, // Prohibit use of constructors for side-effects. | |
"plusplus" : false, // Prohibit use of `++` & `--`. | |
"sub" : false, // Tolerate all forms of subscript notation besides dot notation e.g. `dict['key']` instead of `dict.key`. | |
"trailing" : true, // Prohibit trailing whitespaces. | |
"white" : false, // Check against strict whitespace and indentation rules. | |
"indent" : 2, // Specify indentation spacing | |
"camelcase" : true, // Force all variable names to use either camelCase style or UPPER_CASE with underscores. | |
"unused" : true, // Warns when variables are defined but never used. | |
"maxcomplexity" : 11 // Set the cyclomatic complexity limit throughout your code. | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment