[ts] update grammar

This commit is contained in:
Martin Aeschlimann
2016-10-27 16:39:21 +02:00
parent 2f8c5c1189
commit 47a79e95c4
12 changed files with 598 additions and 378 deletions

View File

@@ -495,8 +495,8 @@
},
"enum-declaration": {
"name": "meta.enum.declaration.js",
"match": "(?<!\\.|\\$)(?:(\\bexport)\\s+)?(?:\\b(const)\\s+)?\\b(enum)\\s+([_$[:alpha:]][_$[:alnum:]]*)",
"captures": {
"begin": "(?<!\\.|\\$)(?:(\\bexport)\\s+)?(?:\\b(const)\\s+)?\\b(enum)\\s+([_$[:alpha:]][_$[:alnum:]]*)",
"beginCaptures": {
"1": {
"name": "keyword.control.export.js"
},
@@ -509,7 +509,67 @@
"4": {
"name": "entity.name.type.enum.js"
}
}
},
"end": "(?<=\\})",
"patterns": [
{
"include": "#comment"
},
{
"begin": "\\{",
"beginCaptures": {
"0": {
"name": "punctuation.definition.block.js"
}
},
"end": "\\}",
"endCaptures": {
"0": {
"name": "punctuation.definition.block.js"
}
},
"patterns": [
{
"include": "#comment"
},
{
"begin": "([_$[:alpha:]][_$[:alnum:]]*)",
"beginCaptures": {
"0": {
"name": "variable.other.enummember.js"
}
},
"end": "(?=,|\\}|$)",
"patterns": [
{
"include": "#comment"
},
{
"include": "#variable-initializer"
}
]
},
{
"begin": "(?=(?:(?:\\'[^']*\\')|(?:\\\"[^\"]*\\\")))",
"end": "(?=,|\\}|$)",
"patterns": [
{
"include": "#string"
},
{
"include": "#comment"
},
{
"include": "#variable-initializer"
}
]
},
{
"include": "#punctuation-comma"
}
]
}
]
},
"namespace-declaration": {
"name": "meta.namespace.declaration.js",
@@ -1223,7 +1283,7 @@
}
},
"object-literal": {
"name": "meta.object-literal.js",
"name": "meta.objectliteral.js",
"begin": "\\{",
"beginCaptures": {
"0": {
@@ -1263,7 +1323,7 @@
]
},
"after-operator-block": {
"name": "meta.object-literal.js",
"name": "meta.objectliteral.js",
"begin": "(?<=[=(,\\[?+!]|await|return|yield|throw|in|of|typeof|&&|\\|\\||\\*)\\s*(\\{)",
"beginCaptures": {
"1": {
@@ -1511,7 +1571,7 @@
]
},
"type-predicate-operator": {
"name": "keyword.operator.is.js",
"name": "keyword.operator.expression.is.js",
"match": "(?<!\\.|\\$)\\bis\\b(?!\\$)"
},
"type-annotation": {
@@ -2116,7 +2176,7 @@
"name": "entity.name.function.js"
}
},
"end": "(?=\\()",
"end": "(?<=\\))",
"patterns": [
{
"include": "#comment"
@@ -2143,6 +2203,9 @@
"include": "#punctuation-comma"
}
]
},
{
"include": "#paren-expression"
}
]
},
@@ -2167,7 +2230,7 @@
}
},
{
"match": "(?x)(?:(\\.)\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*=\\s*( (async\\s+)|(function\\s+)| ([_$[:alpha:]][_$[:alnum:]]*\\s*=>)| ((<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>)))",
"match": "(?x)(?:(\\.)\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\s*=\\s*( (async\\s+)|(function\\s*[(<])|(function\\s+)| ([_$[:alpha:]][_$[:alnum:]]*\\s*=>)| ((<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>)))",
"captures": {
"1": {
"name": "punctuation.accessor.js"
@@ -2235,8 +2298,11 @@
"name": "keyword.operator.new.js"
}
},
"end": "(?=[(;),]|$|((?<!\\.|\\$)\\bnew\\b(?!\\$)))",
"end": "(?<=\\))|(?=[;),]|$|((?<!\\.|\\$)\\bnew\\b(?!\\$)))",
"patterns": [
{
"include": "#paren-expression"
},
{
"include": "#type"
}
@@ -2280,7 +2346,7 @@
},
{
"name": "meta.object.member.js",
"begin": "(?x)(?:([_$[:alpha:]][_$[:alnum:]]*)\\s*(:)(?=\\s*( (async\\s+)|(function\\s+)| ([_$[:alpha:]][_$[:alnum:]]*\\s*=>)| ((<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>))))",
"begin": "(?x)(?:([_$[:alpha:]][_$[:alnum:]]*)\\s*(:)(?=\\s*( (async\\s+)|(function\\s*[(<])|(function\\s+)| ([_$[:alpha:]][_$[:alnum:]]*\\s*=>)| ((<([^<>]|\\<[^<>]+\\>)+>\\s*)?\\(([^()]|\\([^()]*\\))*\\)(\\s*:\\s*(.)*)?\\s*=>))))",
"beginCaptures": {
"0": {
"name": "meta.object-literal.key.js"
@@ -2353,19 +2419,19 @@
"match": "(?<!\\.|\\$)\\b(await)\\b(?!\\$)"
},
{
"name": "keyword.operator.delete.js",
"name": "keyword.operator.expression.delete.js",
"match": "(?<!\\.|\\$)\\bdelete\\b(?!\\$)"
},
{
"name": "keyword.operator.in.js",
"name": "keyword.operator.expression.in.js",
"match": "(?<!\\.|\\$)\\bin\\b(?!\\$)"
},
{
"name": "keyword.operator.of.js",
"name": "keyword.operator.expression.of.js",
"match": "(?<!\\.|\\$)\\bof\\b(?!\\$)"
},
{
"name": "keyword.operator.instanceof.js",
"name": "keyword.operator.expression.instanceof.js",
"match": "(?<!\\.|\\$)\\binstanceof\\b(?!\\$)"
},
{
@@ -2376,7 +2442,7 @@
"include": "#typeof-operator"
},
{
"name": "keyword.operator.void.js",
"name": "keyword.operator.expression.void.js",
"match": "(?<!\\.|\\$)\\bvoid\\b(?!\\$)"
},
{
@@ -2444,7 +2510,7 @@
]
},
"typeof-operator": {
"name": "keyword.operator.typeof.js",
"name": "keyword.operator.expression.typeof.js",
"match": "(?<!\\.|\\$)\\btypeof\\b(?!\\$)"
},
"arrow-function": {
@@ -3394,5 +3460,5 @@
]
}
},
"version": "https://github.com/Microsoft/TypeScript-TmLanguage/commit/fea3b25eb632f689a02057a1715faab29343dda2"
"version": "https://github.com/Microsoft/TypeScript-TmLanguage/commit/578dd5db70333e3b6826ff529276f32916a2c81b"
}

