tm-grammars 1.22.19 → 1.23.0

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.
Files changed (234) hide show
  1. package/NOTICE +286 -1
  2. package/README.md +241 -239
  3. package/grammars/abap.json +36 -36
  4. package/grammars/actionscript-3.json +29 -29
  5. package/grammars/ada.json +78 -78
  6. package/grammars/angular-expression.json +62 -62
  7. package/grammars/angular-html.json +0 -1
  8. package/grammars/angular-inline-style.json +3 -3
  9. package/grammars/angular-inline-template.json +2 -2
  10. package/grammars/angular-template-blocks.json +3 -3
  11. package/grammars/angular-template.json +1 -1
  12. package/grammars/angular-ts.json +251 -251
  13. package/grammars/apache.json +31 -31
  14. package/grammars/apex.json +108 -108
  15. package/grammars/apl.json +18 -18
  16. package/grammars/applescript.json +11 -11
  17. package/grammars/ara.json +13 -13
  18. package/grammars/asciidoc.json +234 -234
  19. package/grammars/asm.json +90 -90
  20. package/grammars/astro.json +25 -25
  21. package/grammars/awk.json +8 -8
  22. package/grammars/ballerina.json +150 -150
  23. package/grammars/bat.json +28 -28
  24. package/grammars/beancount.json +33 -33
  25. package/grammars/berry.json +11 -11
  26. package/grammars/bibtex.json +12 -12
  27. package/grammars/bicep.json +12 -12
  28. package/grammars/blade.json +183 -183
  29. package/grammars/bsl.json +58 -58
  30. package/grammars/c.json +162 -162
  31. package/grammars/cadence.json +20 -20
  32. package/grammars/cairo.json +10 -10
  33. package/grammars/clarity.json +20 -20
  34. package/grammars/clojure.json +25 -25
  35. package/grammars/cmake.json +3 -3
  36. package/grammars/cobol.json +91 -91
  37. package/grammars/codeql.json +154 -154
  38. package/grammars/coffee.json +45 -45
  39. package/grammars/common-lisp.json +50 -50
  40. package/grammars/coq.json +10 -10
  41. package/grammars/cpp-macro.json +410 -410
  42. package/grammars/cpp.json +641 -641
  43. package/grammars/crystal.json +68 -68
  44. package/grammars/csharp.json +196 -196
  45. package/grammars/css.json +83 -83
  46. package/grammars/csv.json +1 -1
  47. package/grammars/cue.json +55 -55
  48. package/grammars/cypher.json +11 -11
  49. package/grammars/d.json +127 -32
  50. package/grammars/dart.json +18 -18
  51. package/grammars/dax.json +9 -9
  52. package/grammars/desktop.json +9 -9
  53. package/grammars/diff.json +3 -3
  54. package/grammars/dotenv.json +3 -3
  55. package/grammars/dream-maker.json +20 -20
  56. package/grammars/edge.json +8 -8
  57. package/grammars/elixir.json +44 -44
  58. package/grammars/elm.json +23 -23
  59. package/grammars/emacs-lisp.json +76 -76
  60. package/grammars/erb.json +2 -2
  61. package/grammars/erlang.json +29 -29
  62. package/grammars/es-tag-css.json +3 -3
  63. package/grammars/es-tag-glsl.json +3 -3
  64. package/grammars/es-tag-html.json +3 -3
  65. package/grammars/es-tag-sql.json +2 -2
  66. package/grammars/es-tag-xml.json +2 -2
  67. package/grammars/fennel.json +8 -8
  68. package/grammars/fish.json +10 -10
  69. package/grammars/fluent.json +10 -10
  70. package/grammars/fortran-fixed-form.json +1 -1
  71. package/grammars/fortran-free-form.json +106 -106
  72. package/grammars/fsharp.json +70 -70
  73. package/grammars/gdresource.json +15 -15
  74. package/grammars/gdscript.json +31 -27
  75. package/grammars/gdshader.json +18 -18
  76. package/grammars/genie.json +6 -6
  77. package/grammars/gherkin.json +1 -1
  78. package/grammars/git-commit.json +1 -1
  79. package/grammars/git-rebase.json +1 -1
  80. package/grammars/gleam.json +11 -11
  81. package/grammars/glimmer-js.json +35 -35
  82. package/grammars/glimmer-ts.json +35 -35
  83. package/grammars/glsl.json +4 -4
  84. package/grammars/gnuplot.json +41 -41
  85. package/grammars/go.json +155 -155
  86. package/grammars/graphql.json +20 -20
  87. package/grammars/groovy.json +44 -44
  88. package/grammars/hack.json +74 -74
  89. package/grammars/haml.json +24 -24
  90. package/grammars/handlebars.json +25 -25
  91. package/grammars/haskell.json +99 -99
  92. package/grammars/haxe.json +51 -51
  93. package/grammars/hcl.json +43 -43
  94. package/grammars/hjson.json +29 -29
  95. package/grammars/hlsl.json +15 -15
  96. package/grammars/html-derivative.json +0 -1
  97. package/grammars/html.json +28 -29
  98. package/grammars/http.json +17 -17
  99. package/grammars/hxml.json +3 -3
  100. package/grammars/hy.json +10 -10
  101. package/grammars/imba.json +168 -173
  102. package/grammars/ini.json +2 -2
  103. package/grammars/java.json +54 -54
  104. package/grammars/javascript.json +262 -262
  105. package/grammars/jinja-html.json +3 -3
  106. package/grammars/jinja.json +15 -15
  107. package/grammars/jison.json +18 -18
  108. package/grammars/json.json +6 -6
  109. package/grammars/json5.json +12 -12
  110. package/grammars/jsonc.json +6 -6
  111. package/grammars/jsonl.json +6 -6
  112. package/grammars/jsonnet.json +15 -15
  113. package/grammars/jssm.json +4 -4
  114. package/grammars/jsx.json +262 -262
  115. package/grammars/julia.json +45 -45
  116. package/grammars/kotlin.json +15 -15
  117. package/grammars/kusto.json +13 -13
  118. package/grammars/latex.json +260 -260
  119. package/grammars/lean.json +12 -12
  120. package/grammars/less.json +91 -91
  121. package/grammars/liquid.json +96 -62
  122. package/grammars/llvm.json +122 -0
  123. package/grammars/log.json +22 -22
  124. package/grammars/logo.json +2 -2
  125. package/grammars/lua.json +34 -34
  126. package/grammars/luau.json +20 -20
  127. package/grammars/make.json +22 -22
  128. package/grammars/markdown-vue.json +1 -1
  129. package/grammars/markdown.json +83 -83
  130. package/grammars/marko.json +19 -19
  131. package/grammars/matlab.json +29 -29
  132. package/grammars/mdc.json +17 -17
  133. package/grammars/mdx.json +278 -278
  134. package/grammars/mermaid.json +97 -97
  135. package/grammars/mipsasm.json +2 -2
  136. package/grammars/mojo.json +122 -122
  137. package/grammars/move.json +35 -35
  138. package/grammars/narrat.json +10 -10
  139. package/grammars/nextflow.json +11 -11
  140. package/grammars/nginx.json +45 -45
  141. package/grammars/nim.json +44 -44
  142. package/grammars/nix.json +71 -71
  143. package/grammars/nushell.json +36 -36
  144. package/grammars/objective-c.json +129 -129
  145. package/grammars/objective-cpp.json +245 -245
  146. package/grammars/ocaml.json +229 -229
  147. package/grammars/pascal.json +4 -4
  148. package/grammars/perl.json +64 -64
  149. package/grammars/php.json +199 -199
  150. package/grammars/plsql.json +10 -10
  151. package/grammars/po.json +4 -4
  152. package/grammars/polar.json +13 -13
  153. package/grammars/postcss.json +31 -31
  154. package/grammars/powerquery.json +10 -10
  155. package/grammars/powershell.json +54 -54
  156. package/grammars/prisma.json +13 -13
  157. package/grammars/prolog.json +3 -3
  158. package/grammars/proto.json +11 -11
  159. package/grammars/pug.json +30 -30
  160. package/grammars/puppet.json +35 -35
  161. package/grammars/purescript.json +843 -467
  162. package/grammars/python.json +126 -126
  163. package/grammars/qml.json +18 -18
  164. package/grammars/qss.json +7 -7
  165. package/grammars/r.json +17 -17
  166. package/grammars/racket.json +58 -58
  167. package/grammars/raku.json +15 -15
  168. package/grammars/razor.json +30 -30
  169. package/grammars/reg.json +3 -3
  170. package/grammars/regexp.json +15 -15
  171. package/grammars/rel.json +4 -4
  172. package/grammars/riscv.json +15 -15
  173. package/grammars/rst.json +26 -26
  174. package/grammars/ruby.json +103 -106
  175. package/grammars/rust.json +13 -13
  176. package/grammars/sas.json +9 -9
  177. package/grammars/sass.json +35 -35
  178. package/grammars/scala.json +75 -75
  179. package/grammars/scheme.json +16 -16
  180. package/grammars/scss.json +68 -68
  181. package/grammars/sdbl.json +18 -18
  182. package/grammars/shaderlab.json +8 -8
  183. package/grammars/shellscript.json +111 -111
  184. package/grammars/shellsession.json +1 -1
  185. package/grammars/smalltalk.json +5 -5
  186. package/grammars/solidity.json +20 -20
  187. package/grammars/soy.json +30 -30
  188. package/grammars/sparql.json +1 -1
  189. package/grammars/splunk.json +6 -6
  190. package/grammars/sql.json +8 -8
  191. package/grammars/ssh-config.json +2 -2
  192. package/grammars/stata.json +90 -90
  193. package/grammars/stylus.json +48 -48
  194. package/grammars/svelte.json +35 -25
  195. package/grammars/swift.json +114 -114
  196. package/grammars/system-verilog.json +25 -25
  197. package/grammars/systemd.json +16 -16
  198. package/grammars/talonscript.json +12 -12
  199. package/grammars/tasl.json +10 -10
  200. package/grammars/tcl.json +11 -11
  201. package/grammars/templ.json +34 -34
  202. package/grammars/terraform.json +42 -42
  203. package/grammars/tex.json +14 -14
  204. package/grammars/toml.json +15 -15
  205. package/grammars/tsx.json +262 -262
  206. package/grammars/turtle.json +2 -2
  207. package/grammars/twig.json +37 -37
  208. package/grammars/typescript.json +251 -251
  209. package/grammars/typespec.json +54 -273
  210. package/grammars/typst.json +34 -34
  211. package/grammars/v.json +32 -32
  212. package/grammars/vala.json +6 -6
  213. package/grammars/vb.json +7 -7
  214. package/grammars/verilog.json +4 -4
  215. package/grammars/vhdl.json +10 -10
  216. package/grammars/viml.json +22 -22
  217. package/grammars/vue-html.json +10 -10
  218. package/grammars/vue-sfc-style-variable-injection.json +1 -1
  219. package/grammars/vue.json +65 -65
  220. package/grammars/vyper.json +126 -126
  221. package/grammars/wasm.json +26 -26
  222. package/grammars/wenyan.json +7 -7
  223. package/grammars/wgsl.json +9 -9
  224. package/grammars/wikitext.json +66 -66
  225. package/grammars/wit.json +1409 -0
  226. package/grammars/wolfram.json +446 -446
  227. package/grammars/xml.json +11 -11
  228. package/grammars/xsl.json +1 -1
  229. package/grammars/yaml.json +24 -24
  230. package/grammars/zenscript.json +8 -8
  231. package/grammars/zig.json +11 -11
  232. package/index.d.ts +7 -0
  233. package/index.js +1003 -283
  234. package/package.json +1 -1
