| // CodeMirror, copyright (c) by Marijn Haverbeke and others |
| // Distributed under an MIT license: http://codemirror.net/LICENSE |
| |
| // Depends on jsonlint.js from https://github.com/zaach/jsonlint |
| |
| // declare global: jsonlint |
| |
| (function(mod) { |
| if (typeof exports == "object" && typeof module == "object") // CommonJS |
| mod(require("../../lib/codemirror")); |
| else if (typeof define == "function" && define.amd) // AMD |
| define(["../../lib/codemirror"], mod); |
| else // Plain browser env |
| mod(CodeMirror); |
| })(function(CodeMirror) { |
| "use strict"; |
| |
| CodeMirror.registerHelper("lint", "json", function(text) { |
| var found = []; |
| jsonlint.parseError = function(str, hash) { |
| var loc = hash.loc; |
| found.push({from: CodeMirror.Pos(loc.first_line - 1, loc.first_column), |
| to: CodeMirror.Pos(loc.last_line - 1, loc.last_column), |
| message: str}); |
| }; |
| try { jsonlint.parse(text); } |
| catch(e) {} |
| return found; |
| }); |
| |
| }); |