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
@@ -59,7 +59,7 @@
59
59
  ],
60
60
  "repository": {
61
61
  "abstract_definition": {
62
- "begin": "\\b(static\\s+)?(abstract)\\s+(member)?(\\s+\\[<.*>\\])?\\s*([_A-Za-z0-9,\\._`\\s]+)(<)?",
62
+ "begin": "\\b(static\\s+)?(abstract)\\s+(member)?(\\s+\\[\\<.*\\>\\])?\\s*([_[:alpha:]0-9,\\._`\\s]+)(<)?",
63
63
  "beginCaptures": {
64
64
  "1": {
65
65
  "name": "keyword.fsharp"
@@ -106,7 +106,7 @@
106
106
  "name": "entity.name.type.fsharp"
107
107
  }
108
108
  },
109
- "match": "(\\?{0,1})([A-Za-z0-9'`^._ ]+)\\s*(:)((?!with\\b)\\b([\\w0-9'`^._ ]+)){0,1}"
109
+ "match": "(\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\s*(:)((?!with\\b)\\b([\\w0-9'`^._ ]+)){0,1}"
110
110
  },
111
111
  {
112
112
  "captures": {
@@ -188,7 +188,7 @@
188
188
  "name": "keyword.symbol.fsharp"
189
189
  }
190
190
  },
191
- "match": "[A-Za-z0-9'`^_ ]+(:)"
191
+ "match": "[[:alpha:]0-9'`^_ ]+(:)"
192
192
  },
193
193
  {
194
194
  "captures": {
@@ -196,7 +196,7 @@
196
196
  "name": "entity.name.type.fsharp"
197
197
  }
198
198
  },
199
- "match": "([A-Za-z0-9'`^_ ]+)"
199
+ "match": "([[:alpha:]0-9'`^_ ]+)"
200
200
  },
201
201
  {
202
202
  "include": "#anonymous_record_declaration"
@@ -209,8 +209,8 @@
209
209
  "attributes": {
210
210
  "patterns": [
211
211
  {
212
- "begin": "\\[<",
213
- "end": ">\\]|\\]",
212
+ "begin": "\\[\\<",
213
+ "end": "\\>\\]|\\]",
214
214
  "name": "support.function.attribute.fsharp",
215
215
  "patterns": [
216
216
  {
@@ -354,7 +354,7 @@
354
354
  }
355
355
  },
356
356
  "comments": "SRTP syntax support",
357
- "end": "(\\))\\s*((?=,)|(?==))",
357
+ "end": "(\\))\\s*((?=,)|(?=\\=))",
358
358
  "endCaptures": {
359
359
  "1": {
360
360
  "name": "keyword.symbol.fsharp"
@@ -367,7 +367,7 @@
367
367
  "name": "entity.name.type.fsharp"
368
368
  }
369
369
  },
370
- "match": "(\\^[A-Za-z0-9'._]+)"
370
+ "match": "(\\^[[:alpha:]0-9'._]+)"
371
371
  },
372
372
  {
373
373
  "include": "#variables"
@@ -387,7 +387,7 @@
387
387
  "name": "keyword.symbol.fsharp"
388
388
  }
389
389
  },
390
- "end": "(\\)\\s*(([?A-Za-z0-9'`^._ ]*)))",
390
+ "end": "(\\)\\s*(([?[:alpha:]0-9'`^._ ]*)))",
391
391
  "endCaptures": {
392
392
  "1": {
393
393
  "name": "keyword.symbol.fsharp"
@@ -403,7 +403,7 @@
403
403
  ]
404
404
  },
405
405
  {
406
- "begin": "(:)\\s*(\\^[A-Za-z0-9'._]+)\\s*(when)",
406
+ "begin": "(:)\\s*(\\^[[:alpha:]0-9'._]+)\\s*(when)",
407
407
  "beginCaptures": {
408
408
  "1": {
409
409
  "name": "keyword.symbol.fsharp"
@@ -433,7 +433,7 @@
433
433
  }
434
434
  },
435
435
  "comment": "Because we first capture the keywords, we can capture what looks like a word and assume it's an entity definition",
436
- "match": "([A-Za-z0-9'^._]+)"
436
+ "match": "([[:alpha:]0-9'^._]+)"
437
437
  },
438
438
  {
439
439
  "match": "(\\(|\\))",
@@ -450,7 +450,7 @@
450
450
  "name": "entity.name.type.fsharp"
451
451
  }
452
452
  },
453
- "match": "(:)\\s*([?A-Za-z0-9'`^._ ]+)"
453
+ "match": "(:)\\s*([?[:alpha:]0-9'`^._ ]+)"
454
454
  },
