tm-grammars 1.22.3 → 1.22.4

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 (201) hide show
  1. package/NOTICE +1 -1
  2. package/README.md +165 -165
  3. package/grammars/abap.json +29 -29
  4. package/grammars/actionscript-3.json +10 -10
  5. package/grammars/ada.json +6 -6
  6. package/grammars/angular-expression.json +29 -29
  7. package/grammars/angular-let-declaration.json +1 -1
  8. package/grammars/angular-ts.json +257 -257
  9. package/grammars/apex.json +72 -72
  10. package/grammars/apl.json +1 -1
  11. package/grammars/applescript.json +5 -5
  12. package/grammars/ara.json +3 -3
  13. package/grammars/asciidoc.json +4 -4
  14. package/grammars/asm.json +23 -23
  15. package/grammars/astro.json +3 -3
  16. package/grammars/awk.json +2 -2
  17. package/grammars/ballerina.json +94 -94
  18. package/grammars/bat.json +2 -2
  19. package/grammars/beancount.json +13 -13
  20. package/grammars/berry.json +6 -6
  21. package/grammars/bibtex.json +2 -2
  22. package/grammars/bicep.json +6 -6
  23. package/grammars/blade.json +73 -73
  24. package/grammars/c.json +11 -11
  25. package/grammars/cadence.json +6 -6
  26. package/grammars/cairo.json +5 -5
  27. package/grammars/clarity.json +16 -16
  28. package/grammars/clojure.json +14 -14
  29. package/grammars/cobol.json +33 -33
  30. package/grammars/codeql.json +6 -6
  31. package/grammars/coffee.json +17 -17
  32. package/grammars/common-lisp.json +48 -48
  33. package/grammars/coq.json +1 -1
  34. package/grammars/cpp-macro.json +112 -112
  35. package/grammars/cpp.json +187 -187
  36. package/grammars/crystal.json +22 -22
  37. package/grammars/csharp.json +110 -110
  38. package/grammars/css.json +23 -23
  39. package/grammars/cue.json +33 -33
  40. package/grammars/cypher.json +1 -1
  41. package/grammars/d.json +4 -4
  42. package/grammars/dart.json +6 -6
  43. package/grammars/dax.json +2 -2
  44. package/grammars/diff.json +1 -1
  45. package/grammars/dotenv.json +2 -2
  46. package/grammars/dream-maker.json +3 -3
  47. package/grammars/edge.json +1 -1
  48. package/grammars/elixir.json +15 -15
  49. package/grammars/elm.json +30 -30
  50. package/grammars/emacs-lisp.json +3 -3
  51. package/grammars/erlang.json +2 -2
  52. package/grammars/es-tag-css.json +1 -1
  53. package/grammars/es-tag-glsl.json +1 -1
  54. package/grammars/es-tag-html.json +1 -1
  55. package/grammars/es-tag-sql.json +1 -1
  56. package/grammars/es-tag-xml.json +1 -1
  57. package/grammars/fennel.json +3 -3
  58. package/grammars/fish.json +1 -1
  59. package/grammars/fluent.json +1 -1
  60. package/grammars/fortran-free-form.json +57 -57
  61. package/grammars/fsharp.json +62 -62
  62. package/grammars/gdresource.json +6 -6
  63. package/grammars/gdscript.json +8 -8
  64. package/grammars/gdshader.json +1 -1
  65. package/grammars/genie.json +1 -1
  66. package/grammars/git-commit.json +1 -1
  67. package/grammars/gleam.json +9 -9
  68. package/grammars/glimmer-js.json +6 -6
  69. package/grammars/glimmer-ts.json +6 -6
  70. package/grammars/gnuplot.json +6 -6
  71. package/grammars/go.json +41 -41
  72. package/grammars/graphql.json +1 -1
  73. package/grammars/groovy.json +12 -12
  74. package/grammars/hack.json +19 -19
  75. package/grammars/haml.json +4 -4
  76. package/grammars/handlebars.json +2 -2
  77. package/grammars/haskell.json +17 -17
  78. package/grammars/haxe.json +17 -17
  79. package/grammars/hcl.json +24 -24
  80. package/grammars/hjson.json +7 -7
  81. package/grammars/hlsl.json +8 -8
  82. package/grammars/html.json +3 -3
  83. package/grammars/http.json +2 -2
  84. package/grammars/hy.json +8 -8
  85. package/grammars/imba.json +98 -98
  86. package/grammars/java.json +14 -14
  87. package/grammars/javascript.json +264 -264
  88. package/grammars/jinja.json +8 -8
  89. package/grammars/jison.json +7 -7
  90. package/grammars/json.json +1 -1
  91. package/grammars/json5.json +1 -1
  92. package/grammars/jsonc.json +1 -1
  93. package/grammars/jsonl.json +1 -1
  94. package/grammars/jsonnet.json +1 -1
  95. package/grammars/jssm.json +2 -2
  96. package/grammars/jsx.json +264 -264
  97. package/grammars/julia.json +22 -22
  98. package/grammars/kotlin.json +2 -2
  99. package/grammars/kusto.json +1 -1
  100. package/grammars/latex.json +9 -9
  101. package/grammars/lean.json +3 -3
  102. package/grammars/less.json +13 -13
  103. package/grammars/liquid.json +5 -5
  104. package/grammars/log.json +5 -5
  105. package/grammars/logo.json +1 -1
  106. package/grammars/lua.json +25 -25
  107. package/grammars/luau.json +19 -19
  108. package/grammars/make.json +1 -1
  109. package/grammars/markdown.json +8 -8
  110. package/grammars/marko.json +6 -6
  111. package/grammars/matlab.json +12 -12
  112. package/grammars/mdc.json +3 -3
  113. package/grammars/mdx.json +25 -25
  114. package/grammars/mermaid.json +31 -31
  115. package/grammars/mipsasm.json +3 -3
  116. package/grammars/mojo.json +46 -46
  117. package/grammars/move.json +5 -5
  118. package/grammars/nextflow.json +1 -1
  119. package/grammars/nginx.json +10 -10
  120. package/grammars/nim.json +8 -8
  121. package/grammars/nix.json +34 -34
  122. package/grammars/nushell.json +3 -3
  123. package/grammars/objective-c.json +8 -8
  124. package/grammars/objective-cpp.json +14 -14
  125. package/grammars/ocaml.json +94 -94
  126. package/grammars/perl.json +34 -34
  127. package/grammars/php.json +87 -87
  128. package/grammars/polar.json +6 -6
  129. package/grammars/postcss.json +3 -3
  130. package/grammars/powerquery.json +1 -1
  131. package/grammars/powershell.json +5 -5
  132. package/grammars/prisma.json +3 -3
  133. package/grammars/prolog.json +6 -6
  134. package/grammars/proto.json +3 -3
  135. package/grammars/pug.json +4 -4
  136. package/grammars/puppet.json +11 -11
  137. package/grammars/purescript.json +5 -5
  138. package/grammars/python.json +44 -44
  139. package/grammars/qml.json +4 -4
  140. package/grammars/r.json +10 -10
  141. package/grammars/racket.json +19 -19
  142. package/grammars/raku.json +2 -2
  143. package/grammars/razor.json +24 -24
  144. package/grammars/reg.json +2 -2
  145. package/grammars/regexp.json +3 -3
  146. package/grammars/rel.json +4 -4
  147. package/grammars/riscv.json +5 -5
  148. package/grammars/rst.json +1 -1
  149. package/grammars/ruby.json +3 -3
  150. package/grammars/rust.json +1 -1
  151. package/grammars/sas.json +2 -2
  152. package/grammars/sass.json +5 -5
  153. package/grammars/scala.json +43 -43
  154. package/grammars/scheme.json +8 -8
  155. package/grammars/scss.json +7 -7
  156. package/grammars/shaderlab.json +3 -3
  157. package/grammars/shellscript.json +24 -24
  158. package/grammars/smalltalk.json +6 -6
  159. package/grammars/solidity.json +5 -5
  160. package/grammars/soy.json +1 -1
  161. package/grammars/sparql.json +1 -1
  162. package/grammars/splunk.json +3 -3
  163. package/grammars/sql.json +2 -2
  164. package/grammars/ssh-config.json +2 -2
  165. package/grammars/stata.json +33 -33
  166. package/grammars/stylus.json +6 -6
  167. package/grammars/svelte.json +8 -8
  168. package/grammars/swift.json +27 -27
  169. package/grammars/system-verilog.json +11 -11
  170. package/grammars/systemd.json +5 -5
  171. package/grammars/talonscript.json +1 -1
  172. package/grammars/tcl.json +2 -2
  173. package/grammars/templ.json +2 -2
  174. package/grammars/terraform.json +23 -23
  175. package/grammars/tex.json +3 -3
  176. package/grammars/toml.json +5 -5
  177. package/grammars/tsx.json +264 -264
  178. package/grammars/turtle.json +1 -1
  179. package/grammars/twig.json +23 -23
  180. package/grammars/typescript.json +257 -257
  181. package/grammars/typespec.json +30 -30
  182. package/grammars/typst.json +13 -13
  183. package/grammars/v.json +16 -16
  184. package/grammars/vala.json +1 -1
  185. package/grammars/vb.json +2 -2
  186. package/grammars/verilog.json +5 -5
  187. package/grammars/vhdl.json +14 -14
  188. package/grammars/viml.json +11 -11
  189. package/grammars/vue-html.json +2 -2
  190. package/grammars/vue.json +1 -1
  191. package/grammars/vyper.json +44 -44
  192. package/grammars/wasm.json +2 -2
  193. package/grammars/wgsl.json +3 -3
  194. package/grammars/wikitext.json +9 -9
  195. package/grammars/wolfram.json +331 -331
  196. package/grammars/xml.json +1 -1
  197. package/grammars/yaml.json +3 -3
  198. package/grammars/zenscript.json +2 -2
  199. package/grammars/zig.json +3 -3
  200. package/index.js +196 -196
  201. package/package.json +1 -1
