Use the standard .jshintrc file for JSHint options.
This commit is contained in:
parent
e3e4c62887
commit
6c4417e0f0
|
@ -0,0 +1,68 @@
|
|||
{
|
||||
"predef":["Ember",
|
||||
"jQuery",
|
||||
"$",
|
||||
"RSVP",
|
||||
"Discourse",
|
||||
"$LAB",
|
||||
"Em",
|
||||
"PreloadStore",
|
||||
"Handlebars",
|
||||
"I18n",
|
||||
"bootbox",
|
||||
"module",
|
||||
"integration",
|
||||
"test",
|
||||
"ok",
|
||||
"expect",
|
||||
"equal",
|
||||
"blank",
|
||||
"present",
|
||||
"visit",
|
||||
"count",
|
||||
"exists",
|
||||
"asyncTestDiscourse",
|
||||
"fixture",
|
||||
"find",
|
||||
"sinon",
|
||||
"moment",
|
||||
"start",
|
||||
"_",
|
||||
"console",
|
||||
"alert",
|
||||
"controllerFor",
|
||||
"testController",
|
||||
"containsInstance",
|
||||
"parseHTML",
|
||||
"deepEqual",
|
||||
"notEqual",
|
||||
"Blob",
|
||||
"File"],
|
||||
"node" : false,
|
||||
"browser" : true,
|
||||
"boss" : true,
|
||||
"curly": false,
|
||||
"debug": false,
|
||||
"devel": false,
|
||||
"eqeqeq": true,
|
||||
"evil": true,
|
||||
"forin": false,
|
||||
"immed": false,
|
||||
"laxbreak": false,
|
||||
"newcap": true,
|
||||
"noarg": true,
|
||||
"noempty": false,
|
||||
"nonew": false,
|
||||
"nomen": false,
|
||||
"onevar": false,
|
||||
"plusplus": false,
|
||||
"regexp": false,
|
||||
"undef": true,
|
||||
"unused": true,
|
||||
"sub": true,
|
||||
"strict": false,
|
||||
"white": false,
|
||||
"eqnull": true,
|
||||
"quotmark": false,
|
||||
"lastsemic": true
|
||||
}
|
|
@ -28,6 +28,7 @@ window.Discourse = Ember.Application.createWithMixins(Discourse.Ajax, {
|
|||
|
||||
titleChanged: function() {
|
||||
var title = "";
|
||||
|
||||
if (this.get('title')) {
|
||||
title += "" + (this.get('title')) + " - ";
|
||||
}
|
||||
|
|
|
@ -1,133 +0,0 @@
|
|||
# ------------ rake task options ------------
|
||||
|
||||
# JS files to check by default, if no parameters are passed to rake jshint
|
||||
# (you may want to limit this only to your own scripts and exclude any external scripts and frameworks)
|
||||
|
||||
# this can be overridden by adding 'paths' and 'exclude_paths' parameter to rake command:
|
||||
# rake jshint paths=path1,path2,... exclude_paths=library1,library2,...
|
||||
|
||||
paths:
|
||||
- app/assets/javascripts/**/*.js
|
||||
- spec/javascripts/**/*.js
|
||||
- spec/phantom_js/**/*.js
|
||||
- test/javascripts/**/*.js
|
||||
|
||||
exclude_paths:
|
||||
- app/assets/javascripts/defer/*
|
||||
- app/assets/javascripts/locales/i18n.js
|
||||
|
||||
|
||||
# ------------ jshint options ------------
|
||||
# visit http://jshint.com/ for complete documentation
|
||||
|
||||
# "enforce" type options (true means potentially more warnings)
|
||||
|
||||
adsafe: false # true if ADsafe rules should be enforced. See http://www.ADsafe.org/
|
||||
bitwise: true # true if bitwise operators should not be allowed
|
||||
newcap: true # true if Initial Caps must be used with constructor functions
|
||||
eqeqeq: true # true if === should be required (for ALL equality comparisons)
|
||||
immed: false # true if immediate function invocations must be wrapped in parens
|
||||
nomen: false # true if initial or trailing underscore in identifiers should be forbidden
|
||||
onevar: false # true if only one var statement per function should be allowed
|
||||
plusplus: false # true if ++ and -- should not be allowed
|
||||
regexp: false # true if . and [^...] should not be allowed in RegExp literals
|
||||
safe: false # true if the safe subset rules are enforced (used by ADsafe)
|
||||
strict: false # true if the ES5 "use strict"; pragma is required
|
||||
undef: true # true if variables must be declared before used
|
||||
unused: true
|
||||
white: false # true if strict whitespace rules apply (see also 'indent' option)
|
||||
eqnull: false
|
||||
onecase: true # allow for one case switches, can be more elegant sometimes
|
||||
|
||||
# "allow" type options (false means potentially more warnings)
|
||||
|
||||
cap: false # true if upper case HTML should be allowed
|
||||
css: false # true if CSS workarounds should be tolerated
|
||||
debug: false # true if debugger statements should be allowed (set to false before going into production)
|
||||
es5: false # true if ECMAScript 5 syntax should be allowed
|
||||
evil: false # true if eval should be allowed
|
||||
forin: false # true if unfiltered 'for in' statements should be allowed
|
||||
fragment: false # true if HTML fragments should be allowed
|
||||
laxbreak: false # true if statement breaks should not be checked
|
||||
on: false # true if HTML event handlers (e.g. onclick="...") should be allowed
|
||||
sub: false # true if subscript notation may be used for expressions better expressed in dot notation
|
||||
|
||||
# other options
|
||||
|
||||
maxlen: 200 # Maximum line length
|
||||
indent: 2 # Number of spaces that should be used for indentation - used only if 'white' option is set
|
||||
maxerr: 50 # The maximum number of warnings reported (per file)
|
||||
passfail: false # true if the scan should stop on first error (per file)
|
||||
# following are relevant only if undef = true
|
||||
|
||||
# Some of these can be declared in other ways I think
|
||||
predef:
|
||||
- Ember
|
||||
- jQuery
|
||||
- $
|
||||
- RSVP
|
||||
- Discourse
|
||||
- $LAB
|
||||
- Em
|
||||
- PreloadStore
|
||||
- Handlebars
|
||||
- I18n
|
||||
- bootbox
|
||||
- moment
|
||||
- _
|
||||
- module
|
||||
- integration
|
||||
- test
|
||||
- ok
|
||||
- expect
|
||||
- equal
|
||||
- blank
|
||||
- present
|
||||
- visit
|
||||
- count
|
||||
- exists
|
||||
- asyncTestDiscourse
|
||||
- fixture
|
||||
- find
|
||||
- sinon
|
||||
- controllerFor
|
||||
- testController
|
||||
- Favcount
|
||||
|
||||
browser: true # true if the standard browser globals should be predefined
|
||||
rhino: false # true if the Rhino environment globals should be predefined
|
||||
windows: false # true if Windows-specific globals should be predefined
|
||||
widget: false # true if the Yahoo Widgets globals should be predefined
|
||||
devel: true # true if functions like alert, confirm, console, prompt etc. are predefined
|
||||
|
||||
# jshint options
|
||||
loopfunc: true # true if functions should be allowed to be defined within loops
|
||||
asi: true # true if automatic semicolon insertion should be tolerated
|
||||
boss: true # true if advanced usage of assignments and == should be allowed
|
||||
couch: true # true if CouchDB globals should be predefined
|
||||
curly: false # true if curly braces around blocks should be required (even in if/for/while)
|
||||
noarg: true # true if arguments.caller and arguments.callee should be disallowed
|
||||
node: false # true if the Node.js environment globals should be predefined
|
||||
noempty: false # true if empty blocks should be disallowed
|
||||
nonew: true # true if using `new` for side-effects should be disallowed
|
||||
|
||||
|
||||
# ------------ jshint_on_rails custom lint options (switch to true to disable some annoying warnings) ------------
|
||||
|
||||
# ignores "missing semicolon" warning at the end of a function; this lets you write one-liners
|
||||
# like: x.map(function(i) { return i + 1 }); without having to put a second semicolon inside the function
|
||||
lastsemic: false
|
||||
|
||||
# allows you to use the 'new' expression as a statement (without assignment)
|
||||
# so you can call e.g. new Ajax.Request(...), new Effect.Highlight(...) without assigning to a dummy variable
|
||||
newstat: false
|
||||
|
||||
# ignores the "Expected an assignment or function call and instead saw an expression" warning,
|
||||
# if the expression contains a proper statement and makes sense; this lets you write things like:
|
||||
# element && element.show();
|
||||
# valid || other || lastChance || alert('OMG!');
|
||||
# selected ? show() : hide();
|
||||
# although these will still cause a warning:
|
||||
# element && link;
|
||||
# selected ? 5 : 10;
|
||||
statinexp: false
|
|
@ -90,74 +90,6 @@ qHint.sendRequest = function (url, callback) {
|
|||
req.send();
|
||||
};
|
||||
|
||||
var jsHintOpts = {
|
||||
"predef":["Ember",
|
||||
"jQuery",
|
||||
"$",
|
||||
"RSVP",
|
||||
"Discourse",
|
||||
"$LAB",
|
||||
"Em",
|
||||
"PreloadStore",
|
||||
"Handlebars",
|
||||
"I18n",
|
||||
"bootbox",
|
||||
"module",
|
||||
"integration",
|
||||
"test",
|
||||
"ok",
|
||||
"expect",
|
||||
"equal",
|
||||
"blank",
|
||||
"present",
|
||||
"visit",
|
||||
"count",
|
||||
"exists",
|
||||
"asyncTestDiscourse",
|
||||
"fixture",
|
||||
"find",
|
||||
"sinon",
|
||||
"moment",
|
||||
"start",
|
||||
"_",
|
||||
"console",
|
||||
"alert",
|
||||
"controllerFor",
|
||||
"testController",
|
||||
"containsInstance",
|
||||
"parseHTML",
|
||||
"deepEqual",
|
||||
"notEqual",
|
||||
"Blob",
|
||||
"File"],
|
||||
"node" : false,
|
||||
"browser" : true,
|
||||
"boss" : true,
|
||||
"curly": false,
|
||||
"debug": false,
|
||||
"devel": false,
|
||||
"eqeqeq": true,
|
||||
"evil": true,
|
||||
"forin": false,
|
||||
"immed": false,
|
||||
"laxbreak": false,
|
||||
"newcap": true,
|
||||
"noarg": true,
|
||||
"noempty": false,
|
||||
"nonew": false,
|
||||
"nomen": false,
|
||||
"onevar": false,
|
||||
"plusplus": false,
|
||||
"regexp": false,
|
||||
"undef": true,
|
||||
"unused": true,
|
||||
"sub": true,
|
||||
"strict": false,
|
||||
"white": false,
|
||||
"eqnull": true,
|
||||
"lastsemic": true
|
||||
};
|
||||
|
||||
<%
|
||||
def jshint(dir, remove, to_ignore)
|
||||
result = ""
|
||||
|
@ -172,7 +104,7 @@ var jsHintOpts = {
|
|||
|
||||
depend_on filename
|
||||
|
||||
result << "qHint('#{filename}', '/assets/#{filename}', jsHintOpts);\n" if ok
|
||||
result << "qHint('#{filename}', '/assets/#{filename}', #{File.read(File.join(Rails.root, '.jshintrc'))});\n" if ok
|
||||
|
||||
end
|
||||
result
|
||||
|
|
Loading…
Reference in New Issue