455
455
  {
456
456
  "captures": {
@@ -464,7 +464,7 @@
464
464
  "name": "entity.name.type.fsharp"
465
465
  }
466
466
  },
467
- "match": "(->)\\s*(\\()?\\s*([?A-Za-z0-9'`^._ ]+)*"
467
+ "match": "(->)\\s*(\\()?\\s*([?[:alpha:]0-9'`^._ ]+)*"
468
468
  },
469
469
  {
470
470
  "begin": "(\\*)\\s*(\\()",
@@ -476,7 +476,7 @@
476
476
  "name": "keyword.symbol.fsharp"
477
477
  }
478
478
  },
479
- "end": "(\\)\\s*(([?A-Za-z0-9'`^._ ]+))*)",
479
+ "end": "(\\)\\s*(([?[:alpha:]0-9'`^._ ]+))*)",
480
480
  "endCaptures": {
481
481
  "1": {
482
482
  "name": "keyword.symbol.fsharp"
@@ -492,7 +492,7 @@
492
492
  ]
493
493
  },
494
494
  {
495
- "begin": "(\\*)(\\s*([?A-Za-z0-9'`^._ ]+))*",
495
+ "begin": "(\\*)(\\s*([?[:alpha:]0-9'`^._ ]+))*",
496
496
  "beginCaptures": {
497
497
  "1": {
498
498
  "name": "keyword.symbol.fsharp"
@@ -514,7 +514,7 @@
514
514
  ]
515
515
  },
516
516
  {
517
- "begin": "(<+(?![\\s]*\\)))",
517
+ "begin": "(<+(?![[:space:]]*\\)))",
518
518
  "beginCaptures": {
519
519
  "1": {
520
520
  "name": "keyword.symbol.fsharp"
@@ -570,7 +570,7 @@
570
570
  "common_declaration": {
571
571
  "patterns": [
572
572
  {
573
- "begin": "\\s*(->)\\s*([A-Za-z0-9'`^._ ]+)(<)",
573
+ "begin": "\\s*(->)\\s*([[:alpha:]0-9'`^._ ]+)(<)",
574
574
  "beginCaptures": {
575
575
  "1": {
576
576
  "name": "keyword.symbol.arrow.fsharp"
@@ -595,7 +595,7 @@
595
595
  "name": "entity.name.type.fsharp"
596
596
  }
597
597
  },
598
- "match": "([A-Za-z0-9'`^._ ]+)"
598
+ "match": "([[:alpha:]0-9'`^._ ]+)"
599
599
  },
600
600
  {
601
601
  "include": "#keywords"
@@ -617,7 +617,7 @@
617
617
  "include": "#anonymous_record_declaration"
618
618
  },
619
619
  {
620
- "begin": "(\\?{0,1})([A-Za-z0-9'`^._ ]+)\\s*(:)(\\s*([?A-Za-z0-9'`^._ ]+)(<))",
620
+ "begin": "(\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\s*(:)(\\s*([?[:alpha:]0-9'`^._ ]+)(<))",
621
621
  "beginCaptures": {
622
622
  "1": {
623
623
  "name": "keyword.symbol.fsharp"
@@ -648,7 +648,7 @@
648
648
  "name": "entity.name.type.fsharp"
649
649
  }
650
650
  },
651
- "match": "([A-Za-z0-9'`^._ ]+)"
651
+ "match": "([[:alpha:]0-9'`^._ ]+)"
652
652
  },
653
653
  {
654
654
  "include": "#keywords"
@@ -674,11 +674,11 @@
674
674
  "name": "keyword.symbol.fsharp"
675
675
  },
676
676
  {
677
- "match": "\\b-?\\d[0-9_]*((\\.(?!\\.)(\\d[0-9_]*([eE][+-]??\\d[0-9_]*)?)?)|([eE][+-]??\\d[0-9_]*))",
677
+ "match": "\\b-?[0-9][0-9_]*((\\.(?!\\.)([0-9][0-9_]*([eE][+-]??[0-9][0-9_]*)?)?)|([eE][+-]??[0-9][0-9_]*))",
678
678
  "name": "constant.numeric.float.fsharp"
679
679
  },
680
680
  {
681
- "match": "\\b(-?((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(0(o|O)[0-7][0-7_]*)|(0(b|B)[01][01_]*)|(\\d[0-9_]*)))",
681
+ "match": "\\b(-?((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(0(o|O)[0-7][0-7_]*)|(0(b|B)[01][01_]*)|([0-9][0-9_]*)))",
682
682
  "name": "constant.numeric.integer.nativeint.fsharp"
683
683
  },
684
684
  {
@@ -694,7 +694,7 @@
694
694
  "definition": {
695
695
  "patterns": [
696
696
  {
697
- "begin": "\\b(let mutable|static let mutable|static let|let inline|let|and|member val|member inline|static member inline|static member val|static member|default|member|override|let!)(\\s+rec|mutable)?(\\s+\\[<.*>\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_A-Za-z]([_A-Za-z0-9\\._]+)*|``[_A-Za-z]([_A-Za-z0-9\\._`\\s]+|(?<=,)\\s)*)?",
697
+ "begin": "\\b(let mutable|static let mutable|static let|let inline|let|and|member val|member inline|static member inline|static member val|static member|default|member|override|let!)(\\s+rec|mutable)?(\\s+\\[\\<.*\\>\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?<=,)\\s)*)?",
698
698
  "beginCaptures": {
699
699
  "1": {
700
700
  "name": "keyword.fsharp"
@@ -712,7 +712,7 @@
712
712
  "name": "variable.fsharp"
713
713
  }
714
714
  },
715
- "end": "\\s*((with\\b)|(=|\\n+=|(?<==)))",
715
+ "end": "\\s*((with\\b)|(=|\\n+=|(?<=\\=)))",
716
716
  "endCaptures": {
717
717
  "2": {
718
718
  "name": "keyword.fsharp"
@@ -729,7 +729,7 @@
729
729
  ]
730
730
  },
731
731
  {
732
- "begin": "\\b(use|use!|and|and!)\\s+(\\[[^-=]*\\]|[_A-Za-z]([_A-Za-z0-9\\._]+)*|``[_A-Za-z]([_A-Za-z0-9\\._`\\s]+|(?<=,)\\s)*)?",
732
+ "begin": "\\b(use|use!|and|and!)\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?<=,)\\s)*)?",
733
733
  "beginCaptures": {
734
734
  "1": {
735
735
  "name": "keyword.fsharp"
@@ -749,13 +749,13 @@
749
749
  ]
750
750
  },
751
751
  {
752
- "begin": "(?<=with|and)\\s*\\b((get|set)\\s*(?=\\())(\\[[^-=]*\\]|[_A-Za-z]([_A-Za-z0-9\\._]+)*|``[_A-Za-z]([_A-Za-z0-9\\._`\\s]+|(?<=,)\\s)*)?",
752
+ "begin": "(?<=with|and)\\s*\\b((get|set)\\s*(?=\\())(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\._`\\s]+|(?<=,)\\s)*)?",
753
753
  "beginCaptures": {
754
754
  "4": {
755
755
  "name": "variable.fsharp"
756
756
  }
757
757
  },
758
- "end": "\\s*(=|\\n+=|(?<==))",
758
+ "end": "\\s*(=|\\n+=|(?<=\\=))",
759
759
  "endCaptures": {
760
760
  "1": {
761
761
  "name": "keyword.symbol.fsharp"
@@ -769,7 +769,7 @@
769
769
  ]
770
770
  },
771
771
  {
772
- "begin": "\\b(static val mutable|val mutable|val inline|val)(\\s+rec|mutable)?(\\s+\\[<.*>\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_A-Za-z]([_A-Za-z0-9,\\._]+)*|``[_A-Za-z]([_A-Za-z0-9,\\._`\\s]+|(?<=,)\\s)*)?",
772
+ "begin": "\\b(static val mutable|val mutable|val inline|val)(\\s+rec|mutable)?(\\s+\\[\\<.*\\>\\])?\\s*(private|internal|public)?\\s+(\\[[^-=]*\\]|[_[:alpha:]]([_[:alpha:]0-9,\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9,\\._`\\s]+|(?<=,)\\s)*)?",
773
773
  "beginCaptures": {
774
774
  "1": {
775
775
  "name": "keyword.fsharp"
@@ -871,7 +871,7 @@
871
871
  "name": "entity.name.type.fsharp"
872
872
  }
873
873
  },
874
- "match": "([A-Za-z0-9'`<>^._]+|``[A-Za-z0-9' <>^._]+``)\\s*(:)\\s*([A-Za-z0-9'`<>^._]+|``[A-Za-z0-9' <>^._]+``)"
874
+ "match": "([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\\s*(:)\\s*([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)"
875
875
  },
876
876
  {
877
877
  "captures": {
@@ -879,7 +879,7 @@
879
879
  "name": "entity.name.type.fsharp"
880
880
  }
881
881
  },
882
- "match": "(``([A-Za-z0-9'^._ ]+)``|[A-Za-z0-9'`^._]+)"
882
+ "match": "(``([[:alpha:]0-9'^._ ]+)``|[[:alpha:]0-9'`^._]+)"
883
883
  },
884
884
  {
885
885
  "include": "#anonymous_record_declaration"
@@ -939,7 +939,7 @@
939
939
  "name": "entity.name.type.fsharp"
940
940
  }
941
941
  },
942
- "match": "(('|\\^)[A-Za-z0-9'._]+)"
942
+ "match": "(('|\\^)[[:alpha:]0-9'._]+)"
943
943
  },
944
944
  {
945
945
  "include": "#variables"
@@ -950,7 +950,7 @@
950
950
  ]
951
951
  },
952
952
  {
953
- "match": "\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let!|return!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b",
953
+ "match": "\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let\\!|return\\!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use\\!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b",
954
954
  "name": "keyword.fsharp"
955
955
  },
956
956
  {
@@ -966,7 +966,7 @@
966
966
  "name": "entity.name.type.fsharp"
967
967
  }
968
968
  },
969
- "match": "(('|\\^)[A-Za-z0-9'._]+)"
969
+ "match": "(('|\\^)[[:alpha:]0-9'._]+)"
970
970
  },
971
971
  {
972
972
  "begin": "(<)",
@@ -988,7 +988,7 @@
988
988
  "name": "entity.name.type.fsharp"
989
989
  }
990
990
  },
991
- "match": "(('|\\^)[A-Za-z0-9'._]+)"
991
+ "match": "(('|\\^)[[:alpha:]0-9'._]+)"
992
992
  },
993
993
  {
994
994
  "include": "#tuple_signature"
@@ -1018,7 +1018,7 @@
1018
1018
  "name": "entity.name.type.fsharp"
1019
1019
  }
1020
1020
  },
1021
- "match": "(([?A-Za-z0-9'`^._ ]+))+"
1021
+ "match": "(([?[:alpha:]0-9'`^._ ]+))+"
1022
1022
  },
1023
1023
  {
1024
1024
  "include": "#tuple_signature"
@@ -1055,7 +1055,7 @@
1055
1055
  "name": "storage.modifier"
1056
1056
  },
1057
1057
  {
1058
- "match": "\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b",
1058
+ "match": "\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use\\!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\b",
1059
1059
  "name": "keyword.fsharp"
1060
1060
  },
1061
1061
  {
@@ -1063,11 +1063,11 @@
1063
1063
  "name": "keyword.control"
1064
1064
  },
1065
1065
  {
1066
- "match": "(->|<-)",
1066
+ "match": "(\\->|\\<\\-)",
1067
1067
  "name": "keyword.symbol.arrow.fsharp"
1068
1068
  },
1069
1069
  {
1070
- "match": "[.?]*(&&&|\\|\\|\\||\\^\\^\\^|~~~|~\\+|~-|<<<|>>>|\\|>|:>|:\\?>|:|\\[|\\]|\\;|<>|=|@|\\|\\||&&|&|%|{|}|\\||_|\\.\\.|\\,|\\+|-|\\*|\\/|\\^|!|>|>=|>>|<|<=|\\(|\\)|<<)[.?]*",
1070
+ "match": "[.?]*(&&&|\\|\\|\\||\\^\\^\\^|~~~|~\\+|~\\-|<<<|>>>|\\|>|:>|:\\?>|:|\\[|\\]|\\;|<>|=|@|\\|\\||&&|&|%|{|}|\\||_|\\.\\.|\\,|\\+|\\-|\\*|\\/|\\^|\\!|\\>|\\>\\=|\\>\\>|\\<|\\<\\=|\\(|\\)|\\<\\<)[.?]*",
1071
1071
  "name": "keyword.symbol.fsharp"
1072
1072
  }
1073
1073
  ]
@@ -1094,7 +1094,7 @@
1094
1094
  }