@@ -277,11 +277,11 @@
277
277
  "name": "constant.numeric.scala"
278
278
  },
279
279
  {
280
- "match": "\\b((\\d[0-9_]*(\\.\\d[0-9_]*)?)([eE](\\+|-)?\\d[0-9_]*)?|\\d[0-9_]*)[LlFfDd]?\\b",
280
+ "match": "\\b(([0-9][0-9_]*(\\.[0-9][0-9_]*)?)([eE](\\+|-)?[0-9][0-9_]*)?|[0-9][0-9_]*)[LlFfDd]?\\b",
281
281
  "name": "constant.numeric.scala"
282
282
  },
283
283
  {
284
- "match": "(\\.\\d[0-9_]*)([eE](\\+|-)?\\d[0-9_]*)?[LlFfDd]?\\b",
284
+ "match": "(\\.[0-9][0-9_]*)([eE](\\+|-)?[0-9][0-9_]*)?[LlFfDd]?\\b",
285
285
  "name": "constant.numeric.scala"
286
286
  },
287
287
  {
@@ -324,7 +324,7 @@
324
324
  "name": "entity.name.function.declaration"
325
325
  }
326
326
  },
327
- "match": "\\b(def)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
327
+ "match": "\\b(def)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
328
328
  },
329
329
  {
330
330
  "captures": {
@@ -335,7 +335,7 @@
335
335
  "name": "entity.name.class.declaration"
336
336
  }
337
337
  },
