astro-vscode 2.16.18 → 2.16.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -24,7 +24,7 @@
24
24
  "color": "#17191E",
25
25
  "theme": "dark"
26
26
  },
27
- "version": "2.16.18",
27
+ "version": "2.16.20",
28
28
  "author": "withastro",
29
29
  "license": "MIT",
30
30
  "publisher": "astro-build",
@@ -235,7 +235,7 @@
235
235
  ]
236
236
  },
237
237
  "devDependencies": {
238
- "@astrojs/language-server": "^2.16.9",
238
+ "@astrojs/language-server": "^2.16.15",
239
239
  "@astrojs/ts-plugin": "^1.10.9",
240
240
  "@types/js-yaml": "^4.0.9",
241
241
  "@types/mocha": "^10.0.10",
@@ -244,7 +244,7 @@
244
244
  "@volar/language-server": "~2.4.28",
245
245
  "@volar/vscode": "~2.4.28",
246
246
  "@vscode/test-cli": "^0.0.12",
247
- "@vscode/test-electron": "^2.5.2",
247
+ "@vscode/test-electron": "^3.1.0",
248
248
  "@vscode/vsce": "2.32.0",
249
249
  "esbuild": "^0.17.19",
250
250
  "esbuild-plugin-copy": "^2.1.1",
@@ -1,7 +1,7 @@
1
1
  // @ts-check
2
2
  import fs from 'node:fs';
3
3
  import { fileURLToPath } from 'node:url';
4
- import yaml from 'js-yaml';
4
+ import * as yaml from 'js-yaml';
5
5
  import { dim, green } from 'kleur/colors';
6
6
 
7
7
  const dt = new Intl.DateTimeFormat('en-us', {
@@ -766,6 +766,21 @@
766
766
  }
767
767
  ]
768
768
  },