1095
1095
  },
1096
1096
  "comments": "SRTP syntax support",
1097
- "end": "(\\))\\s*((?=,)|(?==))",
1097
+ "end": "(\\))\\s*((?=,)|(?=\\=))",
1098
1098
  "endCaptures": {
1099
1099
  "1": {
1100
1100
  "name": "keyword.symbol.fsharp"
@@ -1126,7 +1126,7 @@
1126
1126
  "name": "entity.name.type.fsharp"
1127
1127
  }
1128
1128
  },
1129
- "match": "(\\^[A-Za-z0-9'._]+)"
1129
+ "match": "(\\^[[:alpha:]0-9'._]+)"
1130
1130
  },
1131
1131
  {
1132
1132
  "include": "#variables"
@@ -1142,7 +1142,7 @@
1142
1142
  "name": "entity.name.type.fsharp"
1143
1143
  }
1144
1144
  },
1145
- "match": "(\\^[A-Za-z0-9'._]+)"
1145
+ "match": "(\\^[[:alpha:]0-9'._]+)"
1146
1146
  },
1147
1147
  {
1148
1148
  "match": "\\b(and|when|or)\\b",
@@ -1167,7 +1167,7 @@
1167
1167
  "name": "entity.name.type.fsharp"
1168
1168
  }
