From 0e9d4131020c799878a450a08170809fc11157ce Mon Sep 17 00:00:00 2001 From: nightwing Date: Fri, 22 Nov 2013 22:03:02 +0400 Subject: [PATCH] cleanup vbscrip mode --- lib/ace/mode/vbscript_highlight_rules.js | 88 ++++++++---------------- 1 file changed, 29 insertions(+), 59 deletions(-) diff --git a/lib/ace/mode/vbscript_highlight_rules.js b/lib/ace/mode/vbscript_highlight_rules.js index a3323b42..c706002d 100644 --- a/lib/ace/mode/vbscript_highlight_rules.js +++ b/lib/ace/mode/vbscript_highlight_rules.js @@ -71,6 +71,7 @@ var VBScriptHighlightRules = function() { }, { token: [ + "text", "storage.type.function.asp", "text", "entity.name.function.asp", @@ -79,7 +80,7 @@ var VBScriptHighlightRules = function() { "variable.parameter.function.asp", "punctuation.definition.parameters.asp" ], - regex: "^\\s*((?:Function|Sub))(\\s*)([a-zA-Z_]\\w*)(\\s*)(\\()([^)]*)(\\)).*\\n?" + regex: "^(\\s*)(Function|Sub)(\\s*)([a-zA-Z_]\\w*)(\\s*)(\\()([^)]*)(\\))" }, { token: "punctuation.definition.comment.asp", @@ -90,36 +91,26 @@ var VBScriptHighlightRules = function() { token: [ "keyword.control.asp" ], - regex: "(?:\\b(If|Then|Else|ElseIf|Else If|End If|While|Wend|For|To|Each|Case|Select|End Select|Return|Continue|Do|Until|Loop|Next|With|Exit Do|Exit For|Exit Function|Exit Property|Exit Sub|IIf)\\b)" + regex: "\\b(?:If|Then|Else|ElseIf|Else If|End If|While|Wend|For|To|Each|Case|Select|End Select|Return|Continue|Do|Until|Loop|Next|With|Exit Do|Exit For|Exit Function|Exit Property|Exit Sub|IIf)\\b" }, { - token: [ - "keyword.operator.asp" - ], - regex: "(?:\\b(Mod|And|Not|Or|Xor|as)\\b)" + token: "keyword.operator.asp", + regex: "\\b(?:Mod|And|Not|Or|Xor|as)\\b" }, { - token: [ - "storage.type.asp" - ], + token: "storage.type.asp", regex: "Dim|Call|Class|Const|Dim|Redim|Function|Sub|Private Sub|Public Sub|End sub|End Function|Set|Let|Get|New|Randomize|Option Explicit|On Error Resume Next|On Error GoTo" }, { - token: [ - "storage.modifier.asp" - ], - regex: "(?:\\b(Private|Public|Default)\\b)" + token: "storage.modifier.asp", + regex: "\\b(?:Private|Public|Default)\\b" }, { - token: [ - "constant.language.asp" - ], - regex: "(?:\\s*\\b(Empty|False|Nothing|Null|True)\\b)" + token: "constant.language.asp", + regex: "\\b(?:Empty|False|Nothing|Null|True)\\b" }, { - token: [ - "punctuation.definition.string.begin.asp" - ], + token: "punctuation.definition.string.begin.asp", regex: '"', next: "string" }, @@ -130,34 +121,24 @@ var VBScriptHighlightRules = function() { regex: "(\\$)[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\b\\s*" }, { - token: [ - "support.class.asp" - ], - regex: "(?:\\b(Application|ObjectContext|Request|Response|Server|Session)\\b)" + token: "support.class.asp", + regex: "\\b(?:Application|ObjectContext|Request|Response|Server|Session)\\b" }, { - token: [ - "support.class.collection.asp" - ], - regex: "(?:\\b(Contents|StaticObjects|ClientCertificate|Cookies|Form|QueryString|ServerVariables)\\b)" + token: "support.class.collection.asp", + regex: "\\b(?:Contents|StaticObjects|ClientCertificate|Cookies|Form|QueryString|ServerVariables)\\b" }, { - token: [ - "support.constant.asp" - ], - regex: "(?:\\b(TotalBytes|Buffer|CacheControl|Charset|ContentType|Expires|ExpiresAbsolute|IsClientConnected|PICS|Status|ScriptTimeout|CodePage|LCID|SessionID|Timeout)\\b)" + token: "support.constant.asp", + regex: "\\b(?:TotalBytes|Buffer|CacheControl|Charset|ContentType|Expires|ExpiresAbsolute|IsClientConnected|PICS|Status|ScriptTimeout|CodePage|LCID|SessionID|Timeout)\\b" }, { - token: [ - "support.function.asp" - ], - regex: "(?:\\b(Lock|Unlock|SetAbort|SetComplete|BinaryRead|AddHeader|AppendToLog|BinaryWrite|Clear|End|Flush|Redirect|Write|CreateObject|HTMLEncode|MapPath|URLEncode|Abandon|Convert|Regex)\\b)" + token: "support.function.asp", + regex: "\\b(?:Lock|Unlock|SetAbort|SetComplete|BinaryRead|AddHeader|AppendToLog|BinaryWrite|Clear|End|Flush|Redirect|Write|CreateObject|HTMLEncode|MapPath|URLEncode|Abandon|Convert|Regex)\\b" }, { - token: [ - "support.function.event.asp" - ], - regex: "(?:\\b(Application_OnEnd|Application_OnStart|OnTransactionAbort|OnTransactionCommit|Session_OnEnd|Session_OnStart)\\b)" + token: "support.function.event.asp", + regex: "\\b(?:Application_OnEnd|Application_OnStart|OnTransactionAbort|OnTransactionCommit|Session_OnEnd|Session_OnStart)\\b" }, // { // token: [ @@ -166,10 +147,8 @@ var VBScriptHighlightRules = function() { // regex: "(?:(?<=as )(\\b[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*?\\b))", // ERROR: This contains a lookbehind, which JS does not support :(" // }, { - token: [ - "support.function.vb.asp" - ], - regex: "(?:\\b(Array|Add|Asc|Atn|CBool|CByte|CCur|CDate|CDbl|Chr|CInt|CLng|Conversions|Cos|CreateObject|CSng|CStr|Date|DateAdd|DateDiff|DatePart|DateSerial|DateValue|Day|Derived|Math|Escape|Eval|Exists|Exp|Filter|FormatCurrency|FormatDateTime|FormatNumber|FormatPercent|GetLocale|GetObject|GetRef|Hex|Hour|InputBox|InStr|InStrRev|Int|Fix|IsArray|IsDate|IsEmpty|IsNull|IsNumeric|IsObject|Item|Items|Join|Keys|LBound|LCase|Left|Len|LoadPicture|Log|LTrim|RTrim|Trim|Maths|Mid|Minute|Month|MonthName|MsgBox|Now|Oct|Remove|RemoveAll|Replace|RGB|Right|Rnd|Round|ScriptEngine|ScriptEngineBuildVersion|ScriptEngineMajorVersion|ScriptEngineMinorVersion|Second|SetLocale|Sgn|Sin|Space|Split|Sqr|StrComp|String|StrReverse|Tan|Time|Timer|TimeSerial|TimeValue|TypeName|UBound|UCase|Unescape|VarType|Weekday|WeekdayName|Year)\\b)" + token: "support.function.vb.asp", + regex: "\\b(?:Array|Add|Asc|Atn|CBool|CByte|CCur|CDate|CDbl|Chr|CInt|CLng|Conversions|Cos|CreateObject|CSng|CStr|Date|DateAdd|DateDiff|DatePart|DateSerial|DateValue|Day|Derived|Math|Escape|Eval|Exists|Exp|Filter|FormatCurrency|FormatDateTime|FormatNumber|FormatPercent|GetLocale|GetObject|GetRef|Hex|Hour|InputBox|InStr|InStrRev|Int|Fix|IsArray|IsDate|IsEmpty|IsNull|IsNumeric|IsObject|Item|Items|Join|Keys|LBound|LCase|Left|Len|LoadPicture|Log|LTrim|RTrim|Trim|Maths|Mid|Minute|Month|MonthName|MsgBox|Now|Oct|Remove|RemoveAll|Replace|RGB|Right|Rnd|Round|ScriptEngine|ScriptEngineBuildVersion|ScriptEngineMajorVersion|ScriptEngineMinorVersion|Second|SetLocale|Sgn|Sin|Space|Split|Sqr|StrComp|String|StrReverse|Tan|Time|Timer|TimeSerial|TimeValue|TypeName|UBound|UCase|Unescape|VarType|Weekday|WeekdayName|Year)\\b" }, { token: [ @@ -178,10 +157,8 @@ var VBScriptHighlightRules = function() { regex: "-?\\b(?:(?:0(?:x|X)[0-9a-fA-F]*)|(?:(?:[0-9]+\\.?[0-9]*)|(?:\\.[0-9]+))(?:(?:e|E)(?:\\+|-)?[0-9]+)?)(?:L|l|UL|ul|u|U|F|f)?\\b" }, { - token: [ - "support.type.vb.asp" - ], - regex: "(?:\\b(vbtrue|vbfalse|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|int32|vbtab|vbverticaltab|vbbinarycompare|vbtextcomparevbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbEmpty|vbNull|vbInteger|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant|vbDataObject|vbDecimal|vbByte|vbArray)\\b)" + token: "support.type.vb.asp", + regex: "\\b(?:vbtrue|vbfalse|vbcr|vbcrlf|vbformfeed|vblf|vbnewline|vbnullchar|vbnullstring|int32|vbtab|vbverticaltab|vbbinarycompare|vbtextcomparevbsunday|vbmonday|vbtuesday|vbwednesday|vbthursday|vbfriday|vbsaturday|vbusesystemdayofweek|vbfirstjan1|vbfirstfourdays|vbfirstfullweek|vbgeneraldate|vblongdate|vbshortdate|vblongtime|vbshorttime|vbobjecterror|vbEmpty|vbNull|vbInteger|vbLong|vbSingle|vbDouble|vbCurrency|vbDate|vbString|vbObject|vbError|vbBoolean|vbVariant|vbDataObject|vbDecimal|vbByte|vbArray)\\b" }, { token: [ @@ -223,10 +200,7 @@ var VBScriptHighlightRules = function() { ], "state_4": [ { - token: [ - "meta.odd-tab.spaces", - "meta.even-tab.spaces" - ], + token: ["meta.odd-tab.spaces", "meta.even-tab.spaces"], regex: "( )( )?" }, { @@ -235,9 +209,7 @@ var VBScriptHighlightRules = function() { next: "start" }, { - token: "meta.leading-space", - regex: ".", - next: "state_4" + defaultToken: "meta.leading-space" } ], "comment": [ @@ -247,8 +219,7 @@ var VBScriptHighlightRules = function() { next: "start" }, { - token: "comment.line.apostrophe.asp", - regex: "." + defaultToken: "comment.line.apostrophe.asp" } ], "string": [ @@ -262,8 +233,7 @@ var VBScriptHighlightRules = function() { next: "start" }, { - token: "string.quoted.double.asp", - regex: "." + defaultToken: "string.quoted.double.asp" } ] }