338
- "match": "\\b(trait)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
338
+ "match": "\\b(trait)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
339
339
  },
340
340
  {
341
341
  "captures": {
@@ -349,7 +349,7 @@
349
349
  "name": "entity.name.class.declaration"
350
350
  }
351
351
  },
352
- "match": "\\b(?:(case)\\s+)?(class|object|enum)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
352
+ "match": "\\b(?:(case)\\s+)?(class|object|enum)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
353
353
  },
354
354
  {
355
355
  "captures": {
@@ -360,7 +360,7 @@
360
360
  "name": "entity.name.type.declaration"
361
361
  }
362
362
  },
363
- "match": "(?<!\\.)\\b(type)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
363
+ "match": "(?<!\\.)\\b(type)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
364
364
  },
365
365
  {
366
366
  "captures": {
@@ -371,7 +371,7 @@
371
371
  "name": "keyword.declaration.volatile.scala"
372
372
  }
373
373
  },
374
- "match": "\\b(?:(val)|(var))\\b\\s*(?!//|/\\*)(?=(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)?\\()"
374
+ "match": "\\b(?:(val)|(var))\\b\\s*(?!//|/\\*)(?=(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)?\\()"
375
375
  },
376
376
  {
377
377
  "captures": {
@@ -382,7 +382,7 @@
382
382
  "name": "variable.stable.declaration.scala"
383
383
  }
384
384
  },
385
- "match": "\\b(val)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!\")"
385
+ "match": "\\b(val)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!\")"
386
386
  },
387
387
  {
388
388
  "captures": {
@@ -393,7 +393,7 @@
393
393
  "name": "variable.volatile.declaration.scala"
394
394
  }
395
395
  },
396
- "match": "\\b(var)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!\")"
396
+ "match": "\\b(var)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)(?:\\s*,\\s*(?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))*)?(?!\")"
397
397
  },