1169
1169
  },
1170
- "match": "(\\?{0,1})([A-Za-z0-9'`^._]+|``[A-Za-z0-9'`^:,._ ]+``)\\s*(:{0,1})(\\s*([?A-Za-z0-9'`<>._ ]+)){0,1}"
1170
+ "match": "(\\?{0,1})([[:alpha:]0-9'`^._]+|``[[:alpha:]0-9'`^:,._ ]+``)\\s*(:{0,1})(\\s*([?[:alpha:]0-9'`<>._ ]+)){0,1}"
1171
1171
  },
1172
1172
  {
1173
1173
  "include": "#keywords"
@@ -1177,7 +1177,7 @@
1177
1177
  "modules": {
1178
1178
  "patterns": [
1179
1179
  {
1180
- "begin": "\\b(namespace global)|\\b(namespace|module)\\s*(public|internal|private|rec)?\\s+([A-Za-z|``][A-Za-z0-9'_. ]*)",
1180
+ "begin": "\\b(namespace global)|\\b(namespace|module)\\s*(public|internal|private|rec)?\\s+([[:alpha:]|``][[:alpha:]0-9'_. ]*)",
1181
1181
  "beginCaptures": {
1182
1182
  "1": {
1183
1183
  "name": "keyword.fsharp"
@@ -1209,13 +1209,13 @@
1209
1209
  "name": "entity.name.section.fsharp"
1210
1210
  }
1211
1211
  },
1212
- "match": "(\\.)([A-Z][A-Za-z0-9'_]*)",
1212
+ "match": "(\\.)([A-Z][[:alpha:]0-9'_]*)",
1213
1213
  "name": "entity.name.section.fsharp"
1214
1214
  }
1215
1215
  ]
1216
1216
  },
1217
1217
  {
1218
- "begin": "\\b(open type|open)\\s+([A-Za-z|``][A-Za-z0-9'_]*)(?=(\\.[A-Z][A-Za-z0-9_]*)*)",
1218
+ "begin": "\\b(open type|open)\\s+([[:alpha:]|``][[:alpha:]0-9'_]*)(?=(\\.[A-Z][[:alpha:]0-9_]*)*)",
1219
1219
  "beginCaptures": {
1220
1220
  "1": {
1221
1221
  "name": "keyword.fsharp"
@@ -1236,7 +1236,7 @@
1236
1236
  "name": "entity.name.section.fsharp"
1237
1237
  }
1238
1238
  },
1239
- "match": "(\\.)([A-Za-z][A-Za-z0-9'_]*)",
1239
+ "match": "(\\.)([[:alpha:]][[:alpha:]0-9'_]*)",
1240
1240
  "name": "entity.name.section.fsharp"
1241
1241
  },
1242
1242
  {
@@ -1245,7 +1245,7 @@
1245
1245
  ]
1246
1246
  },
