Files
@ a60a0e9092c6
Branch filter:
Location: kallithea/rhodecode/public/js/mode/vbscript/vbscript.js - annotation
a60a0e9092c6
871 B
text/javascript
added codemirror edit mode with autodetection
a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 a60a0e9092c6 | 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");
|