398
398
  {
399
399
  "captures": {
@@ -407,7 +407,7 @@
407
407
  "name": "entity.name.class.declaration"
408
408
  }
409
409
  },
410
- "match": "\\b(package)\\s+(object)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
410
+ "match": "\\b(package)\\s+(object)\\b\\s*(?!//|/\\*)((?:(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`))?"
411
411
  },
412
412
  {
413
413
  "begin": "\\b(package)\\s+",
@@ -423,7 +423,7 @@
423
423
  "include": "#comments"
424
424
  },
425
425
  {
426
- "match": "(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",
426
+ "match": "(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",
427
427
  "name": "entity.name.package.scala"
428
428
  },
429
429
  {
@@ -441,7 +441,7 @@
441
441
  "name": "entity.name.given.declaration"
442
442
  }
443
443
  },
444
- "match": "\\b(given)\\b\\s*([_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`)?"
444
+ "match": "\\b(given)\\b\\s*([_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`)?"
445
445
  }
446
446
  ]
447
447
  },
@@ -472,11 +472,11 @@
472
472
  "name": "keyword.other.export.given.scala"
473
473
  },
474
474
  {
475
- "match": "[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",
475
+ "match": "[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",
476
476
  "name": "entity.name.class.export.scala"
477
477
  },
478
478
  {
479
- "match": "(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",
479
+ "match": "(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",
480
480
  "name": "entity.name.export.scala"
481
481
  },
482
482
  {
@@ -519,7 +519,7 @@
519
519
  "name": "entity.name.export.renamed-to.scala"
520
520
  }
521
521
  },
522
- "match": "(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"
522
+ "match": "(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"
523
523
  },
524
524
  {
525
525
  "match": "\\b(given)\\b",
@@ -537,7 +537,7 @@
537
537
  "name": "entity.name.export.scala"
538
538
  }
539
539
  },
540
- "match": "(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"
540
+ "match": "(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"
541
541
  }
542
542
  ]
543
543
  }
@@ -551,7 +551,7 @@
551
551
  "name": "keyword.declaration.scala"
552
552
  }
553
553
  },
554
- "match": "^\\s*(extension)\\s+(?=[\\[(])"
554
+ "match": "^\\s*(extension)\\s+(?=[\\[\\(])"
555
555
  }
556
556
  ]
557
557
  },
@@ -577,11 +577,11 @@
577
577
  "name": "keyword.other.import.as.scala"
578
578
  },
579
579
  {
580
- "match": "[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",
580
+ "match": "[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?",
581
581
  "name": "entity.name.class.import.scala"
582
582
  },
583
583
  {
584
- "match": "(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",
584
+ "match": "(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))",
585
585
  "name": "entity.name.import.scala"
586
586
  },
587
587
  {
@@ -624,7 +624,7 @@
624
624
  "name": "entity.name.import.renamed-to.scala"
625
625
  }
626
626
  },
627
- "match": "(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"
627
+ "match": "(given\\s)?\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*(=>)\\s*(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))\\s*"
628
628
  },
629
629
  {
630
630
  "match": "\\b(given)\\b",
@@ -642,7 +642,7 @@
642
642
  "name": "entity.name.import.scala"
643
643
  }
644
644
  },
645
- "match": "(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"
645
+ "match": "(given\\s+)?(?:([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)|(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))"
646
646
  }
647
647
  ]
648
648
  }
@@ -659,7 +659,7 @@
659
659
  "name": "entity.name.class"
660
660
  }
661
661
  },
662
- "match": "\\b(extends|with|derives)\\b\\s*([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?=\\([^)]+=>)|(?=(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))|(?=\"))?"
662
+ "match": "\\b(extends|with|derives)\\b\\s*([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?=\\([^\\)]+=>)|(?=(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))|(?=\"))?"
663
663
  }
664
664
  ]
665
665
  },
@@ -674,7 +674,7 @@
674
674
  "inline": {
675
675
  "patterns": [
676
676
  {
677
- "match": "\\b(inline)(?=\\s+((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)\\s*:)",
677
+ "match": "\\b(inline)(?=\\s+((?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)|`[^`]+`)\\s*:)",
678
678
  "name": "storage.modifier.other"
679
679
  },
680
680
  {
@@ -721,7 +721,7 @@
721
721
  "name": "entity.name.type.declaration"
722
722
  }
723
723
  },
724
- "match": "^\\s*(end)\\s+(?:(new|extension)|([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"
724
+ "match": "^\\s*(end)\\s+(?:(new|extension)|([A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"
725
725
  },
