Skip to content

Commit 81f02a7

Browse files
committed
Merge pull request #491 from Cu3PO42/grammar-fix-481
Fix #481.
2 parents 9c7621b + 89bc8be commit 81f02a7

File tree

1 file changed

+56
-8
lines changed

1 file changed

+56
-8
lines changed

grammars/typescript.cson

Lines changed: 56 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -389,6 +389,62 @@
389389
{
390390
'include': '#function'
391391
}
392+
{
393+
'match': '(new)\\s+([\\p{L}\\p{Nl}$_.][\\p{L}\\p{Nl}$\\p{Mn}\\p{Mc}\\p{Nd}\\p{Pc}\\x{200C}\\x{200D}.]*(?:\\.[\\p{L}\\p{Nl}$_.][\\p{L}\\p{Nl}$\\p{Mn}\\p{Mc}\\p{Nd}\\p{Pc}\\x{200C}\\x{200D}.]*)*)'
394+
'captures':
395+
'1':
396+
'name': 'keyword.operator.new.js'
397+
'2':
398+
'patterns': [
399+
{
400+
'name': 'entity.name.type.instance.js'
401+
'match': '[\\p{L}\\p{Nl}$_.][\\p{L}\\p{Nl}$\\p{Mn}\\p{Mc}\\p{Nd}\\p{Pc}\\x{200C}\\x{200D}.]*'
402+
}
403+
]
404+
'name': 'meta.class.instance.constructor'
405+
}
406+
{
407+
'begin': '(?:(?<=[\\)\\]])|\\b([\\p{L}\\p{Nl}$_][\\p{L}\\p{Nl}$\\p{Mn}\\p{Mc}\\p{Nd}\\p{Pc}\\x{200C}\\x{200D}]*))(\\()'
408+
'beginCaptures':
409+
'1':
410+
'patterns': [
411+
{
412+
'match': '\\b(shift|showModelessDialog|showModalDialog|showHelp|scroll|scrollX|scrollByPages|scrollByLines|scrollY|scrollTo|stop|strike|sin|sizeToContent|sidebar|signText|sort|sup|sub|substr|substring|splice|split|send|set(Milliseconds|Seconds|Minutes|Hours|Month|Year|FullYear|Date|UTC(Milliseconds|Seconds|Minutes|Hours|Month|FullYear|Date)|Time|Hotkeys|Cursor|Timeout|Interval|ZOptions|Active|Resizable|RequestHeader)|search|sqrt|slice|savePreferences|small|home|handleEvent|navigate|char|charCodeAt|charAt|cos|concat|contextual|confirm|compile|ceil|clear|clearTimeout|clearInterval|captureEvents|call|createStyleSheet|createPopup|createEventObject|to(GMTString|UTCString|String|Source|UpperCase|LowerCase|LocaleString)|test|tan|taint|taintEnabled|isNaN|isFinite|indexOf|italics|disableExternalCapture|dump|detachEvent|unshift|untaint|unescape|unwatch|updateCommands|join|javaEnabled|pop|pow|push|plugins.refresh|paddings|parse|parseInt|parseFloat|print|prompt|preference|escape|enableExternalCapture|eval|elementFromPoint|exp|exec|execScript|execCommand|valueOf|UTC|queryCommandState|queryCommandIndeterm|queryCommandEnabled|queryCommandValue|find|file|fileModifiedDate|fileSize|fileCreatedDate|fileUpdatedDate|fixed|fontsize|fontcolor|forward|floor|fromCharCode|watch|link|load|log|lastIndexOf|asin|anchor|acos|attachEvent|atob|atan|atan2|apply|alert|abs|abort|round|routeEvents|resize|resizeBy|resizeTo|recalc|returnValue|replace|reverse|reload|releaseCapture|releaseEvents|random|go|get(Milliseconds|Seconds|Minutes|Hours|Month|Day|Year|FullYear|Time|Date|TimezoneOffset|UTC(Milliseconds|Seconds|Minutes|Hours|Day|Month|FullYear|Date)|Attention|Selection|ResponseHeader|AllResponseHeaders)|min|moveBy|moveBelow|moveTo|moveToAbsolute|moveAbove|mergeAttributes|match|margins|max|btoa|big|bold|borderWidths|blink|back)\\b'
413+
'name': 'support.function.js'
414+
}
415+
{
416+
'match': '\\b(substringData|submit|splitText|setNamedItem|setAttribute|setAttributeNode|select|hasChildNodes|hasFeature|namedItem|click|close|cloneNode|createComment|createCDATASection|createCaption|createTHead|createTextNode|createTFoot|createDocumentFragment|createProcessingInstruction|createEntityReference|createElement|createAttribute|tabIndex|insertRow|insertBefore|insertCell|insertData|item|open|deleteRow|deleteCell|deleteCaption|deleteTHead|deleteTFoot|deleteData|focus|write|writeln|add|appendChild|appendData|reset|replaceChild|replaceData|move|moveNamedItem|moveChild|moveAttribute|moveAttributeNode|getNamedItem|getElementsByName|getElementsByTagName|getElementById|getAttribute|getAttributeNode|blur)\\b'
417+
'name': 'support.function.dom.js'
418+
}
419+
{
420+
'match': '\\bsuper\\b'
421+
'name': 'keyword.other.ts'
422+
}
423+
]
424+
'2':
425+
'name': 'punctuation.definition.parameters.begin.js'
426+
'end': '\\)'
427+
'endCaptures':
428+
'0':
429+
'name': 'punctuation.definition.parameters.end.js'
430+
'patterns': [
431+
{
432+
'begin': '(?=)'
433+
'end': '(,)\\s*|(?=\\))'
434+
'endCaptures':
435+
'1':
436+
'include': '#comma'
437+
'patterns': [
438+
{
439+
'include': '$self'
440+
}
441+
]
442+
}
443+
{
444+
'include': '#comments'
445+
}
446+
]
447+
}
392448
{
393449
'comment': 'Prevent built-in types from being highlighted if accessed as property'
394450
'match': '(\\.)(?:Anchor|Applet|Area|Array|Boolean|Button|Checkbox|Date|document|event|FileUpload|Form|Frame|Function|Hidden|History|Image|JavaArray|JavaClass|JavaObject|JavaPackage|java|Layer|Link|Location|Math|MimeType|Number|navigator|netscape|Object|Option|Packages|Password|Plugin|Radio|RegExp|Reset|Select|String|Style|Submit|screen|sun|Text|Textarea|window|XMLHttpRequest)'
@@ -406,14 +462,6 @@
406462
'match': '\\b(?:as|AS)\\b'
407463
'name': 'keyword.operator.ts'
408464
}
409-
{
410-
'comment': 'Match stuff like: super(argument, list)'
411-
'match': '(super)\\)'
412-
'name': 'keyword.other.ts'
413-
'captures':
414-
'1':
415-
'name': 'variable.type.ts'
416-
}
417465
{
418466
'comment': 'Match type SomeType = OtherType'
419467
'begin': '(type)\\s+([\\p{L}\\p{Nl}$_][\\p{L}\\p{Nl}$\\p{Mn}\\p{Mc}\\p{Nd}\\p{Pc}\\x{200C}\\x{200D}]*)'

0 commit comments

Comments
 (0)