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");
 |