726
726
  {
727
727
  "match": "\\b(catch|finally|try)\\b",
@@ -740,7 +740,7 @@
740
740
  "name": "entity.name.declaration"
741
741
  }
742
742
  },
743
- "match": "^\\s*(end)\\s+(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))?(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"
743
+ "match": "^\\s*(end)\\s+(`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+))?(?=\\s*(//.*|/\\*(?!.*\\*/\\s*\\S.*).*)?$)"
744
744
  },
745
745
  {
746
746
  "match": "([!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]|[\\\\]){3,}",
@@ -755,7 +755,7 @@
755
755
  "name": "keyword.operator.logical.scala"
756
756
  },
757
757
  {
758
- "match": "(!=|==|<=|>=)",
758
+ "match": "(\\!=|==|\\<=|>=)",
759
759
  "name": "keyword.operator.comparison.scala"
760
760
  },
761
761
  {
@@ -772,7 +772,7 @@
772
772
  "1": {
773
773
  "patterns": [
774
774
  {
775
- "match": "(!)",
775
+ "match": "(\\!)",
776
776
  "name": "keyword.operator.logical.scala"
777
777
  },
778
778
  {
@@ -780,7 +780,7 @@
780
780
  "name": "keyword.operator.arithmetic.scala"
781
781
  },
782
782
  {
783
- "match": "(=|<|>)",
783
+ "match": "(=|\\<|>)",
784
784
  "name": "keyword.operator.comparison.scala"
785
785
  },
786
786
  {
@@ -838,7 +838,7 @@
838
838
  "name": "meta.colon.scala"
839
839
  }
840
840
  },
841
- "match": "(?<=[^\\._$a-zA-Z0-9])(`[^`]+`|[_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)\\s*(:)\\s+"
841
+ "match": "(?<=[^\\._$a-zA-Z0-9])(`[^`]+`|[_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?)\\s*(:)\\s+"
842
842
  }
843
843
  ]
844
844
  },
@@ -861,7 +861,7 @@
861
861
  "name": "constant.other.symbol.scala"
862
862
  }
863
863
  },
864
- "match": "(')((?>(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))(?!')"
864
+ "match": "(')((?>(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)))(?!')"
865
865
  },
866
866
  {
867
867
  "match": "'(?=\\s*\\{(?!'))",
@@ -892,7 +892,7 @@
892
892
  "name": "keyword.type.scala"
893
893
  }
894
894
  },
895
- "match": "\\.(type)(?![A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|\\d)"
895
+ "match": "\\.(type)(?![A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[0-9])"
896
896
  },
897
897
  "storage-modifiers": {
898
898
  "patterns": [
@@ -922,7 +922,7 @@
922
922
  "name": "punctuation.definition.template-expression.begin.scala"
923
923
  }
924
924
  },
925
- "match": "(\\$)([A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\p{Lo}\\p{Nl}\\p{Ll}0-9]*)",
925
+ "match": "(\\$)([A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\p{Lo}\\p{Nl}\\p{Ll}0-9]*)",
926
926
  "name": "meta.template.expression.scala"
927
927
  },
928
928
  {
@@ -981,7 +981,7 @@
981
981
  "name": "string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"
982
982
  }
983
983
  },
