@@ -29,11 +29,17 @@ injections:
2929
3030 # JavaScript | 'javascript' | 'source.js' | 'partytown'
3131 ' L:(meta.script.astro) (meta.lang.js | meta.lang.javascript | meta.lang.partytown | meta.lang.node) - (meta source) ' :
32- patterns :
33- [
32+ patterns : [
33+ {
34+ begin : ' (?<=>)(?=[^\n]+</script[\s>])' ,
35+ end : ' (?=</script[\s>])' ,
36+ name : meta.embedded.block.astro,
37+ contentName : source.js,
38+ patterns : [{ include: source.js }],
39+ },
3440 {
3541 begin : ' (?<=>)(?!</)' ,
36- end : ' (?=</ )' ,
42+ while : ' ^(?!\s*</script[\s>] )' ,
3743 name : meta.embedded.block.astro,
3844 contentName : source.js,
3945 patterns : [{ include: source.js }],
@@ -42,11 +48,17 @@ injections:
4248
4349 # TypeScript | 'ts'
4450 ' L:(meta.script.astro) (meta.lang.ts | meta.lang.typescript) - (meta source) ' :
45- patterns :
46- [
51+ patterns : [
52+ {
53+ begin : ' (?<=>)(?=[^\n]+</script[\s>])' ,
54+ end : ' (?=</script[\s>])' ,
55+ name : meta.embedded.block.astro,
56+ contentName : source.ts,
57+ patterns : [{ include: source.ts }],
58+ },
4759 {
4860 begin : ' (?<=>)(?!</)' ,
49- end : ' (?=</ )' ,
61+ while : ' ^(?!\s*</script[\s>] )' ,
5062 name : meta.embedded.block.astro,
5163 contentName : source.ts,
5264 patterns : [{ include: source.ts }],
@@ -56,11 +68,17 @@ injections:
5668 # Script Languages
5769 # Default (JavaScript)
5870 ' L:meta.script.astro - meta.lang - (meta source) ' :
59- patterns :
60- [
71+ patterns : [
72+ {
73+ begin : ' (?<=>)(?=[^\n]+</script[\s>])' ,
74+ end : ' (?=</script[\s>])' ,
75+ name : meta.embedded.block.astro,
76+ contentName : source.js,
77+ patterns : [{ include: source.js }],
78+ },
6179 {
6280 begin : ' (?<=>)(?!</)' ,
63- end : ' (?=</ )' ,
81+ while : ' ^(?!\s*</script[\s>] )' ,
6482 name : meta.embedded.block.astro,
6583 contentName : source.js,
6684 patterns : [{ include: source.js }],
@@ -180,9 +198,22 @@ repository:
180198 1 : { name: comment }
181199 endCaptures :
182200 2 : { name: comment }
183- contentName : source.ts
184- patterns :
185- - include : source.ts
201+ patterns : [
202+ {
203+ begin : ' (?<=\n)(?=[^\n]+^-{3})' ,
204+ end : ' (?=^-{3})' ,
205+ name : meta.embedded.block.astro,
206+ contentName : source.ts,
207+ patterns : [{ include: source.ts }],
208+ },
209+ {
210+ begin : ' (?<=\n)' ,
211+ while : ' ^(?!\s*-{3})' ,
212+ name : meta.embedded.block.astro,
213+ contentName : source.ts,
214+ patterns : [{ include: source.ts }],
215+ },
216+ ]
186217
187218 # -------
188219 # SCOPE
0 commit comments