1247
1247
  {
1248
- "begin": "^\\s*(module)\\s+([A-Z][A-Za-z0-9'_]*)\\s*(=)\\s*([A-Z][A-Za-z0-9'_]*)",
1248
+ "begin": "^\\s*(module)\\s+([A-Z][[:alpha:]0-9'_]*)\\s*(=)\\s*([A-Z][[:alpha:]0-9'_]*)",
1249
1249
  "beginCaptures": {
1250
1250
  "1": {
1251
1251
  "name": "keyword.fsharp"
@@ -1272,7 +1272,7 @@
1272
1272
  "name": "entity.name.section.fsharp"
1273
1273
  }
1274
1274
  },
1275
- "match": "(\\.)([A-Z][A-Za-z0-9'_]*)",
1275
+ "match": "(\\.)([A-Z][[:alpha:]0-9'_]*)",
1276
1276
  "name": "entity.name.section.fsharp"
1277
1277
  }
1278
1278
  ]
@@ -1294,7 +1294,7 @@
1294
1294
  "include": "#comments"
1295
1295
  },
1296
1296
  {
1297
- "begin": "(((mutable)\\s[A-Za-z]+)|[A-Za-z0-9'`<>^._]*)\\s*((?<!:):(?!:))\\s*",
1297
+ "begin": "(((mutable)\\s[[:alpha:]]+)|[[:alpha:]0-9'`<>^._]*)\\s*((?<!:):(?!:))\\s*",
1298
1298
  "beginCaptures": {
1299
1299
  "3": {
1300
1300
  "name": "keyword.fsharp"
@@ -1319,7 +1319,7 @@
1319
1319
  "name": "entity.name.type.fsharp"
1320
1320
  }
1321
1321
  },
1322
- "match": "([A-Za-z0-9'`^_ ]+)"
1322
+ "match": "([[:alpha:]0-9'`^_ ]+)"
1323
1323
  },
