27 lines
871 B
JavaScript
27 lines
871 B
JavaScript
CodeMirror.defineMode("vbscript", function() {
|
|
var regexVBScriptKeyword = /^(?:Call|Case|CDate|Clear|CInt|CLng|Const|CStr|Description|Dim|Do|Each|Else|ElseIf|End|Err|Error|Exit|False|For|Function|If|LCase|Loop|LTrim|Next|Nothing|Now|Number|On|Preserve|Quit|ReDim|Resume|RTrim|Select|Set|Sub|Then|To|Trim|True|UBound|UCase|Until|VbCr|VbCrLf|VbLf|VbTab)$/im;
|
|
|
|
return {
|
|
token: function(stream) {
|
|
if (stream.eatSpace()) return null;
|
|
var ch = stream.next();
|
|
if (ch == "'") {
|
|
stream.skipToEnd();
|
|
return "comment";
|
|
}
|
|
if (ch == '"') {
|
|
stream.skipTo('"');
|
|
return "string";
|
|
}
|
|
|
|
if (/\w/.test(ch)) {
|
|
stream.eatWhile(/\w/);
|
|
if (regexVBScriptKeyword.test(stream.current())) return "keyword";
|
|
}
|
|
return null;
|
|
}
|
|
};
|
|
});
|
|
|
|
CodeMirror.defineMIME("text/vbscript", "vbscript");
|