984
- "end": "(\"\"\")(?!\")|\\$\n|(\\$[^$\"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])",
984
+ "end": "(\"\"\")(?!\")|\\$\n|(\\$[^\\$\"_{A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}])",
985
985
  "endCaptures": {
986
986
  "1": {
987
987
  "name": "string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"
@@ -992,7 +992,7 @@
992
992
  },
993
993
  "patterns": [
994
994
  {
995
- "match": "\\$[$\"]",
995
+ "match": "\\$[\\$\"]",
996
996
  "name": "constant.character.escape.scala"
997
997
  },
998
998
  {
@@ -1005,7 +1005,7 @@
1005
1005
  ]
1006
1006
  },
1007
1007
  {
1008
- "begin": "\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(\"\"\")",
1008
+ "begin": "\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(\"\"\")",
1009
1009
  "beginCaptures": {
1010
1010
  "1": {
1011
1011
  "name": "keyword.interpolation.scala"
@@ -1014,7 +1014,7 @@
1014
1014
  "name": "string.quoted.triple.interpolated.scala punctuation.definition.string.begin.scala"
1015
1015
  }
1016
1016
  },
1017
- "end": "(\"\"\")(?!\")|\\$\n|(\\$[^$\"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])",
1017
+ "end": "(\"\"\")(?!\")|\\$\n|(\\$[^\\$\"_{A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}])",
1018
1018
  "endCaptures": {
1019
1019
  "1": {
1020
1020
  "name": "string.quoted.triple.interpolated.scala punctuation.definition.string.end.scala"
@@ -1072,7 +1072,7 @@
1072
1072
  "name": "string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"
1073
1073
  }
1074
1074
  },
1075
- "end": "(\")|\\$\n|(\\$[^$\"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])",
1075
+ "end": "(\")|\\$\n|(\\$[^\\$\"_{A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}])",
1076
1076
  "endCaptures": {
1077
1077
  "1": {
1078
1078
  "name": "string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"
@@ -1083,7 +1083,7 @@
1083
1083
  },
1084
1084
  "patterns": [
1085
1085
  {
1086
- "match": "\\$[$\"]",
1086
+ "match": "\\$[\\$\"]",
1087
1087
  "name": "constant.character.escape.scala"
1088
1088
  },
1089
1089
  {
@@ -1096,7 +1096,7 @@
1096
1096
  ]
1097
1097
  },
1098
1098
  {
1099
- "begin": "\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(\")",
1099
+ "begin": "\\b((?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?))(\")",
1100
1100
  "beginCaptures": {
1101
1101
  "1": {
1102
1102
  "name": "keyword.interpolation.scala"
@@ -1105,7 +1105,7 @@
1105
1105
  "name": "string.quoted.double.interpolated.scala punctuation.definition.string.begin.scala"
1106
1106
  }
1107
1107
  },
1108
- "end": "(\")|\\$\n|(\\$[^$\"_{A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}])",
1108
+ "end": "(\")|\\$\n|(\\$[^\\$\"_{A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}])",
1109
1109
  "endCaptures": {
1110
1110
  "1": {
1111
1111
  "name": "string.quoted.double.interpolated.scala punctuation.definition.string.end.scala"
@@ -1116,7 +1116,7 @@
1116
1116
  },
1117
1117
  "patterns": [
1118
1118
  {
1119
- "match": "\\$[$\"]",
1119
+ "match": "\\$[\\$\"]",
1120
1120
  "name": "constant.character.escape.scala"
1121
1121
  },
1122
1122
  {
@@ -1162,7 +1162,7 @@
1162
1162
  "3": {
1163
1163
  "patterns": [
1164
1164
  {
1165
- "match": "[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)",
1165
+ "match": "[A-Z\\p{Lt}\\p{Lu}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|`[^`]+`|(?:[A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}][A-Z\\p{Lt}\\p{Lu}_a-z\\$\\p{Lo}\\p{Nl}\\p{Ll}0-9]*(?:(?<=_)[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)?|[!#%&*+\\-\\/:<>=?@^|~\\p{Sm}\\p{So}]+)",
1166
1166
  "name": "entity.name.import.scala"
1167
1167
  },
1168
1168
  {
@@ -1258,7 +1258,7 @@
1258
1258
  "name": "punctuation.definition.constant.xml"
1259
1259
  }
1260
1260
  },
1261
- "match": "(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#\\d+|#x[0-9a-fA-F]+)(;)",
1261
+ "match": "(&)([:a-zA-Z_][:a-zA-Z0-9_.-]*|#[0-9]+|#x[0-9a-fA-F]+)(;)",
1262
1262
  "name": "constant.character.entity.xml"
1263
1263
  },
1264
1264
  "xml-literal": {
@@ -71,7 +71,7 @@
71
71
  "name": "constant.language.boolean.scheme"
72
72
  },
73
73
  {
74
- "match": "(?<=[(\\s])((#e|#i)?\\d+(\\.\\d+)?|(#x)[0-9a-fA-F]+|(#o)[0-7]+|(#b)[01]+)(?=[\\s;()'\",\\[\\]])",
74
+ "match": "(?<=[\\(\\s])((#e|#i)?[0-9]+(\\.[0-9]+)?|(#x)[0-9a-fA-F]+|(#o)[0-7]+|(#b)[01]+)(?=[\\s;()'\",\\[\\]])",
75
75
  "name": "constant.numeric.scheme"
76
76
  }
77
77
  ]
@@ -121,7 +121,7 @@
121
121
  "name": "punctuation.section.quoted.symbol.scheme"
122
122
  }
123
123
  },
124
- "match": "(')\\s*([0-9A-Za-z][0-9A-Za-z!$%&*+-./:<=>?@^_~]*)",
124
+ "match": "(')\\s*([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)",
125
125
  "name": "constant.other.symbol.scheme"
126
126
  },
127
127
  {
@@ -231,7 +231,7 @@
231
231
  "include": "#comment"
232
232
  },
233
233
  {
234
- "begin": "(?<=\\()(define)\\s+(\\()([0-9A-Za-z][0-9A-Za-z!$%&*+-./:<=>?@^_~]*)((\\s+([0-9A-Za-z][0-9A-Za-z!$%&*+-./:<=>?@^_~]*|[._]))*)\\s*(\\))",
234
+ "begin": "(?<=\\()(define)\\s+(\\()([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)((\\s+([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._]))*)\\s*(\\))",
235
235
  "captures": {
236
236
  "1": {
237
237
  "name": "keyword.control.scheme"
@@ -264,7 +264,7 @@
264
264
  ]
265
265
  },
266
266
  {
267
- "begin": "(?<=\\()(lambda)\\s+(\\()((?:([0-9A-Za-z][0-9A-Za-z!$%&*+-./:<=>?@^_~]*|[._])\\s+)*(?:([0-9A-Za-z][0-9A-Za-z!$%&*+-./:<=>?@^_~]*|[._]))?)(\\))",
267
+ "begin": "(?<=\\()(lambda)\\s+(\\()((?:([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._])\\s+)*(?:([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*|[._]))?)(\\))",
268
268
  "captures": {
269
269
  "1": {
270
270
  "name": "keyword.control.scheme"
@@ -295,7 +295,7 @@
295
295
  ]
296
296
  },
297
297
  {
298
- "begin": "(?<=\\()(define)\\s([0-9A-Za-z][0-9A-Za-z!$%&*+-./:<=>?@^_~]*)\\s*.*?",
298
+ "begin": "(?<=\\()(define)\\s([[:alnum:]][[:alnum:]!$%&*+-./:<=>?@^_~]*)\\s*.*?",
299
299
  "captures": {
300
300
  "1": {
301
301
  "name": "keyword.control.scheme"
@@ -334,15 +334,15 @@
334
334
  "include": "#constants"
335
335
  },
336
336
  {
337
- "match": "(?<=[(\\s])(#\\\\)(space|newline|tab)(?=[\\s)])",
337
+ "match": "(?<=[\\(\\s])(#\\\\)(space|newline|tab)(?=[\\s\\)])",
338
338
  "name": "constant.character.named.scheme"
339
339
  },
340
340
  {
341
- "match": "(?<=[(\\s])(#\\\\)x[0-9A-F]{2,4}(?=[\\s)])",
341
+ "match": "(?<=[\\(\\s])(#\\\\)x[0-9A-F]{2,4}(?=[\\s\\)])",
342
342
  "name": "constant.character.hex-literal.scheme"
343
343
  },
344
344
  {
345
- "match": "(?<=[(\\s])(#\\\\).(?=[\\s)])",
345
+ "match": "(?<=[\\(\\s])(#\\\\).(?=[\\s\\)])",
346
346
  "name": "constant.character.escape.scheme"
347
347
  },
348
348
  {
@@ -1122,7 +1122,7 @@
1122
1122
  "include": "#property_values"
1123
1123
  },
1124
1124
  {
1125
- "match": "[={}?;@]",
1125
+ "match": "[={}\\?;@]",
1126
1126
  "name": "invalid.illegal.scss"
1127
1127
  }
1128
1128
  ]
@@ -1315,7 +1315,7 @@
1315
1315
  ]
1316
1316
  }
1317
1317
  },
1318
- "match": "(?<=&)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\$|})+)(?=$|[\\s,.#)\\[:{>+~|]|/\\*)",
1318
+ "match": "(?<=&)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\$|})+)(?=$|[\\s,.\\#)\\[:{>+~|]|/\\*)",
1319
1319
  "name": "entity.other.attribute-name.parent-selector-suffix.css"
1320
1320
  },
1321
1321
  "properties": {
@@ -1566,7 +1566,7 @@
1566
1566
  "name": "string.quoted.single.attribute-value.scss"
1567
1567
  }
1568
1568
  },
1569
- "match": "(?i)(\\[)\\s*((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.?\\$|})+?)(?:\\s*([~|^$*]?=)\\s*(?:((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.?\\$|})+)|((\")(.*?)(\"))|((')(.*?)('))))?\\s*(\\])",
1569
+ "match": "(?xi)\n(\\[)\n\\s*\n(\n (?:\n [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\.?\\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+?\n)\n(?:\n \\s*([~|^$*]?=)\\s*\n (?:\n (\n (?:\n [-a-zA-Z_0-9]|[^\\x00-\\x7F] # Valid identifier characters\n | \\\\(?:[0-9a-fA-F]{1,6}|.) # Escape sequence\n | \\#\\{ # Interpolation (escaped to avoid Coffeelint errors)\n | \\.?\\$ # Possible start of interpolation variable\n | } # Possible end of interpolation\n )+\n )\n |\n ((\")(.*?)(\"))\n |\n ((')(.*?)('))\n )\n)?\n\\s*\n(\\])",
1570
1570
  "name": "meta.attribute-selector.scss"
1571
1571
  },