1324
1324
  {
1325
1325
  "include": "#keywords"
@@ -1374,7 +1374,7 @@
1374
1374
  "name": "variable.parameter.fsharp"
1375
1375
  }
1376
1376
  },
1377
- "match": "[A-Za-z0-9'`^_ ]+(=)([A-Za-z0-9'`^_ ]+)"
1377
+ "match": "[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)"
1378
1378
  },
1379
1379
  {
1380
1380
  "begin": "({)",
@@ -1399,7 +1399,7 @@
1399
1399
  "name": "variable.parameter.fsharp"
1400
1400
  }
1401
1401
  },
1402
- "match": "[A-Za-z0-9'`^_ ]+(=)([A-Za-z0-9'`^_ ]+)"
1402
+ "match": "[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)"
1403
1403
  },
1404
1404
  {
1405
1405
  "include": "#record_signature"
@@ -1423,7 +1423,7 @@
1423
1423
  "name": "storage.modifier.fsharp"
1424
1424
  }
1425
1425
  },
1426
- "end": "\\s*((with)|((as)\\s+([A-Za-z0-9']+))|(=)|[\\n=]|(\\(\\)))",
1426
+ "end": "\\s*((with)|((as)\\s+([[:alpha:]0-9']+))|(=)|[\\n=]|(\\(\\)))",
1427
1427
  "endCaptures": {
1428
1428
  "2": {
1429
1429
  "name": "keyword.fsharp"
@@ -1458,7 +1458,7 @@
1458
1458
  "name": "entity.name.type.fsharp"
1459
1459
  }
1460
1460
  },
1461
- "match": "([A-Za-z0-9'^._]+|``[A-Za-z0-9'`^:,._ ]+``)"
1461
+ "match": "([[:alpha:]0-9'^._]+|``[[:alpha:]0-9'`^:,._ ]+``)"
1462
1462
  },
1463
1463
  {
1464
1464
  "begin": "(<)",
@@ -1480,7 +1480,7 @@
1480
1480
  "name": "entity.name.type.fsharp"
1481
1481
  }
1482
1482
  },
1483
- "match": "(('|\\^)``[A-Za-z0-9`^:,._ ]+``|('|\\^)[A-Za-z0-9`^:._]+)"
1483
+ "match": "(('|\\^)``[[:alpha:]0-9`^:,._ ]+``|('|\\^)[[:alpha:]0-9`^:._]+)"
1484
1484
  },
1485
1485
  {
1486
1486
  "match": "\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\b",
@@ -1637,11 +1637,11 @@
1637
1637
  "name": "punctuation.separator.string.ignore-eol.fsharp"
1638
1638
  },
1639
1639
  {
1640
- "match": "\\\\(['\"\\\\abfnrtv]|([01]\\d\\d|2[0-4]\\d|25[0-5])|(x[0-9a-fA-F]{2})|(u[0-9a-fA-F]{4})|(U00(0[0-9a-fA-F]|10)[0-9a-fA-F]{4}))",
1640
+ "match": "\\\\(['\"\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x[0-9a-fA-F]{2})|(u[0-9a-fA-F]{4})|(U00(0[0-9a-fA-F]|10)[0-9a-fA-F]{4}))",
1641
1641
  "name": "constant.character.string.escape.fsharp"
1642
1642
  },
1643
1643
  {
1644
- "match": "\\\\((\\d{1,3})|(x[^\\s]{0,2})|(u[^\\s]{0,4})|(U[^\\s]{0,8})|[^\\s])",
1644
+ "match": "\\\\(([0-9]{1,3})|(x[^\\s]{0,2})|(u[^\\s]{0,4})|(U[^\\s]{0,8})|[^\\s])",
1645
1645
  "name": "invalid.illegal.character.string.fsharp"
1646
1646
  },
1647
1647
  {
@@ -1688,7 +1688,7 @@
1688
1688
  "name": "entity.name.type.fsharp"
1689
1689
  }
1690
1690
  },
1691
- "match": "(\\^[A-Za-z0-9'._]+)"
1691
+ "match": "(\\^[[:alpha:]0-9'._]+)"
1692
1692
  },
1693
1693
  {
1694
1694
  "match": "\\b(and|when|or)\\b",
@@ -1725,7 +1725,7 @@
1725
1725
  "name": "keyword.symbol.fsharp"
1726
1726
  }
1727
1727
  },
1728
- "match": "(static member|member)\\s*([A-Za-z0-9'`<>^._]+|``[A-Za-z0-9' <>^._]+``)\\s*(:)"
1728
+ "match": "(static member|member)\\s*([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\\s*(:)"
1729
1729
  },
