@@ -100,7 +100,7 @@ repository:
100100 - include : ' #static-modifier'
101101 - include : ' #property-accessor'
102102
103- object- type :
103+ type-object :
104104 name : meta.object.type.ts
105105 begin : \{
106106 beginCaptures :
@@ -225,21 +225,20 @@ repository:
225225 type-annotation :
226226 name : meta.type.annotation.ts
227227 begin : " :"
228- end : (?=$|[,);\}\]]|//)|(?==[^>])|(?<=\} |[a-zA-Z_$]|> )\s*(?=\{)
228+ end : (?=$|[,);\}\]]|//)|(?==[^>])|(?<=[\}>\]\)] |[a-zA-Z_$])\s*(?=\{)
229229 patterns :
230230 - include : ' #type'
231- - include : ' #comment'
232231
233232 type :
234233 name : meta.type.ts
235234 patterns :
236235 - include : ' #type-primitive'
237236 - include : ' #type-parameters'
238237 - include : ' #type-tuple'
239- - include : ' #object- type'
238+ - include : ' #type-object '
240239 - include : ' #type-operator'
241- - include : ' #paren- type-or-function-type-parameters'
242- - include : ' #function- type-return-type'
240+ - include : ' #type-paren -or-function-type-parameters'
241+ - include : ' #type-function -return-type'
243242 - include : ' #type-name'
244243
245244 function-type-parameters :
@@ -257,18 +256,20 @@ repository:
257256 - include : ' #variable-initializer'
258257
259258 type-primitive :
260- name : storage .type.ts
259+ name : meta .type.primitive .ts
261260 match : ' \b(string|number|boolean|symbol|any|void)\b'
261+ captures :
262+ ' 1 ' : { name: storage.type.ts }
262263
263264 # Parenthesis can contain either types and function parameters
264265 # (number | string) or (param: number, param2: string)
265266 # and it can be nested, for example
266267 # (number | (param: number, param2: string) => void)
267- paren- type-or-function-type-parameters :
268+ type-paren -or-function-type-parameters :
268269 name : meta.type.paren.cover.ts
269270 begin : ' (?:\b(new)\b)?\s*\('
270271 beginCaptures :
271- ' 1 ' : { name: keyword.operator .ts }
272+ ' 1 ' : { name: keyword.control .ts }
272273 end : ' \)'
273274 patterns :
274275 - include : ' #comment'
@@ -279,12 +280,12 @@ repository:
279280 name : keyword.operator.type.ts
280281 match : ' [.|]'
281282
282- function- type-return-type :
283- name : meta.function. type.return.ts
283+ type-function -return-type :
284+ name : meta.type.function .return.ts
284285 begin : ' =>'
285286 beginCaptures :
286287 ' 0 ' : { name: keyword.operator.ts }
287- end : (?=[,\)\{=;]|//|$)
288+ end : (?=\s* [,\)\{=;]|//|$)
288289 patterns :
289290 - include : ' #type'
290291
@@ -301,8 +302,10 @@ repository:
301302 - include : ' #comment'
302303
303304 type-name :
304- name : entity.name. type.ts
305+ name : meta. type.name .ts
305306 match : ' [a-zA-Z_$][.\w$]*'
307+ captures :
308+ ' 1 ' : { name: entity.name.type.ts }
306309
307310 type-parameters :
308311 name : meta.type.parameters.ts
@@ -349,6 +352,7 @@ repository:
349352 - include : ' #control-statement'
350353 - include : ' #switch-case'
351354 - include : ' #for-in-simple'
355+
352356 for-in-simple :
353357 name : forin.expr.ts
354358 match : (?<=\()\s*\b(var|let|const)\s+([a-zA-Z_$][\w$]*)\s+(in)\b
@@ -390,7 +394,7 @@ repository:
390394
391395 expression-operator :
392396 name : keyword.operator.ts
393- match : =>|\b(delete|export|import|in|instanceof|module|new|typeof|void)\b
397+ match : =>|\b(delete|export|import|in|of| instanceof|module|new|typeof|void)\b
394398
395399 arithmetic-operator :
396400 name : keyword.operator.arithmetic.ts
0 commit comments