1572
1572
  "selector_class": {
@@ -1590,7 +1590,7 @@
1590
1590
  ]
1591
1591
  }
1592
1592
  },
1593
- "match": "(\\.)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.?\\$|})+)(?=$|[\\s,#)\\[:{>+~|]|\\.[^$]|/\\*|;)",
1593
+ "match": "(\\.)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.?\\$|})+)(?=$|[\\s,\\#)\\[:{>+~|]|\\.[^$]|/\\*|;)",
1594
1594
  "name": "entity.other.attribute-name.class.css"
1595
1595
  },
1596
1596
  "selector_custom": {
@@ -1618,7 +1618,7 @@
1618
1618
  ]
1619
1619
  }
1620
1620
  },
1621
- "match": "(\\#)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.?\\$|})+)(?=$|[\\s,#)\\[:{>+~|]|\\.[^$]|/\\*)",
1621
+ "match": "(\\#)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.?\\$|})+)(?=$|[\\s,\\#)\\[:{>+~|]|\\.[^$]|/\\*)",
1622
1622
  "name": "entity.other.attribute-name.id.css"
1623
1623
  },
1624
1624
  "selector_placeholder": {
@@ -1642,7 +1642,7 @@
1642
1642
  ]
1643
1643
  }
1644
1644
  },