1730
1730
  {
1731
1731
  "include": "#compiler_directives"
@@ -1781,7 +1781,7 @@
1781
1781
  "name": "entity.name.type.fsharp"
1782
1782
  }
1783
1783
  },
1784
- "match": "(([?A-Za-z0-9'`^._ ]+))+"
1784
+ "match": "(([?[:alpha:]0-9'`^._ ]+))+"
1785
1785
  },
1786
1786
  {
1787
1787
  "begin": "(\\()",
@@ -1803,7 +1803,7 @@
1803
1803
  "name": "entity.name.type.fsharp"
1804
1804
  }
1805
1805
  },
1806
- "match": "(([?A-Za-z0-9'`^._ ]+))+"
1806
+ "match": "(([?[:alpha:]0-9'`^._ ]+))+"
1807
1807
  },
1808
1808
  {
1809
1809
  "include": "#tuple_signature"
@@ -1830,7 +1830,7 @@
1830
1830
  "name": "variable.parameter.fsharp"
1831
1831
  }
1832
1832
  },
1833
- "match": "(\\?{0,1})(``[A-Za-z0-9'`^:,._ ]+``|(?!private|struct\\b)\\b[\\wA-Za-z0-9'`<>^._ ]+)"
1833
+ "match": "(\\?{0,1})(``[[:alpha:]0-9'`^:,._ ]+``|(?!private|struct\\b)\\b[\\w[:alpha:]0-9'`<>^._ ]+)"
1834
1834
  }
1835
1835
  ]
1836
1836
  }
@@ -125,19 +125,19 @@
125
125
  "name": "constant.language.gdresource"
126
126
  },
127
127
  {
128
- "match": "(?<!\\w)([+\\-]?(0|([1-9]((\\d|_\\d)+)?))(?:(?:\\.(0|([1-9]((\\d|_\\d)+)?)))?[eE][+\\-]?[1-9]_?\\d*|(?:\\.[0-9_]*)))(?!\\w)",
128
+ "match": "(?<!\\w)([\\+\\-]?(0|([1-9](([0-9]|_[0-9])+)?))(?:(?:\\.(0|([1-9](([0-9]|_[0-9])+)?)))?[eE][\\+\\-]?[1-9]_?[0-9]*|(?:\\.[0-9_]*)))(?!\\w)",
129
129
  "name": "constant.numeric.float.gdresource"
130
130
  },
131
131
  {
132
- "match": "(?<!\\w)((?:[+\\-]?(0|([1-9]((\\d|_\\d)+)?))))(?!\\w)",
132
+ "match": "(?<!\\w)((?:[\\+\\-]?(0|([1-9](([0-9]|_[0-9])+)?))))(?!\\w)",
133
133
  "name": "constant.numeric.integer.gdresource"
134
134
  },
135
135
  {
136
- "match": "(?<!\\w)([+\\-]?inf)(?!\\w)",
136
+ "match": "(?<!\\w)([\\+\\-]?inf)(?!\\w)",
137
137
  "name": "constant.numeric.inf.gdresource"
138
138
  },
139
139
  {
140
- "match": "(?<!\\w)([+\\-]?nan)(?!\\w)",
140
+ "match": "(?<!\\w)([\\+\\-]?nan)(?!\\w)",
141
141
  "name": "constant.numeric.nan.gdresource"
142
142
  },
143
143
  {
@@ -242,7 +242,7 @@
242
242
  "name": "invalid.illegal.noValue.gdresource"
243
243
  },
