X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=to-be-integrated%2Fthird-party%2Fcodemirror-3.15%2Faddon%2Flint%2Fcoffeescript-lint.js;fp=to-be-integrated%2Fthird-party%2Fcodemirror-3.15%2Faddon%2Flint%2Fcoffeescript-lint.js;h=75f8db6565672d24beb6cbb5365c6099cdb95e37;hb=31540dd504798e0aca69e10d8144fbedc5b16af8;hp=0000000000000000000000000000000000000000;hpb=937653fd70bbf7d95bcf870e7f2b46b4a8fec486;p=myslice.git diff --git a/to-be-integrated/third-party/codemirror-3.15/addon/lint/coffeescript-lint.js b/to-be-integrated/third-party/codemirror-3.15/addon/lint/coffeescript-lint.js new file mode 100644 index 00000000..75f8db65 --- /dev/null +++ b/to-be-integrated/third-party/codemirror-3.15/addon/lint/coffeescript-lint.js @@ -0,0 +1,25 @@ +// Depends on coffeelint.js from http://www.coffeelint.org/js/coffeelint.js + +CodeMirror.registerHelper("lint", "coffeescript", function(text) { + var found = []; + var parseError = function(err) { + var loc = err.lineNumber; + found.push({from: CodeMirror.Pos(loc-1, 0), + to: CodeMirror.Pos(loc, 0), + severity: err.level, + message: err.message}); + }; + try { + var res = coffeelint.lint(text); + for(var i = 0; i < res.length; i++) { + parseError(res[i]); + } + } catch(e) { + found.push({from: CodeMirror.Pos(e.location.first_line, 0), + to: CodeMirror.Pos(e.location.last_line, e.location.last_column), + severity: 'error', + message: e.message}); + } + return found; +}); +CodeMirror.coffeeValidator = CodeMirror.lint.coffeescript; // deprecated