769
+ "tags-lang-start-attributes-prescan": {
770
+ "begin": "\\G",
771
+ "end": "(?=/>)|>|(?=\\s*(?:type|lang)\\s*=\\s*(?:\"(?:text/|application/)?[\\w\\/+]+\"|'(?:text/|application/)?[\\w\\/+]+'|(?:text/|application/)?[\\w\\/+]+)(?=\\s|/?>|$))",
772
+ "endCaptures": {
773
+ "0": {
774
+ "name": "punctuation.definition.tag.end.astro"
775
+ }
776
+ },
777
+ "name": "meta.tag.start.astro",
778
+ "patterns": [
779
+ {
780
+ "include": "#attributes"
781
+ }
782
+ ]
783
+ },
769
784
  "tags-start-node": {
770
785
  "match": "(<)([^/\\s>/]*)",
771
786
  "captures": {
@@ -857,7 +872,7 @@
857
872
  "name": "meta.scope.tag.$1.astro meta.$1.astro",
858
873
  "patterns": [
859
874
  {
860
- "begin": "\\G(?=\\s*[^>]*?(type|lang)\\s*=\\s*(['\"]|)(?:text\\/)?(application\\/ld\\+json)\\2)",
875
+ "begin": "\\G(?=\\s*(type|lang)\\s*=\\s*(['\"]|)(?:text\\/)?(application\\/ld\\+json)\\2(?=\\s|/?>|$))",
861
876
  "end": "(?=</|/>)",
862
877
  "name": "meta.lang.json.astro",
863
878
  "patterns": [
@@ -867,7 +882,7 @@
867
882
  ]
868
883
  },
869
884
  {
870
- "begin": "\\G(?=\\s*[^>]*?(type|lang)\\s*=\\s*(['\"]|)(module)\\2)",
885
+ "begin": "\\G(?=\\s*(type|lang)\\s*=\\s*(['\"]|)(module)\\2(?=\\s|/?>|$))",
871
886
  "end": "(?=</|/>)",
872
887
  "name": "meta.lang.javascript.astro",
873
888
  "patterns": [
@@ -877,7 +892,7 @@
877
892
  ]
878
893
  },
879
894
  {
880
- "begin": "\\G(?=\\s*[^>]*?(type|lang)\\s*=\\s*(['\"]|)(?:text/|application/)?([\\w\\/+]+)\\2)",
895
+ "begin": "\\G(?=\\s*(type|lang)\\s*=\\s*(['\"]|)(?:text/|application/)?([\\w\\/+]+)\\2(?=\\s|/?>|$))",
881
896
  "end": "(?=</|/>)",
882
897
  "name": "meta.lang.$3.astro",
883
898
  "patterns": [
@@ -887,7 +902,47 @@
887
902
  ]
888
903
  },
889
904
  {
890
- "include": "#tags-lang-start-attributes"
905
+ "begin": "\\G",
906
+ "end": "(?=</|/>)",
907
+ "patterns": [
908
+ {
909
+ "include": "#tags-lang-start-attributes-prescan"
910
+ },
911
+ {
912
+ "begin": "(?=\\s*(type|lang)\\s*=\\s*(['\"]|)(?:text\\/)?(application\\/ld\\+json)\\2(?=\\s|/?>|$))",
913
+ "end": "(?=</|/>)",
914
+ "name": "meta.lang.json.astro",
915
+ "patterns": [
916
+ {
917
+ "include": "#tags-lang-start-attributes"
918
+ }
919
+ ]
920
+ },
921
+ {
922
+ "begin": "(?=\\s*(type|lang)\\s*=\\s*(['\"]|)(module)\\2(?=\\s|/?>|$))",
923
+ "end": "(?=</|/>)",
924
+ "name": "meta.lang.javascript.astro",
925
+ "patterns": [
926
+ {
927
+ "include": "#tags-lang-start-attributes"
928
+ }
929
+ ]
930
+ },
931
+ {
932
+ "begin": "(?=\\s*(type|lang)\\s*=\\s*(['\"]|)(?:text/|application/)?([\\w\\/+]+)\\2(?=\\s|/?>|$))",
933
+ "end": "(?=</|/>)",
934
+ "name": "meta.lang.$3.astro",
935
+ "patterns": [
936
+ {
937
+ "include": "#tags-lang-start-attributes"
938
+ }
939
+ ]
940
+ },
941
+ {
942
+ "match": ">",
943
+ "name": "meta.tag.start.astro punctuation.definition.tag.end.astro"
944
+ }
945
+ ]
891
946
  }
892
947
  ]
893
948
  },
@@ -514,6 +514,14 @@ repository:
514
514
  name: meta.tag.start.astro
515
515
  patterns: [include: '#attributes']
516
516
 
517
+ # Parses preceding attributes until a literal lang/type can select an embedded grammar.
518
+ tags-lang-start-attributes-prescan:
519
+ begin: \G
520
+ end: (?=/>)|>|(?=\s*(?:type|lang)\s*=\s*(?:"(?:text/|application/)?[\w\/+]+"|'(?:text/|application/)?[\w\/+]+'|(?:text/|application/)?[\w\/+]+)(?=\s|/?>|$))
521
+ endCaptures: { 0: { name: punctuation.definition.tag.end.astro } }
522
+ name: meta.tag.start.astro
523
+ patterns: [include: '#attributes']
524
+
517
525
  # Matches the beginning (`<name`) section of a tag start node.
518
526
  tags-start-node:
519
527
  match: (<)([^/\s>/]*)
@@ -554,22 +562,39 @@ repository:
554
562
  name: meta.scope.tag.$1.astro meta.$1.astro
555
563
  patterns:
556
564
  # Injecting into `meta.lang.ld+json` doesn't seem possible, so we set it to `meta.lang.json`
557
- - begin: \G(?=\s*[^>]*?(type|lang)\s*=\s*(['"]|)(?:text\/)?(application\/ld\+json)\2)
565
+ - begin: \G(?=\s*(type|lang)\s*=\s*(['"]|)(?:text\/)?(application\/ld\+json)\2(?=\s|/?>|$))
558
566
  end: (?=</|/>)
559
567
  name: meta.lang.json.astro
560
568
  patterns: [include: '#tags-lang-start-attributes']
561
569
  # Treat 'module' as JavaScript
562
- - begin: \G(?=\s*[^>]*?(type|lang)\s*=\s*(['"]|)(module)\2)
570
+ - begin: \G(?=\s*(type|lang)\s*=\s*(['"]|)(module)\2(?=\s|/?>|$))
563
571
  end: (?=</|/>)
564
572
  name: meta.lang.javascript.astro
565
573
  patterns: [include: '#tags-lang-start-attributes']
566
574
  # Tags with a language specified.
567
- - begin: \G(?=\s*[^>]*?(type|lang)\s*=\s*(['"]|)(?:text/|application/)?([\w\/+]+)\2)
575
+ - begin: \G(?=\s*(type|lang)\s*=\s*(['"]|)(?:text/|application/)?([\w\/+]+)\2(?=\s|/?>|$))
568
576
  end: (?=</|/>)
569
577
  name: meta.lang.$3.astro
570
578
  patterns: [include: '#tags-lang-start-attributes']
571
- # Fallback to default language.
572
- - include: '#tags-lang-start-attributes'
579
+ # Parse preceding attributes before selecting a language.
580
+ - begin: \G
581
+ end: (?=</|/>)
582
+ patterns:
583
+ - include: '#tags-lang-start-attributes-prescan'
584
+ - begin: (?=\s*(type|lang)\s*=\s*(['"]|)(?:text\/)?(application\/ld\+json)\2(?=\s|/?>|$))
585
+ end: (?=</|/>)
586
+ name: meta.lang.json.astro
587
+ patterns: [include: '#tags-lang-start-attributes']
588
+ - begin: (?=\s*(type|lang)\s*=\s*(['"]|)(module)\2(?=\s|/?>|$))
589
+ end: (?=</|/>)
590
+ name: meta.lang.javascript.astro
591
+ patterns: [include: '#tags-lang-start-attributes']
592
+ - begin: (?=\s*(type|lang)\s*=\s*(['"]|)(?:text/|application/)?([\w\/+]+)\2(?=\s|/?>|$))
593
+ end: (?=</|/>)
594
+ name: meta.lang.$3.astro
595
+ patterns: [include: '#tags-lang-start-attributes']
596
+ - match: '>'
597
+ name: meta.tag.start.astro punctuation.definition.tag.end.astro
573
598
 
574
599
  # Void element tags. They must be treated separately due to their lack of end nodes.
575
600
  # A void element cannot be differentiated from other tags, unless you look at their name.
@@ -0,0 +1,27 @@
1
+ <script
2
+ lang="ts"
3
+ >
4
+ const count: number = 1;
5
+ </script>
6
+
7
+ <script
8
+ type="application/ld+json"
9
+ >
10
+ { "@context": "https://schema.org" }
11
+ </script>
12
+
13
+ <script
14
+ type=module
15
+ >
16
+ console.log(import.meta.url);
17
+ </script>
18
+
19
+ <script
20
+ type=modulex
21
+ >
22
+ console.log('unknown type');
23
+ </script>
24
+
25
+ <script type=modulex>
26
+ console.log('unknown type');
27
+ </script>
@@ -0,0 +1,87 @@
1
+ ><script
2
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
3
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro entity.name.tag.astro
4
+ > lang="ts"
5
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.tag.start.astro
6
+ # ^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.tag.start.astro meta.attribute.lang.astro entity.other.attribute-name.astro
7
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.tag.start.astro meta.attribute.lang.astro punctuation.separator.key-value.astro
8
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro punctuation.definition.string.begin.astro
9
+ # ^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro
10
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro punctuation.definition.string.end.astro
11
+ >>
12
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.tag.start.astro punctuation.definition.tag.end.astro
13
+ > const count: number = 1;
14
+ #^^^^^^^^^^^^^^^^^^^^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.ts.astro meta.embedded.block.astro source.ts
15
+ ></script>
16
+ #^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
17
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro entity.name.tag.astro
18
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.end.astro
19
+ >
20
+ ><script
21
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
22
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro entity.name.tag.astro
23
+ > type="application/ld+json"
24
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.tag.start.astro
25
+ # ^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.tag.start.astro meta.attribute.type.astro entity.other.attribute-name.astro
26
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.tag.start.astro meta.attribute.type.astro punctuation.separator.key-value.astro
27
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.tag.start.astro meta.attribute.type.astro string.quoted.astro punctuation.definition.string.begin.astro
28
+ # ^^^^^^^^^^^^^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.tag.start.astro meta.attribute.type.astro string.quoted.astro
29
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.tag.start.astro meta.attribute.type.astro string.quoted.astro punctuation.definition.string.end.astro
30
+ >>
31
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.tag.start.astro punctuation.definition.tag.end.astro
32
+ > { "@context": "https://schema.org" }
33
+ #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.json.astro meta.embedded.block.astro source.json
34
+ ></script>
35
+ #^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
36
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro entity.name.tag.astro
37
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.end.astro
38
+ >
39
+ ><script
40
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
41
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro entity.name.tag.astro
42
+ > type=module
43
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.javascript.astro meta.tag.start.astro
44
+ # ^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.javascript.astro meta.tag.start.astro meta.attribute.type.astro entity.other.attribute-name.astro
45
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.javascript.astro meta.tag.start.astro meta.attribute.type.astro punctuation.separator.key-value.astro
46
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.javascript.astro meta.tag.start.astro meta.attribute.type.astro string.unquoted.astro
47
+ >>
48
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.javascript.astro meta.tag.start.astro punctuation.definition.tag.end.astro
49
+ > console.log(import.meta.url);
50
+ #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.javascript.astro meta.embedded.block.astro source.js
51
+ ></script>
52
+ #^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
53
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro entity.name.tag.astro
54
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.end.astro
55
+ >
56
+ ><script
57
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
58
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro entity.name.tag.astro
59
+ > type=modulex
60
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro
61
+ # ^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro meta.attribute.type.astro entity.other.attribute-name.astro
62
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro meta.attribute.type.astro punctuation.separator.key-value.astro
63
+ # ^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro meta.attribute.type.astro string.unquoted.astro
64
+ >>
65
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro punctuation.definition.tag.end.astro
66
+ > console.log('unknown type');
67
+ #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro
68
+ ></script>
69
+ #^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
70
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro entity.name.tag.astro
71
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.end.astro
72
+ >
73
+ ><script type=modulex>
74
+ #^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
75
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.start.astro entity.name.tag.astro
76
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro
77
+ # ^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro meta.attribute.type.astro entity.other.attribute-name.astro
78
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro meta.attribute.type.astro punctuation.separator.key-value.astro
79
+ # ^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro meta.attribute.type.astro string.unquoted.astro
80
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro meta.tag.start.astro punctuation.definition.tag.end.astro
81
+ > console.log('unknown type');
82
+ #^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.lang.modulex.astro
83
+ ></script>
84
+ #^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
85
+ # ^^^^^^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro entity.name.tag.astro
86
+ # ^ source.astro meta.scope.tag.script.astro meta.script.astro meta.tag.end.astro punctuation.definition.tag.end.astro
87
+ >
@@ -0,0 +1,50 @@
1
+ <style
2
+ lang="sass"
3
+ define:vars={{
4
+ foo: '#fff',
5
+ }}
6
+ >
7
+ .bar
8
+ color: var(--foo)
9
+ </style>
10
+
11
+ <style data-lang="less" title="use lang=scss" lang=sass>
12
+ .button
13
+ color: red
14
+ </style>
15
+
16
+ <style
17
+ class="theme"
18
+ lang='scss'
19
+ >
20
+ .button {
21
+ color: red;
22
+ }
23
+ </style>
24
+
25
+ <style
26
+ data-lang="less"
27
+ title="use lang=sass"
28
+ >
29
+ .button {
30
+ color: red;
31
+ }
32
+ </style>
33
+
34
+ <style
35
+ define:vars={{
36
+ foo: '#fff',
37
+ }}
38
+ >
39
+ .button {
40
+ color: var(--foo);
41
+ }
42
+ </style>
43
+
44
+ <style
45
+ lang={language}
46
+ >
47
+ .button {
48
+ color: red;
49
+ }
50
+ </style>
@@ -0,0 +1,199 @@
1
+ ><style
2
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
3
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro entity.name.tag.astro
4
+ > lang="sass"
5
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro
6
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro entity.other.attribute-name.astro
7
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro punctuation.separator.key-value.astro
8
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro punctuation.definition.string.begin.astro
9
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro
10
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro punctuation.definition.string.end.astro
11
+ > define:vars={{
12
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro
13
+ # ^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.define:vars.astro entity.other.attribute-name.astro
14
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.define:vars.astro punctuation.separator.key-value.astro
15
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.define:vars.astro punctuation.section.embedded.begin.astro
16
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.define:vars.astro meta.embedded.expression.astro source.tsx
17
+ > foo: '#fff',
18
+ #^^^^^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.define:vars.astro meta.embedded.expression.astro source.tsx
19
+ > }}
20
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.define:vars.astro meta.embedded.expression.astro source.tsx
21
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.define:vars.astro punctuation.section.embedded.end.astro
22
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro
23
+ >>
24
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro punctuation.definition.tag.end.astro
25
+ > .bar
26
+ #^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.embedded.block.astro source.sass
27
+ > color: var(--foo)
28
+ #^^^^^^^^^^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.embedded.block.astro source.sass
29
+ ></style>
30
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
31
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro entity.name.tag.astro
32
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.end.astro
33
+ >
34
+ ><style data-lang="less" title="use lang=scss" lang=sass>
35
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
36
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro entity.name.tag.astro
37
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
38
+ # ^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro entity.other.attribute-name.astro
39
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro punctuation.separator.key-value.astro
40
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro string.quoted.astro punctuation.definition.string.begin.astro
41
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro string.quoted.astro
42
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro string.quoted.astro punctuation.definition.string.end.astro
43
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
44
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro entity.other.attribute-name.astro
45
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro punctuation.separator.key-value.astro
46
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro string.quoted.astro punctuation.definition.string.begin.astro
47
+ # ^^^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro string.quoted.astro
48
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro string.quoted.astro punctuation.definition.string.end.astro
49
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro
50
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro entity.other.attribute-name.astro
51
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro punctuation.separator.key-value.astro
52
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro meta.attribute.lang.astro string.unquoted.astro
53
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.tag.start.astro punctuation.definition.tag.end.astro
54
+ > .button
55
+ #^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.embedded.block.astro source.sass
56
+ > color: red
57
+ #^^^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.sass.astro meta.embedded.block.astro source.sass
58
+ ></style>
59
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
60
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro entity.name.tag.astro
61
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.end.astro
62
+ >
63
+ ><style
64
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
65
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro entity.name.tag.astro
66
+ > class="theme"
67
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
68
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.class.astro entity.other.attribute-name.astro
69
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.class.astro punctuation.separator.key-value.astro
70
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.class.astro string.quoted.astro punctuation.definition.string.begin.astro
71
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.class.astro string.quoted.astro
72
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.class.astro string.quoted.astro punctuation.definition.string.end.astro
73
+ > lang='scss'
74
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.tag.start.astro
75
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.tag.start.astro meta.attribute.lang.astro entity.other.attribute-name.astro
76
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.tag.start.astro meta.attribute.lang.astro punctuation.separator.key-value.astro
77
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro punctuation.definition.string.begin.astro
78
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro
79
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.tag.start.astro meta.attribute.lang.astro string.quoted.astro punctuation.definition.string.end.astro
80
+ >>
81
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.tag.start.astro punctuation.definition.tag.end.astro
82
+ > .button {
83
+ #^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.embedded.block.astro source.css.scss
84
+ > color: red;
85
+ #^^^^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.embedded.block.astro source.css.scss
86
+ > }
87
+ #^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.lang.scss.astro meta.embedded.block.astro source.css.scss
88
+ ></style>
89
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
90
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro entity.name.tag.astro
91
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.end.astro
92
+ >
93
+ ><style
94
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
95
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro entity.name.tag.astro
96
+ > data-lang="less"
97
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
98
+ # ^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro entity.other.attribute-name.astro
99
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro punctuation.separator.key-value.astro
100
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro string.quoted.astro punctuation.definition.string.begin.astro
101
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro string.quoted.astro
102
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.data-lang.astro string.quoted.astro punctuation.definition.string.end.astro
103
+ > title="use lang=sass"
104
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
105
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro entity.other.attribute-name.astro
106
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro punctuation.separator.key-value.astro
107
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro string.quoted.astro punctuation.definition.string.begin.astro
108
+ # ^^^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro string.quoted.astro
109
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.title.astro string.quoted.astro punctuation.definition.string.end.astro
110
+ >>
111
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.end.astro
112
+ > .button {
113
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
114
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
115
+ # ^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
116
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
117
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css
118
+ > color: red;
119
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
120
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
121
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
122
+ # ^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
123
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
124
+ > }
125
+ #^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
126
+ ></style>
127
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
128
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro entity.name.tag.astro
129
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.end.astro
130
+ >
131
+ ><style
132
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
133
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro entity.name.tag.astro
134
+ > define:vars={{
135
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
136
+ # ^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.define:vars.astro entity.other.attribute-name.astro
137
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.define:vars.astro punctuation.separator.key-value.astro
138
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.define:vars.astro punctuation.section.embedded.begin.astro
139
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.define:vars.astro meta.embedded.expression.astro source.tsx
140
+ > foo: '#fff',
141
+ #^^^^^^^^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.define:vars.astro meta.embedded.expression.astro source.tsx
142
+ > }}
143
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.define:vars.astro meta.embedded.expression.astro source.tsx
144
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.define:vars.astro punctuation.section.embedded.end.astro
145
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
146
+ >>
147
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.end.astro
148
+ > .button {
149
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
150
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
151
+ # ^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
152
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
153
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css
154
+ > color: var(--foo);
155
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
156
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
157
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
158
+ # ^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
159
+ # ^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
160
+ # ^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
161
+ # ^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
162
+ > }
163
+ #^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
164
+ ></style>
165
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
166
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro entity.name.tag.astro
167
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.end.astro
168
+ >
169
+ ><style
170
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.begin.astro
171
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro entity.name.tag.astro
172
+ > lang={language}
173
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro
174
+ # ^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.lang.astro entity.other.attribute-name.astro
175
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.lang.astro punctuation.separator.key-value.astro
176
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.lang.astro punctuation.section.embedded.begin.astro
177
+ # ^^^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.lang.astro meta.embedded.expression.astro source.tsx
178
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro meta.attribute.lang.astro punctuation.section.embedded.end.astro
179
+ >>
180
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.start.astro punctuation.definition.tag.end.astro
181
+ > .button {
182
+ #^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
183
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
184
+ # ^^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
185
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
186
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css
187
+ > color: red;
188
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
189
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
190
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
191
+ # ^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css entity.name.tag.css
192
+ # ^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
193
+ > }
194
+ #^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.embedded.block.astro source.css meta.selector.css
195
+ ></style>
196
+ #^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.begin.astro
197
+ # ^^^^^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro entity.name.tag.astro
198
+ # ^ source.astro meta.scope.tag.style.astro meta.style.astro meta.tag.end.astro punctuation.definition.tag.end.astro
199
+ >