diff --git a/ActionScript/ActionScript.sublime-build b/ActionScript/ActionScript.sublime-build index 4532cea652..d276e29640 100644 --- a/ActionScript/ActionScript.sublime-build +++ b/ActionScript/ActionScript.sublime-build @@ -1,12 +1,12 @@ { - "selector": "source.actionscript", - "cmd": [ - "mxmlc", - "${file}", - "-library-path+=${project_path}/libs", - "-output", "${project_path}/bin/${project_base_name}.swf", - "-debug=false", - "-static-link-runtime-shared-libraries=true" - ], - "file_regex": "^(.+?)\\(([0-9]+)\\): col: (([0-9]+))(.*)$" -} \ No newline at end of file + "cmd": [ + "mxmlc", + "${file}", + "-library-path+=${project_path}/libs", + "-output", "${project_path}/bin/${project_base_name}.swf", + "-debug=false", + "-static-link-runtime-shared-libraries=true" + ], + "selector": "source.actionscript", + "file_regex": "^(.+?)\\(([0-9]+)\\): col: (([0-9]+))(.*)$" +} diff --git a/ActionScript/ActionScript.sublime-syntax b/ActionScript/ActionScript.sublime-syntax index 7e8567b8ee..c2fdf1aa49 100644 --- a/ActionScript/ActionScript.sublime-syntax +++ b/ActionScript/ActionScript.sublime-syntax @@ -1,98 +1,1059 @@ %YAML 1.2 --- -# http://www.sublimetext.com/docs/3/syntax.html -name: ActionScript -scope: source.actionscript.2 +name: ActionScript 2.0 +scope: source.actionscript +version: 2 file_extensions: - as first_line_match: |- (?xi: - ^ \s* // .*? -\*- .*? \baction-?script\b .*? -\*- # editorconfig + ^ \s* // .*? -\*- .*? \baction-?script\b .*? -\*- # editorconfig ) +###[ VARIABLES ]################################################################ + +variables: + classes: |- + (?x: + R(?:ecordset|DBMSResolver|adioButton(?:Group)?) + | X(?:ML(?:Socket|Node|Connector)?|UpdateResolverDataHolder) + | M(?: + M(?:Save|Execute) + | icrophoneMicrophone + | o(?:use|vieClip(?:Loader)?) + | e(?:nu(?:Bar)?|dia(?:Controller|Display|Playback)) + | ath + ) + | B(?:yName|inding|utton) + | S(?: + haredObject + | ystem + | crollPane + | t(?:yleSheet|age|ream) + | ound + | e(?:ndEvent|rviceObject) + | OAPCall + | lide + ) + | N(?: + umericStepper + | et(?: + stream + | S(?:tream|ervices) + | Connection + | Debug(?:Config)? + ) + ) + | C(?: + heckBox + | o(?:ntextMenu(?:Item)?|okie|lor|m(?:ponentMixins|boBox)) + | ustomActions + | lient + | amera + ) + | T(?: + ypedValue + | ext(?:Snapshot|Input|F(?:ield|ormat)|Area) + | ree + | AB + ) + | Object + | D(?:ownload|elta(?:Item|Packet)?|at(?:e(?:Chooser|Field)?|a(?:G(?:lue|rid)|Set|Type))) + | U(?:RL|TC|IScrollBar) + | P(?:opUpManager|endingCall|r(?:intJob|o(?:duct|gressBar))) + | E(?:ndPoint|rror) + | Video + | Key + | F(?: + RadioButton + | GridColumn + | MessageBox + | BarChart + | S(?:croll(?:Bar|Pane)|tyleFormat|plitView) + | orm + | C(?:heckbox|omboBox|alendar) + | unction + | T(?:icker|ooltip(?:Lite)?|ree(?:Node)?) + | IconButton + | D(?:ataGrid|raggablePane) + | P(?:ieChart|ushButton|ro(?:gressBar|mptBox)) + | L(?:i(?:stBox|neChart)|oadingBox) + | AdvancedMessageBox + ) + | W(?:indow|SDLURL|ebService(?:Connector)?) + | L(?:ist|o(?:calConnection|ad(?:er|Vars)|g)|a(?:unch|bel)) + | A(?: + sBroadcaster + | cc(?:ordion|essibility) + | S(?:Set(?:Native|PropFlags)|N(?:ew|ative)|C(?:onstructor|lamp(?:2)?)|InstanceOf) + | pplication + | lert + | rray + ) + ) + functions: |- + (?x: + s(?: + h(?:ift|ow(?:GridLines|Menu|Border|Settings|Headers|ColumnHeaders|Today|Preferences)?|ad(?:ow|ePane)) + | c(?:hema|ale(?:X|Mode|Y|Content)|r(?:oll(?:Track|Drag)?|een(?:Resolution|Color|DPI))) + | t(?:yleSheet|op(?:Drag|A(?:nimation|llSounds|gent))?|epSize|a(?:tus|rt(?:Drag|A(?:nimation|gent))?)) + | i(?:n|ze|lence(?:TimeOut|Level)) + | o(?:ngname|urce|rt(?:Items(?:By)?|On(?:HeaderRelease)?|able(?:Columns)?)?) + | u(?:ppressInvalidCalls|bstr(?:ing)?) + | p(?:li(?:ce|t)|aceCol(?:umnsEqually|lumnsEqually)) + | e(?: + nd(?:DefaultPushButtonEvent|AndLoad)? + | curity + | t(?: + R(?:GB|o(?:otNode|w(?:Height|Count))|esizable(?:Columns)?|a(?:nge|te)) + | G(?:ain|roupName) + | X(?:AxisTitle)? + | M(?: + i(?:n(?:imum|utes)|lliseconds) + | o(?:nth(?:Names)?|tionLevel|de) + | ultilineMode + | e(?:ssage|nu(?:ItemEnabled(?:At)?|EnabledAt)|dia) + | a(?:sk|ximum) + ) + | B(?:u(?:tton(?:s|Width)|fferTime)|a(?:seTabIndex|ndwidthLimit|ckground)) + | S(?: + howAsDisabled + | croll(?:ing|Speed|Content|Target|P(?:osition|roperties)|barState|Location) + | t(?:yle(?:Property)?|opOnFocus|at(?:us|e)) + | i(?:ze|lenceLevel) + | ort(?:able(?:Columns)?|Function) + | p(?:litterBarPosition|acing) + | e(?: + conds + | lect(?: + Multiple + | ion(?:Required|Type)? + | Style + | Color + | ed(?:Node(?:s)?|Cell|I(?:nd(?:ices|ex)|tem(?:s)?))? + | able + ) + ) + | kin + | m(?:oothness|allScroll) + ) + | H(?: + ighlight(?:s|Color) + | Scroll + | o(?:urs|rizontal) + | eader(?:Symbol|Height|Text|Property|Format|Width|Location)? + | as(?:Shader|CloseBox) + ) + | Y(?:ear|AxisTitle)? + | N(?:ode(?:Properties|ExpansionHandler)|ewTextFormat) + | C(?: + h(?:ildNodes|a(?:ngeHandler|rt(?:Title|EventHandler))) + | o(?:ntent(?:Size)?|okie|lumns) + | ell(?:Symbol|Data) + | l(?:i(?:ckHandler|pboard)|oseHandler) + | redentials + ) + | T(?: + ype(?:dVaule)? + | i(?:tle(?:barHeight)?|p(?:Target|Offset)?|me(?:out(?:Handler)?)?) + | oggle + | extFormat + | ransform + ) + | I(?:s(?:Branch|Open)|n(?:terval|putProperty)|con(?:SymbolName)?|te(?:rator|m(?:ByKey|Symbol))) + | Orientation + | D(?: + i(?: + splay(?:Range|Graphics|Mode|Clip|Text|edMonth) + | rection + ) + | uration + | e(?:pth(?:Below|To|Above)|fault(?:GatewayURL|Mappings|NodeIconSymbolName)|l(?:iveryMode|ay)|bug(?:ID)?) + | a(?: + yOfWeekNames + | t(?: + e(?:Filter)? + | a(?:Mapping(?:s)?|Item(?:Text|Property|Format)|Provider|All(?:Height|Property|Format|Width))? + ) + ) + | ra(?:wConnectors|gContent) + ) + | U(?: + se(?:Shadow|HandCursor|EchoSuppression|rInput|Fade) + | TC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear) + ) + | P(?: + osition + | ercentComplete + | an(?:e(?:M(?:inimumSize|aximumSize)|Size|Title))? + | ro(?:pert(?:y(?:Data)?|iesAt)|gress) + ) + | E(?:nabled|dit(?:Handler|able)|xpand(?:NodeTrigger|erSymbolName)) + | V(?:Scroll|olume|alue(?:Source)?) + | KeyFrameInterval + | Quality + | F(?:i(?:eld|rst(?:DayOfWeek|VisibleNode))|ocus|ullYear|ps|ade(?:InLength|OutLength)|rame(?:Color|Width)) + | Width + | L(?:ine(?:Color|Weight)|o(?:opback|adTarget)|a(?:rgeScroll|bel(?:Source|Placement)?)) + | A(?: + s(?:Boolean|String|Number) + | n(?:yTypedValue|imation) + | ctiv(?:e(?:State(?:Handler)?|Handler)|ateHandler) + | utoH(?:ideScrollBar|eight) + ) + )? + | paratorBefore + | ek + | lect(?: + ion(?:Disabled|Unfocused)? + | ed(?:Node(?:s)?|Child|I(?:nd(?:ices|ex)|tem(?:s)?)|Dat(?:e|a))? + | able(?:Ranges)? + ) + | rver(?:String)? + ) + | kip + | qrt + | wapDepths + | lice + | aveToSharedObj + | moothing + ) + | h(?: + scroll(?:Policy)? + | tml(?:Text)? + | i(?:t(?:Test(?:TextNearPos)?|Area)|de(?:BuiltInItems|Child)?|ghlight(?:2D|3D)?) + | orizontal + | e(?:ight|ader(?:Re(?:nderer|lease)|Height|Text)) + | P(?:osition|ageScrollSize) + | a(?: + s(?: + childNodes + | MP3 + | S(?:creen(?:Broadcast|Playback)|treaming(?:Video|Audio)|ort) + | Next + | OwnProperty + | Pr(?:inting|evious) + | EmbeddedVideo + | VideoEncoder + | A(?:ccesibility|udio(?:Encoder)?) + ) + | ndlerName + ) + | LineScrollSize + ) + | ye(?:sLabel|ar) + | n(?: + o(?:t|de(?:Name|Close|Type|Open|Value)|Label) + | u(?:llValue|mChild(?:S(?:creens|lides)|ren|Forms)) + | e(?:w(?:Item|line|Value|LocationDialog)|xt(?:S(?:cene|ibling|lide)|TabIndex|Value|Frame)?)? + | ame(?:s)? + ) + | c(?: + h(?:ildNodes|eck|a(?:nge(?:sPending)?|r(?:CodeAt|At))|r) + | o(?: + s + | n(?: + st(?:ant|ructor) + | nect + | c(?:urrency|at) + | t(?:ent(?:Type|Path)?|ains|rol(?:Placement|lerPolicy)) + | denseWhite + | version + ) + | py + | l(?:or|umn(?:Stretch|Name(?:s)?|Count)) + | m(?:p(?:onent|lete)|ment) + ) + | u(?:stomItems|ePoint(?:s)?|r(?:veTo|Value|rent(?:Slide|ChildSlide|Item|F(?:ocused(?:S(?:creen|lide)|Form)|ps)))) + | e(?:il|ll(?:Renderer|Press|Edit|Focus(?:In|Out))) + | l(?:i(?:ck|ents)|o(?:se(?:Button|Pane)?|ne(?:Node)?)|ear(?:S(?:haredObjects|treams)|Timeout|Interval)?) + | a(?:ncelLabel|tch|p(?:tion|abilities)|l(?:cFields|l(?:e(?:e|r))?)) + | reate(?: + GatewayConnection + | Menu + | Se(?:rver|gment) + | C(?:hild(?:AtDepth)?|l(?:ient|ass(?:ChildAtDepth|Object(?:AtDepth)?))|all) + | Text(?:Node|Field) + | Item + | Object(?:AtDepth)? + | PopUp + | E(?:lement|mptyMovieClip) + ) + ) + | t(?: + h(?:is|row) + | ype(?:of|Name)? + | i(?:tle(?:StyleDeclaration)?|me(?:out)?) + | o(?:talTime|String|olTipText|p|UpperCase|ggle(?:HighQuality)?|Lo(?:caleString|werCase)) + | e(?: + st + | llTarget + | xt(?: + RightMargin + | Bold + | S(?:ize|elected) + | Height + | Color + | I(?:ndent|talic) + | Disabled + | Underline + | F(?:ield|ont) + | Width + | LeftMargin + | Align + )? + ) + | a(?:n|rget(?:Path)?|b(?:Stops|Children|Index|Enabled|leName)) + | r(?:y|igger|ac(?:e|k(?:AsMenu)?)) + ) + | i(?: + s(?: + Running + | Branch + | NaN + | Con(?:soleOpen|nected) + | Toggled + | Installed + | Open + | D(?:own|ebugger) + | P(?:urchased|ro(?:totypeOf|pertyEnumerable)) + | Empty + | F(?:inite|ullyPopulated) + | Local + | Active + ) + | n(?: + s(?:tall|ertBefore) + | cludeDeltaPacketInfo + | t + | it(?:ialize|Component|Pod|A(?:pplication|gent))? + | de(?:nt|terminate|x(?:InParent(?:Slide|Form)?|Of)?) + | put + | validate + | finity + | LocalInternetCache + )? + | con(?:F(?:ield|unction))? + | t(?:e(?:ratorScrolled|m(?:s|RollO(?:ut|ver)|ClassName))|alic) + | d3 + | p + | fFrameLoaded + | gnore(?:Case|White) + ) + | o(?: + s + | n(?: + R(?:ollO(?:ut|ver)|e(?:s(?:ize|ult)|l(?:ease(?:Outside)?|aseOutside))) + | XML + | Mouse(?:Move|Down|Up|Wheel) + | S(?:ync|croller|tatus|oundComplete|e(?:tFocus|lect(?:edItem)?)) + | N(?:oticeEvent|etworkChange) + | C(?:hanged|onnect|l(?:ipEvent|ose)) + | ID3 + | D(?:isconnect|eactivate|ata|ragO(?:ut|ver)) + | Un(?:install|load) + | P(?:aymentResult|ress) + | EnterFrame + | K(?:illFocus|ey(?:Down|Up)) + | Fault + | Lo(?:ad|g) + | A(?:ctiv(?:ity|ate)|ppSt(?:op|art)) + )? + | pe(?:n|ration) + | verLayChildren + | kLabel + | ldValue + | r(?:d)? + ) + | d(?: + i(?:s(?:connect|play(?:Normal|ed(?:Month|Year)|Full)|able(?:Shader|d(?:Ranges|Days)|CloseBox|Events))|rection) + | o(?:cTypeDecl|tall|Decoding|main|LazyDecoding) + | u(?:plicateMovieClip|ration) + | e(?: + stroy(?:ChildAt|Object) + | code + | fault(?:PushButton(?:Enabled)?|KeydownHandler)? + | l(?:ta(?:Packet(?:Changed)?)?|ete(?:PopUp|All)?) + | blocking + ) + | a(?:shBoardSave|yNames|ta(?:Provider)?|rkshadow) + | r(?:opdown(?:Width)?|a(?:w|gO(?:ut|ver))) + ) + | u(?: + se(?:Sort|HandCursor|Codepage|EchoSuppression) + | n(?:shift|install|derline|escape|format|watch|lo(?:ck|ad(?:Movie(?:Num)?)?)) + | pdate(?:Results|Mode|I(?:nputProperties|tem(?:ByIndex)?)|P(?:acket|roperties)|View|AfterEvent) + | rl + ) + | join + | p(?: + ixelAspectRatio + | o(?:sition|p|w) + | u(?:sh|rge|blish) + | ercen(?:tComplete|Loaded) + | lay(?:head(?:Change|Time)|ing|Hidden|erType)? + | a(?:ssword|use|r(?:se(?:XML|CSS|Int|Float)|ent(?:Node|Is(?:S(?:creen|lide)|Form))|ams)) + | r(?: + int(?:Num|AsBitmap(?:Num)?)? + | o(?:to(?:type)?|pert(?:y|ies)|gress) + | e(?:ss|v(?:ious(?:S(?:ibling|lide)|Value)?|Scene|Frame)|ferred(?:Height|Width)) + ) + ) + | e(?: + scape + | n(?:code(?:r)?|ter(?:Frame)?|dFill|able(?:Shader|d|CloseBox|Events)) + | dit(?:able|Field|LocationDialog) + | v(?:ent|al(?:uate)?) + | q + | x(?:tended|p|ec(?:ute)?|actSettings) + | m(?:phasized(?:StyleDeclaration)?|bedFonts) + ) + | v(?: + i(?:sible|ewPod) + | ScrollPolicy + | o(?:id|lume) + | ersion + | P(?:osition|ageScrollSize) + | a(?:l(?:idat(?:ionError|e(?:Property|ActivationKey)?)|ue(?:Of)?)|riable) + | LineScrollSize + ) + | k(?:ind|ey(?:Down|Up|Press|FrameInterval)) + | q(?:sort|uality) + | f(?: + scommand + | i(?:n(?:d(?:Text|First|Last)?|ally)|eldInfo|lter(?:ed|Func)?|rst(?:Slide|Child|DayOfWeek|VisibleNode)?) + | o(?:nt|cus(?:In|edCell|Out|Enabled)|r(?:egroundDisabled|mat(?:ter)?)) + | unctionName + | ps + | l(?:oor|ush) + | ace + | romCharCode + ) + | w(?:i(?:th|dth)|ordWrap|atch|riteAccess) + | l(?: + t + | i(?:st(?:Owner)?|ne(?:Style|To)) + | o(?: + c(?:k|a(?:t(?:ion|eByld)|l(?:ToGlobal|FileReadDisable))) + | opback + | ad(?:Movie(?:Num)?|S(?:crollContent|ound)|ed|Variables(?:Num)?|Application)? + | g(?:Changes)? + ) + | e(?:ngth|ft(?:Margin)?|ading)? + | a(?:st(?:Slide|Child|Index(?:Of)?)?|nguage|b(?:el(?:Placement|F(?:ield|unction))?|leField)) + ) + | a(?: + s(?:scociate(?:Controller|Display)|in|pectRatio|function) + | nd + | c(?:ceptConnection|tiv(?:ityLevel|ePlayControl)|os) + | t(?:t(?:ach(?:Movie|Sound|Video|Audio)|ributes)|an(?:2)?) + | dd(?: + header + | RequestHeader + | Menu(?:Item(?:At)?|At)? + | Sort + | Header + | No(?:tice|de(?:At)?) + | C(?:olumn(?:At)?|uePoint) + | T(?:oLocalInternetCache|reeNode(?:At)?) + | I(?:con|tem(?:s(?:At)?|At)?) + | DeltaItem + | P(?:od|age|roperty) + | EventListener + | View + | FieldInfo + | Listener + | Animation + )? + | uto(?:Size|Play|KeyNav|Load) + | pp(?:endChild|ly(?:Changes|Updates)?) + | vHardwareDisable + | fterLoaded + | l(?:ternateRowColors|ign|l(?:ow(?:InsecureDomain|Domain)|Transitions(?:InDone|OutDone))|bum) + | r(?:tist|row|g(?:uments|List)) + | gent + | bs + ) + | r(?: + ight(?:Margin)? + | o(?:ot(?:S(?:creen|lide)|Form)|und|w(?:Height|Count)|llO(?:ut|ver)) + | e(?: + s(?:yncDepth|t(?:orePane|artAnimation|rict)|iz(?:e|able(?:Columns)?)|olveDelta|ult(?:s)?|ponse) + | c(?:o(?:ncile(?:Results|Updates)|rd)|eive(?:Video|Audio)) + | draw + | jectConnection + | place(?:Sel|ItemAt|AllItems)? + | ve(?:al(?:Child)?|rse) + | quest(?:SizeChange|Payment)? + | f(?:errer|resh(?:ScrollContent|Destinations|Pane|FromSources)?) + | lease(?:Outside)? + | ad(?:Only|Access) + | gister(?:SkinElement|C(?:olor(?:Style|Name)|lass)|InheritingStyle|Proxy) + | move(?: + Range + | M(?:ovieClip|enu(?:Item(?:At)?|At)) + | Background + | Sort + | No(?:tice|de(?:sAt|At)?) + | C(?:olum(?:nAt|At)|uePoints) + | T(?:extField|reeNode(?:At)?) + | Item(?:At)? + | Pod + | EventListener + | FromLocalInternetCache + | Listener + | All(?:C(?:olumns|uePoints)|Items)? + ) + ) + | a(?:ndom|te|dioDot) + ) + | g(?: + t + | oto(?:Slide|NextSlide|PreviousSlide|FirstSlide|LastSlide|And(?:Stop|Play)) + | e(?: + nre + | t(?: + R(?:GB|o(?:otNode|wCount)|e(?:sizable|mote)) + | X(?:AxisTitle)? + | M(?: + i(?:n(?:imum(?:Size)?|utes)|lliseconds) + | onth(?:Names)? + | ultilineMode + | e(?:ssage|nu(?:ItemAt|EnabledAt|At)) + | aximum(?:Size)? + ) + | B(?:ytes(?:Total|Loaded)|ounds|utton(?:s|Width)|eginIndex|a(?:ndwidthLimit|ckground)) + | S(?: + howAsDisabled + | croll(?:ing|Speed|Content|Position|barState|Location) + | t(?:yle(?:Names)?|opOnFocus|ate) + | ize + | o(?:urce|rtState) + | p(?:litterBarPosition|acing) + | e(?: + conds + | lect(?:Multiple|ion(?:Required|Type)|Style|ed(?:Node(?:s)?|Cell|Text|I(?:nd(?:ices|ex)|tem(?:s)?))?) + | rvice + ) + | moothness + | WFVersion + ) + | H(?: + ighlight(?:s|Color) + | ours + | e(?:ight|ader(?:Height|Text|Property|Format|Width|Location)?) + | as(?:Shader|CloseBox) + ) + | Y(?:ear|AxisTitle)? + | N(?:o(?:tices|de(?:DisplayedAt|At))|um(?:Children|berAvailable)|e(?:wTextFormat|xtHighestDepth)) + | C(?: + h(?:ild(?:S(?:creen|lide)|Nodes|Form|At)|artTitle) + | o(?:n(?:tent|figInfo)|okie|de|unt|lumn(?:Names|Count|Index|At)) + | uePoint + | ellIndex + | loseHandler + | a(?:ll|retIndex) + ) + | T(?: + ypedValue + | i(?:tle(?:barHeight)?|p(?:Target|Offset)?|me(?:stamp|zoneOffset|out(?:State|Handler)|r)?) + | oggle + | ext(?:Extent|Format)? + | r(?:ee(?:NodeAt|Length)|ans(?:form|actionId)) + ) + | I(?: + s(?:Branch|Open) + | n(?:stanceAtDepth|d(?:icesByKey|exByKey)) + | con(?:SymbolName)? + | te(?:rator|m(?:sByKey|By(?:Name|Key)|id|ID|At)) + | d + ) + | O(?:utput(?:Parameter(?:s|ByName)?|Value(?:s)?)|peration|ri(?:entation|ginalCellData)) + | D(?: + i(?:s(?:play(?:Range|Mode|Clip|Index|edMonth)|kUsage)|rection) + | uration + | e(?:pth|faultNodeIconSymbolName|l(?:taPacket|ay)|bug(?:Config|ID)?) + | a(?: + y(?:OfWeekNames)? + | t(?: + e + | a(?:Mapping(?:s)?|Item(?:Text|Property|Format)|Label|All(?:Height|Property|Format|Width))? + ) + ) + | rawConnectors + ) + | U(?: + se(?:Shadow|HandCursor|rInput|Fade) + | RL + | TC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear) + ) + | P(?: + o(?:sition|ds) + | ercentComplete + | a(?:n(?:e(?:M(?:inimums|aximums)|Height|Title|Width))?|rentNode) + | r(?:operty(?:Name|Data)?|efer(?:ences|red(?:Height|Width))) + ) + | E(?:n(?:dIndex|abled)|ditingData|x(?:panderSymbolName|andNodeTrigger)) + | V(?:iewed(?:Pods|Applications)|olume|ersion|alue(?:Source)?) + | F(?: + i(?:eld|rst(?:DayOfWeek|VisibleNode)) + | o(?:ntList|cus) + | ullYear + | ade(?:InLength|OutLength) + | rame(?:Color|Width) + ) + | Width + | L(?:ine(?:Color|Weight)|o(?:cal|adTarget)|ength|a(?:stTabIndex|bel(?:Source)?)) + | A(?: + s(?:cii|Boolean|String|Number) + | n(?:yTypedValue|imation) + | ctiv(?:eState(?:Handler)?|ateHandler) + | utoH(?:ideScrollBar|eight) + | llItems + | gent + ) + )? + )? + | lobal(?:StyleFormat|ToLocal)? + | ain + | roupName + ) + | x(?:updatePackety|mlDecl)? + | m(?: + y(?:MethodName|Call) + | in(?:imum)? + | o(?: + nthNames + | tion(?:TimeOut|Level) + | de(?:lChanged)? + | use(?:Move|O(?:ut|ver)|Down(?:Somewhere|Outside)?|Up(?:Somewhere)?|WheelEnabled) + | ve(?:To)? + ) + | u(?:ted|lti(?:pleS(?:imultaneousAllowed|elections)|line)) + | e(?:ssage|nu(?:Show|Hide)?|th(?:od)?|diaType) + | a(?:nufacturer|tch|x(?:scroll|hscroll|imum|HPosition|Chars|VPosition)?) + | b(?:substring|chr|ord|length) + ) + | b(?: + ytes(?:Total|Loaded) + | indFormat(?:Strings|Function) + | o(?:ttom(?:Scroll)?|ld|rder(?:Color)?) + | u(?:tton(?:Height|Width)|iltInItems|ffer(?:Time|Length)|llet) + | e(?:foreApplyUpdates|gin(?:GradientFill|Fill)) + | lockIndent + | a(?:ndwidth|ckground(?:Style|Color|Disabled)?) + | roadcastMessage + ) + | onHTTPStatus + ) + constants: |- + (?x: + __proto__ | __resolve + | _alpha + | _changed | _currentframe + | _droptarget + | _flash | _framesloaded + | _height + | _listeners | _lockroot + | _name + | _rotation + | _target | _totalframes + | _url + | _visible + | _width + | _x | _xmouse | _xscale + | _y | _ymouse | _yscale + ) + properties_global: |- + (?x: _accProps | _focusrect | _global | _level | _parent | _quality | _root | _soundbuftime | this) + deprecated_properties_global: |- + (?x: _highquality | maxscroll | scroll) + keywords: |- + (?x: + break + | case | continue + | do | dynamic + | else | extends + | for + | if | implements | import | in | interface + | new + | private | public + | return + | static | super | switch + | var + | while + ) + types: |- + (?x: Array | Boolean | Number | Object | String | Void ) + constant_numeric_exponent: |- + (?x: [eE] [-+]? \d+ ) + constant_numeric_suffix: |- + (?x: L | l | UL | ul | U | u | F | f ) + constant_keyboard_inputs: |- + (?x: + BACKSPACE + | CAPSLOCK | CONTROL + | DELETEKEY | DOWN + | END | ENTER + | HOME + | INSERT + | LEFT | LN10 | LN2 | LOG10E | LOG2E + | MAX_VALUE | MIN_VALUE + | NEGATIVE_INFINITY + | PGDN | PGUP | PI | POSITIVE_INFINITY + | RIGHT + | SPACE | SQRT1_2 | SQRT2 + | UP + ) + +###[ CONTEXTS ]################################################################# + contexts: + + prototype: + - include: comments + main: - - match: \b(R(ecordset|DBMSResolver|adioButton(Group)?)|X(ML(Socket|Node|Connector)?|UpdateResolverDataHolder)|M(M(Save|Execute)|icrophoneMicrophone|o(use|vieClip(Loader)?)|e(nu(Bar)?|dia(Controller|Display|Playback))|ath)|B(yName|inding|utton)|S(haredObject|ystem|crollPane|t(yleSheet|age|ream)|ound|e(ndEvent|rviceObject)|OAPCall|lide)|N(umericStepper|et(stream|S(tream|ervices)|Connection|Debug(Config)?))|C(heckBox|o(ntextMenu(Item)?|okie|lor|m(ponentMixins|boBox))|ustomActions|lient|amera)|T(ypedValue|ext(Snapshot|Input|F(ield|ormat)|Area)|ree|AB)|Object|D(ownload|elta(Item|Packet)?|at(e(Chooser|Field)?|a(G(lue|rid)|Set|Type)))|U(RL|TC|IScrollBar)|P(opUpManager|endingCall|r(intJob|o(duct|gressBar)))|E(ndPoint|rror)|Video|Key|F(RadioButton|GridColumn|MessageBox|BarChart|S(croll(Bar|Pane)|tyleFormat|plitView)|orm|C(heckbox|omboBox|alendar)|unction|T(icker|ooltip(Lite)?|ree(Node)?)|IconButton|D(ataGrid|raggablePane)|P(ieChart|ushButton|ro(gressBar|mptBox))|L(i(stBox|neChart)|oadingBox)|AdvancedMessageBox)|W(indow|SDLURL|ebService(Connector)?)|L(ist|o(calConnection|ad(er|Vars)|g)|a(unch|bel))|A(sBroadcaster|cc(ordion|essibility)|S(Set(Native|PropFlags)|N(ew|ative)|C(onstructor|lamp(2)?)|InstanceOf)|pplication|lert|rray))\b - scope: support.class.actionscript.2 - - match: \b(s(h(ift|ow(GridLines|Menu|Border|Settings|Headers|ColumnHeaders|Today|Preferences)?|ad(ow|ePane))|c(hema|ale(X|Mode|Y|Content)|r(oll(Track|Drag)?|een(Resolution|Color|DPI)))|t(yleSheet|op(Drag|A(nimation|llSounds|gent))?|epSize|a(tus|rt(Drag|A(nimation|gent))?))|i(n|ze|lence(TimeOut|Level))|o(ngname|urce|rt(Items(By)?|On(HeaderRelease)?|able(Columns)?)?)|u(ppressInvalidCalls|bstr(ing)?)|p(li(ce|t)|aceCol(umnsEqually|lumnsEqually))|e(nd(DefaultPushButtonEvent|AndLoad)?|curity|t(R(GB|o(otNode|w(Height|Count))|esizable(Columns)?|a(nge|te))|G(ain|roupName)|X(AxisTitle)?|M(i(n(imum|utes)|lliseconds)|o(nth(Names)?|tionLevel|de)|ultilineMode|e(ssage|nu(ItemEnabled(At)?|EnabledAt)|dia)|a(sk|ximum))|B(u(tton(s|Width)|fferTime)|a(seTabIndex|ndwidthLimit|ckground))|S(howAsDisabled|croll(ing|Speed|Content|Target|P(osition|roperties)|barState|Location)|t(yle(Property)?|opOnFocus|at(us|e))|i(ze|lenceLevel)|ort(able(Columns)?|Function)|p(litterBarPosition|acing)|e(conds|lect(Multiple|ion(Required|Type)?|Style|Color|ed(Node(s)?|Cell|I(nd(ices|ex)|tem(s)?))?|able))|kin|m(oothness|allScroll))|H(ighlight(s|Color)|Scroll|o(urs|rizontal)|eader(Symbol|Height|Text|Property|Format|Width|Location)?|as(Shader|CloseBox))|Y(ear|AxisTitle)?|N(ode(Properties|ExpansionHandler)|ewTextFormat)|C(h(ildNodes|a(ngeHandler|rt(Title|EventHandler)))|o(ntent(Size)?|okie|lumns)|ell(Symbol|Data)|l(i(ckHandler|pboard)|oseHandler)|redentials)|T(ype(dVaule)?|i(tle(barHeight)?|p(Target|Offset)?|me(out(Handler)?)?)|oggle|extFormat|ransform)|I(s(Branch|Open)|n(terval|putProperty)|con(SymbolName)?|te(rator|m(ByKey|Symbol)))|Orientation|D(i(splay(Range|Graphics|Mode|Clip|Text|edMonth)|rection)|uration|e(pth(Below|To|Above)|fault(GatewayURL|Mappings|NodeIconSymbolName)|l(iveryMode|ay)|bug(ID)?)|a(yOfWeekNames|t(e(Filter)?|a(Mapping(s)?|Item(Text|Property|Format)|Provider|All(Height|Property|Format|Width))?))|ra(wConnectors|gContent))|U(se(Shadow|HandCursor|EchoSuppression|rInput|Fade)|TC(M(i(nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear))|P(osition|ercentComplete|an(e(M(inimumSize|aximumSize)|Size|Title))?|ro(pert(y(Data)?|iesAt)|gress))|E(nabled|dit(Handler|able)|xpand(NodeTrigger|erSymbolName))|V(Scroll|olume|alue(Source)?)|KeyFrameInterval|Quality|F(i(eld|rst(DayOfWeek|VisibleNode))|ocus|ullYear|ps|ade(InLength|OutLength)|rame(Color|Width))|Width|L(ine(Color|Weight)|o(opback|adTarget)|a(rgeScroll|bel(Source|Placement)?))|A(s(Boolean|String|Number)|n(yTypedValue|imation)|ctiv(e(State(Handler)?|Handler)|ateHandler)|utoH(ideScrollBar|eight)))?|paratorBefore|ek|lect(ion(Disabled|Unfocused)?|ed(Node(s)?|Child|I(nd(ices|ex)|tem(s)?)|Dat(e|a))?|able(Ranges)?)|rver(String)?)|kip|qrt|wapDepths|lice|aveToSharedObj|moothing)|h(scroll(Policy)?|tml(Text)?|i(t(Test(TextNearPos)?|Area)|de(BuiltInItems|Child)?|ghlight(2D|3D)?)|orizontal|e(ight|ader(Re(nderer|lease)|Height|Text))|P(osition|ageScrollSize)|a(s(childNodes|MP3|S(creen(Broadcast|Playback)|treaming(Video|Audio)|ort)|Next|OwnProperty|Pr(inting|evious)|EmbeddedVideo|VideoEncoder|A(ccesibility|udio(Encoder)?))|ndlerName)|LineScrollSize)|ye(sLabel|ar)|n(o(t|de(Name|Close|Type|Open|Value)|Label)|u(llValue|mChild(S(creens|lides)|ren|Forms))|e(w(Item|line|Value|LocationDialog)|xt(S(cene|ibling|lide)|TabIndex|Value|Frame)?)?|ame(s)?)|c(h(ildNodes|eck|a(nge(sPending)?|r(CodeAt|At))|r)|o(s|n(st(ant|ructor)|nect|c(urrency|at)|t(ent(Type|Path)?|ains|rol(Placement|lerPolicy))|denseWhite|version)|py|l(or|umn(Stretch|Name(s)?|Count))|m(p(onent|lete)|ment))|u(stomItems|ePoint(s)?|r(veTo|Value|rent(Slide|ChildSlide|Item|F(ocused(S(creen|lide)|Form)|ps))))|e(il|ll(Renderer|Press|Edit|Focus(In|Out)))|l(i(ck|ents)|o(se(Button|Pane)?|ne(Node)?)|ear(S(haredObjects|treams)|Timeout|Interval)?)|a(ncelLabel|tch|p(tion|abilities)|l(cFields|l(e(e|r))?))|reate(GatewayConnection|Menu|Se(rver|gment)|C(hild(AtDepth)?|l(ient|ass(ChildAtDepth|Object(AtDepth)?))|all)|Text(Node|Field)|Item|Object(AtDepth)?|PopUp|E(lement|mptyMovieClip)))|t(h(is|row)|ype(of|Name)?|i(tle(StyleDeclaration)?|me(out)?)|o(talTime|String|olTipText|p|UpperCase|ggle(HighQuality)?|Lo(caleString|werCase))|e(st|llTarget|xt(RightMargin|Bold|S(ize|elected)|Height|Color|I(ndent|talic)|Disabled|Underline|F(ield|ont)|Width|LeftMargin|Align)?)|a(n|rget(Path)?|b(Stops|Children|Index|Enabled|leName))|r(y|igger|ac(e|k(AsMenu)?)))|i(s(Running|Branch|NaN|Con(soleOpen|nected)|Toggled|Installed|Open|D(own|ebugger)|P(urchased|ro(totypeOf|pertyEnumerable))|Empty|F(inite|ullyPopulated)|Local|Active)|n(s(tall|ertBefore)|cludeDeltaPacketInfo|t|it(ialize|Component|Pod|A(pplication|gent))?|de(nt|terminate|x(InParent(Slide|Form)?|Of)?)|put|validate|finity|LocalInternetCache)?|con(F(ield|unction))?|t(e(ratorScrolled|m(s|RollO(ut|ver)|ClassName))|alic)|d3|p|fFrameLoaded|gnore(Case|White))|o(s|n(R(ollO(ut|ver)|e(s(ize|ult)|l(ease(Outside)?|aseOutside)))|XML|Mouse(Move|Down|Up|Wheel)|S(ync|croller|tatus|oundComplete|e(tFocus|lect(edItem)?))|N(oticeEvent|etworkChange)|C(hanged|onnect|l(ipEvent|ose))|ID3|D(isconnect|eactivate|ata|ragO(ut|ver))|Un(install|load)|P(aymentResult|ress)|EnterFrame|K(illFocus|ey(Down|Up))|Fault|Lo(ad|g)|A(ctiv(ity|ate)|ppSt(op|art)))?|pe(n|ration)|verLayChildren|kLabel|ldValue|r(d)?)|d(i(s(connect|play(Normal|ed(Month|Year)|Full)|able(Shader|d(Ranges|Days)|CloseBox|Events))|rection)|o(cTypeDecl|tall|Decoding|main|LazyDecoding)|u(plicateMovieClip|ration)|e(stroy(ChildAt|Object)|code|fault(PushButton(Enabled)?|KeydownHandler)?|l(ta(Packet(Changed)?)?|ete(PopUp|All)?)|blocking)|a(shBoardSave|yNames|ta(Provider)?|rkshadow)|r(opdown(Width)?|a(w|gO(ut|ver))))|u(se(Sort|HandCursor|Codepage|EchoSuppression)|n(shift|install|derline|escape|format|watch|lo(ck|ad(Movie(Num)?)?))|pdate(Results|Mode|I(nputProperties|tem(ByIndex)?)|P(acket|roperties)|View|AfterEvent)|rl)|join|p(ixelAspectRatio|o(sition|p|w)|u(sh|rge|blish)|ercen(tComplete|Loaded)|lay(head(Change|Time)|ing|Hidden|erType)?|a(ssword|use|r(se(XML|CSS|Int|Float)|ent(Node|Is(S(creen|lide)|Form))|ams))|r(int(Num|AsBitmap(Num)?)?|o(to(type)?|pert(y|ies)|gress)|e(ss|v(ious(S(ibling|lide)|Value)?|Scene|Frame)|ferred(Height|Width))))|e(scape|n(code(r)?|ter(Frame)?|dFill|able(Shader|d|CloseBox|Events))|dit(able|Field|LocationDialog)|v(ent|al(uate)?)|q|x(tended|p|ec(ute)?|actSettings)|m(phasized(StyleDeclaration)?|bedFonts))|v(i(sible|ewPod)|ScrollPolicy|o(id|lume)|ersion|P(osition|ageScrollSize)|a(l(idat(ionError|e(Property|ActivationKey)?)|ue(Of)?)|riable)|LineScrollSize)|k(ind|ey(Down|Up|Press|FrameInterval))|q(sort|uality)|f(scommand|i(n(d(Text|First|Last)?|ally)|eldInfo|lter(ed|Func)?|rst(Slide|Child|DayOfWeek|VisibleNode)?)|o(nt|cus(In|edCell|Out|Enabled)|r(egroundDisabled|mat(ter)?))|unctionName|ps|l(oor|ush)|ace|romCharCode)|w(i(th|dth)|ordWrap|atch|riteAccess)|l(t|i(st(Owner)?|ne(Style|To))|o(c(k|a(t(ion|eByld)|l(ToGlobal|FileReadDisable)))|opback|ad(Movie(Num)?|S(crollContent|ound)|ed|Variables(Num)?|Application)?|g(Changes)?)|e(ngth|ft(Margin)?|ading)?|a(st(Slide|Child|Index(Of)?)?|nguage|b(el(Placement|F(ield|unction))?|leField)))|a(s(scociate(Controller|Display)|in|pectRatio|function)|nd|c(ceptConnection|tiv(ityLevel|ePlayControl)|os)|t(t(ach(Movie|Sound|Video|Audio)|ributes)|an(2)?)|dd(header|RequestHeader|Menu(Item(At)?|At)?|Sort|Header|No(tice|de(At)?)|C(olumn(At)?|uePoint)|T(oLocalInternetCache|reeNode(At)?)|I(con|tem(s(At)?|At)?)|DeltaItem|P(od|age|roperty)|EventListener|View|FieldInfo|Listener|Animation)?|uto(Size|Play|KeyNav|Load)|pp(endChild|ly(Changes|Updates)?)|vHardwareDisable|fterLoaded|l(ternateRowColors|ign|l(ow(InsecureDomain|Domain)|Transitions(InDone|OutDone))|bum)|r(tist|row|g(uments|List))|gent|bs)|r(ight(Margin)?|o(ot(S(creen|lide)|Form)|und|w(Height|Count)|llO(ut|ver))|e(s(yncDepth|t(orePane|artAnimation|rict)|iz(e|able(Columns)?)|olveDelta|ult(s)?|ponse)|c(o(ncile(Results|Updates)|rd)|eive(Video|Audio))|draw|jectConnection|place(Sel|ItemAt|AllItems)?|ve(al(Child)?|rse)|quest(SizeChange|Payment)?|f(errer|resh(ScrollContent|Destinations|Pane|FromSources)?)|lease(Outside)?|ad(Only|Access)|gister(SkinElement|C(olor(Style|Name)|lass)|InheritingStyle|Proxy)|move(Range|M(ovieClip|enu(Item(At)?|At))|Background|Sort|No(tice|de(sAt|At)?)|C(olum(nAt|At)|uePoints)|T(extField|reeNode(At)?)|Item(At)?|Pod|EventListener|FromLocalInternetCache|Listener|All(C(olumns|uePoints)|Items)?))|a(ndom|te|dioDot))|g(t|oto(Slide|NextSlide|PreviousSlide|FirstSlide|LastSlide|And(Stop|Play))|e(nre|t(R(GB|o(otNode|wCount)|e(sizable|mote))|X(AxisTitle)?|M(i(n(imum(Size)?|utes)|lliseconds)|onth(Names)?|ultilineMode|e(ssage|nu(ItemAt|EnabledAt|At))|aximum(Size)?)|B(ytes(Total|Loaded)|ounds|utton(s|Width)|eginIndex|a(ndwidthLimit|ckground))|S(howAsDisabled|croll(ing|Speed|Content|Position|barState|Location)|t(yle(Names)?|opOnFocus|ate)|ize|o(urce|rtState)|p(litterBarPosition|acing)|e(conds|lect(Multiple|ion(Required|Type)|Style|ed(Node(s)?|Cell|Text|I(nd(ices|ex)|tem(s)?))?)|rvice)|moothness|WFVersion)|H(ighlight(s|Color)|ours|e(ight|ader(Height|Text|Property|Format|Width|Location)?)|as(Shader|CloseBox))|Y(ear|AxisTitle)?|N(o(tices|de(DisplayedAt|At))|um(Children|berAvailable)|e(wTextFormat|xtHighestDepth))|C(h(ild(S(creen|lide)|Nodes|Form|At)|artTitle)|o(n(tent|figInfo)|okie|de|unt|lumn(Names|Count|Index|At))|uePoint|ellIndex|loseHandler|a(ll|retIndex))|T(ypedValue|i(tle(barHeight)?|p(Target|Offset)?|me(stamp|zoneOffset|out(State|Handler)|r)?)|oggle|ext(Extent|Format)?|r(ee(NodeAt|Length)|ans(form|actionId)))|I(s(Branch|Open)|n(stanceAtDepth|d(icesByKey|exByKey))|con(SymbolName)?|te(rator|m(sByKey|By(Name|Key)|id|ID|At))|d)|O(utput(Parameter(s|ByName)?|Value(s)?)|peration|ri(entation|ginalCellData))|D(i(s(play(Range|Mode|Clip|Index|edMonth)|kUsage)|rection)|uration|e(pth|faultNodeIconSymbolName|l(taPacket|ay)|bug(Config|ID)?)|a(y(OfWeekNames)?|t(e|a(Mapping(s)?|Item(Text|Property|Format)|Label|All(Height|Property|Format|Width))?))|rawConnectors)|U(se(Shadow|HandCursor|rInput|Fade)|RL|TC(M(i(nutes|lliseconds)|onth)|Seconds|Hours|Da(y|te)|FullYear))|P(o(sition|ds)|ercentComplete|a(n(e(M(inimums|aximums)|Height|Title|Width))?|rentNode)|r(operty(Name|Data)?|efer(ences|red(Height|Width))))|E(n(dIndex|abled)|ditingData|x(panderSymbolName|andNodeTrigger))|V(iewed(Pods|Applications)|olume|ersion|alue(Source)?)|F(i(eld|rst(DayOfWeek|VisibleNode))|o(ntList|cus)|ullYear|ade(InLength|OutLength)|rame(Color|Width))|Width|L(ine(Color|Weight)|o(cal|adTarget)|ength|a(stTabIndex|bel(Source)?))|A(s(cii|Boolean|String|Number)|n(yTypedValue|imation)|ctiv(eState(Handler)?|ateHandler)|utoH(ideScrollBar|eight)|llItems|gent))?)?|lobal(StyleFormat|ToLocal)?|ain|roupName)|x(updatePackety|mlDecl)?|m(y(MethodName|Call)|in(imum)?|o(nthNames|tion(TimeOut|Level)|de(lChanged)?|use(Move|O(ut|ver)|Down(Somewhere|Outside)?|Up(Somewhere)?|WheelEnabled)|ve(To)?)|u(ted|lti(pleS(imultaneousAllowed|elections)|line))|e(ssage|nu(Show|Hide)?|th(od)?|diaType)|a(nufacturer|tch|x(scroll|hscroll|imum|HPosition|Chars|VPosition)?)|b(substring|chr|ord|length))|b(ytes(Total|Loaded)|indFormat(Strings|Function)|o(ttom(Scroll)?|ld|rder(Color)?)|u(tton(Height|Width)|iltInItems|ffer(Time|Length)|llet)|e(foreApplyUpdates|gin(GradientFill|Fill))|lockIndent|a(ndwidth|ckground(Style|Color|Disabled)?)|roadcastMessage)|onHTTPStatus)\b - scope: support.function.actionscript.2 - - match: \b(__proto__|__resolve|_accProps|_alpha|_changed|_currentframe|_droptarget|_flash|_focusrect|_framesloaded|_global|_height|_highquality|_level|_listeners|_lockroot|_name|_parent|_quality|_root|_rotation|_soundbuftime|_target|_totalframes|_url|_visible|_width|_x|_xmouse|_xscale|_y|_ymouse|_yscale)\b - scope: support.constant.actionscript.2 - - match: \b(dynamic|extends|import|implements|interface|public|private|new|static|super|var|for|in|break|continue|while|do|return|if|else|case|switch)\b - scope: keyword.control.actionscript.2 - - match: \b(Boolean|Number|String|Void)\b - scope: storage.type.actionscript.2 - - match: \b(null|undefined|true|false)\b - scope: constant.language.actionscript.2 - - match: '\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' - scope: constant.numeric.actionscript.2 - - match: '"' - captures: - 0: punctuation.definition.string.begin.actionscript.2 - push: - - meta_scope: string.quoted.double.actionscript.2 - - match: '"' - captures: - 0: punctuation.definition.string.end.actionscript.2 - pop: true - - match: \\. - scope: constant.character.escape.actionscript.2 - - match: "'" - captures: - 0: punctuation.definition.string.begin.actionscript.2 - push: - - meta_scope: string.quoted.single.actionscript.2 - - match: "'" - captures: - 0: punctuation.definition.string.end.actionscript.2 - pop: true - - match: \\. - scope: constant.character.escape.actionscript.2 - - match: \b(BACKSPACE|CAPSLOCK|CONTROL|DELETEKEY|DOWN|END|ENTER|HOME|INSERT|LEFT|LN10|LN2|LOG10E|LOG2E|MAX_VALUE|MIN_VALUE|NEGATIVE_INFINITY|NaN|PGDN|PGUP|PI|POSITIVE_INFINITY|RIGHT|SPACE|SQRT1_2|SQRT2|UP)\b - scope: support.constant.actionscript.2 - - match: /\* - captures: - 0: punctuation.definition.comment.actionscript.2 - push: - - meta_scope: comment.block.actionscript.2 - - match: \*/ - captures: - 0: punctuation.definition.comment.actionscript.2 - pop: true - - match: ^\s*(\*)(?!/) - captures: - 1: punctuation.definition.comment.actionscript.2 - - match: (//).*$\n? - scope: comment.line.double-slash.actionscript.2 - captures: - 1: punctuation.definition.comment.actionscript.2 - - match: \b(instanceof)\b - scope: keyword.operator.actionscript.2 - - match: "[-!%&*+=/?:]" - scope: keyword.operator.symbolic.actionscript.2 + - match: \b{{classes}}\b + scope: support.class.actionscript + + - match: \b{{functions}}\b + scope: support.function.actionscript + + - include: constants + + - match: \b{{keywords}}\b + scope: keyword.control.actionscript + + - include: types + + - include: strings + + - include: keyword-operators + - match: '^[ \t]*(#)[a-zA-Z]+' - scope: meta.preprocessor.actionscript.2 + scope: meta.preprocessor.actionscript captures: - 1: punctuation.definition.preprocessor.actionscript.2 + 1: punctuation.definition.preprocessor.actionscript + - match: '\b(function)\s+([a-zA-Z_]\w*)\s*(\()' captures: - 1: keyword.declaration.function.actionscript.2 - 2: entity.name.function.actionscript.2 - 3: punctuation.definition.parameters.begin.actionscript.2 + 1: keyword.declaration.function.actionscript + 2: entity.name.function.actionscript + 3: punctuation.definition.parameters.begin.actionscript push: - - meta_scope: meta.function.actionscript.2 + - meta_scope: meta.function.actionscript + - match: \) - captures: - 0: punctuation.definition.parameters.end.actionscript.2 - pop: true + scope: punctuation.definition.parameters.end.actionscript + pop: 1 + - match: '[^,)\n]+' - scope: variable.parameter.function.actionscript.2 + scope: variable.parameter.function.actionscript + - match: '\b(class)\s+([a-zA-Z_](?:\w|\.)*)(?:\s+(extends)\s+([a-zA-Z_](?:\w|\.)*))?' - scope: meta.class.actionscript.2 + scope: meta.class.actionscript + captures: + 1: keyword.declaration.class.actionscript + 2: entity.name.type.class.actionscript + 3: storage.modifier.extends.actionscript + 4: entity.other.inherited-class.actionscript + +###[ COMMENTS ]################################################################# + + comments: + - include: line-comments + - include: block-comments + + line-comments: + - match: // + scope: punctuation.definition.comment.actionscript + push: line-comment-content + + line-comment-content: + - meta_include_prototype: false + - meta_scope: comment.line.double-slash.actionscript + + - include: eol-pop + + block-comments: + - match: /\* + scope: punctuation.definition.comment.begin.actionscript + push: block-comment-content + + block-comment-content: + - meta_include_prototype: false + - meta_scope: comment.block.actionscript + + - match: \*/ + scope: punctuation.definition.comment.end.actionscript + pop: 1 + + - match: ^\s*(\*)(?!/) captures: - 1: keyword.declaration.class.actionscript.2 - 2: entity.name.type.class.actionscript.2 - 3: storage.modifier.extends.actionscript.2 - 4: entity.other.inherited-class.actionscript.2 + 1: punctuation.definition.comment.actionscript + +###[ STRINGS ]################################################################## + + strings: + - include: double-quoted-strings + - include: single-quoted-strings + + double-quoted-strings: + - match: \" + scope: punctuation.definition.string.begin.actionscript + push: double-quoted-string-content + + double-quoted-string-content: + - meta_include_prototype: false + - meta_scope: >- + meta.string.actionscript + string.quoted.double.actionscript + + - match: \" + scope: punctuation.definition.string.end.actionscript + pop: 1 + + - include: string-escape-characters + + single-quoted-strings: + - match: \' + scope: punctuation.definition.string.begin.actionscript + push: single-quoted-string-content + + single-quoted-string-content: + - meta_include_prototype: false + - meta_scope: >- + meta.string.actionscript + string.quoted.single.actionscript + + - match: \' + scope: punctuation.definition.string.end.actionscript + pop: 1 + + - include: string-escape-characters + + string-escape-characters: + - match: \\. + scope: constant.character.escape.actionscript + +###[ CONSTANTS ]################################################################ + + constants: + - include: language-constants + - include: numeric-constants + + language-constants: + - include: valid-language-constants + - include: invalid-language-constants + + valid-language-constants: + - match: \b(?:false|true)\b + scope: constant.language.boolean.actionscript + + - match: \b(?:null)\b + scope: constant.language.null.actionscript + + - match: \b(?:undefined)\b + scope: constant.language.undefined.actionscript + + - match: \b(?:NaN)\b + scope: constant.language.nan.actionscript + + - match: (?:(\+)|([-]?))(Infinity) + scope: meta.number.float.decimal.actionscript + captures: + 1: invalid.illegal.constant-numeric-sign.actionscript + 2: constant.numeric.sign.actionscript + 3: constant.language.infinity.actionscript + + - match: |- + (?x: + \b(?: + {{constants}} + | {{properties_global}} + | {{constant_keyboard_inputs}} + )\b + ) + scope: support.constant.actionscript + + invalid-language-constants: + - match: \b{{deprecated_properties_global}}\b + scope: invalid.deprecated.properties-global.actionscript + + # when erroneously containing upper or lower case letters + # where they don't belong + - match: \b(?i:false|true|null|undefined|nan)\b + scope: invalid.illegal.expected-language-constant.actionscript + + numeric-constants: + - match: (0[xX])(\h*)({{constant_numeric_suffix}})? + scope: meta.number.integer.hexadecimal.actionscript + captures: + 1: constant.numeric.base.actionscript + 2: constant.numeric.value.actionscript + 3: constant.numeric.suffix.actionscript + + - match: |- + (?x: + (\d+\.?\d*|\.\d+) + ({{constant_numeric_exponent}})? + ({{constant_numeric_suffix}})? + ) + scope: meta.number.actionscript + captures: + 1: constant.numeric.value.actionscript + 2: constant.numeric.actionscript + 3: constant.numeric.suffix.actionscript + +###[ KEYWORD OPERATORS ]######################################################## + + keyword-operators: + - match: \b(?:instanceof)\b + scope: keyword.operator.actionscript + + - include: keyword-operator-assignment-augmented-bitwise-shift + - include: keyword-operator-bitwise-shift + - include: keyword-operator-relational + - include: keyword-operator-arithmetic + - include: keyword-operator-logical + - include: keyword-operator-assignment-augmented-bitwise + - include: keyword-operator-bitwise + - include: keyword-operator-comparison + - include: keyword-operator-assignment + + - include: invalid-operators + + invalid-operators: + - match: \b(?:and|not|or)\b + scope: invalid.deprecated.keyword-operator-logical.actionscript + + - match: \b(?:le|lt|ge|gt)\b + scope: invalid.deprecated.keyword-operator-relational.actionscript + + - match: \b(?:eq|ne)\b + scope: invalid.deprecated.keyword-operator-comparison.actionscript + + - match: \b(?:add)\b + scope: invalid.deprecated.keyword-operator-arithmetic.actionscript + + keyword-operator-assignment-augmented-bitwise-shift: + - match: '<<<=' + scope: keyword.operator.assignment.augmented.bitwise.shift.left.unsigned.actionscript + + - match: '<<=' + scope: keyword.operator.assignment.augmented.bitwise.shift.left.signed.actionscript + + - match: '>>>=' + scope: keyword.operator.assignment.augmented.bitwise.shift.right.unsigned.actionscript + + - match: '>>=' + scope: keyword.operator.assignment.augmented.bitwise.shift.right.signed.actionscript + + keyword-operator-bitwise-shift: + - match: '<<<' + scope: keyword.operator.bitwise.shift.left.unsigned.actionscript + + - match: '<<' + scope: keyword.operator.bitwise.shift.left.signed.actionscript + + - match: '>>>' + scope: keyword.operator.bitwise.shift.right.unsigned.actionscript + + - match: '>>' + scope: keyword.operator.bitwise.shift.right.signed.actionscript + + keyword-operator-relational: + - match: '<=' + scope: keyword.operator.relational.less-equal.actionscript + + - match: '>=' + scope: keyword.operator.relational.greater-equal.actionscript + + - match: '<' + scope: keyword.operator.relational.less.actionscript + + - match: '>' + scope: keyword.operator.relational.greater.actionscript + + keyword-operator-arithmetic: + - match: '\+\+' + scope: keyword.operator.arithmetic.increment.actionscript + + - match: '\-\-' + scope: keyword.operator.arithmetic.decrement.actionscript + + - match: '[%*+\/\-](?!=)' + scope: keyword.operator.arithmetic.actionscript + + keyword-operator-logical: + - match: '&&' + scope: keyword.operator.logical.and.actionscript + + - match: '\|\|' + scope: keyword.operator.logical.or.actionscript + + - match: '!(?!=)' + scope: keyword.operator.logical.not.actionscript + + keyword-operator-assignment-augmented-bitwise: + - match: '~=' + scope: keyword.operator.assignment.augmented.bitwise.not.actionscript + + - match: '\^=' + scope: keyword.operator.assignment.augmented.bitwise.xor.actionscript + + - match: '&=' + scope: keyword.operator.assignment.augmented.bitwise.and.actionscript + + - match: '\|=' + scope: keyword.operator.assignment.augmented.bitwise.or.actionscript + + keyword-operator-bitwise: + - match: '~' + scope: keyword.operator.bitwise.not.actionscript + + - match: '\^' + scope: keyword.operator.bitwise.xor.actionscript + + - match: '&' + scope: keyword.operator.bitwise.and.actionscript + + - match: '\|' + scope: keyword.operator.bitwise.or.actionscript + + keyword-operator-comparison: + - match: '===' + scope: keyword.operator.comparison.equal.value.strict.actionscript + + - match: '==' + scope: keyword.operator.comparison.equal.value.actionscript + + - match: '!==' + scope: keyword.operator.comparison.not-equal.value.strict.actionscript + + - match: '!=' + scope: keyword.operator.comparison.not-equal.value.actionscript + + keyword-operator-assignment: + - match: '[%*+\/\-]=' + scope: keyword.operator.assignment.augmented.actionscript + + - match: '=' + scope: keyword.operator.assignment.actionscript + +###[ TYPES ]#################################################################### + + types: + - match: (:)({{types}}) + captures: + 1: punctuation.separator.actionscript + 2: storage.type.actionscript + +###[ PROTOTYPES ]############################################################### + + eol-pop: + - match: '$\n?' + pop: 1 diff --git a/ActionScript/syntax_test_as.as b/ActionScript/syntax_test_as.as index 97a9ade072..4739e78bde 100644 --- a/ActionScript/syntax_test_as.as +++ b/ActionScript/syntax_test_as.as @@ -1,5 +1,190 @@ -/* SYNTAX TEST "Packages/ActionScript/ActionScript.sublime-syntax" */ +// SYNTAX TEST "Packages/ActionScript/ActionScript.sublime-syntax" -/** - * -/* ^ comment.block.actionscript.2 punctuation.definition.comment.actionscript.2 */ \ No newline at end of file +// <- source.actionscript + + + +///[ COMMENTS ]///////////////////////////////////////////////////////////////// + + + + // this is a comment +// ^^^^^^^^^^^^^^^^^^^^ comment.line.double-slash +// ^^ comment.line.double-slash punctuation.definition.comment + + // // this is a comment, not a comment within a comment +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ comment.line.double-slash +// ^^ comment.line.double-slash punctuation.definition.comment +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - comment.line.double-slash comment.line.double-slash + + // /* this is a comment, not a comment within a comment */ +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ comment.line.double-slash +// ^^ comment.line.double-slash punctuation.definition.comment +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - comment.line.double-slash comment.block + + /* comment block */ +// ^^^^^^^^^^^^^^^^^^^ comment.block +// ^^ comment.block punctuation.definition.comment.begin +// ^^ comment.block punctuation.definition.comment.end + + + /* // comment block */ +// ^^^^^^^^^^^^^^^^^^^^^^ comment.block +// ^^ comment.block punctuation.definition.comment.begin +// ^^^^^^^^^^^^^^^^^^^ - comment.block comment.line.double-slash +// ^^ comment.block punctuation.definition.comment.end + + /** + * +// ^ comment.block punctuation.definition.comment + */ + + + +///[ STRINGS ]////////////////////////////////////////////////////////////////// + + + + // strings + + + +///[ TYPES ]////////////////////////////////////////////////////////////////// + + + + var typeBoolean:Boolean = true; +// ^^^^^^^ storage.type + + var typeNumber:Number = 0; +// ^^^^^^ storage.type + + var typeString:String = "some text"; +// ^^^^^^ storage.type + + var typeVoid:Void; +// ^^^^ storage.type + + var typeArray:Array = [1, 2, 3]; +// ^^^^^ storage.type + + var typeObject:Object = { one: 1, two: 2 }; +// ^^^^^^ storage.type + + + +///[ CONSTANTS ]//////////////////////////////////////////////////////////////// + + + + var isFalse:Boolean = false; +// ^^^^^ constant.language.boolean + + var isTrue:Boolean = true; +// ^^^^ constant.language.boolean + + var isUndefined = undefined; +// ^^^^^^^^^ constant.language.undefined + + var isNull = null; +// ^^^^ constant.language.null + + var isNan = NaN; +// ^^^ constant.language.nan + + var isInfinity = Infinity; +// ^^^^^^^^ meta.number.float.decimal +// ^^^^^^^^ constant.language.infinity + + var isNegInfinity = -Infinity; +// ^^^^^^^^^ meta.number.float.decimal +// ^ constant.numeric.sign +// ^^^^^^^^ constant.language.infinity + + var isPosInfinity = +Infinity; +// ^^^^^^^^^ meta.number.float.decimal +// ^ invalid.illegal.constant-numeric-sign +// ^^^^^^^^ constant.language.infinity + + + +///[ NUMBERS ]////////////////////////////////////////////////////////////////// + + + + var intZero:Number = 0; + var intNine:Number = 9; + + var intNegZero:Number = -0; + var intNegNine:Number = -9; + + var floatZero:Number = 0.0; + var floatNine:Number = 9.0; + + var floatNegZero:Number = -0.0; + var floatNegNine:Number = -9.0; + + + +///[ OPERATORS ]//////////////////////////////////////////////////////////////// + + + + // operators + + + +///[ CLASSES ]////////////////////////////////////////////////////////////////// + + + + class com.example.Greeter extends MovieClip +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ meta.class +// ^^^^^ meta.class keyword.declaration.class +// ^^^^^^^^^^^^^^^^^^^ meta.class entity.name.type +// ^^^^^^^ meta.class storage.modifier.extends +// ^^^^^^^^^ meta.class entity.other.inherited-class + { + public function Greeter() +// ^^^^^^ keyword.control +// ^^^^^^^^^^^^^^^^^^ meta.function +// ^^^^^^^^ meta.function keyword.declaration.function +// ^^^^^^^ meta.function entity.name.function +// ^ meta.function punctuation.definition.parameters.begin +// ^ meta.function punctuation.definition.parameters.end + { + var txtHello: TextField = this.createTextField("txtHello", 0, 0, 0, 100, 100); +// ^^^ keyword.control +// ^^^^^^^^^ support.class +// ^ keyword.operator.assignment +// ^^^^ support.function +// ^^^^^^^^^^^^^^^ support.function +// ^^^^^^^^^^ string.quoted.double +// ^ string.quoted.double punctuation.definition.string.begin +// ^ string.quoted.double punctuation.definition.string.end +// ^ constant.numeric + txtHello.text = "Hello, world"; + } + } + + + +///[ FUNCTIONS ]//////////////////////////////////////////////////////////////// + + + + private function getFunctionName(e:Error):String { +// ^^^^^^^ meta.function variable.parameter +// ^^^^^^ storage.type + var stackTrace:String = e.getStackTrace(); // entire stack trace + var startIndex:int = stackTrace.indexOf("at "); // start of first line + var endIndex:int = stackTrace.indexOf("()"); // end of function name + + return stackTrace.substring(startIndex + 3, endIndex); +// ^^^^^^ keyword.control + } + + private function on_applicationComplete(event:FlexEvent):void { + trace(getFunctionName(new Error()); +// ^^^ keyword.control + }