View File

@@ -914,7 +914,7 @@
},
{
"c": "{",
"t": "block.definition.expr.js.meta.object-literal.punctuation.var",
"t": "block.definition.expr.js.meta.objectliteral.punctuation.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -925,7 +925,7 @@
},
{
"c": " ",
"t": "expr.js.meta.object-literal.var",
"t": "expr.js.meta.objectliteral.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -936,7 +936,7 @@
},
{
"c": "verbose",
"t": "expr.js.key.member.meta.object.object-literal.var",
"t": "expr.js.key.member.meta.object.object-literal.objectliteral.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -947,7 +947,7 @@
},
{
"c": ":",
"t": "expr.js.key.key-value.member.meta.object.object-literal.punctuation.separator.var",
"t": "expr.js.key.key-value.member.meta.object.object-literal.objectliteral.punctuation.separator.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -958,7 +958,7 @@
},
{
"c": " ",
"t": "expr.js.member.meta.object.object-literal.var",
"t": "expr.js.member.meta.object.objectliteral.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -969,7 +969,7 @@
},
{
"c": "true",
"t": "boolean.constant.expr.js.language.member.meta.object.object-literal.true.var",
"t": "boolean.constant.expr.js.language.member.meta.object.objectliteral.true.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.constant.language rgb(86, 156, 214)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.constant.language rgb(0, 0, 255)",
@@ -980,7 +980,7 @@
},
{
"c": " ",
"t": "expr.js.member.meta.object.object-literal.var",
"t": "expr.js.member.meta.object.objectliteral.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -991,7 +991,7 @@
},
{
"c": "}",
"t": "block.definition.expr.js.meta.object-literal.punctuation.var",
"t": "block.definition.expr.js.meta.objectliteral.punctuation.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -1420,7 +1420,7 @@
},
{
"c": "{",
"t": "block.definition.function.js.meta.object-literal.punctuation",
"t": "block.definition.function.js.meta.objectliteral.punctuation",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -1431,7 +1431,7 @@
},
{
"c": " ",
"t": "block.function.js.meta.object-literal",
"t": "block.function.js.meta.objectliteral",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -1442,7 +1442,7 @@
},
{
"c": "base",
"t": "block.function.js.key.member.meta.object.object-literal",
"t": "block.function.js.key.member.meta.object.object-literal.objectliteral",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -1453,7 +1453,7 @@
},
{
"c": ":",
"t": "block.function.js.key.key-value.member.meta.object.object-literal.punctuation.separator",
"t": "block.function.js.key.key-value.member.meta.object.object-literal.objectliteral.punctuation.separator",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -1464,7 +1464,7 @@
},
{
"c": " ",
"t": "block.function.js.member.meta.object.object-literal",
"t": "block.function.js.member.meta.object.objectliteral",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -1475,7 +1475,7 @@
},
{
"c": "'",
"t": "begin.block.definition.function.js.member.meta.object.object-literal.punctuation.quoted.single.string",
"t": "begin.block.definition.function.js.member.meta.object.objectliteral.punctuation.quoted.single.string",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -1486,7 +1486,7 @@
},
{
"c": ".",
"t": "block.function.js.member.meta.object.object-literal.quoted.single.string",
"t": "block.function.js.member.meta.object.objectliteral.quoted.single.string",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -1497,7 +1497,7 @@
},
{
"c": "'",
"t": "block.definition.end.function.js.member.meta.object.object-literal.punctuation.quoted.single.string",
"t": "block.definition.end.function.js.member.meta.object.objectliteral.punctuation.quoted.single.string",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -1508,7 +1508,7 @@
},
{
"c": " ",
"t": "block.function.js.member.meta.object.object-literal",
"t": "block.function.js.member.meta.object.objectliteral",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -1519,7 +1519,7 @@
},
{
"c": "}",
"t": "block.definition.function.js.meta.object-literal.punctuation",
"t": "block.definition.function.js.meta.objectliteral.punctuation",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2102,7 +2102,7 @@
},
{
"c": "{",
"t": "block.definition.expr.function.js.meta.object-literal.punctuation.var",
"t": "block.definition.expr.function.js.meta.objectliteral.punctuation.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2113,7 +2113,7 @@
},
{
"c": " ",
"t": "block.expr.function.js.meta.object-literal.var",
"t": "block.expr.function.js.meta.objectliteral.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2124,7 +2124,7 @@
},
{
"c": "base",
"t": "block.expr.function.js.key.member.meta.object.object-literal.var",
"t": "block.expr.function.js.key.member.meta.object.object-literal.objectliteral.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -2135,7 +2135,7 @@
},
{
"c": ":",
"t": "block.expr.function.js.key.key-value.member.meta.object.object-literal.punctuation.separator.var",
"t": "block.expr.function.js.key.key-value.member.meta.object.object-literal.objectliteral.punctuation.separator.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -2146,7 +2146,7 @@
},
{
"c": " ",
"t": "block.expr.function.js.member.meta.object.object-literal.var",
"t": "block.expr.function.js.member.meta.object.objectliteral.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2157,7 +2157,7 @@
},
{
"c": "'",
"t": "begin.block.definition.expr.function.js.member.meta.object.object-literal.punctuation.quoted.single.string.var",
"t": "begin.block.definition.expr.function.js.member.meta.object.objectliteral.punctuation.quoted.single.string.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -2168,7 +2168,7 @@
},
{
"c": ".",
"t": "block.expr.function.js.member.meta.object.object-literal.quoted.single.string.var",
"t": "block.expr.function.js.member.meta.object.objectliteral.quoted.single.string.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -2179,7 +2179,7 @@
},
{
"c": "'",
"t": "block.definition.end.expr.function.js.member.meta.object.object-literal.punctuation.quoted.single.string.var",
"t": "block.definition.end.expr.function.js.member.meta.object.objectliteral.punctuation.quoted.single.string.var",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -2190,7 +2190,7 @@
},
{
"c": " ",
"t": "block.expr.function.js.member.meta.object.object-literal.var",
"t": "block.expr.function.js.member.meta.object.objectliteral.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2201,7 +2201,7 @@
},
{
"c": "}",
"t": "block.definition.expr.function.js.meta.object-literal.punctuation.var",
"t": "block.definition.expr.function.js.meta.objectliteral.punctuation.var",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2344,7 +2344,7 @@
},
{
"c": "{",
"t": "block.definition.function.js.meta.object-literal.punctuation",
"t": "block.definition.function.js.meta.objectliteral.punctuation",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2355,7 +2355,7 @@
},
{
"c": " ",
"t": "block.function.js.meta.object-literal",
"t": "block.function.js.meta.objectliteral",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2366,7 +2366,7 @@
},
{
"c": "base",
"t": "block.function.js.key.member.meta.object.object-literal",
"t": "block.function.js.key.member.meta.object.object-literal.objectliteral",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -2377,7 +2377,7 @@
},
{
"c": ":",
"t": "block.function.js.key.key-value.member.meta.object.object-literal.punctuation.separator",
"t": "block.function.js.key.key-value.member.meta.object.object-literal.objectliteral.punctuation.separator",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.object-literal.member.key rgb(156, 220, 254)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.object-literal.member.key rgb(0, 16, 128)",
@@ -2388,7 +2388,7 @@
},
{
"c": " ",
"t": "block.function.js.member.meta.object.object-literal",
"t": "block.function.js.member.meta.object.objectliteral",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2399,7 +2399,7 @@
},
{
"c": "'",
"t": "begin.block.definition.function.js.member.meta.object.object-literal.punctuation.quoted.single.string",
"t": "begin.block.definition.function.js.member.meta.object.objectliteral.punctuation.quoted.single.string",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -2410,7 +2410,7 @@
},
{
"c": ".",
"t": "block.function.js.member.meta.object.object-literal.quoted.single.string",
"t": "block.function.js.member.meta.object.objectliteral.quoted.single.string",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -2421,7 +2421,7 @@
},
{
"c": "'",
"t": "block.definition.end.function.js.member.meta.object.object-literal.punctuation.quoted.single.string",
"t": "block.definition.end.function.js.member.meta.object.objectliteral.punctuation.quoted.single.string",
"r": {
"dark_plus": ".vs-dark.vscode-theme-defaults-themes-dark_plus-json .token.string rgb(206, 145, 120)",
"light_plus": ".vs.vscode-theme-defaults-themes-light_plus-json .token.string rgb(163, 21, 21)",
@@ -2432,7 +2432,7 @@
},
{
"c": " ",
"t": "block.function.js.member.meta.object.object-literal",
"t": "block.function.js.member.meta.object.objectliteral",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",
@@ -2443,7 +2443,7 @@
},
{
"c": "}",
"t": "block.definition.function.js.meta.object-literal.punctuation",
"t": "block.definition.function.js.meta.objectliteral.punctuation",
"r": {
"dark_plus": ".vs-dark .token rgb(212, 212, 212)",
"light_plus": ".vs .token rgb(0, 0, 0)",

File diff suppressed because it is too large Load Diff