Skip to content

Commit 16fb0e7

Browse files
committed
Fix the end of variable initializer to be anything but \s and =
Cast expression is now consuming trailing spaces Fixes #463
1 parent 947bc2e commit 16fb0e7

9 files changed

+72
-21
lines changed

TypeScript.YAML-tmLanguage

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1078,7 +1078,7 @@ repository:
10781078
- begin: (?<!=|!)(=)(?!=)
10791079
beginCaptures:
10801080
'1': { name: keyword.operator.assignment.ts }
1081-
end: (?=[,);}\]])|(?=^\s*$)
1081+
end: (?=[,);}\]])|(?=^\s*$)|(?<=\S)(?<!=)
10821082
patterns:
10831083
- include: '#expression'
10841084

@@ -1504,9 +1504,9 @@ repository:
15041504
begin: (?:(?<=return|throw|yield|await|default|[=(,:>*?]))\s*(<)(?!<?\=)
15051505
beginCaptures:
15061506
'1': { name: meta.brace.angle.ts }
1507-
end: \>
1507+
end: (\>)\s*
15081508
endCaptures:
1509-
'0': { name: meta.brace.angle.ts }
1509+
'1': { name: meta.brace.angle.ts }
15101510
patterns:
15111511
- include: '#type'
15121512
- name: cast.expr.ts
@@ -1517,9 +1517,9 @@ repository:
15171517
begin: (?:(?<=^))\s*(<)(?=[_$[:alpha:]][_$[:alnum:]]*\s*>)
15181518
beginCaptures:
15191519
'1': { name: meta.brace.angle.ts }
1520-
end: \>
1520+
end: (\>)\s*
15211521
endCaptures:
1522-
'0': { name: meta.brace.angle.ts }
1522+
'1': { name: meta.brace.angle.ts }
15231523
patterns:
15241524
- include: '#type'
15251525

TypeScript.tmLanguage

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3262,7 +3262,7 @@
32623262
</dict>
32633263
</dict>
32643264
<key>end</key>
3265-
<string>(?=[,);}\]])|(?=^\s*$)</string>
3265+
<string>(?=[,);}\]])|(?=^\s*$)|(?&lt;=\S)(?&lt;!=)</string>
32663266
<key>patterns</key>
32673267
<array>
32683268
<dict>
@@ -4131,10 +4131,10 @@
41314131
</dict>
41324132
</dict>
41334133
<key>end</key>
4134-
<string>\&gt;</string>
4134+
<string>(\&gt;)\s*</string>
41354135
<key>endCaptures</key>
41364136
<dict>
4137-
<key>0</key>
4137+
<key>1</key>
41384138
<dict>
41394139
<key>name</key>
41404140
<string>meta.brace.angle.ts</string>
@@ -4162,10 +4162,10 @@
41624162
</dict>
41634163
</dict>
41644164
<key>end</key>
4165-
<string>\&gt;</string>
4165+
<string>(\&gt;)\s*</string>
41664166
<key>endCaptures</key>
41674167
<dict>
4168-
<key>0</key>
4168+
<key>1</key>
41694169
<dict>
41704170
<key>name</key>
41714171
<string>meta.brace.angle.ts</string>

TypeScriptReact.tmLanguage

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3266,7 +3266,7 @@
32663266
</dict>
32673267
</dict>
32683268
<key>end</key>
3269-
<string>(?=[,);}\]])|(?=^\s*$)</string>
3269+
<string>(?=[,);}\]])|(?=^\s*$)|(?&lt;=\S)(?&lt;!=)</string>
32703270
<key>patterns</key>
32713271
<array>
32723272
<dict>

tests/baselines/ArrowFunctionInsideTypeAssertion.baseline.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,7 @@ Grammar: TypeScript.tmLanguage
368368
^
369369
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts cast.expr.ts meta.brace.angle.ts
370370
^
371-
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts
371+
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts cast.expr.ts
372372
^
373373
source.ts meta.function.ts meta.block.ts meta.block.ts meta.var.expr.ts variable.other.readwrite.ts
374374
> return f("hello world")

