Skip to content

Instantly share code, notes, and snippets.

@mbbx6spp
Created January 7, 2010 16:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mbbx6spp/271342 to your computer and use it in GitHub Desktop.
Save mbbx6spp/271342 to your computer and use it in GitHub Desktop.
JSLint configuration for a Rails project using jQuery. Can use with other frameworks if you remove "+define jQuery" and replace with your library's global name.
namespace :js do
desc 'Run Javascript Lint on engine-specific Javascript files.'
task :lint do
config_file = ENV["JSL_CFG"] || File.join('spec', 'javascripts', 'jsl.conf')
if File.exist?(config_file)
output = %x[jsl -conf #{config_file}]
puts output
else
puts "Warning: No JSLint configuration file specified nor default location (spec/javascripts/jsl.conf) exists."
end
end
end
### Warnings
+no_return_value # function {0} does not always return a value
+duplicate_formal # duplicate formal argument {0}
+equal_as_assign # test for equality (==) mistyped as assignment (=)?{0}
+var_hides_arg # variable {0} hides argument
+redeclared_var # redeclaration of {0} {1}
+anon_no_return_value # anonymous function does not always return a value
+missing_semicolon # missing semicolon
+meaningless_block # meaningless block; curly braces have no impact
+comma_separated_stmts # multiple statements separated by commas (use semicolons?)
+unreachable_code # unreachable code
+missing_break # missing break statement
+missing_break_for_last_case # missing break statement for last case in switch
+comparison_type_conv # comparisons against null, 0, true, false, or an empty string allowing implicit type conversion (use === or !==)
+inc_dec_within_stmt # increment (++) and decrement (--) operators used as part of greater statement
+useless_void # use of the void type may be unnecessary (void is always undefined)
+multiple_plus_minus # unknown order of operations for successive plus (e.g. x+++y) or minus (e.g. x---y) signs
+use_of_label # use of label
-block_without_braces # block statement without curly braces
+leading_decimal_point # leading decimal point may indicate a number or an object member
+trailing_decimal_point # trailing decimal point may indicate a number or an object member
+octal_number # leading zeros make an octal number
+nested_comment # nested comment
+misplaced_regex # regular expressions should be preceded by a left parenthesis, assignment, colon, or comma
+ambiguous_newline # unexpected end of line; it is ambiguous whether these lines are part of the same statement
+empty_statement # empty statement or extra semicolon
-missing_option_explicit # the "option explicit" control comment is missing
+partial_option_explicit # the "option explicit" control comment, if used, must be in the first script tag
+dup_option_explicit # duplicate "option explicit" control comment
+useless_assign # useless assignment
+ambiguous_nested_stmt # block statements containing block statements should use curly braces to resolve ambiguity
+ambiguous_else_stmt # the else statement could be matched with one of multiple if statements (use curly braces to indicate intent)
+missing_default_case # missing default case in switch statement
+duplicate_case_in_switch # duplicate case in switch statements
+default_not_at_end # the default case is not at the end of the switch statement
+legacy_cc_not_understood # couldn't understand control comment using /*@keyword@*/ syntax
+jsl_cc_not_understood # couldn't understand control comment using /*jsl:keyword*/ syntax
+useless_comparison # useless comparison; comparing identical expressions
+with_statement # with statement hides undeclared variables; use temporary variable instead
+trailing_comma_in_array # extra comma is not recommended in array initializers
+assign_to_function_call # assignment to a function call
+parseint_missing_radix # parseInt missing radix parameter
### Output format
+output-format __FILE__:__LINE__: __ERROR__
### Context
+context
### Semicolons
+lambda_assign_requires_semicolon
### Control Comments
+legacy_control_comments
### JScript Function Extensions
-jscript_function_extensions
### Defining identifiers
+define window
+define document
+define alert
+define jQuery
### Files
+process public/javascripts/myapp/*.js
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment