[6a3a178] | 1 | #
|
---|
| 2 | # Configuration File for JavaScript Lint
|
---|
| 3 | #
|
---|
| 4 | # This configuration file can be used to lint a collection of scripts, or to enable
|
---|
| 5 | # or disable warnings for scripts that are linted via the command line.
|
---|
| 6 | #
|
---|
| 7 |
|
---|
| 8 | ### Warnings
|
---|
| 9 | # Enable or disable warnings based on requirements.
|
---|
| 10 | # Use "+WarningName" to display or "-WarningName" to suppress.
|
---|
| 11 | #
|
---|
| 12 | +ambiguous_else_stmt # the else statement could be matched with one of multiple if statements (use curly braces to indicate intent
|
---|
| 13 | +ambiguous_nested_stmt # block statements containing block statements should use curly braces to resolve ambiguity
|
---|
| 14 | +ambiguous_newline # unexpected end of line; it is ambiguous whether these lines are part of the same statement
|
---|
| 15 | +anon_no_return_value # anonymous function does not always return value
|
---|
| 16 | +assign_to_function_call # assignment to a function call
|
---|
| 17 | -block_without_braces # block statement without curly braces
|
---|
| 18 | +comma_separated_stmts # multiple statements separated by commas (use semicolons?)
|
---|
| 19 | +comparison_type_conv # comparisons against null, 0, true, false, or an empty string allowing implicit type conversion (use === or !==)
|
---|
| 20 | +default_not_at_end # the default case is not at the end of the switch statement
|
---|
| 21 | +dup_option_explicit # duplicate "option explicit" control comment
|
---|
| 22 | +duplicate_case_in_switch # duplicate case in switch statement
|
---|
| 23 | +duplicate_formal # duplicate formal argument {name}
|
---|
| 24 | +empty_statement # empty statement or extra semicolon
|
---|
| 25 | +identifier_hides_another # identifer {name} hides an identifier in a parent scope
|
---|
| 26 | -inc_dec_within_stmt # increment (++) and decrement (--) operators used as part of greater statement
|
---|
| 27 | +incorrect_version # Expected /*jsl:content-type*/ control comment. The script was parsed with the wrong version.
|
---|
| 28 | +invalid_fallthru # unexpected "fallthru" control comment
|
---|
| 29 | +invalid_pass # unexpected "pass" control comment
|
---|
| 30 | +jsl_cc_not_understood # couldn't understand control comment using /*jsl:keyword*/ syntax
|
---|
| 31 | +leading_decimal_point # leading decimal point may indicate a number or an object member
|
---|
| 32 | +legacy_cc_not_understood # couldn't understand control comment using /*@keyword@*/ syntax
|
---|
| 33 | +meaningless_block # meaningless block; curly braces have no impact
|
---|
| 34 | +mismatch_ctrl_comments # mismatched control comment; "ignore" and "end" control comments must have a one-to-one correspondence
|
---|
| 35 | +misplaced_regex # regular expressions should be preceded by a left parenthesis, assignment, colon, or comma
|
---|
| 36 | +missing_break # missing break statement
|
---|
| 37 | +missing_break_for_last_case # missing break statement for last case in switch
|
---|
| 38 | +missing_default_case # missing default case in switch statement
|
---|
| 39 | +missing_option_explicit # the "option explicit" control comment is missing
|
---|
| 40 | +missing_semicolon # missing semicolon
|
---|
| 41 | +missing_semicolon_for_lambda # missing semicolon for lambda assignment
|
---|
| 42 | +multiple_plus_minus # unknown order of operations for successive plus (e.g. x+++y) or minus (e.g. x---y) signs
|
---|
| 43 | +nested_comment # nested comment
|
---|
| 44 | +no_return_value # function {name} does not always return a value
|
---|
| 45 | +octal_number # leading zeros make an octal number
|
---|
| 46 | +parseint_missing_radix # parseInt missing radix parameter
|
---|
| 47 | +partial_option_explicit # the "option explicit" control comment, if used, must be in the first script tag
|
---|
| 48 | +redeclared_var # redeclaration of {name}
|
---|
| 49 | +trailing_comma_in_array # extra comma is not recommended in array initializers
|
---|
| 50 | +trailing_decimal_point # trailing decimal point may indicate a number or an object member
|
---|
| 51 | +undeclared_identifier # undeclared identifier: {name}
|
---|
| 52 | +unreachable_code # unreachable code
|
---|
| 53 | -unreferenced_argument # argument declared but never referenced: {name}
|
---|
| 54 | -unreferenced_function # function is declared but never referenced: {name}
|
---|
| 55 | +unreferenced_variable # variable is declared but never referenced: {name}
|
---|
| 56 | +unsupported_version # JavaScript {version} is not supported
|
---|
| 57 | +use_of_label # use of label
|
---|
| 58 | +useless_assign # useless assignment
|
---|
| 59 | +useless_comparison # useless comparison; comparing identical expressions
|
---|
| 60 | -useless_quotes # the quotation marks are unnecessary
|
---|
| 61 | +useless_void # use of the void type may be unnecessary (void is always undefined)
|
---|
| 62 | +var_hides_arg # variable {name} hides argument
|
---|
| 63 | +want_assign_or_call # expected an assignment or function call
|
---|
| 64 | +with_statement # with statement hides undeclared variables; use temporary variable instead
|
---|
| 65 |
|
---|
| 66 |
|
---|
| 67 | ### Output format
|
---|
| 68 | # Customize the format of the error message.
|
---|
| 69 | # __FILE__ indicates current file path
|
---|
| 70 | # __FILENAME__ indicates current file name
|
---|
| 71 | # __LINE__ indicates current line
|
---|
| 72 | # __COL__ indicates current column
|
---|
| 73 | # __ERROR__ indicates error message (__ERROR_PREFIX__: __ERROR_MSG__)
|
---|
| 74 | # __ERROR_NAME__ indicates error name (used in configuration file)
|
---|
| 75 | # __ERROR_PREFIX__ indicates error prefix
|
---|
| 76 | # __ERROR_MSG__ indicates error message
|
---|
| 77 | #
|
---|
| 78 | # For machine-friendly output, the output format can be prefixed with
|
---|
| 79 | # "encode:". If specified, all items will be encoded with C-slashes.
|
---|
| 80 | #
|
---|
| 81 | # Visual Studio syntax (default):
|
---|
| 82 | +output-format __FILE__(__LINE__): __ERROR__
|
---|
| 83 | # Alternative syntax:
|
---|
| 84 | #+output-format __FILE__:__LINE__: __ERROR__
|
---|
| 85 |
|
---|
| 86 |
|
---|
| 87 | ### Context
|
---|
| 88 | # Show the in-line position of the error.
|
---|
| 89 | # Use "+context" to display or "-context" to suppress.
|
---|
| 90 | #
|
---|
| 91 | +context
|
---|
| 92 |
|
---|
| 93 |
|
---|
| 94 | ### Control Comments
|
---|
| 95 | # Both JavaScript Lint and the JScript interpreter confuse each other with the syntax for
|
---|
| 96 | # the /*@keyword@*/ control comments and JScript conditional comments. (The latter is
|
---|
| 97 | # enabled in JScript with @cc_on@). The /*jsl:keyword*/ syntax is preferred for this reason,
|
---|
| 98 | # although legacy control comments are enabled by default for backward compatibility.
|
---|
| 99 | #
|
---|
| 100 | -legacy_control_comments
|
---|
| 101 |
|
---|
| 102 |
|
---|
| 103 | ### Defining identifiers
|
---|
| 104 | # By default, "option explicit" is enabled on a per-file basis.
|
---|
| 105 | # To enable this for all files, use "+always_use_option_explicit"
|
---|
| 106 | -always_use_option_explicit
|
---|
| 107 |
|
---|
| 108 | # Define certain identifiers of which the lint is not aware.
|
---|
| 109 | # (Use this in conjunction with the "undeclared identifier" warning.)
|
---|
| 110 | #
|
---|
| 111 | # Common uses for webpages might be:
|
---|
| 112 | +define __dirname
|
---|
| 113 | +define clearInterval
|
---|
| 114 | +define clearTimeout
|
---|
| 115 | +define console
|
---|
| 116 | +define exports
|
---|
| 117 | +define global
|
---|
| 118 | +define process
|
---|
| 119 | +define require
|
---|
| 120 | +define setInterval
|
---|
| 121 | +define setTimeout
|
---|
| 122 | +define Buffer
|
---|
| 123 | +define JSON
|
---|
| 124 | +define Math
|
---|
| 125 |
|
---|
| 126 | ### JavaScript Version
|
---|
| 127 | # To change the default JavaScript version:
|
---|
| 128 | #+default-type text/javascript;version=1.5
|
---|
| 129 | #+default-type text/javascript;e4x=1
|
---|
| 130 |
|
---|
| 131 | ### Files
|
---|
| 132 | # Specify which files to lint
|
---|
| 133 | # Use "+recurse" to enable recursion (disabled by default).
|
---|
| 134 | # To add a set of files, use "+process FileName", "+process Folder\Path\*.js",
|
---|
| 135 | # or "+process Folder\Path\*.htm".
|
---|
| 136 | #
|
---|
| 137 |
|
---|