Night Owl Light appears much more blue with Tree Sitter highlighting (#242058)

* Night Owl Light appears much more blue with Tree Sitter highlighting
Fixes #241887

* Fix template strings

* Fix tests

* Fix tests
This commit is contained in:
Alex Ross
2025-03-05 18:37:10 +01:00
committed by GitHub
parent 6d98db0881
commit dfcb5f367c
16 changed files with 1474 additions and 1447 deletions

View File

@@ -1,7 +1,7 @@
[
{
"c": "rowData",
"t": "variable",
"t": "variable.ts variable.other.object.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -15,7 +15,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -29,7 +29,7 @@
},
{
"c": "push",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -43,7 +43,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -57,7 +57,7 @@
},
{
"c": "callback",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -71,7 +71,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -85,7 +85,7 @@
},
{
"c": "new",
"t": "new.expr keyword.operator.new",
"t": "new.expr.ts keyword.operator.new.ts",
"r": {
"dark_plus": "keyword.operator.new: #569CD6",
"light_plus": "keyword.operator.new: #0000FF",
@@ -99,7 +99,7 @@
},
{
"c": "Cell",
"t": "new.expr variable entity.name.function",
"t": "new.expr.ts variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -113,7 +113,7 @@
},
{
"c": "(",
"t": "new.expr punctuation",
"t": "new.expr.ts punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -127,7 +127,7 @@
},
{
"c": "row",
"t": "new.expr variable",
"t": "new.expr.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -141,7 +141,7 @@
},
{
"c": ",",
"t": "new.expr punctuation.delimiter",
"t": "new.expr.ts punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -155,7 +155,7 @@
},
{
"c": "col",
"t": "new.expr variable",
"t": "new.expr.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -169,7 +169,7 @@
},
{
"c": ",",
"t": "new.expr punctuation.delimiter",
"t": "new.expr.ts punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -183,7 +183,7 @@
},
{
"c": "false",
"t": "new.expr constant.language.boolean.false",
"t": "new.expr.ts constant.language.boolean.false.ts",
"r": {
"dark_plus": "constant.language: #569CD6",
"light_plus": "constant.language: #0000FF",
@@ -197,7 +197,7 @@
},
{
"c": ")",
"t": "new.expr punctuation",
"t": "new.expr.ts punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -211,7 +211,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -225,7 +225,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -239,7 +239,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "function",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -15,7 +15,7 @@
},
{
"c": "foo",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -29,7 +29,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -43,7 +43,7 @@
},
{
"c": "isAll",
"t": "variable variable.parameter",
"t": "variable.ts variable.parameter.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -57,7 +57,7 @@
},
{
"c": ",",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -71,7 +71,7 @@
},
{
"c": "startTime",
"t": "variable variable.parameter",
"t": "variable.ts variable.parameter.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -85,7 +85,7 @@
},
{
"c": ",",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -99,7 +99,7 @@
},
{
"c": "endTime",
"t": "variable variable.parameter",
"t": "variable.ts variable.parameter.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -113,7 +113,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -127,7 +127,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -141,7 +141,7 @@
},
{
"c": "const",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -155,7 +155,7 @@
},
{
"c": "timeRange",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -169,7 +169,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -183,7 +183,7 @@
},
{
"c": "isAll",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -197,7 +197,7 @@
},
{
"c": "?",
"t": "punctuation.delimiter keyword.operator.ternary",
"t": "punctuation.delimiter.ts keyword.operator.ternary.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -211,7 +211,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -225,7 +225,7 @@
},
{
"c": "所有时间",
"t": "string",
"t": "string.quoted.single.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -239,7 +239,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -253,7 +253,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter keyword.operator.ternary",
"t": "punctuation.delimiter.ts keyword.operator.ternary.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -267,7 +267,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -281,7 +281,7 @@
},
{
"c": "${",
"t": "string punctuation.definition.template-expression.begin",
"t": "string.template.ts punctuation.definition.template-expression.begin.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.begin: #569CD6",
"light_plus": "punctuation.definition.template-expression.begin: #0000FF",
@@ -295,7 +295,7 @@
},
{
"c": "startTime",
"t": "string variable",
"t": "string.template.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -309,7 +309,7 @@
},
{
"c": "}",
"t": "string punctuation punctuation.definition.template-expression.end",
"t": "string.template.ts punctuation.ts punctuation.definition.template-expression.end.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.end: #569CD6",
"light_plus": "punctuation.definition.template-expression.end: #0000FF",
@@ -323,7 +323,7 @@
},
{
"c": " - ",
"t": "string",
"t": "string.template.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -337,7 +337,7 @@
},
{
"c": "${",
"t": "string punctuation.definition.template-expression.begin",
"t": "string.template.ts punctuation.definition.template-expression.begin.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.begin: #569CD6",
"light_plus": "punctuation.definition.template-expression.begin: #0000FF",
@@ -351,7 +351,7 @@
},
{
"c": "endTime",
"t": "string variable",
"t": "string.template.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -365,7 +365,7 @@
},
{
"c": "}",
"t": "string punctuation punctuation.definition.template-expression.end",
"t": "string.template.ts punctuation.ts punctuation.definition.template-expression.end.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.end: #569CD6",
"light_plus": "punctuation.definition.template-expression.end: #0000FF",
@@ -379,7 +379,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -393,7 +393,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -407,7 +407,7 @@
},
{
"c": "return",
"t": "keyword.control",
"t": "keyword.control.ts",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
@@ -421,7 +421,7 @@
},
{
"c": "true",
"t": "constant.language.boolean.true",
"t": "constant.language.boolean.true.ts",
"r": {
"dark_plus": "constant.language: #569CD6",
"light_plus": "constant.language: #0000FF",
@@ -435,7 +435,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -449,7 +449,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "function",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -29,7 +29,7 @@
},
{
"c": "foo2",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -43,7 +43,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -57,7 +57,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -71,7 +71,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -85,7 +85,7 @@
},
{
"c": "yield",
"t": "keyword.control",
"t": "keyword.control.ts",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
@@ -99,7 +99,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -113,7 +113,7 @@
},
{
"c": "bar",
"t": "string",
"t": "string.quoted.single.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -127,7 +127,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -141,7 +141,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -155,7 +155,7 @@
},
{
"c": "yield",
"t": "keyword.control",
"t": "keyword.control.ts",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
@@ -183,7 +183,7 @@
},
{
"c": "[",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -197,7 +197,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -211,7 +211,7 @@
},
{
"c": "bar",
"t": "string",
"t": "string.quoted.single.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -225,7 +225,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -239,7 +239,7 @@
},
{
"c": "]",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -253,7 +253,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -267,7 +267,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "function",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -15,7 +15,7 @@
},
{
"c": "foo3",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -29,7 +29,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -43,7 +43,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -57,7 +57,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -71,7 +71,7 @@
},
{
"c": "const",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -85,7 +85,7 @@
},
{
"c": "foo",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -99,7 +99,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -113,7 +113,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -127,7 +127,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -141,7 +141,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter keyword.operator.type.annotation",
"t": "punctuation.delimiter.ts keyword.operator.type.annotation.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -155,7 +155,7 @@
},
{
"c": "any",
"t": "support.type support.type.primitive",
"t": "support.type.ts support.type.primitive.ts",
"r": {
"dark_plus": "support.type: #4EC9B0",
"light_plus": "support.type: #267F99",
@@ -169,7 +169,7 @@
},
{
"c": "=>",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -183,7 +183,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -197,7 +197,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -211,7 +211,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -225,7 +225,7 @@
},
{
"c": "bar",
"t": "string",
"t": "string.quoted.single.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -239,7 +239,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -253,7 +253,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -267,7 +267,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -281,7 +281,7 @@
},
{
"c": "baz",
"t": "string",
"t": "string.quoted.single.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -295,7 +295,7 @@
},
{
"c": "'",
"t": "string",
"t": "string.quoted.single.ts punctuation.definition.string.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -309,7 +309,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -323,7 +323,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -337,7 +337,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "/**\n * @typedef {{\n * id: number,\n * fn: !Function,\n * context: (!Object|undefined)\n * }}\n * @private\n */",
"t": "comment",
"t": "comment.ts",
"r": {
"dark_plus": "comment: #6A9955",
"light_plus": "comment: #008000",
@@ -15,7 +15,7 @@
},
{
"c": "goog",
"t": "variable",
"t": "variable.ts variable.other.object.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -29,7 +29,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -43,7 +43,7 @@
},
{
"c": "dom",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -57,7 +57,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -71,7 +71,7 @@
},
{
"c": "animationFrame",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -85,7 +85,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -99,7 +99,7 @@
},
{
"c": "Task_",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -113,7 +113,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -127,7 +127,7 @@
},
{
"c": "/**\n * @typedef {{\n * measureTask: goog.dom.animationFrame.Task_,\n * mutateTask: goog.dom.animationFrame.Task_,\n * state: (!Object|undefined),\n * args: (!Array|undefined),\n * isScheduled: boolean\n * }}\n * @private\n */",
"t": "comment",
"t": "comment.ts",
"r": {
"dark_plus": "comment: #6A9955",
"light_plus": "comment: #008000",
@@ -141,7 +141,7 @@
},
{
"c": "goog",
"t": "variable",
"t": "variable.ts variable.other.object.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -155,7 +155,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -169,7 +169,7 @@
},
{
"c": "dom",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -183,7 +183,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -197,7 +197,7 @@
},
{
"c": "animationFrame",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -211,7 +211,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -225,7 +225,7 @@
},
{
"c": "TaskSet_",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -239,7 +239,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "export",
"t": "keyword.control",
"t": "keyword.control.ts",
"r": {
"dark_plus": "keyword.control: #C586C0",
"light_plus": "keyword.control: #AF00DB",
@@ -15,7 +15,7 @@
},
{
"c": "var",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -29,7 +29,7 @@
},
{
"c": "foo",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -43,7 +43,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -57,7 +57,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -71,7 +71,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -85,7 +85,7 @@
},
{
"c": "=>",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -99,7 +99,7 @@
},
{
"c": "new",
"t": "new.expr keyword.operator.new",
"t": "new.expr.ts keyword.operator.new.ts",
"r": {
"dark_plus": "keyword.operator.new: #569CD6",
"light_plus": "keyword.operator.new: #0000FF",
@@ -113,7 +113,7 @@
},
{
"c": "RegExp",
"t": "new.expr variable entity.name.function",
"t": "new.expr.ts variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -127,7 +127,7 @@
},
{
"c": "(",
"t": "new.expr punctuation",
"t": "new.expr.ts punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -141,7 +141,7 @@
},
{
"c": "'",
"t": "new.expr string",
"t": "new.expr.ts string.quoted.single.ts punctuation.definition.string.begin.ts punctuation.definition.string.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -155,7 +155,7 @@
},
{
"c": "'",
"t": "new.expr string",
"t": "new.expr.ts string.quoted.single.ts punctuation.definition.string.begin.ts punctuation.definition.string.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -169,7 +169,7 @@
},
{
"c": ")",
"t": "new.expr punctuation",
"t": "new.expr.ts punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -183,7 +183,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "class",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -15,7 +15,7 @@
},
{
"c": "A2",
"t": "entity.name.type",
"t": "entity.name.type.ts",
"r": {
"dark_plus": "entity.name.type: #4EC9B0",
"light_plus": "entity.name.type: #267F99",
@@ -29,7 +29,7 @@
},
{
"c": "extends",
"t": "storage.modifier",
"t": "storage.modifier.ts",
"r": {
"dark_plus": "storage.modifier: #569CD6",
"light_plus": "storage.modifier: #0000FF",
@@ -43,7 +43,7 @@
},
{
"c": "B1",
"t": "variable entity.other.inherited-class",
"t": "variable.ts entity.other.inherited-class.ts",
"r": {
"dark_plus": "entity.other.inherited-class: #4EC9B0",
"light_plus": "entity.other.inherited-class: #267F99",
@@ -57,7 +57,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -71,7 +71,7 @@
},
{
"c": "public",
"t": "storage.modifier",
"t": "storage.modifier.ts",
"r": {
"dark_plus": "storage.modifier: #569CD6",
"light_plus": "storage.modifier: #0000FF",
@@ -85,7 +85,7 @@
},
{
"c": "count",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -99,7 +99,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter keyword.operator.type.annotation",
"t": "punctuation.delimiter.ts keyword.operator.type.annotation.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -113,7 +113,7 @@
},
{
"c": "number",
"t": "support.type support.type.primitive",
"t": "support.type.ts support.type.primitive.ts",
"r": {
"dark_plus": "support.type: #4EC9B0",
"light_plus": "support.type: #267F99",
@@ -127,7 +127,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -141,7 +141,7 @@
},
{
"c": "9",
"t": "constant.numeric",
"t": "constant.numeric.ts",
"r": {
"dark_plus": "constant.numeric: #B5CEA8",
"light_plus": "constant.numeric: #098658",
@@ -155,7 +155,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -169,7 +169,7 @@
},
{
"c": "public",
"t": "storage.modifier",
"t": "storage.modifier.ts",
"r": {
"dark_plus": "storage.modifier: #569CD6",
"light_plus": "storage.modifier: #0000FF",
@@ -183,7 +183,7 @@
},
{
"c": "resolveNextGeneration",
"t": "variable meta.definition.method entity.name.function",
"t": "variable.ts meta.definition.method.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -197,7 +197,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -211,7 +211,7 @@
},
{
"c": "cell",
"t": "variable variable.parameter",
"t": "variable.ts variable.parameter.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -225,7 +225,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter keyword.operator.type.annotation",
"t": "punctuation.delimiter.ts keyword.operator.type.annotation.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -239,7 +239,7 @@
},
{
"c": "A2",
"t": "entity.name.type",
"t": "entity.name.type.ts",
"r": {
"dark_plus": "entity.name.type: #4EC9B0",
"light_plus": "entity.name.type: #267F99",
@@ -253,7 +253,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -267,7 +267,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -281,7 +281,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -295,7 +295,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "let",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -15,7 +15,7 @@
},
{
"c": "s1",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -29,7 +29,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -43,7 +43,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -57,7 +57,7 @@
},
{
"c": "k",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -71,7 +71,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -85,7 +85,7 @@
},
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -99,7 +99,7 @@
},
{
"c": "k1",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -113,7 +113,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -127,7 +127,7 @@
},
{
"c": "s",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -141,7 +141,7 @@
},
{
"c": ",",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -155,7 +155,7 @@
},
{
"c": "k2",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -169,7 +169,7 @@
},
{
"c": ":",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -183,7 +183,7 @@
},
{
"c": "1",
"t": "constant.numeric",
"t": "constant.numeric.ts",
"r": {
"dark_plus": "constant.numeric: #B5CEA8",
"light_plus": "constant.numeric: #098658",
@@ -197,7 +197,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -211,7 +211,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -225,7 +225,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "var",
"t": "storage.type",
"t": "storage.type.ts",
"r": {
"dark_plus": "storage.type: #569CD6",
"light_plus": "storage.type: #0000FF",
@@ -15,7 +15,7 @@
},
{
"c": "x",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -29,7 +29,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -43,7 +43,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -57,7 +57,7 @@
},
{
"c": "Hello ",
"t": "string",
"t": "string.template.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -71,7 +71,7 @@
},
{
"c": "${",
"t": "string punctuation.definition.template-expression.begin",
"t": "string.template.ts punctuation.definition.template-expression.begin.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.begin: #569CD6",
"light_plus": "punctuation.definition.template-expression.begin: #0000FF",
@@ -85,7 +85,7 @@
},
{
"c": "foo",
"t": "string variable",
"t": "string.template.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -99,7 +99,7 @@
},
{
"c": "}",
"t": "string punctuation punctuation.definition.template-expression.end",
"t": "string.template.ts punctuation.ts punctuation.definition.template-expression.end.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.end: #569CD6",
"light_plus": "punctuation.definition.template-expression.end: #0000FF",
@@ -113,7 +113,7 @@
},
{
"c": "!",
"t": "string",
"t": "string.template.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -127,7 +127,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -141,7 +141,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -155,7 +155,7 @@
},
{
"c": "console",
"t": "variable",
"t": "variable.ts variable.other.object.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -169,7 +169,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -183,7 +183,7 @@
},
{
"c": "log",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -197,7 +197,7 @@
},
{
"c": "(",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -211,7 +211,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -225,7 +225,7 @@
},
{
"c": "string text line 1\nstring text line 2",
"t": "string",
"t": "string.template.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -239,7 +239,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -253,7 +253,7 @@
},
{
"c": ")",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -267,7 +267,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -281,7 +281,7 @@
},
{
"c": "x",
"t": "variable",
"t": "variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -295,7 +295,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -309,7 +309,7 @@
},
{
"c": "tag",
"t": "variable entity.name.function",
"t": "variable.ts entity.name.function.ts",
"r": {
"dark_plus": "entity.name.function: #DCDCAA",
"light_plus": "entity.name.function: #795E26",
@@ -323,7 +323,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.begin.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -337,7 +337,7 @@
},
{
"c": "Hello ",
"t": "string",
"t": "string.template.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -351,7 +351,7 @@
},
{
"c": "${",
"t": "string punctuation.definition.template-expression.begin",
"t": "string.template.ts punctuation.definition.template-expression.begin.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.begin: #569CD6",
"light_plus": "punctuation.definition.template-expression.begin: #0000FF",
@@ -365,7 +365,7 @@
},
{
"c": "a",
"t": "string variable",
"t": "string.template.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -379,7 +379,7 @@
},
{
"c": "+",
"t": "string keyword.operator.arithmetic",
"t": "string.template.ts keyword.operator.arithmetic.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -393,7 +393,7 @@
},
{
"c": "b",
"t": "string variable",
"t": "string.template.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -407,7 +407,7 @@
},
{
"c": "}",
"t": "string punctuation punctuation.definition.template-expression.end",
"t": "string.template.ts punctuation.ts punctuation.definition.template-expression.end.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.end: #569CD6",
"light_plus": "punctuation.definition.template-expression.end: #0000FF",
@@ -421,7 +421,7 @@
},
{
"c": " world ",
"t": "string",
"t": "string.template.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -435,7 +435,7 @@
},
{
"c": "${",
"t": "string punctuation.definition.template-expression.begin",
"t": "string.template.ts punctuation.definition.template-expression.begin.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.begin: #569CD6",
"light_plus": "punctuation.definition.template-expression.begin: #0000FF",
@@ -449,7 +449,7 @@
},
{
"c": "a",
"t": "string variable",
"t": "string.template.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -463,7 +463,7 @@
},
{
"c": "*",
"t": "string keyword.operator.arithmetic",
"t": "string.template.ts keyword.operator.arithmetic.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -477,7 +477,7 @@
},
{
"c": "b",
"t": "string variable",
"t": "string.template.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -491,7 +491,7 @@
},
{
"c": "}",
"t": "string punctuation punctuation.definition.template-expression.end",
"t": "string.template.ts punctuation.ts punctuation.definition.template-expression.end.ts",
"r": {
"dark_plus": "punctuation.definition.template-expression.end: #569CD6",
"light_plus": "punctuation.definition.template-expression.end: #0000FF",
@@ -505,7 +505,7 @@
},
{
"c": "`",
"t": "string",
"t": "string.template.ts punctuation.definition.string.template.end.ts",
"r": {
"dark_plus": "string: #CE9178",
"light_plus": "string: #A31515",
@@ -519,7 +519,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -1,7 +1,7 @@
[
{
"c": "{",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -15,7 +15,7 @@
},
{
"c": "this",
"t": "variable.language.this",
"t": "variable.language.this.ts",
"r": {
"dark_plus": "variable.language: #569CD6",
"light_plus": "variable.language: #0000FF",
@@ -29,7 +29,7 @@
},
{
"c": ".",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -43,7 +43,7 @@
},
{
"c": "foo",
"t": "variable variable",
"t": "variable.ts variable.ts",
"r": {
"dark_plus": "variable: #9CDCFE",
"light_plus": "variable: #001080",
@@ -57,7 +57,7 @@
},
{
"c": "=",
"t": "keyword.operator.assignment",
"t": "keyword.operator.assignment.ts",
"r": {
"dark_plus": "keyword.operator: #D4D4D4",
"light_plus": "keyword.operator: #000000",
@@ -71,7 +71,7 @@
},
{
"c": "9",
"t": "constant.numeric",
"t": "constant.numeric.ts",
"r": {
"dark_plus": "constant.numeric: #B5CEA8",
"light_plus": "constant.numeric: #098658",
@@ -85,7 +85,7 @@
},
{
"c": ";",
"t": "punctuation.delimiter",
"t": "punctuation.delimiter.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",
@@ -99,7 +99,7 @@
},
{
"c": "}",
"t": "punctuation",
"t": "punctuation.ts",
"r": {
"dark_plus": "default: #D4D4D4",
"light_plus": "default: #000000",

View File

@@ -3,113 +3,137 @@
; Variables
(identifier) @variable
(identifier) @variable.ts
(_
object: (identifier) @variable.other.object.ts)
; Literals
(this) @variable.language.this
(super) @variable.language.super
(this) @variable.language.this.ts
(super) @variable.language.super.ts
(comment) @comment
(comment) @comment.ts
; TODO: This doesn't seem to be working
(escape_sequence) @constant.character.escape
(escape_sequence) @constant.character.escape.ts
[
(string)
((string) @string.quoted.single.ts
(#match? @string.quoted.single.ts "^'[^']*'$"))
((string) @string.quoted.double.ts
(#match? @string.quoted.double.ts "^\"[^\"]*\"$"))
([
(template_string)
(template_literal_type)
] @string
] @string.template.ts)
(string .
([
"\""
"'"
]) @punctuation.definition.string.begin.ts)
(string
([
"\""
"'"
]) @punctuation.definition.string.end.ts .)
(template_string . ("`") @punctuation.definition.string.template.begin.ts)
(template_string ("`") @punctuation.definition.string.template.end.ts .)
; NOTE: the typescript grammar doesn't break regex into nice parts so as to capture parts of it separately
(regex) @string.regexp
(number) @constant.numeric
(regex) @string.regexp.ts
(number) @constant.numeric.ts
; Properties
(member_expression
object: (this)
property: (property_identifier) @variable)
property: (property_identifier) @variable.ts)
(member_expression
property: (property_identifier) @variable.other.constant
(#match? @variable.other.constant "^[A-Z][A-Z_]+$"))
property: (property_identifier) @variable.other.constant.ts
(#match? @variable.other.constant.ts "^[A-Z][A-Z_]+$"))
[
(property_identifier)
(shorthand_property_identifier)
(shorthand_property_identifier_pattern)] @variable
(shorthand_property_identifier_pattern)] @variable.ts
; Function and method definitions
(function_expression
name: (identifier) @entity.name.function)
name: (identifier) @entity.name.function.ts)
(function_declaration
name: (identifier) @entity.name.function)
name: (identifier) @entity.name.function.ts)
(method_definition
name: (property_identifier) @meta.definition.method @entity.name.function
(#not-eq? @entity.name.function "constructor"))
name: (property_identifier) @meta.definition.method.ts @entity.name.function.ts
(#not-eq? @entity.name.function.ts "constructor"))
(method_definition
name: (property_identifier) @meta.definition.method @storage.type
(#eq? @storage.type "constructor"))
name: (property_identifier) @meta.definition.method.ts @storage.type.ts
(#eq? @storage.type.ts "constructor"))
(method_signature
name: (property_identifier) @meta.definition.method @entity.name.function)
name: (property_identifier) @meta.definition.method.ts @entity.name.function.ts)
(pair
key: (property_identifier) @entity.name.function
key: (property_identifier) @entity.name.function.ts
value: [(function_expression) (arrow_function)])
(assignment_expression
left: (member_expression
property: (property_identifier) @entity.name.function)
property: (property_identifier) @entity.name.function.ts)
right: [(function_expression) (arrow_function)])
(variable_declarator
name: (identifier) @entity.name.function
name: (identifier) @entity.name.function.ts
value: [(function_expression) (arrow_function)])
(assignment_expression
left: (identifier) @entity.name.function
left: (identifier) @entity.name.function.ts
right: [(function_expression) (arrow_function)])
(required_parameter
(identifier) @variable.parameter)
(identifier) @variable.parameter.ts)
(required_parameter
(rest_pattern
(identifier) @variable.parameter))
(identifier) @variable.parameter.ts))
(optional_parameter
(identifier) @variable.parameter)
(identifier) @variable.parameter.ts)
(catch_clause
parameter: (identifier) @variable.parameter)
parameter: (identifier) @variable.parameter.ts)
; Function and method calls
(call_expression
function: (identifier) @entity.name.function)
function: (identifier) @entity.name.function.ts)
(call_expression
function: (member_expression
object: (identifier) @support.class.promise)
(#eq? @support.class.promise "Promise"))
object: (identifier) @support.class.promise.ts)
(#eq? @support.class.promise.ts "Promise"))
(call_expression
function: (member_expression
property: (property_identifier) @entity.name.function))
property: (property_identifier) @entity.name.function.ts))
(new_expression) @new.expr
(new_expression) @new.expr.ts
(new_expression
constructor: (identifier) @entity.name.function)
constructor: (identifier) @entity.name.function.ts)
; Special identifiers
(predefined_type) @support.type
(predefined_type (["string" "boolean" "number" "any" "unknown"])) @support.type.primitive
(type_identifier) @entity.name.type
(predefined_type) @support.type.ts
(predefined_type (["string" "boolean" "number" "any" "unknown"])) @support.type.primitive.ts
(type_identifier) @entity.name.type.ts
(internal_module
name: (identifier) @entity.name.type.ts)
@@ -118,14 +142,14 @@
(_ name: (identifier))
(shorthand_property_identifier)
(shorthand_property_identifier_pattern)
] @variable.other.constant
(#match? @variable.other.constant "^[A-Z][A-Z_]+$"))
] @variable.other.constant.ts
(#match? @variable.other.constant.ts "^[A-Z][A-Z_]+$"))
(extends_clause
value: (identifier) @entity.other.inherited-class)
value: (identifier) @entity.other.inherited-class.ts)
(implements_clause
(type_identifier) @entity.other.inherited-class)
(type_identifier) @entity.other.inherited-class.ts)
; Tokens
@@ -136,7 +160,7 @@
","
":"
"?"
] @punctuation.delimiter
] @punctuation.delimiter.ts
[
"!"
@@ -146,7 +170,7 @@
"&&"
"||"
"??"
] @keyword.operator.logical
] @keyword.operator.logical.ts
(binary_expression ([
"-"
@@ -155,18 +179,18 @@
"/"
"%"
"^"
]) @keyword.operator.arithmetic)
]) @keyword.operator.arithmetic.ts)
(binary_expression ([
"<"
"<="
">"
">="
]) @keyword.operator.relational)
]) @keyword.operator.relational.ts)
[
"="
] @keyword.operator.assignment
] @keyword.operator.assignment.ts
(augmented_assignment_expression ([
"-="
@@ -180,15 +204,15 @@
"&&="
"||="
"??="
]) @keyword.operator.assignment.compound)
]) @keyword.operator.assignment.compound.ts)
[
"++"
] @keyword.operator.increment
] @keyword.operator.increment.ts
[
"--"
] @keyword.operator.decrement
] @keyword.operator.decrement.ts
[
"**"
@@ -204,16 +228,16 @@
"~"
"&"
"|"
] @keyword.operator
] @keyword.operator.ts
(union_type
("|") @keyword.operator.type)
("|") @keyword.operator.type.ts)
(intersection_type
("&") @keyword.operator.type)
("&") @keyword.operator.type.ts)
(type_annotation
(":") @keyword.operator.type.annotation)
(":") @keyword.operator.type.annotation.ts)
[
"{"
@@ -222,36 +246,36 @@
")"
"["
"]"
] @punctuation
] @punctuation.ts
(template_substitution
"${" @punctuation.definition.template-expression.begin
"}" @punctuation.definition.template-expression.end)
"${" @punctuation.definition.template-expression.begin.ts
"}" @punctuation.definition.template-expression.end.ts)
(template_type
"${" @punctuation.definition.template-expression.begin
"}" @punctuation.definition.template-expression.end)
"${" @punctuation.definition.template-expression.begin.ts
"}" @punctuation.definition.template-expression.end.ts)
(type_arguments
"<" @punctuation.definition.typeparameters
">" @punctuation.definition.typeparameters)
"<" @punctuation.definition.typeparameters.ts
">" @punctuation.definition.typeparameters.ts)
; Keywords
("typeof") @keyword.operator.expression.typeof
("typeof") @keyword.operator.expression.typeof.ts
(binary_expression "instanceof" @keyword.operator.expression.instanceof)
(binary_expression "instanceof" @keyword.operator.expression.instanceof.ts)
("of") @keyword.operator.expression.of
("of") @keyword.operator.expression.of.ts
("is") @keyword.operator.expression.is
("is") @keyword.operator.expression.is.ts
[
"delete"
"in"
"infer"
"keyof"
] @keyword.operator.expression
] @keyword.operator.expression.ts
[
"as"
@@ -278,7 +302,7 @@
"type"
"while"
"yield"
] @keyword.control
] @keyword.control.ts
[
"abstract"
@@ -292,7 +316,7 @@
"public"
"readonly"
"static"
] @storage.modifier
] @storage.modifier.ts
[
"=>"
@@ -306,7 +330,7 @@
"namespace"
"set"
"var"
] @storage.type
] @storage.type.ts
[
"module"
@@ -316,68 +340,68 @@
"debugger"
"target"
"with"
] @keyword
] @keyword.ts
(regex_flags) @keyword
(regex_flags) @keyword.ts
[
"void"
] @support.type.primitive
] @support.type.primitive.ts
[
"new"
] @keyword.operator.new
] @keyword.operator.new.ts
(public_field_definition
("?") @keyword.operator.optional)
("?") @keyword.operator.optional.ts)
(property_signature
("?") @keyword.operator.optional)
("?") @keyword.operator.optional.ts)
(optional_parameter
([
"?"
":"
]) @keyword.operator.optional)
]) @keyword.operator.optional.ts)
(ternary_expression
([
"?"
":"
]) @keyword.operator.ternary)
]) @keyword.operator.ternary.ts)
(optional_chain
("?.") @punctuation.accessor.optional)
("?.") @punctuation.accessor.optional.ts)
(rest_pattern
("...") @keyword.operator.rest)
("...") @keyword.operator.rest.ts)
(spread_element
("...") @keyword.operator.spread)
("...") @keyword.operator.spread.ts)
; Language constants
[
(null)
] @constant.language.null
] @constant.language.null.ts
[
(undefined)
] @constant.language.undefined
] @constant.language.undefined.ts
((identifier) @constant.language.nan
(#eq? @constant.language.nan "NaN"))
((identifier) @constant.language.nan.ts
(#eq? @constant.language.nan.ts "NaN"))
((identifier) @constant.language.infinity
(#eq? @constant.language.infinity "Infinity"))
((identifier) @constant.language.infinity.ts
(#eq? @constant.language.infinity.ts "Infinity"))
[
(true)
] @constant.language.boolean.true
] @constant.language.boolean.true.ts
[
(false)
] @constant.language.boolean.false
] @constant.language.boolean.false.ts
(literal_type
[
@@ -385,7 +409,7 @@
(undefined)
(true)
(false)
] @support.type.builtin)
] @support.type.builtin.ts)
(namespace_import
"*" @constant.language)
"*" @constant.language.ts)

View File

@@ -338,7 +338,7 @@ export class TreeSitterTokenizationSupport extends Disposable implements ITreeSi
let tokenUpdate: { newTokens: TokenUpdate[] } | undefined;
for (let i = 0; i < rangeChanges.length; i++) {
if (versionId !== textModel.getVersionId()) {
if (!textModel.isDisposed() && versionId !== textModel.getVersionId()) {
// Our captures have become invalid and we need to re-capture
break;
}

View File

@@ -85,7 +85,7 @@ class MockTokenStoreService implements ITreeSitterTokenizationStoreService {
return true;
}
getNeedsRefresh(model: ITextModel): { range: Range; startOffset: number; endOffset: number }[] {
throw new Error('Method not implemented.');
return [];
}
_serviceBrand: undefined;
@@ -212,12 +212,64 @@ suite('Tree Sitter TokenizationFeature', function () {
}
}
test('Three changes come back to back ', async () => {
const content = `/**
**/
class x {
}
class y {
}`;
const model = await getModelAndPrepTree(content);
let updateListener: IDisposable | undefined;
let change: TreeUpdateEvent | undefined;
const updatePromise = new Promise<void>(resolve => {
updateListener = treeSitterParserService.onDidUpdateTree(async e => {
if (e.textModel === model) {
change = e;
resolve();
}
});
});
const edit1 = new Promise<void>(resolve => {
model.applyEdits([{ range: new Range(7, 1, 8, 1), text: '' }]);
resolve();
});
const edit2 = new Promise<void>(resolve => {
model.applyEdits([{ range: new Range(6, 1, 7, 1), text: '' }]);
resolve();
});
const edit3 = new Promise<void>(resolve => {
model.applyEdits([{ range: new Range(5, 1, 6, 1), text: '' }]);
resolve();
});
const edits = Promise.all([edit1, edit2, edit3]);
await updatePromise;
await edits;
assert.ok(change);
assert.strictEqual(change.versionId, 4);
assert.strictEqual(change.ranges[0].newRangeStartOffset, 7);
assert.strictEqual(change.ranges[0].newRangeEndOffset, 32);
assert.strictEqual(change.ranges[0].newRange.startLineNumber, 2);
assert.strictEqual(change.ranges[0].newRange.endLineNumber, 7);
updateListener?.dispose();
modelService.destroyModel(model.uri);
});
test('File single line file', async () => {
const content = `console.log('x');`;
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 1, 18), 0, 17);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 7);
assert.deepStrictEqual(tokens?.length, 9);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -229,7 +281,7 @@ console.log('x');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 3, 1), 0, 19);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 9);
assert.deepStrictEqual(tokens?.length, 11);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -239,7 +291,7 @@ console.log('x');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 3, 1), 0, 21);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 9);
assert.deepStrictEqual(tokens?.length, 11);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -253,7 +305,7 @@ console.log('7');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 5, 1), 0, 38);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 17);
assert.deepStrictEqual(tokens?.length, 21);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -263,7 +315,7 @@ console.log('7');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 5, 1), 0, 42);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 17);
assert.deepStrictEqual(tokens?.length, 21);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -277,7 +329,7 @@ console.log('7');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 5, 1), 0, 24);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 14);
assert.deepStrictEqual(tokens?.length, 16);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -287,7 +339,7 @@ console.log('7');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 5, 1), 0, 28);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 14);
assert.deepStrictEqual(tokens?.length, 16);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -302,7 +354,7 @@ console.log('x');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 6, 1), 0, 28);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 10);
assert.deepStrictEqual(tokens?.length, 12);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -312,7 +364,7 @@ console.log('x');
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 6, 1), 0, 33);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 10);
assert.deepStrictEqual(tokens?.length, 12);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -343,61 +395,12 @@ class Y {
modelService.destroyModel(model.uri);
});
test('Three changes come back to back ', async () => {
const content = `/**
**/
class x {
}
class y {
}`;
const model = await getModelAndPrepTree(content);
let updateListener: IDisposable | undefined;
let change: TreeUpdateEvent | undefined;
const updatePromise = new Promise<void>(resolve => {
updateListener = treeSitterParserService.onDidUpdateTree(async e => {
change = e;
resolve();
});
});
const edit1 = new Promise<void>(resolve => {
model.applyEdits([{ range: new Range(7, 1, 8, 1), text: '' }]);
resolve();
});
const edit2 = new Promise<void>(resolve => {
model.applyEdits([{ range: new Range(6, 1, 7, 1), text: '' }]);
resolve();
});
const edit3 = new Promise<void>(resolve => {
model.applyEdits([{ range: new Range(5, 1, 6, 1), text: '' }]);
resolve();
});
Promise.all([edit1, edit2, edit3]);
await updatePromise;
assert.ok(change);
assert.strictEqual(change.versionId, 4);
assert.strictEqual(change.ranges[0].newRangeStartOffset, 7);
assert.strictEqual(change.ranges[0].newRangeEndOffset, 32);
assert.strictEqual(change.ranges[0].newRange.startLineNumber, 2);
assert.strictEqual(change.ranges[0].newRange.endLineNumber, 7);
updateListener?.dispose();
modelService.destroyModel(model.uri);
});
test('Template string', async () => {
const content = '`t ${6}`';
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 1, 8), 0, 8);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 5);
assert.deepStrictEqual(tokens?.length, 6);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});
@@ -412,7 +415,7 @@ class y {
const model = await getModelAndPrepTree(content);
const tokens = treeSitterTokenizationSupport.getTokensInRange(model, new Range(1, 1, 6, 5), 0, 238);
verifyTokens(tokens);
assert.deepStrictEqual(tokens?.length, 56);
assert.deepStrictEqual(tokens?.length, 65);
assert.deepStrictEqual(tokensContentSize(tokens), content.length);
modelService.destroyModel(model.uri);
});