package/grammars/erb.json CHANGED
@@ -84,7 +84,7 @@
84
84
  "tags": {
85
85
  "patterns": [
86
86
  {
87
- "begin": "<%+(?!>)[-=]?(?![^%]*%>)",
87
+ "begin": "<%+(?!>)[\\-=]?(?![^%]*%>)",
88
88
  "beginCaptures": {
89
89
  "0": {
90
90
  "name": "punctuation.section.embedded.begin.erb"
@@ -117,7 +117,7 @@
117
117
  ]
118
118
  },
119
119
  {
120
- "begin": "<%+(?!>)[-=]?",
120
+ "begin": "<%+(?!>)[\\-=]?",
121
121
  "beginCaptures": {
122
122
  "0": {
123
123
  "name": "punctuation.section.embedded.begin.erb"
@@ -283,7 +283,7 @@
283
283
  ]
284
284
  },
285
285
  {
286
- "match": "\\|\\||\\||:|;|,|\\.|->",
286
+ "match": "\\|\\||[|:;,.]|->",
287
287
  "name": "punctuation.separator.define.erlang"
288
288
  },
289
289
  {
@@ -342,7 +342,7 @@
342
342
  ]
343
343
  },
344
344
  "docstring": {
345
- "begin": "(?<!\")(([\"]{3,})\\s*)(\\S.*)?$",
345
+ "begin": "(?<!\")((\"{3,})\\s*)(\\S.*)?$",
346
346
  "beginCaptures": {
347
347
  "1": {
348
348
  "name": "meta.string.quoted.triple.begin.erlang"
@@ -912,7 +912,7 @@
912
912
  "name": "punctuation.definition.list.begin.erlang"
913
913
  }
914
914
  },
915
- "end": "(\\])",
915
+ "end": "(])",
916
916
  "endCaptures": {
917
917
  "1": {
918
918
  "name": "punctuation.definition.list.end.erlang"
@@ -930,7 +930,7 @@
930
930
  "name": "punctuation.separator.function-arity.erlang"
931
931
  }
932
932
  },
933
- "end": "(,)|(?=\\])",
933
+ "end": "(,)|(?=])",
934
934
  "endCaptures": {
935
935
  "1": {
936
936
  "name": "punctuation.separator.list.erlang"
@@ -982,7 +982,7 @@
982
982
  ]
983
983
  },
984
984
  {
985
- "match": ",|;",
985
+ "match": "[,;]",
986
986
  "name": "punctuation.separator.guards.erlang"
987
987
  },
988
988
  {
@@ -1006,7 +1006,7 @@
1006
1006
  "name": "punctuation.definition.class.record.begin.erlang"
1007
1007
  }
1008
1008
  },
1009
- "end": "(\\})",
1009
+ "end": "(})",
1010
1010
  "endCaptures": {
1011
1011
  "1": {
1012
1012
  "name": "punctuation.definition.class.record.end.erlang"
@@ -1024,7 +1024,7 @@
1024
1024
  "name": "variable.language.omitted.field.erlang"
1025
1025
  }
1026
1026
  },
1027
- "end": "(,)|(?=\\})",
1027
+ "end": "(,)|(?=})",
1028
1028
  "endCaptures": {
1029
1029
  "1": {
1030
1030
  "name": "punctuation.separator.class.record.erlang"
@@ -1071,7 +1071,7 @@
1071
1071
  "name": "punctuation.separator.placeholder-parts.erlang"
1072
1072
  }
1073
1073
  },
1074
- "match": "(~)((\\-)?\\d++|(\\*))?((\\.)(\\d++|(\\*))?((\\.)((\\*)|.))?)?[tlkK]*[~cfegswpWPBX#bx\\+ni]",
1074
+ "match": "(~)((-)?\\d++|(\\*))?((\\.)(\\d++|(\\*))?((\\.)((\\*)|.))?)?[tlkK]*[~cfegswpWPBX#bx+ni]",
1075
1075
  "name": "constant.character.format.placeholder.other.erlang"
1076
1076
  },
1077
1077
  {
@@ -1096,7 +1096,7 @@
1096
1096
  "name": "punctuation.separator.value-type.erlang"
1097
1097
  }
1098
1098
  },
1099
- "end": "(?=,|:|>>)",
1099
+ "end": "(?=[,:]|>>)",
1100
1100
  "patterns": [
1101
1101
  {
1102
1102
  "captures": {
@@ -1141,7 +1141,7 @@
1141
1141
  "name": "punctuation.definition.list.begin.erlang"
1142
1142
  }
1143
1143
  },
1144
- "end": "(\\])",
1144
+ "end": "(])",
1145
1145
  "endCaptures": {
1146
1146
  "1": {
1147
1147
  "name": "punctuation.definition.list.end.erlang"
@@ -1283,7 +1283,7 @@
1283
1283
  "name": "punctuation.separator.float-exponent.erlang"
1284
1284
  }
1285
1285
  },
1286
- "match": "\\d++(\\.)\\d++([eE][\\+\\-]?\\d++)?",
1286
+ "match": "\\d++(\\.)\\d++([eE][+\\-]?\\d++)?",
1287
1287
  "name": "constant.numeric.float.erlang"
1288
1288
  },
1289
1289
  {
@@ -1699,7 +1699,7 @@
1699
1699
  "name": "entity.name.type.class.record.erlang"
1700
1700
  }
1701
1701
  },