1645
- "match": "(%)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.\\$|\\$|})+)(?=;|$|[\\s,#)\\[:{>+~|]|\\.[^$]|/\\*)",
1645
+ "match": "(%)((?:[-a-zA-Z_0-9]|[^\\x00-\\x7F]|\\\\(?:[0-9a-fA-F]{1,6}|.)|\\#\\{|\\.\\$|\\$|})+)(?=;|$|[\\s,\\#)\\[:{>+~|]|\\.[^$]|/\\*)",
1646
1646
  "name": "entity.other.attribute-name.placeholder.css"
1647
1647
  },
1648
1648
  "selector_pseudo_class": {
@@ -1864,7 +1864,7 @@
1864
1864
  "match": "\\b([\\w-]+)(\\.)(\\$[\\w-]+)\\b"
1865
1865
  },
1866
1866
  {
1867
- "match": "(\\$|--)[A-Za-z0-9_-]+\\b",
1867
+ "match": "(\\$|\\-\\-)[A-Za-z0-9_-]+\\b",
1868
1868
  "name": "variable.scss"
1869
1869
  }
1870
1870
  ]
@@ -55,7 +55,7 @@
55
55
  "name": "support.constant.property-value.blendfactors.shaderlab"
56
56
  },
57
57
  {
58
- "match": "\\[([a-zA-Z_]\\w*)\\](?!\\s*[a-zA-Z_]\\w*\\s*\\(\")",
58
+ "match": "\\[([a-zA-Z_][a-zA-Z0-9_]*)\\](?!\\s*[a-zA-Z_][a-zA-Z0-9_]*\\s*\\(\")",
59
59
  "name": "support.variable.reference.shaderlab"
60
60
  },
61
61
  {
@@ -73,7 +73,7 @@
73
73
  ]
74
74
  },
75
75
  {
76
- "match": "\\b([a-zA-Z_]\\w*)\\s*\\(",
76
+ "match": "\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*\\(",
77
77
  "name": "support.variable.declaration.shaderlab"
78
78
  },
79
79
  {
@@ -189,7 +189,7 @@
189
189
  "numbers": {
190
190
  "patterns": [
191
191
  {
192
- "match": "\\b(\\d+\\.?\\d*)\\b",
192
+ "match": "\\b([0-9]+\\.?[0-9]*)\\b",
193
193
  "name": "constant.numeric.shaderlab"
194
194
  }
195
195
  ]