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
@@ -86,7 +86,7 @@
86
86
  "include": "#graphql-description-singleline"
87
87
  },
88
88
  {
89
- "begin": "\\s*([_A-Za-z][_0-9A-Za-z]*)(?:\\s*(:))",
89
+ "begin": "\\s*([_A-Za-z][_0-9A-Za-z]*)\\s*(:)",
90
90
  "beginCaptures": {
91
91
  "1": {
92
92
  "name": "variable.parameter.graphql"
@@ -95,7 +95,7 @@
95
95
  "name": "punctuation.colon.graphql"
96
96
  }
97
97
  },
98
- "end": "(?=\\s*(?:(?:([_A-Za-z][_0-9A-Za-z]*)\\s*(:))|\\)))|\\s*(,)",
98
+ "end": "(?=\\s*(?:([_A-Za-z][_0-9A-Za-z]*)\\s*(:)|\\)))|\\s*(,)",
99
99
  "endCaptures": {
100
100
  "3": {
101
101
  "name": "punctuation.comma.graphql"
@@ -302,7 +302,7 @@
302
302
  "name": "meta.enum.graphql",
303
303
  "patterns": [
304
304
  {
305
- "begin": "\\s*({)",
305
+ "begin": "\\s*(\\{)",
306
306
  "beginCaptures": {
307
307
  "1": {
308
308
  "name": "punctuation.operation.graphql"
@@ -401,10 +401,10 @@
401
401
  "name": "constant.numeric.float.graphql"
402
402
  }
403
403
  },
404
- "match": "\\s*(-?(0|[1-9][0-9]*)(\\.[0-9]+)?((e|E)(\\+|-)?[0-9]+)?)"
404
+ "match": "\\s*(-?(0|[1-9][0-9]*)(\\.[0-9]+)?(([eE])([+\\-])?[0-9]+)?)"
405
405
  },
406
406
  "graphql-fragment-definition": {
407
- "begin": "\\s*(?:(\\bfragment\\b)\\s*([_A-Za-z][_0-9A-Za-z]*)?\\s*(?:(\\bon\\b)\\s*([_A-Za-z][_0-9A-Za-z]*)))",
407
+ "begin": "\\s*(\\bfragment\\b)\\s*([_A-Za-z][_0-9A-Za-z]*)?\\s*(\\bon\\b)\\s*([_A-Za-z][_0-9A-Za-z]*)",
408
408
  "captures": {
409
409
  "1": {
410
410
  "name": "keyword.fragment.graphql"
@@ -549,7 +549,7 @@
549
549
  "name": "keyword.operator.nulltype.graphql"
550
550
  }
551
551
  },
552
- "end": "\\s*(\\])(?:\\s*(!))?",
552
+ "end": "\\s*(])(?:\\s*(!))?",
553
553
  "name": "meta.type.list.graphql",
554
554
  "patterns": [
555
555
  {
@@ -583,7 +583,7 @@
583
583
  "name": "meta.brace.square.graphql"
584
584
  }
585
585
  },
586
- "end": "\\s*(\\])",
586
+ "end": "\\s*(])",
587
587
  "endCaptures": {
588
588
  "1": {
589
589
  "name": "meta.brace.square.graphql"
@@ -631,7 +631,7 @@
631
631
  "graphql-object-value": {
632
632
  "patterns": [
633
633
  {
634
- "begin": "\\s*+({)",
634
+ "begin": "\\s*+(\\{)",
635
635
  "beginCaptures": {
636
636
  "1": {
637
637
  "name": "meta.brace.curly.graphql"
@@ -714,7 +714,7 @@
714
714
  "end": "(?<=})",
715
715
  "patterns": [
716
716
  {
717
- "begin": "\\s*({)",
717
+ "begin": "\\s*(\\{)",
718
718
  "beginCaptures": {
719
719
  "1": {
720
720
  "name": "punctuation.operation.graphql"
@@ -734,7 +734,7 @@
734
734
  "name": "variable.arguments.graphql"
735
735
  }
736
736
  },
737
- "end": "(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(})))|\\s*(,)",
737
+ "end": "(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*([(:])|(})))|\\s*(,)",
738
738
  "endCaptures": {
739
739
  "5": {
740
740
  "name": "punctuation.comma.graphql"
@@ -798,7 +798,7 @@
798
798
  ]
799
799
  },
800
800
  "graphql-selection-set": {
801
- "begin": "\\s*({)",
801
+ "begin": "\\s*(\\{)",
802
802
  "beginCaptures": {
803
803
  "1": {
804
804
  "name": "punctuation.operation.graphql"
@@ -842,7 +842,7 @@
842
842
  ]
843
843
  },
844
844
  "graphql-skip-newlines": {
845
- "match": "\\s*\n"
845
+ "match": "\\s*\\n"
846
846
  },
847
847
  "graphql-string-content": {
848
848
  "patterns": [
@@ -851,7 +851,7 @@
851
851
  "name": "constant.character.escape.graphql"
852
852
  },
853
853
  {
854
- "match": "\\\\u([0-9a-fA-F]{4})",
854
+ "match": "\\\\u(\\h{4})",
855
855
  "name": "constant.character.escape.graphql"
856
856
  }
857
857
  ]
@@ -867,7 +867,7 @@
867
867
  }
868
868
  },
869
869
  "contentName": "string.quoted.double.graphql",
870
- "end": "\\s*+(?:((\"))|(\n))",
870
+ "end": "\\s*+(?:((\"))|(\\n))",
871
871
  "endCaptures": {
872
872
  "1": {
873
873
  "name": "string.quoted.double.graphql"
@@ -895,7 +895,7 @@
895
895
  "name": "variable.graphql"
896
896
  }
897
897
  },
898
- "end": "(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(})))|\\s*(,)",
898
+ "end": "(?=\\s*(([_A-Za-z][_0-9A-Za-z]*)\\s*([(:])|(})))|\\s*(,)",
899
899
  "endCaptures": {
900
900
  "5": {
901
901
  "name": "punctuation.comma.graphql"
@@ -961,7 +961,7 @@
961
961
  "name": "keyword.implements.graphql"
962
962
  }
963
963
  },
964
- "end": "\\s*(?={)",
964
+ "end": "\\s*(?=\\{)",
965
965
  "patterns": [
966
966
  {
967
967
  "captures": {
@@ -1015,7 +1015,7 @@
1015
1015
  ]
1016
1016
  },
1017
1017
  "graphql-type-object": {
1018
- "begin": "\\s*({)",
1018
+ "begin": "\\s*(\\{)",
1019
1019
  "beginCaptures": {
1020
1020
  "1": {
1021
1021
  "name": "punctuation.operation.graphql"
@@ -1173,7 +1173,7 @@
1173
1173
  "name": "punctuation.assignment.graphql"
1174
1174
  }
1175
1175
  },
1176
- "end": "(?=[\n,)])",
1176
+ "end": "(?=[\\n,)])",
1177
1177
  "patterns": [
1178
1178
  {
1179
1179
  "include": "#graphql-value"
@@ -1187,7 +1187,7 @@
1187
1187
  "name": "variable.parameter.graphql"
1188
1188
  }
1189
1189
  },
1190
- "end": "(?=\\s*((\\$?[_A-Za-z][_0-9A-Za-z]*)\\s*(\\(|:)|(}|\\))))|\\s*(,)",
1190
+ "end": "(?=\\s*((\\$?[_A-Za-z][_0-9A-Za-z]*)\\s*([(:])|([})])))|\\s*(,)",
1191
1191
  "endCaptures": {
1192
1192
  "5": {
1193
1193
  "name": "punctuation.comma.graphql"
@@ -1259,7 +1259,7 @@
1259
1259
  "match": "\\s*(\\$[_A-Za-z][_0-9A-Za-z]*)"
1260
1260
  },
1261
1261
  "native-interpolation": {
1262
- "begin": "\\s*(\\${)",
1262
+ "begin": "\\s*(\\$\\{)",
1263
1263
  "beginCaptures": {
1264
1264
  "1": {
1265
1265
  "name": "keyword.other.substitution.begin"
@@ -115,7 +115,7 @@
115
115
  "name": "punctuation.terminator.groovy"
116
116
  }
117
117
  },
118
- "match": "^\\s*(import)(?:\\s+(static)\\s+)\\b(?:\\s*([^ ;$]+)\\s*(;)?)?",
118
+ "match": "^\\s*(import)\\s+(static)\\s+\\b(?:\\s*([^ ;$]+)\\s*(;)?)?",
119
119
  "name": "meta.import.groovy"
120
120
  },
121
121
  {
@@ -176,7 +176,7 @@
176
176
  "name": "keyword.control.new.groovy"
177
177
  }
178
178
  },
179
- "end": "(?<=\\)|\\])(?!\\s*{)|(?<=})|(?=[;])|$",
179
+ "end": "(?<=[)\\]])(?!\\s*\\{)|(?<=})|(?=;)|$",
180
180
  "patterns": [
181
181
  {
182
182
  "begin": "(\\w+)\\s*(?=\\[)",
@@ -185,11 +185,11 @@
185
185
  "name": "storage.type.groovy"
186
186
  }
187
187
  },
188
- "end": "}|(?=\\s*(?:,|;|\\)))|$",
188
+ "end": "}|(?=\\s*[,;)])|$",
189
189
  "patterns": [
190
190
  {
191
191
  "begin": "\\[",
192
- "end": "\\]",
192
+ "end": "]",
193
193
  "patterns": [
194
194
  {
195
195
  "include": "#groovy"
@@ -197,7 +197,7 @@
197
197
  ]
198
198
  },
199
199
  {
200
- "begin": "{",
200
+ "begin": "\\{",
201
201
  "end": "(?=})",
202
202
  "patterns": [
203
203
  {
@@ -231,7 +231,7 @@
231
231
  ]
232
232
  },
233
233
  {
234
- "begin": "{",
234
+ "begin": "\\{",
235
235
  "end": "}",
236
236
  "name": "meta.inner-class.groovy",
237
237
  "patterns": [
@@ -244,7 +244,7 @@
244
244
  },
245
245
  "braces": {
246
246
  "begin": "\\{",
247
- "end": "\\}",
247
+ "end": "}",
248
248
  "patterns": [
249
249
  {
250
250
  "include": "#groovy-code"
@@ -252,7 +252,7 @@
252
252
  ]
253
253
  },
254
254
  "class": {
255
- "begin": "(?=\\w?[\\w\\s]*(?:class|(?:@)?interface|enum)\\s+\\w+)",
255
+ "begin": "(?=\\w?[\\w\\s]*(?:class|@?interface|enum)\\s+\\w+)",
256
256
  "end": "}",
257
257
  "endCaptures": {
258
258
  "0": {
@@ -276,7 +276,7 @@
276
276
  "name": "entity.name.type.class.groovy"
277
277
  }
278
278
  },
279
- "match": "(class|(?:@)?interface|enum)\\s+(\\w+)",
279
+ "match": "(class|@?interface|enum)\\s+(\\w+)",
280
280
  "name": "meta.class.identifier.groovy"
281
281
  },
282
282
  {
@@ -286,7 +286,7 @@
286
286
  "name": "storage.modifier.extends.groovy"
287
287
  }
288
288
  },
289
- "end": "(?={|implements)",
289
+ "end": "(?=\\{|implements)",
290
290
  "name": "meta.definition.class.inherited.classes.groovy",
291
291
  "patterns": [
292
292
  {
@@ -316,7 +316,7 @@
316
316
  ]
317
317
  },
318
318
  {
319
- "begin": "{",
319
+ "begin": "\\{",
320
320
  "end": "(?=})",
321
321
  "name": "meta.class.body.groovy",
322
322
  "patterns": [
@@ -342,10 +342,10 @@
342
342
  },
343
343
  "closures": {
344
344
  "begin": "\\{(?=.*?->)",
345
- "end": "\\}",
345
+ "end": "}",
346
346
  "patterns": [
347
347
  {
348
- "begin": "(?<=\\{)(?=[^\\}]*?->)",
348
+ "begin": "(?<=\\{)(?=[^}]*?->)",
349
349
  "end": "->",
350
350
  "endCaptures": {
351
351
  "0": {
@@ -389,7 +389,7 @@
389
389
  },
390
390
  {
391
391
  "begin": "(?=[^}])",
392
- "end": "(?=\\})",
392
+ "end": "(?=})",
393
393
  "patterns": [
394
394
  {
395
395
  "include": "#groovy-code"
@@ -461,13 +461,13 @@
461
461
  "enum-values": {
462
462
  "patterns": [
463
463
  {
464
- "begin": "(?<=;|^)\\s*\\b([A-Z0-9_]+)(?=\\s*(?:,|;|}|\\(|$))",
464
+ "begin": "(?<=;|^)\\s*\\b([A-Z0-9_]+)(?=\\s*(?:[,;}(]|$))",
465
465
  "beginCaptures": {
466
466
  "1": {
467
467
  "name": "constant.enum.name.groovy"
468
468
  }
469
469
  },
470
- "end": ",|;|(?=})|^(?!\\s*\\w+\\s*(?:,|$))",
470
+ "end": "[,;]|(?=})|^(?!\\s*\\w+\\s*(?:,|$))",
471
471
  "patterns": [
472
472
  {
473
473
  "begin": "\\(",
@@ -606,7 +606,7 @@
606
606
  "name": "keyword.control.assert.groovy"
607
607
  }
608
608
  },
609
- "end": "$|;|}",
609
+ "end": "$|[;}]",
610
610
  "name": "meta.declaration.assertion.groovy",
611
611
  "patterns": [
612
612
  {
@@ -635,11 +635,11 @@
635
635
  "name": "keyword.operator.in.groovy"
636
636
  },
637
637
  {
638
- "match": "\\?\\:",
638
+ "match": "\\?:",
639
639
  "name": "keyword.operator.elvis.groovy"
640
640
  },
641
641
  {
642
- "match": "\\*\\:",
642
+ "match": "\\*:",
643
643
  "name": "keyword.operator.spreadmap.groovy"
644
644
  },
645
645
  {
@@ -647,7 +647,7 @@
647
647
  "name": "keyword.operator.range.groovy"
648
648
  },
649
649
  {
650
- "match": "\\->",
650
+ "match": "->",
651
651
  "name": "keyword.operator.arrow.groovy"
652
652
  },
653
653
  {
@@ -669,7 +669,7 @@
669
669
  "name": "keyword.operator.ternary.groovy"
670
670
  }
671
671
  },
672
- "end": "(?=$|\\)|}|])",
672
+ "end": "(?=$|[)}\\]])",
673
673
  "name": "meta.evaluation.ternary.groovy",
674
674
  "patterns": [
675
675
  {
@@ -694,7 +694,7 @@
694
694
  "name": "keyword.operator.instanceof.groovy"
695
695
  },
696
696
  {
697
- "match": "(===|==|!=|<=|>=|<=>|<>|<|>|<<)",
697
+ "match": "(===|==|!=|<=|>=|<=>|<>|[<>]|<<)",
698
698
  "name": "keyword.operator.comparison.groovy"
699
699
  },
700
700
  {
@@ -702,11 +702,11 @@
702
702
  "name": "keyword.operator.assignment.groovy"
703
703
  },
704
704
  {
705
- "match": "(\\-\\-|\\+\\+)",
705
+ "match": "(--|\\+\\+)",
706
706
  "name": "keyword.operator.increment-decrement.groovy"
707
707
  },
708
708
  {
709
- "match": "(\\-|\\+|\\*|\\/|%)",
709
+ "match": "([\\-+*/%])",
710
710
  "name": "keyword.operator.arithmetic.groovy"
711
711
  },
712
712
  {
@@ -774,7 +774,7 @@
774
774
  "include": "#annotations"
775
775
  },
776
776
  {
777
- "begin": "(?=(?:\\w|<)[^\\(]*\\s+(?:[\\w$]|<)+\\s*\\()",
777
+ "begin": "(?=[\\w<][^(]*\\s+[\\w$<]+\\s*\\()",
778
778
  "end": "(?=[\\w$]+\\s*\\()",
779
779
  "name": "meta.method.return-type.java",
780
780
  "patterns": [
@@ -803,7 +803,7 @@
803
803
  "patterns": [
804
804
  {
805
805
  "begin": "(?=[^,)])",
806
- "end": "(?=,|\\))",
806
+ "end": "(?=[,)])",
807
807
  "name": "meta.method.parameter.groovy",
808
808
  "patterns": [
809
809
  {
@@ -817,7 +817,7 @@
817
817
  "name": "keyword.operator.assignment.groovy"
818
818
  }
819
819
  },
820
- "end": "(?=,|\\))",
820
+ "end": "(?=[,)])",
821
821
  "name": "meta.parameter.default.groovy",
822
822
  "patterns": [
823
823
  {
@@ -862,7 +862,7 @@
862
862
  "name": "storage.modifier.groovy"
863
863
  }
864
864
  },
865
- "end": "(?={|;)|^(?=\\s*(?:[^{\\s]|$))",
865
+ "end": "(?=[{;])|^(?=\\s*(?:[^{\\s]|$))",
866
866
  "name": "meta.throwables.groovy",
867
867
  "patterns": [
868
868
  {
@@ -871,7 +871,7 @@
871
871
  ]
872
872
  },
873
873
  {
874
- "begin": "{",
874
+ "begin": "\\{",
875
875
  "end": "(?=})",
876
876
  "name": "meta.method.body.java",
877
877
  "patterns": [
@@ -884,7 +884,7 @@
884
884
  },
885
885
  "methods": {
886
886
  "applyEndPatternLast": 1,
887
- "begin": "(?:(?<=;|^|{)(?=\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:(?:(?:void|boolean|byte|char|short|int|float|long|double)|(?:@?(?:[a-zA-Z]\\w*\\.)*[A-Z]+\\w*))[\\[\\]]*(?:<.*>)?))\\s+([^=]+\\s+)?\\w+\\s*\\())",
887
+ "begin": "(?<=;|^|\\{)(?=\\s*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|def|(?:(?:void|boolean|byte|char|short|int|float|long|double)|@?(?:[a-zA-Z]\\w*\\.)*[A-Z]+\\w*)[\\[\\]]*(?:<.*>)?)\\s+([^=]+\\s+)?\\w+\\s*\\()",
888
888
  "end": "}|(?=[^{])",
889
889
  "name": "meta.definition.method.groovy",
890
890
  "patterns": [
@@ -900,7 +900,7 @@
900
900
  "name": "punctuation.section.scope.groovy"
901
901
  }
902
902
  },
903
- "end": "\\}",
903
+ "end": "}",
904
904
  "patterns": [
905
905
  {
906
906
  "include": "#nest_curly"
@@ -910,7 +910,7 @@
910
910
  "numbers": {
911
911
  "patterns": [
912
912
  {
913
- "match": "((0(x|X)[0-9a-fA-F]*)|(\\+|-)?\\b(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\b",
913
+ "match": "((0([xX])\\h*)|([+\\-])?\\b(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))(([eE])([+\\-])?[0-9]+)?)([LlFfUuDdg]|UL|ul)?\\b",
914
914
  "name": "constant.numeric.groovy"
915
915
  }
916
916
  ]
@@ -919,7 +919,7 @@
919
919
  "patterns": [
920
920
  {
921
921
  "begin": "\\b((?:[a-z]\\w*\\.)*(?:[A-Z]+\\w*[a-z]+\\w*|UR[LI]))<",
922
- "end": ">|[^\\w\\s,\\?<\\[\\]]",
922
+ "end": "[>[^\\w\\s,?<\\[\\]]]",
923
923
  "name": "storage.type.generic.groovy",
924
924
  "patterns": [
925
925
  {
@@ -927,7 +927,7 @@
927
927
  },
928
928
  {
929
929
  "begin": "<",
930
- "end": ">|[^\\w\\s,\\[\\]<]",
930
+ "end": "[>[^\\w\\s,\\[\\]<]]",
931
931
  "name": "storage.type.generic.groovy"
932
932
  }
933
933
  ]
@@ -939,7 +939,7 @@
939
939
  "patterns": [
940
940
  {
941
941
  "begin": "\\[",
942
- "end": "\\]",
942
+ "end": "]",
943
943
  "patterns": [
944
944
  {
945
945
  "include": "#groovy"
@@ -958,7 +958,7 @@
958
958
  "patterns": [
959
959
  {
960
960
  "begin": "\\b((?:[a-zA-Z]\\w*\\.)*[A-Z]+\\w*[a-z]+\\w*)<",
961
- "end": ">|[^\\w\\s,\\?<\\[\\]]",
961
+ "end": "[>[^\\w\\s,?<\\[\\]]]",
962
962
  "name": "entity.other.inherited-class.groovy",
963
963
  "patterns": [
964
964
  {
@@ -966,7 +966,7 @@
966
966
  },
967
967
  {
968
968
  "begin": "<",
969
- "end": ">|[^\\w\\s,\\[\\]<]",
969
+ "end": "[>[^\\w\\s,\\[\\]<]]",
970
970
  "name": "storage.type.generic.groovy"
971
971
  }
972
972
  ]
@@ -1011,7 +1011,7 @@
1011
1011
  "primitive-arrays": {
1012
1012
  "patterns": [
1013
1013
  {
1014
- "match": "\\b(?:void|boolean|byte|char|short|int|float|long|double)(\\[\\])*\\b",
1014
+ "match": "\\b(?:void|boolean|byte|char|short|int|float|long|double)(\\[])*\\b",
1015
1015
  "name": "storage.type.primitive.array.groovy"
1016
1016
  }
1017
1017
  ]
@@ -1073,7 +1073,7 @@
1073
1073
  "storage-modifiers": {
1074
1074
  "patterns": [
1075
1075
  {
1076
- "match": "\\b(private|protected|public)\\b",
1076
+ "match": "\\b(p(?:rivate|rotected|ublic))\\b",
1077
1077
  "name": "storage.modifier.access-control.groovy"
1078
1078
  },
1079
1079
  {
@@ -1139,7 +1139,7 @@
1139
1139
  "name": "punctuation.section.embedded.groovy"
1140
1140
  }
1141
1141
  },
1142
- "end": "\\}",
1142
+ "end": "}",
1143
1143
  "name": "source.groovy.embedded.source",
1144
1144
  "patterns": [
1145
1145
  {
@@ -1243,7 +1243,7 @@
1243
1243
  "name": "punctuation.definition.structure.begin.groovy"
1244
1244
  }
1245
1245
  },
1246
- "end": "\\]",
1246
+ "end": "]",
1247
1247
  "endCaptures": {
1248
1248
  "0": {
1249
1249
  "name": "punctuation.definition.structure.end.groovy"
@@ -1318,7 +1318,7 @@
1318
1318
  "applyEndPatternLast": 1,
1319
1319
  "patterns": [
1320
1320
  {
1321
- "begin": "(?:(?=(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|(?:def)|(?:void|boolean|byte|char|short|int|float|long|double)|(?:(?:[a-z]\\w*\\.)*[A-Z]+\\w*))\\s+[\\w\\d_<>\\[\\],\\s]+(?:=|$)))",
1321
+ "begin": "(?=(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|def|(?:void|boolean|byte|char|short|int|float|long|double)|(?:[a-z]\\w*\\.)*[A-Z]+\\w*)\\s+[\\w\\d_<>\\[\\],\\s]+(?:=|$))",
1322
1322
  "end": ";|$",
1323
1323
  "name": "meta.definition.variable.groovy",
1324
1324
  "patterns": [
@@ -1331,7 +1331,7 @@
1331
1331
  "name": "constant.variable.groovy"
1332
1332
  }
1333
1333
  },
1334
- "match": "([A-Z_0-9]+)\\s+(?=\\=)"
1334
+ "match": "([A-Z_0-9]+)\\s+(?==)"
1335
1335
  },
1336
1336
  {
1337
1337
  "captures": {
@@ -1339,7 +1339,7 @@
1339
1339
  "name": "meta.definition.variable.name.groovy"
1340
1340
  }
1341
1341
  },
1342
- "match": "(\\w[^\\s,]*)\\s+(?=\\=)"
1342
+ "match": "(\\w[^\\s,]*)\\s+(?==)"
1343
1343
  },
1344
1344
  {
1345
1345
  "begin": "=",