Spaces:
Running
Running
// CodeMirror, copyright (c) by Marijn Haverbeke and others | |
// Distributed under an MIT license: http://codemirror.net/LICENSE | |
(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) { | |
; | |
CodeMirror.defineMode("diff", function() { | |
var TOKEN_NAMES = { | |
'+': 'positive', | |
'-': 'negative', | |
'@': 'meta' | |
}; | |
return { | |
token: function(stream) { | |
var tw_pos = stream.string.search(/[\t ]+?$/); | |
if (!stream.sol() || tw_pos === 0) { | |
stream.skipToEnd(); | |
return ("error " + ( | |
TOKEN_NAMES[stream.string.charAt(0)] || '')).replace(/ $/, ''); | |
} | |
var token_name = TOKEN_NAMES[stream.peek()] || stream.skipToEnd(); | |
if (tw_pos === -1) { | |
stream.skipToEnd(); | |
} else { | |
stream.pos = tw_pos; | |
} | |
return token_name; | |
} | |
}; | |
}); | |
CodeMirror.defineMIME("text/x-diff", "diff"); | |
}); | |