1702
- "end": "(?<=\\})",
1702
+ "end": "(?<=})",
1703
1703
  "name": "meta.record-usage.erlang",
1704
1704
  "patterns": [
1705
1705
  {
@@ -1710,7 +1710,7 @@
1710
1710
  ]
1711
1711
  },
1712
1712
  "sigil-docstring": {
1713
- "begin": "(~[bBsS]?)(([\"]{3,})\\s*)(\\S.*)?$",
1713
+ "begin": "(~[bBsS]?)((\"{3,})\\s*)(\\S.*)?$",
1714
1714
  "beginCaptures": {
1715
1715
  "1": {
1716
1716
  "name": "storage.type.string.erlang"
@@ -1783,7 +1783,7 @@
1783
1783
  ]
1784
1784
  },
1785
1785
  "sigil-string-curly-brackets": {
1786
- "begin": "(~[bs]?)([{])",
1786
+ "begin": "(~[bs]?)(\\{)",
1787
1787
  "beginCaptures": {
1788
1788
  "1": {
1789
1789
  "name": "storage.type.string.erlang"
@@ -1792,7 +1792,7 @@
1792
1792
  "name": "punctuation.definition.string.begin.erlang"
1793
1793
  }
1794
1794
  },
1795
- "end": "([}])",
1795
+ "end": "(})",
1796
1796
  "endCaptures": {
1797
1797
  "1": {
1798
1798
  "name": "punctuation.definition.string.end.erlang"
@@ -1806,7 +1806,7 @@
1806
1806
  ]
1807
1807
  },
1808
1808
  "sigil-string-curly-brackets-verbatim": {
1809
- "begin": "(~[BS])([{])",
1809
+ "begin": "(~[BS])(\\{)",
1810
1810
  "beginCaptures": {
1811
1811
  "1": {
1812
1812
  "name": "storage.type.string.erlang"
@@ -1815,7 +1815,7 @@
1815
1815
  "name": "punctuation.definition.string.begin.erlang"
1816
1816
  }
1817
1817
  },
1818
- "end": "([}])",
1818
+ "end": "(})",
1819
1819
  "endCaptures": {
1820
1820
  "1": {
1821
1821
  "name": "punctuation.definition.string.end.erlang"
@@ -1906,7 +1906,7 @@
1906
1906
  "name": "string.quoted.less-greater.sigil.erlang"
1907
1907
  },
1908
1908
  "sigil-string-parenthesis": {
1909
- "begin": "(~[bs]?)([(])",
1909
+ "begin": "(~[bs]?)(\\()",
1910
1910
  "beginCaptures": {
1911
1911
  "1": {
1912
1912
  "name": "storage.type.string.erlang"
@@ -1915,7 +1915,7 @@
1915
1915
  "name": "punctuation.definition.string.begin.erlang"
1916
1916
  }
1917
1917
  },
1918
- "end": "([)])",
1918
+ "end": "(\\))",
1919
1919
  "endCaptures": {
1920
1920
  "1": {
1921
1921
  "name": "punctuation.definition.string.end.erlang"
@@ -1929,7 +1929,7 @@
1929
1929
  ]
1930
1930
  },
1931
1931
  "sigil-string-parenthesis-verbatim": {
1932
- "begin": "(~[BS])([(])",
1932
+ "begin": "(~[BS])(\\()",
1933
1933
  "beginCaptures": {
1934
1934
  "1": {
1935
1935
  "name": "storage.type.string.erlang"
@@ -1938,7 +1938,7 @@
1938
1938
  "name": "punctuation.definition.string.begin.erlang"
1939
1939
  }
1940
1940
  },
1941
- "end": "([)])",
1941
+ "end": "(\\))",
1942
1942
  "endCaptures": {
1943
1943
  "1": {
1944
1944
  "name": "punctuation.definition.string.end.erlang"
@@ -1947,7 +1947,7 @@
1947
1947
  "name": "string.quoted.parenthesis.sigil.erlang"
1948
1948
  },
1949
1949
  "sigil-string-single-character": {
1950
- "begin": "(~[bs]?)([/\\|`#])",
1950
+ "begin": "(~[bs]?)([/|`#])",
1951
1951
  "beginCaptures": {
1952
1952
  "1": {
1953
1953
  "name": "storage.type.string.erlang"
@@ -1970,7 +1970,7 @@
1970
1970
  ]
1971
1971
  },
1972
1972
  "sigil-string-single-character-verbatim": {
1973
- "begin": "(~[BS])([/\\|`#])",
1973
+ "begin": "(~[BS])([/|`#])",
1974
1974
  "beginCaptures": {
1975
1975
  "1": {
1976
1976
  "name": "storage.type.string.erlang"
@@ -2029,7 +2029,7 @@
2029
2029
  "name": "string.quoted.single.sigil.erlang"
2030
2030
  },
2031
2031
  "sigil-string-square-brackets": {
2032
- "begin": "(~[bs]?)([\\[])",
2032
+ "begin": "(~[bs]?)(\\[)",
2033
2033
  "beginCaptures": {
2034
2034
  "1": {
2035
2035
  "name": "storage.type.string.erlang"
@@ -2038,7 +2038,7 @@
2038
2038
  "name": "punctuation.definition.string.begin.erlang"
2039
2039
  }
2040
2040
  },
2041
- "end": "([\\]])",
2041
+ "end": "(])",
2042
2042
  "endCaptures": {
2043
2043
  "1": {
2044
2044
  "name": "punctuation.definition.string.end.erlang"
@@ -2052,7 +2052,7 @@
2052
2052
  ]
2053
2053
  },
2054
2054
  "sigil-string-square-brackets-verbatim": {
2055
- "begin": "(~[BS])([\\[])",
2055
+ "begin": "(~[BS])(\\[)",
2056
2056
  "beginCaptures": {
2057
2057
  "1": {
2058
2058
  "name": "storage.type.string.erlang"
@@ -2061,7 +2061,7 @@
2061
2061
  "name": "punctuation.definition.string.begin.erlang"
2062
2062
  }
2063
2063
  },
2064
- "end": "([\\]])",
2064
+ "end": "(])",
2065
2065
  "endCaptures": {
2066
2066
  "1": {
2067
2067
  "name": "punctuation.definition.string.end.erlang"
@@ -2090,7 +2090,7 @@
2090
2090
  ]
2091
2091
  },
2092
2092
  "symbolic-operator": {
2093
- "match": "\\+\\+|\\+|--|-|\\*|/=|/|=/=|=:=|==|=<|=|<-|<|>=|>|!|::|\\?=",
2093
+ "match": "\\+\\+|\\+|--|[\\-*]|/=|/|=/=|=:=|==|=<|=|<-|<|>=|[>!]|::|\\?=",
2094
2094
  "name": "keyword.operator.symbolic.erlang"
2095
2095
  },
2096
2096
  "textual-operator": {
@@ -2104,7 +2104,7 @@
2104
2104
  "name": "punctuation.definition.tuple.begin.erlang"
2105
2105
  }
2106
2106
  },
2107
- "end": "(\\})",
2107
+ "end": "(})",
2108
2108
  "endCaptures": {
2109
2109
  "1": {
2110
2110
  "name": "punctuation.definition.tuple.end.erlang"
@@ -28,7 +28,7 @@
28
28
  "name": "es-tag-css",
29
29
  "patterns": [
30
30
  {
31
- "begin": "(?i)(\\s?\\/\\*\\s?(css|inline-css)\\s?\\*\\/\\s?)(`)",
31
+ "begin": "(?i)(\\s?/\\*\\s?(css|inline-css)\\s?\\*/\\s?)(`)",
32
32
  "beginCaptures": {
33
33
  "1": {
34
34
  "name": "comment.block"
@@ -71,7 +71,7 @@
71
71
  ]
72
72
  },
73
73
  {
74
- "begin": "(?i)(?<=\\s|\\,|\\=|\\:|\\(|\\$\\()\\s{0,}(((\\/\\*)|(\\/\\/))\\s?(css|inline-css)[ ]{0,1000}\\*?\\/?)[ ]{0,1000}$",
74
+ "begin": "(?i)(?<=[\\s,=:(]|\\$\\()\\s*(((/\\*)|(//))\\s?(css|inline-css) {0,1000}\\*?/?) {0,1000}$",
75
75
  "beginCaptures": {
76
76
  "1": {
77
77
  "name": "comment.line"
@@ -92,7 +92,7 @@
92
92
  ]
93
93
  },
94
94
  {
95
- "begin": "(\\${)",
95
+ "begin": "(\\$\\{)",
96
96
  "beginCaptures": {
97
97
  "1": {
98
98
  "name": "entity.name.tag"
@@ -28,7 +28,7 @@
28
28
  "name": "es-tag-glsl",
29
29
  "patterns": [
30
30
  {
31
- "begin": "(?i)(\\s?\\/\\*\\s?(glsl|inline-glsl)\\s?\\*\\/\\s?)(`)",
31
+ "begin": "(?i)(\\s?/\\*\\s?(glsl|inline-glsl)\\s?\\*/\\s?)(`)",
32
32
  "beginCaptures": {
33
33
  "1": {
34
34
  "name": "comment.block"
@@ -71,7 +71,7 @@
71
71
  ]
72
72
  },
73
73
  {
74
- "begin": "(?i)(?<=\\s|\\,|\\=|\\:|\\(|\\$\\()\\s{0,}(((\\/\\*)|(\\/\\/))\\s?(glsl|inline-glsl)[ ]{0,1000}\\*?\\/?)[ ]{0,1000}$",
74
+ "begin": "(?i)(?<=[\\s,=:(]|\\$\\()\\s*(((/\\*)|(//))\\s?(glsl|inline-glsl) {0,1000}\\*?/?) {0,1000}$",
75
75
  "beginCaptures": {
76
76
  "1": {
77
77
  "name": "comment.line"
@@ -92,7 +92,7 @@
92
92
  ]
93
93
  },
94
94
  {
95
- "begin": "(\\${)",
95
+ "begin": "(\\$\\{)",
96
96
  "beginCaptures": {
97
97
  "1": {
98
98
  "name": "entity.name.tag"
@@ -28,7 +28,7 @@
28
28
  "name": "es-tag-html",
29
29
  "patterns": [
30
30
  {
31
- "begin": "(?i)(\\s?\\/\\*\\s?(html|template|inline-html|inline-template)\\s?\\*\\/\\s?)(`)",
31
+ "begin": "(?i)(\\s?/\\*\\s?(html|template|inline-html|inline-template)\\s?\\*/\\s?)(`)",
32
32
  "beginCaptures": {
33
33
  "1": {
34
34
  "name": "comment.block"
@@ -71,7 +71,7 @@
71
71
  ]
72
72
  },
73
73
  {
74
- "begin": "(?i)(?<=\\s|\\,|\\=|\\:|\\(|\\$\\()\\s{0,}(((\\/\\*)|(\\/\\/))\\s?(html|template|inline-html|inline-template)[ ]{0,1000}\\*?\\/?)[ ]{0,1000}$",
74
+ "begin": "(?i)(?<=[\\s,=:(]|\\$\\()\\s*(((/\\*)|(//))\\s?(html|template|inline-html|inline-template) {0,1000}\\*?/?) {0,1000}$",
75
75
  "beginCaptures": {
76
76
  "1": {
77
77
  "name": "comment.line"
@@ -92,7 +92,7 @@
92
92
  ]
93
93
  },
94
94
  {
95
- "begin": "(\\${)",
95
+ "begin": "(\\$\\{)",
96
96
  "beginCaptures": {
97
97
  "1": {
98
98
  "name": "entity.name.tag"
@@ -54,7 +54,7 @@
54
54
  ]
55
55
  },
56
56
  {
57
- "begin": "(?i)(\\s?\\/?\\*?\\s?(sql|inline-sql)\\s?\\*?\\/?\\s?)(`)",
57
+ "begin": "(?i)(\\s?/?\\*?\\s?(sql|inline-sql)\\s?\\*?/?\\s?)(`)",
58
58
  "beginCaptures": {
59
59
  "1": {
60
60
  "name": "comment.block"
@@ -80,7 +80,7 @@
80
80
  ]
81
81
  },
82
82
  {
83
- "begin": "(?i)(?<=\\s|\\,|\\=|\\:|\\(|\\$\\()\\s{0,}(((\\/\\*)|(\\/\\/))\\s?(sql|inline-sql)[ ]{0,1000}\\*?\\/?)[ ]{0,1000}$",
83
+ "begin": "(?i)(?<=[\\s,=:(]|\\$\\()\\s*(((/\\*)|(//))\\s?(sql|inline-sql) {0,1000}\\*?/?) {0,1000}$",
84
84
  "beginCaptures": {
85
85
  "1": {
86
86
  "name": "comment.line"
@@ -28,7 +28,7 @@
28
28
  "name": "es-tag-xml",
29
29
  "patterns": [
30
30
  {
31
- "begin": "(?i)(\\s?\\/\\*\\s?(xml|svg|inline-svg|inline-xml)\\s?\\*\\/\\s?)(`)",
31
+ "begin": "(?i)(\\s?/\\*\\s?(xml|svg|inline-svg|inline-xml)\\s?\\*/\\s?)(`)",
32
32
  "beginCaptures": {
33
33
  "1": {
34
34
  "name": "comment.block"
@@ -56,7 +56,7 @@
56
56
  ]
57
57
  },
58
58
  {
59
- "begin": "(?i)(?<=\\s|\\,|\\=|\\:|\\(|\\$\\()\\s{0,}(((\\/\\*)|(\\/\\/))\\s?(xml|svg|inline-svg|inline-xml)[ ]{0,1000}\\*?\\/?)[ ]{0,1000}$",
59
+ "begin": "(?i)(?<=[\\s,=:(]|\\$\\()\\s*(((/\\*)|(//))\\s?(xml|svg|inline-svg|inline-xml) {0,1000}\\*?/?) {0,1000}$",
60
60
  "beginCaptures": {
61
61
  "1": {
62
62
  "name": "comment.line"
@@ -27,7 +27,7 @@
27
27
  "name": "constant.language.boolean.fennel"
28
28
  },
29
29
  {
30
- "match": "(-?\\d+\\.\\d+([eE][+-]?\\d+)?)",
30
+ "match": "(-?\\d+\\.\\d+([eE][+\\-]?\\d+)?)",
31
31
  "name": "constant.numeric.double.fennel"
32
32
  },
33
33
  {
@@ -88,7 +88,7 @@
88
88
  "name": "support.function.library.fennel"
89
89
  },
90
90
  {
91
- "match": "\\b(_G|_VERSION)\\b",
91
+ "match": "\\b(_(?:G|VERSION))\\b",
92
92
  "name": "constant.language.fennel"
93
93
  }
94
94
  ]
@@ -96,7 +96,7 @@
96
96
  "methods": {
97
97
  "patterns": [
98
98
  {
99
- "match": "\\w+\\:\\w+",
99
+ "match": "\\w+:\\w+",
100
100
  "name": "entity.name.function.method.fennel"
101
101
  }
102
102
  ]
@@ -124,15 +124,15 @@
124
124
  "special": {
125
125
  "patterns": [
126
126
  {
127
- "match": "\\#|\\%|\\+|\\*|[?][.]|(\\.)?\\.|(\\/)?\\/|:|<=?|=|>=?|\\^",
127
+ "match": "[#%+*]|\\?\\.|(\\.)?\\.|(/)?/|:|<=?|=|>=?|\\^",
128
128
  "name": "keyword.special.fennel"
129
129
  },
130
130
  {
131
- "match": "(\\-\\>(\\>)?)",
131
+ "match": "(->(>)?)",
132
132
  "name": "keyword.special.fennel"
133
133
  },
134
134
  {
135
- "match": "\\-\\?\\>(\\>)?",
135
+ "match": "-\\?>(>)?",
136
136
  "name": "keyword.special.fennel"
137
137
  },
138
138
  {
@@ -195,7 +195,7 @@
195
195
  "name": "punctuation.table.bracket.open.fennel"
196
196
  }
197
197
  },
198
- "end": "\\}",
198
+ "end": "}",
199
199
  "endCaptures": {
200
200
  "0": {
201
201
  "name": "punctuation.table.bracket.close.fennel"
@@ -215,7 +215,7 @@
215
215
  "name": "punctuation.vector.bracket.open.fennel"
216
216
  }
217
217
  },
218
- "end": "\\]",
218
+ "end": "]",
219
219
  "endCaptures": {
220
220
  "0": {
221
221
  "name": "punctuation.vector.bracket.close.fennel"
@@ -27,7 +27,7 @@
27
27
  "include": "#variable"
28
28
  },
29
29
  {
30
- "match": "\\\\(\\\"|\\$|$|\\\\)",
30
+ "match": "\\\\([\"$]|$|\\\\)",
31
31
  "name": "constant.character.escape.fish"
32
32
  }
33
33
  ]
@@ -48,7 +48,7 @@
48
48
  "name": "string.quoted.single.fish",
49
49
  "patterns": [
50
50
  {
51
- "match": "\\\\('|`|\\\\)",
51
+ "match": "\\\\(['`\\\\])",
52
52
  "name": "constant.character.escape.fish"
53
53
  }
54
54
  ]
@@ -71,7 +71,7 @@
71
71
  "name": "support.function.command.fish"
72
72
  }
73
73
  },
74
- "match": "(^\\s*|&&\\s*|\\|\\s*|\\(\\s*|[;]\\s*|\\b(if|while)\\b\\s+)(?!(?<!\\.)\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\b(?![?!]))([a-zA-Z_\\-0-9\\[\\].]+)"
74
+ "match": "(^\\s*|&&\\s*|\\|\\s*|\\(\\s*|;\\s*|\\b(if|while)\\b\\s+)(?!(?<!\\.)\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\b(?![?!]))([a-zA-Z_\\-0-9\\[\\].]+)"
75
75
  },
76
76
  {
77
77
  "match": "(?<!\\.)\\b(function|while|if|else|switch|case|for|in|begin|end|continue|break|return|source|exit|wait|and|or|not)\\b(?![?!])",
@@ -86,7 +86,7 @@
86
86
  "name": "keyword.operator.pipe.fish"
87
87
  },
88
88
  {
89
- "match": "(?:<|#StandardInput(>|\\^|>>|\\^\\^)(&[012\\-])?|[012](<|>|>>)(&[012\\-])?)",
89
+ "match": "(?:<|([>\\^]|>>|\\^\\^)(&[012\\-])?|[012]([<>]|>>)(&[012\\-])?)",
90
90
  "name": "keyword.operator.redirect.fish"
91
91
  },
92
92
  {
@@ -94,7 +94,7 @@
94
94
  "name": "keyword.operator.background.fish"
95
95
  },
96
96
  {
97
- "match": "\\*\\*|\\*|\\?",
97
+ "match": "\\*\\*|[*?]",
98
98
  "name": "keyword.operator.glob.fish"
99
99
  },
100
100
  {
@@ -116,15 +116,15 @@
116
116
  "escape": {
117
117
  "patterns": [
118
118
  {
119
- "match": "\\\\[abefnrtv $*?~#(){}\\[\\]<>^&|;\"']",
119
+ "match": "\\\\[abefnrtv $*?~#(){}\\[\\]<>\\^\\&|;\"']",
120
120
  "name": "constant.character.escape.single.fish"
121
121
  },
122
122
  {
123
- "match": "\\\\x[0-9a-fA-F]{1,2}",
123
+ "match": "\\\\x\\h{1,2}",
124
124
  "name": "constant.character.escape.hex-ascii.fish"
125
125
  },
126
126
  {
127
- "match": "\\\\X[0-9a-fA-F]{1,2}",
127
+ "match": "\\\\X\\h{1,2}",
128
128
  "name": "constant.character.escape.hex-byte.fish"
129
129
  },
130
130
  {
@@ -132,11 +132,11 @@
132
132
  "name": "constant.character.escape.octal.fish"
133
133
  },
134
134
  {
135
- "match": "\\\\u[0-9a-fA-F]{1,4}",
135
+ "match": "\\\\u\\h{1,4}",
136
136
  "name": "constant.character.escape.unicode-16-bit.fish"
137
137
  },
138
138
  {
139
- "match": "\\\\U[0-9a-fA-F]{1,8}",
139
+ "match": "\\\\U\\h{1,8}",
140
140
  "name": "constant.character.escape.unicode-32-bit.fish"
141
141
  },
142
142
  {
@@ -14,13 +14,13 @@
14
14
  ],
15
15
  "repository": {
16
16
  "attributes": {
17
- "begin": "\\s*(\\.[a-zA-Z][a-zA-Z0-9_-]*\\s*=\\s*)",
17
+ "begin": "\\s*(\\.[a-zA-Z][a-zA-Z0-9_\\-]*\\s*=\\s*)",
18
18
  "beginCaptures": {
19
19
  "1": {
20
20
  "name": "support.class.attribute-begin.fluent"
21
21
  }
22
22
  },
23
- "end": "^(?=\\s*[^\\.])",
23
+ "end": "^(?=\\s*[^.])",
24
24
  "patterns": [
25
25
  {
26
26
  "include": "#placeable"
@@ -45,11 +45,11 @@
45
45
  "name": "variable.other.named-argument.value.fluent"
46
46
  }
47
47
  },
48
- "end": "(?=\\)|,|\\s)",
48
+ "end": "(?=[),\\s])",
49
49
  "name": "variable.other.named-argument.fluent"
50
50
  },
51
51
  "function-positional-argument": {
52
- "match": "\\$[a-zA-Z0-9_-]+",
52
+ "match": "\\$[a-zA-Z0-9_\\-]+",
53
53
  "name": "variable.other.function.positional-argument.fluent"
54
54
  },
55
55
  "invalid-placeable-string-missing-end-quote": {
@@ -57,11 +57,11 @@
57
57
  "name": "invalid.illegal.wrong-placeable-missing-end-quote.fluent"
58
58
  },
59
59
  "invalid-placeable-wrong-placeable-missing-end": {
60
- "match": "([^}A-Z]*$|[^-][^>]$)\\b",
60
+ "match": "([^}A-Z]*$|[^\\-][^>]$)\\b",
61
61
  "name": "invalid.illegal.wrong-placeable-missing-end.fluent"
62
62
  },
63
63
  "message": {
64
- "begin": "^(-?[a-zA-Z][a-zA-Z0-9_-]*\\s*=\\s*)",
64
+ "begin": "^(-?[a-zA-Z][a-zA-Z0-9_\\-]*\\s*=\\s*)",
65
65
  "beginCaptures": {
66
66
  "1": {
67
67
  "name": "support.class.message-identifier.fluent"
@@ -79,7 +79,7 @@
79
79
  ]
80
80
  },
81
81
  "placeable": {
82
- "begin": "({)",
82
+ "begin": "(\\{)",
83
83
  "beginCaptures": {
84
84
  "1": {
85
85
  "name": "keyword.placeable.begin.fluent"
@@ -117,7 +117,7 @@
117
117
  ]
118
118
  },
119
119
  "placeable-function": {
120
- "begin": "([A-Z][A-Z0-9_-]*\\()",
120
+ "begin": "([A-Z][A-Z0-9_\\-]*\\()",
121
121
  "beginCaptures": {
122
122
  "1": {
123
123
  "name": "support.function.placeable-function.call.begin.fluent"
@@ -143,7 +143,7 @@
143
143
  ]
144
144
  },
145
145
  "placeable-reference-or-number": {
146
- "match": "((-|\\$)[a-zA-Z0-9_-]+|[a-zA-Z][a-zA-Z0-9_-]*|[0-9]+)",
146
+ "match": "(([\\-$])[a-zA-Z0-9_\\-]+|[a-zA-Z][a-zA-Z0-9_\\-]*|[0-9]+)",
147
147
  "name": "variable.other.placeable.reference-or-number.fluent"
148
148
  },
149
149
  "placeable-string": {
@@ -177,7 +177,7 @@
177
177
  ]
178
178
  },
179
179
  "selector-item": {
180
- "begin": "(\\s*\\*?\\[)([a-zA-Z0-9_-]+)(\\]\\s*)",
180
+ "begin": "(\\s*\\*?\\[)([a-zA-Z0-9_\\-]+)(]\\s*)",
181
181
  "beginCaptures": {
182
182
  "1": {
183
183
  "name": "support.function.selector-item.begin.fluent"
@@ -36,7 +36,7 @@
36
36
  "comments": {
37
37
  "patterns": [
38
38
  {
39
- "begin": "^[cC\\*]",
39
+ "begin": "^[cC*]",
40
40
  "end": "\\n",
41
41
  "name": "comment.line.fortran"
42
42
  },