tests/baselines/Issue375.baseline.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ Grammar: TypeScript.tmLanguage
108108
^
109109
source.ts meta.var.expr.ts cast.expr.ts meta.brace.angle.ts
110110
^
111-
source.ts meta.var.expr.ts
111+
source.ts meta.var.expr.ts cast.expr.ts
112112
^
113113
source.ts meta.var.expr.ts meta.objectliteral.ts punctuation.definition.block.ts
114114
^
@@ -153,7 +153,7 @@ Grammar: TypeScript.tmLanguage
153153
^
154154
source.ts meta.var.expr.ts cast.expr.ts meta.brace.angle.ts
155155
^
156-
source.ts meta.var.expr.ts
156+
source.ts meta.var.expr.ts cast.expr.ts
157157
^
158158
source.ts meta.var.expr.ts meta.objectliteral.ts punctuation.definition.block.ts
159159
^^
@@ -205,7 +205,7 @@ Grammar: TypeScript.tmLanguage
205205
^
206206
source.ts meta.var.expr.ts cast.expr.ts meta.brace.angle.ts
207207
^
208-
source.ts meta.var.expr.ts
208+
source.ts meta.var.expr.ts cast.expr.ts
209209
^
210210
source.ts meta.var.expr.ts meta.objectliteral.ts punctuation.definition.block.ts
211211
^^
@@ -273,7 +273,7 @@ Grammar: TypeScript.tmLanguage
273273
^
274274
source.ts meta.var.expr.ts cast.expr.ts meta.brace.angle.ts
275275
^
276-
source.ts meta.var.expr.ts
276+
source.ts meta.var.expr.ts cast.expr.ts
277277
^
278278
source.ts meta.var.expr.ts meta.array.literal.ts meta.brace.square.ts
279279
^^
@@ -431,7 +431,7 @@ Grammar: TypeScript.tmLanguage
431431
^
432432
source.ts meta.var.expr.ts cast.expr.ts meta.brace.angle.ts
433433
^
434-
source.ts meta.var.expr.ts
434+
source.ts meta.var.expr.ts cast.expr.ts
435435
^
436436
source.ts meta.var.expr.ts meta.objectliteral.ts punctuation.definition.block.ts
437437
^
@@ -496,7 +496,7 @@ Grammar: TypeScript.tmLanguage
496496
^
497497
source.ts meta.var.expr.ts cast.expr.ts meta.brace.angle.ts
498498
^
499-
source.ts meta.var.expr.ts
499+
source.ts meta.var.expr.ts cast.expr.ts
500500
^
501501
source.ts meta.var.expr.ts meta.objectliteral.ts punctuation.definition.block.ts
502502
^

tests/baselines/Issue463.baseline.txt

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
original file
2+
-----------------------------------
3+
const x =
4+
1
5+
if (x) return x
6+
-----------------------------------
7+
8+
Grammar: TypeScript.tmLanguage
9+
-----------------------------------
10+
>const x =
11+
^^^^^
12+
source.ts meta.var.expr.ts storage.type.ts
13+
^
14+
source.ts meta.var.expr.ts
15+
^
16+
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts meta.definition.variable.ts variable.other.readwrite.ts
17+
^
18+
source.ts meta.var.expr.ts meta.var-single-variable.expr.ts
19+
^
20+
source.ts meta.var.expr.ts keyword.operator.assignment.ts
21+
^^
22+
source.ts meta.var.expr.ts
23+
> 1
24+
^^^^
25+
source.ts meta.var.expr.ts
26+
^
27+
source.ts meta.var.expr.ts constant.numeric.decimal.ts
28+
^
29+
source.ts meta.var.expr.ts
30+
>if (x) return x
31+
^^
32+
source.ts keyword.control.conditional.ts
33+
^
34+
source.ts
35+
^
36+
source.ts meta.brace.round.ts
37+
^
38+
source.ts variable.other.readwrite.ts
39+
^
40+
source.ts meta.brace.round.ts
41+
^
42+
source.ts
43+
^^^^^^
44+
source.ts keyword.control.flow.ts
45+
^
46+
source.ts
47+
^
48+
source.ts variable.other.readwrite.ts

tests/baselines/Issue62.baseline.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Grammar: TypeScript.tmLanguage
2929
^
3030
source.ts meta.export.default.ts cast.expr.ts meta.brace.angle.ts
3131
^
32-
source.ts meta.export.default.ts
32+
source.ts meta.export.default.ts cast.expr.ts
3333
^
3434
source.ts meta.export.default.ts meta.objectliteral.ts punctuation.definition.block.ts
3535
^^

tests/baselines/Issue77.baseline.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ Grammar: TypeScript.tmLanguage
6969
^
7070
source.ts cast.expr.ts meta.brace.angle.ts
7171
^
72-
source.ts
72+
source.ts cast.expr.ts
7373
^^^^
7474
source.ts constant.language.null.ts
7575
^^
@@ -169,7 +169,7 @@ Grammar: TypeScript.tmLanguage
169169
^
170170
source.ts cast.expr.ts meta.brace.angle.ts
171171
^
172-
source.ts
172+
source.ts cast.expr.ts
173173
^^^^
174174
source.ts constant.language.null.ts
175175
^^

tests/cases/Issue463.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
const x =
2+
1
3+
if (x) return x

0 commit comments

Comments
 (0)