244
244
  {
245
- "begin": "\\s*([A-Za-z_-][^\\s]*|\".+\"|'.+'|\\d+)\\s*(=)\\s*",
245
+ "begin": "\\s*([A-Za-z_-][^\\s]*|\".+\"|'.+'|[0-9]+)\\s*(=)\\s*",
246
246
  "beginCaptures": {
247
247
  "1": {
248
248
  "name": "variable.other.property.gdresource"
@@ -267,7 +267,7 @@
267
267
  "name": "invalid.illegal.noValue.gdresource"
268
268
  },
269
269
  {
270
- "begin": "\\s*([A-Za-z_-][^\\s]*|\".+\"|'.+'|\\d+)\\s*(=)\\s*",
270
+ "begin": "\\s*([A-Za-z_-][^\\s]*|\".+\"|'.+'|[0-9]+)\\s*(=)\\s*",
271
271
  "beginCaptures": {
272
272
  "1": {
273
273
  "name": "variable.other.property.gdresource"
@@ -69,10 +69,10 @@
69
69
  "name": "variable.other.property.gdscript"
70
70
  }
71
71
  },
72
- "match": "\\b(\\.)\\s*(?<![@$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\w*))\\b(?![(])"
72
+ "match": "\\b(\\.)\\s*(?<![@\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\w*))\\b(?![(])"
73
73
  },
74
74
  "any_variable": {
75
- "match": "\\b(?<![@$#%])([A-Za-z_]\\w*)\\b(?![(])",
75
+ "match": "\\b(?<![@\\$#%])([A-Za-z_]\\w*)\\b(?![(])",
76
76
  "name": "variable.other.gdscript"
77
77
  },
78
78
  "arithmetic_operator": {
@@ -785,19 +785,19 @@
785
785
  "name": "constant.numeric.integer.hexadecimal.gdscript"
786
786
  },
787
787
  {
788
- "match": "\\.\\d[0-9_]*([eE][+-]?[0-9_]+)?",
788
+ "match": "\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?",
789
789
  "name": "constant.numeric.float.gdscript"
790
790
  },
791
791
  {
792
- "match": "(\\d[0-9_]*)?\\.[0-9_]*([eE][+-]?[0-9_]+)?",
792
+ "match": "([0-9][0-9_]*)?\\.[0-9_]*([eE][+-]?[0-9_]+)?",
793
793
  "name": "constant.numeric.float.gdscript"
794
794
  },
795
795
  {
796
- "match": "\\d[0-9_]*[eE][+-]?[0-9_]+",
796
+ "match": "[0-9][0-9_]*[eE][+-]?[0-9_]+",
797
797
  "name": "constant.numeric.float.gdscript"
798
798
  },
799
799
  {
800
- "match": "[-]?\\d[0-9_]*",
800
+ "match": "[-]?[0-9][0-9_]*",
801
801
  "name": "constant.numeric.integer.gdscript"
802
802
  }
803
803
  ]
@@ -984,7 +984,7 @@
984
984
  "name": "storage.type.format.gdscript"
985
985
  }
986
986
  },
987
- "match": "({{|}}|(?:{\\w*(\\.[A-Za-z_]\\w*|\\[[^\\]'\"]+\\])*(![rsa])?(:\\w?[<>=^]?[-+ ]?\\#?\\d*,?(\\.\\d+)?[bcdeEfFgGnosxX%]?)?}))",
987
+ "match": "({{|}}|(?:{\\w*(\\.[[:alpha:]_]\\w*|\\[[^\\]'\"]+\\])*(![rsa])?(:\\w?[<>=^]?[-+ ]?\\#?\\d*,?(\\.\\d+)?[bcdeEfFgGnosxX%]?)?}))",
988
988
  "name": "meta.format.brace.gdscript"
989
989
  },
990
990
  {
@@ -999,7 +999,7 @@
999
999
  "name": "storage.type.format.gdscript"
1000
1000
  }
1001
1001
  },
1002
- "match": "({\\w*(\\.[A-Za-z_]\\w*|\\[[^\\]'\"]+\\])*(![rsa])?(:)[^'\"{}\\n]*(?:\\{[^'\"}\\n]*?\\}[^'\"{}\\n]*)*})",
1002
+ "match": "({\\w*(\\.[[:alpha:]_]\\w*|\\[[^\\]'\"]+\\])*(![rsa])?(:)[^'\"{}\\n]*(?:\\{[^'\"}\\n]*?\\}[^'\"{}\\n]*)*})",
1003
1003
  "name": "meta.format.brace.gdscript"
1004
1004
  }
1005
1005
  ]
@@ -295,7 +295,7 @@
295
295
  "name": "storage.modifier.gdshader"
296
296
  },
297
297
  "operator": {
298
- "match": "<<=?|>>=?|[-+*/&|<>=!]=|\\&\\&|[|][|]|[-+~!*/%<>&^|=]",
298
+ "match": "\\<\\<\\=?|\\>\\>\\=?|[-+*/&|<>=!]\\=|\\&\\&|[|][|]|[-+~!*/%<>&^|=]",
299
299
  "name": "keyword.operator.gdshader"
300
300
  },
301
301
  "precisionKeyword": {
@@ -82,7 +82,7 @@
82
82
  "constants": {
83
83
  "patterns": [
84
84
  {
85
- "match": "\\b((0(x|X)[0-9a-fA-F]*)|((\\d+\\.?\\d*)|(\\.\\d+))((e|E)(\\+|-)?\\d+)?)([LlFfUuDd]|UL|ul)?\\b",
85
+ "match": "\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\b",
86
86
  "name": "constant.numeric.vala"
87
87
  },
88
88
  {
@@ -3,7 +3,7 @@
3
3
  "name": "git-commit",
4
4
  "patterns": [
5
5
  {
6
- "begin": "(?=^diff --git)",
6
+ "begin": "(?=^diff\\ \\-\\-git)",
7
7
  "comment": "diff presented at the end of the commit message when using commit -v.",
8
8
  "contentName": "source.diff",
9
9
  "end": "\\z",