diff --git a/extensions/typescript/syntaxes/TypeScript.tmLanguage b/extensions/typescript/syntaxes/TypeScript.tmLanguage
index 8017c3899c482df085f57292c16d2d9fcf4df3d7..ae614a2e14a9419e9c86d3124bcd10c497be7ed1 100644
--- a/extensions/typescript/syntaxes/TypeScript.tmLanguage
+++ b/extensions/typescript/syntaxes/TypeScript.tmLanguage
@@ -70,6 +70,13 @@
name
keyword.operator.assignment.ts
+ await-modifier
+
+ match
+ await
+ name
+ storage.modifier.ts
+
block
begin
@@ -98,11 +105,11 @@
include
- #expression
+ #object-member
include
- #object-member
+ #expression
@@ -116,7 +123,7 @@
cast
begin
- (?:(?<=return|throw|yield|[=(,:>]))\s*(<)(?!<?\=)
+ (?:(?<=return|throw|yield|await|[=(,:>]))\s*(<)(?!<?\=)
beginCaptures
1
@@ -380,7 +387,7 @@
field-declaration
begin
- (?<!\()\s*\b([a-zA-Z_$][\w$]*)\s*(\?\s*)?(?=(=|:))
+ (?<!\()\s*((?:\b[a-zA-Z_$][\w$]*)|(?:\'[^']*\')|(?:\"[^"]*\"))\s*(\?\s*)?(?=(=|:))
beginCaptures
1
@@ -432,6 +439,10 @@
functioncall.expr.ts
patterns
+
+ include
+ #await-modifier
+
include
#type-parameters
@@ -445,7 +456,7 @@
function-declaration
begin
- \b(?:(export)\s+)?(function\b)(?:\s+([a-zA-Z_$][\w$]*))?\s*
+ \b(?:(export)\s+)?(?:(async)\s+)?(function\b)(?:\s+([a-zA-Z_$][\w$]*))?\s*
beginCaptures
1
@@ -456,9 +467,14 @@
2
name
- storage.type.function.ts
+ storage.modifier.ts
3
+
+ name
+ storage.type.function.ts
+
+ 4
name
entity.name.function.ts
@@ -667,7 +683,7 @@
method-declaration
begin
- \b(?:(abstract)\s+)?\b(?:(public|private|protected)\s+)?(?:(get|set)\s+)?(?:(new)|(?:([a-zA-Z_$][\.\w$]*)\s*(\??)))?\s*(?=\(|\<)
+ \b(?:(abstract)\s+)?\b(?:(public|private|protected)\s+)?\b(?:(async)\s+)?(?:(get|set)\s+)?(?:(new)|(?:([a-zA-Z_$][\.\w$]*)\s*(\??)))?\s*(?=\(|\<)
beginCaptures
1
@@ -683,19 +699,24 @@
3
name
- storage.type.property.ts
+ storage.modifier.ts
4
name
- keyword.operator.ts
+ storage.type.property.ts
5
name
- entity.name.function.ts
+ keyword.operator.ts
6
+
+ name
+ entity.name.function.ts
+
+ 7
name
keyword.operator.ts
diff --git a/extensions/typescript/syntaxes/TypeScriptReact.tmLanguage b/extensions/typescript/syntaxes/TypeScriptReact.tmLanguage
index a7d22de0f20df6d792494be8a6d727c68de7c2e9..1a0c48cf5a389182b9561288ec3bd93510139541 100644
--- a/extensions/typescript/syntaxes/TypeScriptReact.tmLanguage
+++ b/extensions/typescript/syntaxes/TypeScriptReact.tmLanguage
@@ -98,11 +98,11 @@
include
- #expression
+ #object-member
include
- #object-member
+ #expression
@@ -348,7 +348,7 @@
field-declaration
begin
- (?<!\()\s*\b([a-zA-Z_$][\w$]*)\s*(\?\s*)?(?=(=|:))
+ (?<!\()\s*((?:\b[a-zA-Z_$][\w$]*)|(?:\'[^']*\')|(?:\"[^"]*\"))\s*(\?\s*)?(?=(=|:))
beginCaptures
1