github-linguist 9.1.0 → 9.3.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 (138) hide show
  1. checksums.yaml +4 -4
  2. data/bin/github-linguist +24 -5
  3. data/grammars/etc.json +1 -1
  4. data/grammars/injection.interpolated-ruby.json +1 -0
  5. data/grammars/injections.etc.json +1 -1
  6. data/grammars/inline.edgeql.json +1 -1
  7. data/grammars/liquid.injection.json +1 -1
  8. data/grammars/markdown.move.codeblock.json +1 -1
  9. data/grammars/source.4dm.json +1 -1
  10. data/grammars/source.QB64.json +1 -1
  11. data/grammars/source.abl.json +1 -1
  12. data/grammars/source.aiken.json +1 -0
  13. data/grammars/source.apex.json +1 -1
  14. data/grammars/source.ash.json +1 -0
  15. data/grammars/source.ats.json +1 -1
  16. data/grammars/source.ballerina.json +1 -1
  17. data/grammars/source.brs.json +1 -1
  18. data/grammars/source.bru.json +1 -0
  19. data/grammars/source.c++.json +1 -1
  20. data/grammars/source.c.calendar.json +1 -0
  21. data/grammars/source.c.json +1 -1
  22. data/grammars/source.c.linker.json +1 -1
  23. data/grammars/source.c3.json +1 -0
  24. data/grammars/source.cl.json +1 -1
  25. data/grammars/source.clue.json +1 -0
  26. data/grammars/source.cmake.json +1 -1
  27. data/grammars/source.cobol.json +1 -1
  28. data/grammars/source.cooklang.json +1 -0
  29. data/grammars/source.cs.json +1 -1
  30. data/grammars/source.curlrc.json +1 -1
  31. data/grammars/source.daslang.json +1 -0
  32. data/grammars/source.dds.dspf.json +1 -1
  33. data/grammars/source.dotenv.json +1 -1
  34. data/grammars/source.edgeql.json +1 -1
  35. data/grammars/source.erlang.json +1 -1
  36. data/grammars/source.flix.json +1 -0
  37. data/grammars/source.fsharp.json +1 -1
  38. data/grammars/source.gdscript.json +1 -1
  39. data/grammars/source.git-revlist.json +1 -1
  40. data/grammars/source.gitignore.json +1 -1
  41. data/grammars/source.gleam.json +1 -1
  42. data/grammars/source.harbour.json +1 -1
  43. data/grammars/source.httpspec.json +1 -1
  44. data/grammars/source.hx.json +1 -1
  45. data/grammars/source.ilecobol.json +1 -0
  46. data/grammars/source.inputrc.json +1 -1
  47. data/grammars/source.jai.json +1 -1
  48. data/grammars/source.jq.json +1 -1
  49. data/grammars/source.json.comments.json +1 -1
  50. data/grammars/source.julia.console.json +1 -1
  51. data/grammars/source.julia.json +1 -1
  52. data/grammars/source.just.json +1 -1
  53. data/grammars/source.koka.json +1 -0
  54. data/grammars/source.lean4.json +1 -1
  55. data/grammars/source.leo.json +1 -0
  56. data/grammars/source.livescript.json +1 -1
  57. data/grammars/source.luau.json +1 -1
  58. data/grammars/source.m2.json +1 -1
  59. data/grammars/source.m3u.json +1 -0
  60. data/grammars/source.mermaid.flowchart.json +1 -1
  61. data/grammars/source.mermaid.gantt.json +1 -1
  62. data/grammars/source.mermaid.json +1 -1
  63. data/grammars/source.mermaid.pie-chart.json +1 -1
  64. data/grammars/source.mermaid.quad-chart.json +1 -0
  65. data/grammars/source.mermaid.sankey.json +1 -0
  66. data/grammars/source.mermaid.timeline.json +1 -0
  67. data/grammars/source.mermaid.user-journey.json +1 -1
  68. data/grammars/source.mermaid.zenuml.json +1 -0
  69. data/grammars/source.moonbit.json +1 -1
  70. data/grammars/source.move.json +1 -1
  71. data/grammars/source.nasl.json +1 -1
  72. data/grammars/source.nginx.json +1 -1
  73. data/grammars/source.nickel.json +1 -0
  74. data/grammars/source.nim.json +1 -1
  75. data/grammars/source.nr.json +1 -1
  76. data/grammars/source.nushell.json +1 -1
  77. data/grammars/source.objc.json +1 -1
  78. data/grammars/source.odin-ehr.json +1 -1
  79. data/grammars/source.odin.json +1 -1
  80. data/grammars/source.openqasm.json +1 -0
  81. data/grammars/source.postscript.json +1 -1
  82. data/grammars/source.psl.json +1 -0
  83. data/grammars/source.quakec.json +1 -0
  84. data/grammars/source.record-jar.json +1 -1
  85. data/grammars/source.rescript.json +1 -1
  86. data/grammars/source.roc.json +1 -1
  87. data/grammars/source.rosmsg.json +1 -0
  88. data/grammars/source.rust.json +1 -1
  89. data/grammars/source.sail.json +1 -0
  90. data/grammars/source.sieve.json +1 -1
  91. data/grammars/source.slang.json +1 -1
  92. data/grammars/source.slint.json +1 -1
  93. data/grammars/source.smithy.json +1 -1
  94. data/grammars/source.soql.json +1 -1
  95. data/grammars/source.stan.json +1 -1
  96. data/grammars/source.sway.json +1 -1
  97. data/grammars/source.swift.json +1 -1
  98. data/grammars/source.tact.json +1 -1
  99. data/grammars/source.talon.json +1 -1
  100. data/grammars/source.templ.json +1 -1
  101. data/grammars/source.toc.json +1 -1
  102. data/grammars/source.torrc.json +1 -0
  103. data/grammars/source.typst.json +1 -1
  104. data/grammars/source.uplc.json +1 -0
  105. data/grammars/source.vba.json +1 -1
  106. data/grammars/source.vcl.json +1 -0
  107. data/grammars/source.vento.json +1 -0
  108. data/grammars/source.vhdl.json +1 -1
  109. data/grammars/source.vue.json +1 -1
  110. data/grammars/source.wdl.json +1 -1
  111. data/grammars/source.wesl.json +1 -0
  112. data/grammars/source.wgsl.json +1 -1
  113. data/grammars/source.wit.json +1 -1
  114. data/grammars/source.zmodel.json +1 -0
  115. data/grammars/text.adblock.json +1 -1
  116. data/grammars/text.codeowners.json +1 -1
  117. data/grammars/text.html.jte.json +1 -1
  118. data/grammars/text.html.liquid.json +1 -1
  119. data/grammars/text.html.vento.json +1 -0
  120. data/grammars/text.jira.json +1 -0
  121. data/grammars/text.marko.json +1 -1
  122. data/grammars/text.slim.json +1 -1
  123. data/grammars/text.srt.json +1 -1
  124. data/grammars/text.valve-cfg.json +1 -1
  125. data/grammars/text.xml.svg.json +1 -1
  126. data/grammars/version +1 -1
  127. data/lib/linguist/VERSION +1 -1
  128. data/lib/linguist/generated.rb +28 -6
  129. data/lib/linguist/generic.yml +2 -0
  130. data/lib/linguist/heuristics.yml +47 -9
  131. data/lib/linguist/instrumenter.rb +19 -0
  132. data/lib/linguist/languages.json +1 -1
  133. data/lib/linguist/languages.yml +327 -102
  134. data/lib/linguist/samples.json +1 -1
  135. data/lib/linguist.rb +1 -0
  136. metadata +39 -12
  137. data/grammars/source.c.platform.json +0 -1
  138. data/grammars/source.varnish.vcl.json +0 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 68a6d79492f6408088762b786fc3cf181e18fdba0af0d309282b1ae96742fc53
4
- data.tar.gz: 9e4f5e011587af022bc50116235fbd996ef03ca9bb6a957b4500a574258c5e50
3
+ metadata.gz: 93ecffde246d32e12489241c6b6db463db994669d77e8d722c3907dbd014d4a5
4
+ data.tar.gz: 05c81b465222ee840c14ba1f5c81f00d36ea7329cdb9d9142e7d4271f33b1ba6
5
5
  SHA512:
6
- metadata.gz: 1ad5b61a3fe3ac49f6960d016fcb16abf9af696e228c0a6474ee40181c5d9041d68771a0a1b06d034baad5084e9eedc4ea9bc02e5830138f47c0a9743fcc7952
7
- data.tar.gz: ccf950a746b20550df29682921f52a91cf1bf201c535a382cfc7639a1734c537d352afe8d86e4bd62dd515b2f70fcad746e3274d1a931e9f5f6cda6098bbf1c8
6
+ metadata.gz: 5716fbc7189116a00f9fdea08267ed5140b3d15e8e523c9d84bcaa840243fe92224084840cc82aac26d4b4994d8bdd169b68abe6c4191b1fa213a03d53eb8bd0
7
+ data.tar.gz: cec4e42ab521989fb8b1b685c0999bb7de0c23b916c40faf2dfe332e77c532f68397ed9bdfb7acaebc03661286b431ea3d0b801a8cc3d08080793839d8322318
data/bin/github-linguist CHANGED
@@ -12,14 +12,15 @@ HELP_TEXT = <<~HELP
12
12
  Linguist v#{Linguist::VERSION}
13
13
  Detect language type and determine language breakdown for a given Git repository.
14
14
 
15
- Usage: linguist <path>
16
- linguist <path> [--rev REV] [--tree-size] [--breakdown] [--json]
17
- linguist [--rev REV] [--tree-size] [--breakdown] [--json]
15
+ Usage: github-linguist <path>
16
+ github-linguist <path> [--rev REV] [--tree-size] [--breakdown] [--strategies] [--json]
17
+ github-linguist [--rev REV] [--tree-size] [--breakdown] [--strategies] [--json]
18
18
  HELP
19
19
 
20
20
  def github_linguist(args)
21
21
  breakdown = false
22
22
  json_output = false
23
+ show_strategies = false
23
24
  tree_size = Linguist::Repository::MAX_TREE_SIZE
24
25
  rev = 'HEAD'
25
26
  path = Dir.pwd
@@ -29,6 +30,7 @@ def github_linguist(args)
29
30
  opts.version = Linguist::VERSION
30
31
 
31
32
  opts.on("-b", "--breakdown", "Analyze entire repository and display detailed usage statistics") { breakdown = true }
33
+ opts.on("-s", "--strategies", "Show language detection strategy used for each file") { show_strategies = true }
32
34
  opts.on("-j", "--json", "Output results as JSON") { json_output = true }
33
35
  opts.on("-r", "--rev REV", String,
34
36
  "Analyze specific git revision",
@@ -59,6 +61,11 @@ def github_linguist(args)
59
61
  puts "invalid revision '#{rev}' for repo '#{path}'"
60
62
  exit 1
61
63
  end
64
+
65
+ # Set up instrumentation to track detection strategies if requested
66
+ instrumenter = show_strategies ? Linguist::BasicInstrumenter.new : nil
67
+ Linguist.instrumenter = instrumenter
68
+
62
69
  repo = Linguist::Repository.new(rugged, target_oid, tree_size)
63
70
 
64
71
  full_results = {}
@@ -72,13 +79,18 @@ def github_linguist(args)
72
79
  full_results.sort_by { |_, v| v[:size] }.reverse.each do |language, details|
73
80
  puts "%-7s %-10s %s" % ["#{details[:percentage]}%", details[:size], language]
74
81
  end
75
- if breakdown
82
+ if breakdown || show_strategies
76
83
  puts
77
84
  file_breakdown = repo.breakdown_by_file
78
85
  file_breakdown.each do |lang, files|
79
86
  puts "#{lang}:"
80
87
  files.each do |file|
81
- puts file
88
+ strategy_info = instrumenter&.detected_info&.[](file)
89
+ if show_strategies && strategy_info
90
+ puts " #{file} [#{strategy_info[:strategy]}]"
91
+ else
92
+ puts " #{file}"
93
+ end
82
94
  end
83
95
  puts
84
96
  end
@@ -96,6 +108,9 @@ def github_linguist(args)
96
108
  end
97
109
  end
98
110
  elsif File.file?(path)
111
+ # Set up instrumentation to track detection strategies if requested
112
+ instrumenter = show_strategies ? Linguist::BasicInstrumenter.new : nil
113
+ Linguist.instrumenter = instrumenter
99
114
 
100
115
  begin
101
116
  # Check if this file is inside a git repository so we have things like
@@ -134,6 +149,10 @@ def github_linguist(args)
134
149
  puts " type: #{type}"
135
150
  puts " mime type: #{blob.mime_type}"
136
151
  puts " language: #{blob.language}"
152
+ if show_strategies && blob.language
153
+ strategy_info = instrumenter.detected_info[blob.name]
154
+ puts " strategy: #{strategy_info[:strategy]}" if strategy_info
155
+ end
137
156
 
138
157
  if blob.large?
139
158
  puts " blob is too large to be shown"
data/grammars/etc.json CHANGED
@@ -1 +1 @@
1
- {"scopeName":"etc","patterns":[{"include":"#comma"},{"include":"#comment"},{"include":"#esc"},{"include":"#float"},{"include":"#int"},{"include":"#str"},{"include":"#colon"},{"include":"#eql"},{"include":"#dot"}],"repository":{"bareword":{"name":"string.unquoted.bareword","match":"[^\"\\s][\\S]*"},"base64":{"name":"constant.numeric.base64","match":"[A-Za-z0-9+/=]{4,}"},"bool":{"name":"constant.logical.bool.boolean.${1:/downcase}","match":"\\b(true|false|TRUE|FALSE)\\b"},"bracket":{"patterns":[{"name":"punctuation.definition.bracket.curly.brace.begin","match":"\\{"},{"name":"punctuation.definition.bracket.curly.brace.end","match":"\\}"},{"name":"punctuation.definition.bracket.square.begin","match":"\\["},{"name":"punctuation.definition.bracket.square.end","match":"\\]"},{"name":"punctuation.definition.bracket.round.parenthesis.begin","match":"\\("},{"name":"punctuation.definition.bracket.round.parenthesis.end","match":"\\)"},{"name":"punctuation.definition.bracket.angle.ascii.begin","match":"\u003c"},{"name":"punctuation.definition.bracket.angle.ascii.end","match":"\u003e"},{"name":"punctuation.definition.bracket.angle.unicode.begin","match":"⟨"},{"name":"punctuation.definition.bracket.angle.unicode.end","match":"⟩"}]},"colon":{"name":"punctuation.delimiter.separator.colon","match":":"},"comma":{"name":"punctuation.separator.delimiter.comma","match":","},"comment":{"patterns":[{"include":"#commentHash"}]},"commentHash":{"name":"comment.line.number-sign","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment"}}},"commentSemi":{"name":"comment.line.semicolon","begin":";+","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment"}}},"commentSlash":{"name":"comment.line.double-slash","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment"}}},"dash":{"name":"punctuation.delimiter.separator.dash.hyphen","match":"-"},"dot":{"name":"punctuation.delimiter.separator.property.period.dot","match":"\\."},"dotDec":{"name":"constant.numeric.other.dot-decimal","match":"(?:\\G|(?\u003c!\\.)\\b)\\d+(?:\\.\\d+)+\\b(?!\\.)"},"dotPair":{"name":"keyword.operator.punctuation.dots.splat.range.spread.rest","match":"\\.\\.|‥"},"dotTrail":{"name":"punctuation.delimiter.separator.dotted.border.leader.dots","match":"\\.{4,}"},"dots":{"patterns":[{"include":"#ellipsis"},{"include":"#dotPair"},{"include":"#dot"}]},"ellipsis":{"name":"keyword.operator.punctuation.ellipsis.splat.range.spread.rest","match":"\\.{3}|…"},"email":{"patterns":[{"include":"#emailBracketed"},{"include":"#emailQuoted"},{"include":"#emailUnquoted"}]},"emailBracketed":{"patterns":[{"name":"meta.email-address.bracketed.ascii.angle-brackets","match":"(\u003c)\\s*([^\u003e@\\s]+@[^\u003e@\\s]+)\\s*(\u003e)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.unicode.angle-brackets","match":"(⟨)\\s*([^⟩@\\s]+@[^⟩@\\s]+)\\s*(⟩)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.guillemots","match":"(«)\\s*([^»@\\s]+@[^»@\\s]+)\\s*(»)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.round-brackets","match":"(\\()\\s*([^\\)@\\s]+@[^\\)@\\s]+)\\s*(\\))","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.curly-brackets","match":"({)\\s*([^}@\\s]+@[^}@\\s]+)\\s*(})","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.square-brackets","match":"(\\[)\\s*([^\\]@\\s]+@[^\\]@\\s]+)\\s*(\\])","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}}]},"emailInnards":{"name":"constant.other.reference.link.underline.email","match":"(?:\\G|^|(?\u003c=\\n)).+","captures":{"0":{"patterns":[{"match":"\\G([^@]*)(@)(.*)","captures":{"1":{"name":"meta.local-part"},"2":{"name":"punctuation.separator.at-sign.email"},"3":{"name":"meta.domain"}}}]}}},"emailQuoted":{"patterns":[{"name":"meta.email-address.quoted.ascii.double-quotes","match":"(\")\\s*([^\"@\\s]+@[^\"@\\s]+)\\s*(\")","captures":{"0":{"name":"string.quoted.double"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.unicode.double-quotes","match":"(“)\\s*([^”@\\s]+@[^”@\\s]+)\\s*(”)","captures":{"0":{"name":"string.quoted.double"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.unicode.single-quotes","match":"(‘)\\s*([^’@\\s]+@[^’@\\s]+)\\s*(’)","captures":{"0":{"name":"string.quoted.single"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.backticks","match":"(`)\\s*([^`@\\s]+@[^`@\\s]+)\\s*(`)","captures":{"0":{"name":"string.quoted.template.backticks"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.single-quotes","match":"(`|')\\s*([^'@\\s]+@[^'@\\s]+)\\s*(')","captures":{"0":{"name":"string.quoted.single"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}}]},"emailUnquoted":{"name":"meta.email-address.unquoted","match":"(?x)\n((?!\\.) (?:[^\\[\\(\u003c⟨«\"'\\s@.]|\\.(?!\\.))++ @\n([^\\[\\(\u003c⟨«\"'\\s@.]+?\\.(?=[^\\.\\s])(?:[^\\[\\(\u003c⟨«\"'\\s@.]|\\.(?!\\.))++))","captures":{"1":{"name":"string.unquoted.email-address","patterns":[{"include":"#emailInnards"}]}}},"eql":{"name":"keyword.operator.assignment.key-value.equals-sign","match":"="},"esc":{"name":"constant.character.escape.backslash","match":"(\\\\).","captures":{"1":{"name":"punctuation.definition.escape.backslash"}}},"float":{"patterns":[{"include":"#floatExp"},{"include":"#floatNoExp"}]},"floatExp":{"name":"constant.numeric.float.real.decimal.dec.exponential.scientific","match":"[-+]?(?:[0-9]*\\.[0-9]+|[0-9]+\\.)(?:[eE][-+]?[0-9]+)++"},"floatNoExp":{"name":"constant.numeric.float.real.decimal.dec","match":"[-+]?(?:[0-9]*\\.[0-9]+|[0-9]+\\.)++"},"glob":{"patterns":[{"include":"#globSimple"},{"include":"#globSet"},{"include":"#globBraces"}]},"globBraces":{"patterns":[{"include":"#globBracesSeq"},{"include":"#globBracesAlt"}]},"globBracesAlt":{"name":"meta.brace-expansion.alternation","match":"(?x)\n(?\u003cchar\u003e[^\\s{,}\\\\]|\\\\[{,}\\\\]|\\g\u003cbraced\u003e){0}\n(?\u003cbraced\u003e{(?:[^{},\\\\]|\\\\.)*+}){0}\n(?\u003calt\u003e\\g\u003cchar\u003e*+,\\g\u003cchar\u003e*+|\\g\u003cchar\u003e++){0}\n(?\u003cseq\u003e{(?:-?\\d+\\.\\.-?\\d+|[a-zA-Z]\\.\\.[a-zA-Z])(?:\\.\\.-?\\d+)?}){0}\n(?\u003centry\u003e \\g\u003cchar\u003e*+ (?:\n\t\\g\u003cseq\u003e+\n\t|\n\t(?!\\g\u003cbraced\u003e)\n\t{\n\t\t(?\u003cbraces\u003e\n\t\t\t\\g\u003calt\u003e*+\n\t\t\t(?:(?!\\g\u003cbraced\u003e) { \\g\u003cbraces\u003e*+ } | \\g\u003cseq\u003e++)\n\t\t\t\\g\u003calt\u003e*+\n\t\t\t|\n\t\t\t\\g\u003calt\u003e++\n\t\t)\n\t}\n) \\g\u003cchar\u003e*+)","captures":{"0":{"patterns":[{"include":"#globBracesSeq"},{"match":"{(?:\\.?+(?:[^{},.\\\\]|\\\\.))*+}","captures":{"0":{"patterns":[{"include":"#esc"}]}}},{"include":"#esc"},{"include":"#globSet"},{"include":"#globSimple"},{"match":"({|})|(,)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#comma"}]}}}]}}},"globBracesSeq":{"name":"meta.brace-expansion.sequence","match":"({)(?:(-?\\d+\\.\\.-?\\d+)|([a-zA-Z]\\.\\.[a-zA-Z]))(\\.\\.-?\\d+)?(})","captures":{"1":{"patterns":[{"include":"etc#bracket"}]},"2":{"name":"meta.range.numeric","patterns":[{"include":"#dots"},{"include":"#intNoExp"}]},"3":{"name":"meta.range.alphabetic","patterns":[{"include":"#dots"},{"name":"constant.character.letter","match":"\\w"}]},"4":{"name":"meta.increment","patterns":[{"include":"#dots"},{"include":"#intNoExp"}]},"5":{"patterns":[{"include":"etc#bracket"}]}}},"globSet":{"name":"meta.character-class.set","match":"(?x)\n(\\[) (!|\\^)?\n(\n\t(?: [^\\\\\\[\\]]\n\t| \\\\.\n\t| \\[ (?::[!^]?\\w+:|\\..+?\\.|=.+?=) \\]\n\t)*+\n)(\\])","captures":{"1":{"name":"brackethighlighter.square.punctuation.definition.character-class.set.begin"},"2":{"name":"keyword.operator.logical.not"},"3":{"patterns":[{"include":"#esc"},{"match":"(?!^|\\G)(-)(?!\\])(-)?","captures":{"1":{"patterns":[{"include":"#dash"}]},"2":{"name":"constant.character.single"}}},{"include":"source.regexp.posix#charClass"},{"include":"source.regexp.posix#localeClasses"},{"name":"constant.character.single","match":"."}]},"4":{"name":"brackethighlighter.square.punctuation.definition.character-class.set.end"}}},"globSimple":{"patterns":[{"name":"keyword.operator.glob.wildcard.globstar","match":"\\*{2}"},{"name":"keyword.operator.glob.wildcard","match":"[*?]"}]},"hex":{"name":"constant.numeric.integer.int.hexadecimal.hex","match":"[-+]?[A-Fa-f0-9]+"},"hexNoSign":{"name":"constant.numeric.integer.int.hexadecimal.hex","match":"[A-Fa-f0-9]+"},"int":{"patterns":[{"include":"#intExp"},{"include":"#intNoExp"}]},"intExp":{"name":"constant.numeric.integer.int.decimal.dec.exponential.scientific","match":"[-+]?[0-9]+[eE][-+]?[0-9]+"},"intNoExp":{"name":"constant.numeric.integer.int.decimal.dec","match":"[-+]?[0-9]+"},"ip":{"patterns":[{"include":"#ipv6"},{"include":"#ipv4"}]},"ipv4":{"name":"constant.numeric.other.ip-address.v4","match":"(?x) (?:\\G|^|(?\u003c!\\.)\\b)\n(?!\\.)\n((?:\n\t\\.?\n\t(?: 25[0-5] # 250-255\n\t| 2[0-4]\\d # 200-249\n\t| 1\\d\\d # 100-199\n\t| [1-9]?\\d # 0-99\n\t)\\b\n){4})\n\n# CIDR notation: “/[0-32]”\n((/)(3[0-2]|[12]?\\d)\\b)?\n\n(?=$|\\s|(?!\\.)\\b)","captures":{"1":{"patterns":[{"include":"#dot"}]},"2":{"name":"meta.cidr-notation"},"3":{"name":"keyword.operator.assignment.cidr"},"4":{"patterns":[{"include":"#intNoExp"}]}}},"ipv6":{"name":"constant.numeric.other.ip-address.v6","match":"(?mix) (?:\\G|^|(?\u003c!\\.|:|\\w))\n(?\u003cdec\u003e25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d){0}\n(?\u003chex\u003e[A-F0-9]{1,4}){0}\n(?\u003cv4\u003e\\g\u003cdec\u003e(?:\\.\\g\u003cdec\u003e){3}){0}\n(?\u003cv6\u003e\\g\u003chex\u003e:){0}\n\n# Address\n(?: \\g\u003cv6\u003e{7} (?: \\g\u003chex\u003e |:)\n| \\g\u003cv6\u003e{6} (?: \\g\u003cv4\u003e| :\\g\u003chex\u003e |:)\n| \\g\u003cv6\u003e{5} (?: :\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,2}|:)\n| \\g\u003cv6\u003e{4} (?:(?::\\g\u003chex\u003e)? :\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,3}|:)\n| \\g\u003cv6\u003e{3} (?:(?::\\g\u003chex\u003e){0,2}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,4}|:)\n| \\g\u003cv6\u003e{2} (?:(?::\\g\u003chex\u003e){0,3}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,5}|:)\n| \\g\u003cv6\u003e (?:(?::\\g\u003chex\u003e){0,4}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,6}|:)\n| (?::(?:(?::\\g\u003chex\u003e){0,5}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,7}|:))\n) (?:(?\u003c!:)\\b|(?\u003c=:)(?!\\w|:))\n\n# Zone ID (RFC 4007): “%ne0”\n(?:\n\t%\n\t(?!\\$)\n\t[^\\s();\"/]+\n)?\n\n# CIDR notation: “/[0-128]”\n(?:\n\t/\n\t(?: 12[0-8] # 120-128\n\t| 1[01]\\d # 100-119\n\t| [1-9]?\\d # 0-99\n\t) \\b\n)?\n\n(?=$|\\s|[^.:%/\\s])","captures":{"0":{"patterns":[{"match":"(?!$)((%)([^/%]+))?((/)([0-9]+))?$","captures":{"1":{"name":"meta.zone-id"},"2":{"name":"keyword.operator.assignment.zone-id"},"3":{"name":"entity.other.zone-index"},"4":{"name":"meta.cidr-notation"},"5":{"name":"keyword.operator.assignment.cidr"},"6":{"patterns":[{"include":"#intNoExp"}]}}},{"include":"#colon"}]}}},"kolon":{"name":"keyword.operator.assignment.key-value.colon","match":":"},"mime":{"name":"constant.other.media-type","match":"(?xi) (?\u003c!-|\\.)\\b\n(?: (application|audio|example|font|image|message|model|multipart|text|video)\n| (chemical|drawing|magnus-internal|paleovu|xgl|inode(?=/(?:blockdevice|chardevice|directory|door|fifo|mount-point|socket|symlink)))\n| (x-[-a-z0-9+_.]{1,125})\n) (/) (?![.+])([-a-z0-9+_.]{1,127})(?\u003c![.+])\n\\b (?!-|\\.)\n((?:\n\t# LHS: “; name=”\n\t\\s* ; \\s* [^;=]+ \\s* = [ \\t]*\n\t\n\t# RHS\n\t(?: \"(?:[^\"\\\\]|\\\\\")*+\" # Quoted value\n\t| (?=\\S)[^;\\r\\n]+ # Unquoted value\n\t)?\n)++)?","captures":{"1":{"name":"entity.name.type.standard.${1:/downcase}.media-type"},"2":{"name":"entity.name.type.nonstandard.${2:/downcase}.media-type"},"3":{"name":"entity.name.type.extension.media-type"},"4":{"name":"punctuation.separator.slash.media-type"},"5":{"patterns":[{"contentName":"entity.name.subtype.media-type","begin":"(?i)(?:^|\\G)(?:(([-a-z0-9_]+)(\\.))((?:[-a-z0-9_]+\\.)*+))?","end":"((\\+)[-a-z0-9_.]+)?$","beginCaptures":{"1":{"name":"entity.other.tree.${2:/downcase}.media-type"},"3":{"name":"punctuation.separator.dot.media-type"},"4":{"patterns":[{"name":"entity.other.subtree.${1:/downcase}.media-type","match":"([^.]+)(\\.)","captures":{"2":{"name":"punctuation.separator.dot.media-type"}}}]}},"endCaptures":{"1":{"name":"entity.other.suffix.media-type"},"2":{"name":"punctuation.separator.plus.media-type"}}}]},"6":{"name":"meta.parameters.media-type","patterns":[{"name":"meta.parameter.media-type","begin":"\\s*((;))\\s*([^;=]+)\\s*(=)[ \\t]*","end":"(?!\\G)","patterns":[{"name":"string.quoted.double.media-type","match":"\\G(\")((?:[^\"\\\\]|\\\\\")*+)(\")","captures":{"1":{"name":"punctuation.definition.string.begin.media-type"},"2":{"patterns":[{"name":"constant.character.escape.quote.media-type","match":"\\\\\""}]},"3":{"name":"punctuation.definition.string.end.media-type"}}},{"name":"string.unquoted.parameter.media-type","match":"\\G[^;\\r\\n]+"}],"beginCaptures":{"1":{"name":"punctuation.delimiter.semicolon.media-type"},"2":{"name":"sublimelinter.gutter-mark"},"3":{"name":"variable.parameter.media-type"},"4":{"patterns":[{"include":"#eql"}]}}}]}}},"num":{"patterns":[{"include":"#float"},{"include":"#int"}]},"op":{"patterns":[{"include":"#opBitAssign"},{"include":"#opMathAssign"},{"include":"#opBit"},{"include":"#opFix"},{"include":"#opCmp"},{"include":"#opLog"},{"include":"#opMath"}]},"opBit":{"patterns":[{"name":"keyword.operator.bitwise.xor","match":"\\^"},{"name":"keyword.operator.bitwise.not","match":"~"},{"name":"keyword.operator.bitwise.and","match":"\u0026"},{"name":"keyword.operator.bitwise.or","match":"\\|"},{"name":"keyword.operator.bitwise.shift.left","match":"\u003c\u003c"},{"name":"keyword.operator.bitwise.shift.right.unsigned","match":"\u003e\u003e\u003e"},{"name":"keyword.operator.bitwise.shift.right.signed","match":"\u003e\u003e"}]},"opBitAssign":{"patterns":[{"name":"keyword.operator.assignment.bitwise.xor","match":"\\^="},{"name":"keyword.operator.assignment.bitwise.not","match":"~="},{"name":"keyword.operator.assignment.bitwise.and","match":"\u0026="},{"name":"keyword.operator.assignment.bitwise.or","match":"\\|="},{"name":"keyword.operator.assignment.bitwise.shift.left","match":"\u003c\u003c="},{"name":"keyword.operator.assignment.bitwise.shift.right.unsigned","match":"\u003e\u003e\u003e="},{"name":"keyword.operator.assignment.bitwise.shift.right.signed","match":"\u003e\u003e="}]},"opCmp":{"patterns":[{"name":"keyword.operator.logical.comparison.starship.spaceship","match":"\u003c=\u003e"},{"name":"keyword.operator.logical.comparison.less-than-or-equal-to.lte","match":"\u003c="},{"name":"keyword.operator.logical.comparison.less-than.lt","match":"\u003c"},{"name":"keyword.operator.logical.comparison.greater-than-or-equal-to.gte","match":"\u003e="},{"name":"keyword.operator.logical.comparison.greater-than.gt","match":"\u003e"},{"name":"keyword.operator.logical.comparison.equal-to.equals.equal.eql.eq.strict","match":"==="},{"name":"keyword.operator.logical.comparison.equal-to.equals.equal.eql.eq","match":"=="},{"name":"keyword.operator.logical.comparison.not-equal-to.not-equal.unequal.neql.ne.strict","match":"!=="},{"name":"keyword.operator.logical.comparison.not-equal-to.not-equal.unequal.neql.ne","match":"!="}]},"opFix":{"patterns":[{"name":"keyword.operator.increment","match":"\\+{2}"},{"name":"keyword.operator.decrement","match":"-{2}"}]},"opLog":{"patterns":[{"name":"keyword.operator.logical.boolean.cast","match":"!!"},{"name":"keyword.operator.logical.boolean.not.negation.negate","match":"!"},{"name":"keyword.operator.logical.boolean.and","match":"\u0026\u0026"},{"name":"keyword.operator.logical.boolean.or","match":"\\|{2}"},{"name":"keyword.operator.logical.boolean.or.nullish","match":"\\?{2}"}]},"opMath":{"patterns":[{"name":"keyword.operator.arithmetic.exponentiation.exponent.exp.power","match":"\\*{2}|\\^"},{"name":"keyword.operator.arithmetic.addition.add.plus","match":"\\+"},{"name":"keyword.operator.arithmetic.multiplication.multiply.times","match":"\\*"},{"name":"keyword.operator.arithmetic.division.divide","match":"/"},{"name":"keyword.operator.arithmetic.remainder.modulo.modulus.mod","match":"%"},{"name":"keyword.operator.arithmetic.subtraction.subtract.minus","match":"[-֊־᐀᠆‐-―⸗⸚⸺⸻⹀〜〰゠︱︲﹘﹣-]"}]},"opMathAssign":{"patterns":[{"name":"keyword.operator.assignment.arithmetic.exponentiation.exponent.exp.power","match":"\\*{2}=|\\^="},{"name":"keyword.operator.assignment.arithmetic.addition.add.plus","match":"\\+="},{"name":"keyword.operator.assignment.arithmetic.multiplication.multiply.times","match":"\\*="},{"name":"keyword.operator.assignment.arithmetic.division.divide","match":"/="},{"name":"keyword.operator.assignment.arithmetic.remainder.modulo.modulus.mod","match":"%="},{"name":"keyword.operator.assignment.arithmetic.subtraction.subtract.minus","match":"[-֊־᐀᠆‐-―⸗⸚⸺⸻⹀〜〰゠︱︲﹘﹣-]="}]},"semi":{"name":"punctuation.delimiter.separator.semicolon","match":";"},"str":{"patterns":[{"include":"#strDouble"},{"include":"#strSingle"}]},"strDouble":{"name":"string.quoted.double","begin":"\"","end":"\"|(?=$)","patterns":[{"include":"#esc"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end"}}},"strSingle":{"name":"string.quoted.single","begin":"'","end":"'|(?=$)","patterns":[{"include":"#esc"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end"}}},"tab":{"patterns":[{"match":"^\\t+","captures":{"0":{"patterns":[{"name":"punctuation.whitespace.leading.tab.hard-tab","match":"\\t"}]}}},{"match":"\\t+$","captures":{"0":{"patterns":[{"name":"punctuation.whitespace.trailing.tab.hard-tab","match":"\\t"}]}}},{"name":"punctuation.whitespace.tab.hard-tab","match":"\\t"}]},"url":{"patterns":[{"match":"(?x)\n(\"|'|\\b)\n(\n\t# Not part of official URL schemes, included here for convenience\n\t(?: (?:jdbc|mvn|odbc|view-source) :)?\n\n\t# Common protocols/URI schemes\n\t( https?\n\t| s?ftp\n\t| ftps\n\t| file\n\t| wss?\n\t| (?:git|svn) (?:\\+(?:https?|ssh))?\n\t| ssh\n\t\n\t# Less common URI schemes\n\t| aaas?\n\t| acap\n\t| adiumxtra\n\t| admin\n\t| afp\n\t| app\n\t| atom\n\t| aurora\n\t| aw\n\t| beshare\n\t| bolo\n\t| cassandra\n\t| chrome(?:-extension)?\n\t| coaps?\n\t| cockroach\n\t| content\n\t| couchbase\n\t| crid\n\t| cvs\n\t| dict\n\t| dns\n\t| docker\n\t| ed2k\n\t| facetime\n\t| feed\n\t| finger\n\t| fish\n\t| gemini\n\t| github(?:-(?:mac|linux|windows))?\n\t| gizmoproject\n\t| gopher\n\t| go\n\t| hcp\n\t| imap\n\t| irc[6s]?\n\t| issue\n\t| keyparc\n\t| lastfm\n\t| ldaps?\n\t| man(?:-?page)?\n\t| maria(?:db)?\n\t| market\n\t| message\n\t| mms\n\t| modern-?sqlite\n\t| mongodb\n\t| ms-help\n\t| mssql\n\t| mumble\n\t| my?sql\n\t| netezza\n\t| nfs\n\t| ni\n\t| nntp\n\t| notes\n\t| oleodbc\n\t| oracle\n\t| payto\n\t| pgsql\n\t| pg\n\t| pop\n\t| postgres(?:ql)?\n\t| postgresql\n\t| presto(?:dbs?|s)\n\t| reload\n\t| resource\n\t| res\n\t| rmi\n\t| rsync\n\t| rtmf?p\n\t| rtmp\n\t| s3\n\t| saphana\n\t| secondlife\n\t| sgn\n\t| shttp\n\t| slack\n\t| smb\n\t| snmp\n\t| soldat\n\t| sqlite3?\n\t| sqlserver\n\t| steam\n\t| stratum\\+[a-z]+\n\t| stuns?\n\t| teamspeak\n\t| telnet\n\t| turns?\n\t| txmt\n\t| udp\n\t| unreal\n\t| ut2004\n\t| ventrilo\n\t| vnc\n\t| wais\n\t| web\\+[a-z]+\n\t| webcal\n\t| wtai\n\t| wyciwyg\n\t| xmpp\n\t| xri\n\t| z39\\.50[rs]\n\t| zoommtg\n\t\n\t# User-defined/arbitrary URI scheme starting with `x-`\n\t| x(?:-[a-z][a-z0-9]*)++\n\t) ://\n\t\n\t# Path specifier\n\t(?:\n\t\t(?! \\#\\w*\\#)\n\t\t(?: [-:\\@\\w.,~%+_/?=\u0026\\#;|!])\n\t)+\n\t\n\t# Don't include trailing punctuation\n\t(?\u003c![-.,?:\\#;])\n)\n(\\1)","captures":{"1":{"name":"punctuation.definition.link.begin.url"},"2":{"name":"constant.other.reference.link.underline.$3.url"},"4":{"name":"punctuation.definition.link.end.url"}}},{"match":"(?x)\n(\"|'|\\b)\n(\n\tmailto (:)\n\t(?:\n\t\t(?! \\#\\w*\\#)\n\t\t(?: [-:@\\w.,~%+_/?=\u0026\\#;|!])\n\t)+\n\t(?\u003c![-.,?:\\#;])\n)\n(\\1)","captures":{"1":{"name":"punctuation.definition.link.begin.url"},"2":{"name":"constant.other.reference.link.underline.mailto.url"},"3":{"name":"punctuation.separator.delimiter.scheme.url"},"4":{"name":"punctuation.definition.link.end.url"}}}]},"version":{"name":"constant.other.version-string","match":"(?x)\n(\"|'|\\b)\n([vV]?)\n(0 | [1-9]\\d*) (\\.)\n(0 | [1-9]\\d*) (\\.)\n(0 | [1-9]\\d*)\n(?:\n\t(-)\n\t(\n\t\t(?: 0\n\t\t| [1-9]\\d*\n\t\t| \\d*[a-zA-Z-][0-9a-zA-Z-]*\n\t\t)\n\t\t\n\t\t(?:\n\t\t\t\\.\n\t\t\t(?: 0\n\t\t\t| [1-9]\\d*\n\t\t\t| \\d*[a-zA-Z-][0-9a-zA-Z-]*\n\t\t\t)\n\t\t)*\n\t)\n)?\n(?:\n\t(\\+)\n\t(\n\t\t[0-9a-zA-Z-]+\n\t\t(?:\\.[0-9a-zA-Z-]+)*\n\t)\n)?\n(\\1)","captures":{"1":{"name":"punctuation.definition.version-string.begin"},"10":{"name":"punctuation.delimiter.separator.plus"},"11":{"name":"meta.build-metadata","patterns":[{"include":"#dot"}]},"12":{"name":"punctuation.definition.version-string.end"},"2":{"name":"punctuation.definition.version-prefix"},"3":{"name":"meta.major.release-number"},"4":{"patterns":[{"include":"#dot"}]},"5":{"name":"meta.minor.release-number"},"6":{"patterns":[{"include":"#dot"}]},"7":{"name":"meta.patch.release-number"},"8":{"patterns":[{"include":"#dash"}]},"9":{"name":"meta.prerelease.release-number","patterns":[{"include":"#dot"}]}}}}}
1
+ {"scopeName":"etc","patterns":[{"include":"#comma"},{"include":"#comment"},{"include":"#esc"},{"include":"#float"},{"include":"#int"},{"include":"#str"},{"include":"#colon"},{"include":"#eql"},{"include":"#dot"}],"repository":{"bareword":{"name":"string.unquoted.bareword","match":"[^\"\\s][\\S]*"},"base64":{"name":"constant.numeric.base64","match":"[A-Za-z0-9+/=]{4,}"},"bool":{"name":"constant.logical.bool.boolean.${1:/downcase}","match":"\\b(true|false|TRUE|FALSE)\\b"},"boolish":{"name":"constant.logical.bool.boolean.${1:/downcase}","match":"(?i)\\b(true|false|yes|no|on|off)\\b"},"bracket":{"patterns":[{"name":"punctuation.definition.bracket.curly.brace.begin","match":"\\{"},{"name":"punctuation.definition.bracket.curly.brace.end","match":"\\}"},{"name":"punctuation.definition.bracket.square.begin","match":"\\["},{"name":"punctuation.definition.bracket.square.end","match":"\\]"},{"name":"punctuation.definition.bracket.round.parenthesis.begin","match":"\\("},{"name":"punctuation.definition.bracket.round.parenthesis.end","match":"\\)"},{"name":"punctuation.definition.bracket.angle.ascii.begin","match":"\u003c"},{"name":"punctuation.definition.bracket.angle.ascii.end","match":"\u003e"},{"name":"punctuation.definition.bracket.angle.unicode.begin","match":"⟨"},{"name":"punctuation.definition.bracket.angle.unicode.end","match":"⟩"}]},"colon":{"name":"punctuation.delimiter.separator.colon","match":":"},"comma":{"name":"punctuation.separator.delimiter.comma","match":","},"comment":{"patterns":[{"include":"#commentHash"}]},"commentHash":{"name":"comment.line.number-sign","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment"}}},"commentSemi":{"name":"comment.line.semicolon","begin":";+","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment"}}},"commentSlash":{"name":"comment.line.double-slash","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment"}}},"dash":{"name":"punctuation.delimiter.separator.dash.hyphen","match":"-"},"dot":{"name":"punctuation.delimiter.separator.property.period.dot","match":"\\."},"dotDec":{"name":"constant.numeric.other.dot-decimal","match":"(?:\\G|(?\u003c!\\.)\\b)\\d+(?:\\.\\d+)+\\b(?!\\.)"},"dotPair":{"name":"keyword.operator.punctuation.dots.splat.range.spread.rest","match":"\\.\\.|‥"},"dotTrail":{"name":"punctuation.delimiter.separator.dotted.border.leader.dots","match":"\\.{4,}"},"dots":{"patterns":[{"include":"#ellipsis"},{"include":"#dotPair"},{"include":"#dot"}]},"ellipsis":{"name":"keyword.operator.punctuation.ellipsis.splat.range.spread.rest","match":"\\.{3}|…"},"email":{"patterns":[{"include":"#emailBracketed"},{"include":"#emailQuoted"},{"include":"#emailUnquoted"}]},"emailBracketed":{"patterns":[{"name":"meta.email-address.bracketed.ascii.angle-brackets","match":"(\u003c)\\s*([^\u003e@\\s]+@[^\u003e@\\s]+)\\s*(\u003e)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.unicode.angle-brackets","match":"(⟨)\\s*([^⟩@\\s]+@[^⟩@\\s]+)\\s*(⟩)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.guillemots","match":"(«)\\s*([^»@\\s]+@[^»@\\s]+)\\s*(»)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.round-brackets","match":"(\\()\\s*([^\\)@\\s]+@[^\\)@\\s]+)\\s*(\\))","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.curly-brackets","match":"({)\\s*([^}@\\s]+@[^}@\\s]+)\\s*(})","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}},{"name":"meta.email-address.bracketed.square-brackets","match":"(\\[)\\s*([^\\]@\\s]+@[^\\]@\\s]+)\\s*(\\])","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"patterns":[{"include":"#bracket"}]}}}]},"emailInnards":{"name":"constant.other.reference.link.underline.email","match":"(?:\\G|^|(?\u003c=\\n)).+","captures":{"0":{"patterns":[{"match":"\\G([^@]*)(@)(.*)","captures":{"1":{"name":"meta.local-part"},"2":{"name":"punctuation.separator.at-sign.email"},"3":{"name":"meta.domain"}}}]}}},"emailQuoted":{"patterns":[{"name":"meta.email-address.quoted.ascii.double-quotes","match":"(\")\\s*([^\"@\\s]+@[^\"@\\s]+)\\s*(\")","captures":{"0":{"name":"string.quoted.double"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.unicode.double-quotes","match":"(“)\\s*([^”@\\s]+@[^”@\\s]+)\\s*(”)","captures":{"0":{"name":"string.quoted.double"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.unicode.single-quotes","match":"(‘)\\s*([^’@\\s]+@[^’@\\s]+)\\s*(’)","captures":{"0":{"name":"string.quoted.single"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.backticks","match":"(`)\\s*([^`@\\s]+@[^`@\\s]+)\\s*(`)","captures":{"0":{"name":"string.quoted.template.backticks"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}},{"name":"meta.email-address.quoted.single-quotes","match":"(`|')\\s*([^'@\\s]+@[^'@\\s]+)\\s*(')","captures":{"0":{"name":"string.quoted.single"},"1":{"name":"punctuation.definition.string.begin.email-address"},"2":{"patterns":[{"include":"#emailInnards"}]},"3":{"name":"punctuation.definition.string.end.email-address"}}}]},"emailUnquoted":{"name":"meta.email-address.unquoted","match":"(?x)\n((?!\\.) (?:[^\\[\\(\u003c⟨«\"'\\s@.]|\\.(?!\\.))++ @\n([^\\[\\(\u003c⟨«\"'\\s@.]+?\\.(?=[^\\.\\s])(?:[^\\[\\(\u003c⟨«\"'\\s@.]|\\.(?!\\.))++))","captures":{"1":{"name":"string.unquoted.email-address","patterns":[{"include":"#emailInnards"}]}}},"eql":{"name":"keyword.operator.assignment.key-value.equals-sign","match":"="},"esc":{"name":"constant.character.escape.backslash","match":"(\\\\).","captures":{"1":{"name":"punctuation.definition.escape.backslash"}}},"float":{"patterns":[{"include":"#floatExp"},{"include":"#floatNoExp"}]},"floatExp":{"name":"constant.numeric.float.real.decimal.dec.exponential.scientific","match":"[-+]?(?:[0-9]*\\.[0-9]+|[0-9]+\\.)(?:[eE][-+]?[0-9]+)++"},"floatNoExp":{"name":"constant.numeric.float.real.decimal.dec","match":"[-+]?(?:[0-9]*\\.[0-9]+|[0-9]+\\.)++"},"glob":{"patterns":[{"include":"#globSimple"},{"include":"#globSet"},{"include":"#globBraces"}]},"globBraces":{"patterns":[{"include":"#globBracesSeq"},{"include":"#globBracesAlt"}]},"globBracesAlt":{"name":"meta.brace-expansion.alternation","match":"(?x)\n(?\u003cchar\u003e[^\\s{,}\\\\]|\\\\[{,}\\\\]|\\g\u003cbraced\u003e){0}\n(?\u003cbraced\u003e{(?:[^{},\\\\]|\\\\.)*+}){0}\n(?\u003calt\u003e\\g\u003cchar\u003e*+,\\g\u003cchar\u003e*+|\\g\u003cchar\u003e++){0}\n(?\u003cseq\u003e{(?:-?\\d+\\.\\.-?\\d+|[a-zA-Z]\\.\\.[a-zA-Z])(?:\\.\\.-?\\d+)?}){0}\n(?\u003centry\u003e \\g\u003cchar\u003e*+ (?:\n\t\\g\u003cseq\u003e+\n\t|\n\t(?!\\g\u003cbraced\u003e)\n\t{\n\t\t(?\u003cbraces\u003e\n\t\t\t\\g\u003calt\u003e*+\n\t\t\t(?:(?!\\g\u003cbraced\u003e) { \\g\u003cbraces\u003e*+ } | \\g\u003cseq\u003e++)\n\t\t\t\\g\u003calt\u003e*+\n\t\t\t|\n\t\t\t\\g\u003calt\u003e++\n\t\t)\n\t}\n) \\g\u003cchar\u003e*+)","captures":{"0":{"patterns":[{"include":"#globBracesSeq"},{"match":"{(?:\\.?+(?:[^{},.\\\\]|\\\\.))*+}","captures":{"0":{"patterns":[{"include":"#esc"}]}}},{"include":"#esc"},{"include":"#globSet"},{"include":"#globSimple"},{"match":"({|})|(,)","captures":{"1":{"patterns":[{"include":"#bracket"}]},"2":{"patterns":[{"include":"#comma"}]}}}]}}},"globBracesSeq":{"name":"meta.brace-expansion.sequence","match":"({)(?:(-?\\d+\\.\\.-?\\d+)|([a-zA-Z]\\.\\.[a-zA-Z]))(\\.\\.-?\\d+)?(})","captures":{"1":{"patterns":[{"include":"etc#bracket"}]},"2":{"name":"meta.range.numeric","patterns":[{"include":"#dots"},{"include":"#intNoExp"}]},"3":{"name":"meta.range.alphabetic","patterns":[{"include":"#dots"},{"name":"constant.character.letter","match":"\\w"}]},"4":{"name":"meta.increment","patterns":[{"include":"#dots"},{"include":"#intNoExp"}]},"5":{"patterns":[{"include":"etc#bracket"}]}}},"globSet":{"name":"meta.character-class.set","match":"(?x)\n(\\[) (!|\\^)?\n(\n\t(?: [^\\\\\\[\\]]\n\t| \\\\.\n\t| \\[ (?::[!^]?\\w+:|\\..+?\\.|=.+?=) \\]\n\t)*+\n)(\\])","captures":{"1":{"name":"brackethighlighter.square.punctuation.definition.character-class.set.begin"},"2":{"name":"keyword.operator.logical.not"},"3":{"patterns":[{"include":"#esc"},{"match":"(?!^|\\G)(-)(?!\\])(-)?","captures":{"1":{"patterns":[{"include":"#dash"}]},"2":{"name":"constant.character.single"}}},{"include":"source.regexp.posix#charClass"},{"include":"source.regexp.posix#localeClasses"},{"name":"constant.character.single","match":"."}]},"4":{"name":"brackethighlighter.square.punctuation.definition.character-class.set.end"}}},"globSimple":{"patterns":[{"name":"keyword.operator.glob.wildcard.globstar","match":"\\*{2}"},{"name":"keyword.operator.glob.wildcard","match":"[*?]"}]},"hex":{"name":"constant.numeric.integer.int.hexadecimal.hex","match":"[-+]?[A-Fa-f0-9]+"},"hexNoSign":{"name":"constant.numeric.integer.int.hexadecimal.hex","match":"[A-Fa-f0-9]+"},"int":{"patterns":[{"include":"#intExp"},{"include":"#intNoExp"}]},"intExp":{"name":"constant.numeric.integer.int.decimal.dec.exponential.scientific","match":"[-+]?[0-9]+[eE][-+]?[0-9]+"},"intNoExp":{"name":"constant.numeric.integer.int.decimal.dec","match":"[-+]?[0-9]+"},"ip":{"patterns":[{"include":"#ipv6"},{"include":"#ipv4"}]},"ipv4":{"name":"constant.numeric.other.ip-address.v4","match":"(?x) (?:\\G|^|(?\u003c!\\.)\\b)\n(?!\\.)\n((?:\n\t\\.?\n\t(?: 25[0-5] # 250-255\n\t| 2[0-4]\\d # 200-249\n\t| 1\\d\\d # 100-199\n\t| [1-9]?\\d # 0-99\n\t)\\b\n){4})\n\n# CIDR notation: “/[0-32]”\n((/)(3[0-2]|[12]?\\d)\\b)?\n\n(?=$|\\s|(?!\\.)\\b)","captures":{"1":{"patterns":[{"include":"#dot"}]},"2":{"name":"meta.cidr-notation"},"3":{"name":"keyword.operator.assignment.cidr"},"4":{"patterns":[{"include":"#intNoExp"}]}}},"ipv6":{"name":"constant.numeric.other.ip-address.v6","match":"(?mix) (?:\\G|^|(?\u003c!\\.|:|\\w))\n(?\u003cdec\u003e25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d){0}\n(?\u003chex\u003e[A-F0-9]{1,4}){0}\n(?\u003cv4\u003e\\g\u003cdec\u003e(?:\\.\\g\u003cdec\u003e){3}){0}\n(?\u003cv6\u003e\\g\u003chex\u003e:){0}\n\n# Address\n(?: \\g\u003cv6\u003e{7} (?: \\g\u003chex\u003e |:)\n| \\g\u003cv6\u003e{6} (?: \\g\u003cv4\u003e| :\\g\u003chex\u003e |:)\n| \\g\u003cv6\u003e{5} (?: :\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,2}|:)\n| \\g\u003cv6\u003e{4} (?:(?::\\g\u003chex\u003e)? :\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,3}|:)\n| \\g\u003cv6\u003e{3} (?:(?::\\g\u003chex\u003e){0,2}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,4}|:)\n| \\g\u003cv6\u003e{2} (?:(?::\\g\u003chex\u003e){0,3}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,5}|:)\n| \\g\u003cv6\u003e (?:(?::\\g\u003chex\u003e){0,4}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,6}|:)\n| (?::(?:(?::\\g\u003chex\u003e){0,5}:\\g\u003cv4\u003e|(?::\\g\u003chex\u003e){1,7}|:))\n) (?:(?\u003c!:)\\b|(?\u003c=:)(?!\\w|:))\n\n# Zone ID (RFC 4007): “%ne0”\n(?:\n\t%\n\t(?!\\$)\n\t[^\\s();\"/]+\n)?\n\n# CIDR notation: “/[0-128]”\n(?:\n\t/\n\t(?: 12[0-8] # 120-128\n\t| 1[01]\\d # 100-119\n\t| [1-9]?\\d # 0-99\n\t) \\b\n)?\n\n(?=$|\\s|[^.:%/\\s])","captures":{"0":{"patterns":[{"match":"(?!$)((%)([^/%]+))?((/)([0-9]+))?$","captures":{"1":{"name":"meta.zone-id"},"2":{"name":"keyword.operator.assignment.zone-id"},"3":{"name":"entity.other.zone-index"},"4":{"name":"meta.cidr-notation"},"5":{"name":"keyword.operator.assignment.cidr"},"6":{"patterns":[{"include":"#intNoExp"}]}}},{"include":"#colon"}]}}},"kolon":{"name":"keyword.operator.assignment.key-value.colon","match":":"},"mime":{"name":"constant.other.media-type","match":"(?xi) (?\u003c!-|\\.)\\b\n(?: (application|audio|example|font|image|message|model|multipart|text|video)\n| (chemical|drawing|magnus-internal|paleovu|xgl|inode(?=/(?:blockdevice|chardevice|directory|door|fifo|mount-point|socket|symlink)))\n| (x-[-a-z0-9+_.]{1,125})\n) (/) (?![.+])([-a-z0-9+_.]{1,127})(?\u003c![.+])\n\\b (?!-|\\.)\n((?:\n\t# LHS: “; name=”\n\t\\s* ; \\s* [^;=]+ \\s* = [ \\t]*\n\t\n\t# RHS\n\t(?: \"(?:[^\"\\\\]|\\\\\")*+\" # Quoted value\n\t| (?=\\S)[^;\\r\\n]+ # Unquoted value\n\t)?\n)++)?","captures":{"1":{"name":"entity.name.type.standard.${1:/downcase}.media-type"},"2":{"name":"entity.name.type.nonstandard.${2:/downcase}.media-type"},"3":{"name":"entity.name.type.extension.media-type"},"4":{"name":"punctuation.separator.slash.media-type"},"5":{"patterns":[{"contentName":"entity.name.subtype.media-type","begin":"(?i)(?:^|\\G)(?:(([-a-z0-9_]+)(\\.))((?:[-a-z0-9_]+\\.)*+))?","end":"((\\+)[-a-z0-9_.]+)?$","beginCaptures":{"1":{"name":"entity.other.tree.${2:/downcase}.media-type"},"3":{"name":"punctuation.separator.dot.media-type"},"4":{"patterns":[{"name":"entity.other.subtree.${1:/downcase}.media-type","match":"([^.]+)(\\.)","captures":{"2":{"name":"punctuation.separator.dot.media-type"}}}]}},"endCaptures":{"1":{"name":"entity.other.suffix.media-type"},"2":{"name":"punctuation.separator.plus.media-type"}}}]},"6":{"name":"meta.parameters.media-type","patterns":[{"name":"meta.parameter.media-type","begin":"\\s*((;))\\s*([^;=]+)\\s*(=)[ \\t]*","end":"(?!\\G)","patterns":[{"name":"string.quoted.double.media-type","match":"\\G(\")((?:[^\"\\\\]|\\\\\")*+)(\")","captures":{"1":{"name":"punctuation.definition.string.begin.media-type"},"2":{"patterns":[{"name":"constant.character.escape.quote.media-type","match":"\\\\\""}]},"3":{"name":"punctuation.definition.string.end.media-type"}}},{"name":"string.unquoted.parameter.media-type","match":"\\G[^;\\r\\n]+"}],"beginCaptures":{"1":{"name":"punctuation.delimiter.semicolon.media-type"},"2":{"name":"sublimelinter.gutter-mark"},"3":{"name":"variable.parameter.media-type"},"4":{"patterns":[{"include":"#eql"}]}}}]}}},"num":{"patterns":[{"include":"#float"},{"include":"#int"}]},"op":{"patterns":[{"include":"#opBitAssign"},{"include":"#opMathAssign"},{"include":"#opBit"},{"include":"#opFix"},{"include":"#opCmp"},{"include":"#opLog"},{"include":"#opMath"}]},"opBit":{"patterns":[{"name":"keyword.operator.bitwise.xor","match":"\\^"},{"name":"keyword.operator.bitwise.not","match":"~"},{"name":"keyword.operator.bitwise.and","match":"\u0026"},{"name":"keyword.operator.bitwise.or","match":"\\|"},{"name":"keyword.operator.bitwise.shift.left","match":"\u003c\u003c"},{"name":"keyword.operator.bitwise.shift.right.unsigned","match":"\u003e\u003e\u003e"},{"name":"keyword.operator.bitwise.shift.right.signed","match":"\u003e\u003e"}]},"opBitAssign":{"patterns":[{"name":"keyword.operator.assignment.bitwise.xor","match":"\\^="},{"name":"keyword.operator.assignment.bitwise.not","match":"~="},{"name":"keyword.operator.assignment.bitwise.and","match":"\u0026="},{"name":"keyword.operator.assignment.bitwise.or","match":"\\|="},{"name":"keyword.operator.assignment.bitwise.shift.left","match":"\u003c\u003c="},{"name":"keyword.operator.assignment.bitwise.shift.right.unsigned","match":"\u003e\u003e\u003e="},{"name":"keyword.operator.assignment.bitwise.shift.right.signed","match":"\u003e\u003e="}]},"opCmp":{"patterns":[{"name":"keyword.operator.logical.comparison.starship.spaceship","match":"\u003c=\u003e"},{"name":"keyword.operator.logical.comparison.less-than-or-equal-to.lte","match":"\u003c="},{"name":"keyword.operator.logical.comparison.less-than.lt","match":"\u003c"},{"name":"keyword.operator.logical.comparison.greater-than-or-equal-to.gte","match":"\u003e="},{"name":"keyword.operator.logical.comparison.greater-than.gt","match":"\u003e"},{"name":"keyword.operator.logical.comparison.equal-to.equals.equal.eql.eq.strict","match":"==="},{"name":"keyword.operator.logical.comparison.equal-to.equals.equal.eql.eq","match":"=="},{"name":"keyword.operator.logical.comparison.not-equal-to.not-equal.unequal.neql.ne.strict","match":"!=="},{"name":"keyword.operator.logical.comparison.not-equal-to.not-equal.unequal.neql.ne","match":"!="}]},"opFix":{"patterns":[{"name":"keyword.operator.increment","match":"\\+{2}"},{"name":"keyword.operator.decrement","match":"-{2}"}]},"opLog":{"patterns":[{"name":"keyword.operator.logical.boolean.cast","match":"!!"},{"name":"keyword.operator.logical.boolean.not.negation.negate","match":"!"},{"name":"keyword.operator.logical.boolean.and","match":"\u0026\u0026"},{"name":"keyword.operator.logical.boolean.or","match":"\\|{2}"},{"name":"keyword.operator.logical.boolean.or.nullish","match":"\\?{2}"}]},"opMath":{"patterns":[{"name":"keyword.operator.arithmetic.exponentiation.exponent.exp.power","match":"\\*{2}|\\^"},{"name":"keyword.operator.arithmetic.addition.add.plus","match":"\\+"},{"name":"keyword.operator.arithmetic.multiplication.multiply.times","match":"\\*"},{"name":"keyword.operator.arithmetic.division.divide","match":"/"},{"name":"keyword.operator.arithmetic.remainder.modulo.modulus.mod","match":"%"},{"name":"keyword.operator.arithmetic.subtraction.subtract.minus","match":"[-֊־᐀᠆‐-―⸗⸚⸺⸻⹀〜〰゠︱︲﹘﹣-]"}]},"opMathAssign":{"patterns":[{"name":"keyword.operator.assignment.arithmetic.exponentiation.exponent.exp.power","match":"\\*{2}=|\\^="},{"name":"keyword.operator.assignment.arithmetic.addition.add.plus","match":"\\+="},{"name":"keyword.operator.assignment.arithmetic.multiplication.multiply.times","match":"\\*="},{"name":"keyword.operator.assignment.arithmetic.division.divide","match":"/="},{"name":"keyword.operator.assignment.arithmetic.remainder.modulo.modulus.mod","match":"%="},{"name":"keyword.operator.assignment.arithmetic.subtraction.subtract.minus","match":"[-֊־᐀᠆‐-―⸗⸚⸺⸻⹀〜〰゠︱︲﹘﹣-]="}]},"semi":{"name":"punctuation.delimiter.separator.semicolon","match":";"},"str":{"patterns":[{"include":"#strDouble"},{"include":"#strSingle"}]},"strDouble":{"name":"string.quoted.double","begin":"\"","end":"\"|(?=$)","patterns":[{"include":"#esc"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end"}}},"strSingle":{"name":"string.quoted.single","begin":"'","end":"'|(?=$)","patterns":[{"include":"#esc"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end"}}},"tab":{"patterns":[{"match":"^\\t+","captures":{"0":{"patterns":[{"name":"punctuation.whitespace.leading.tab.hard-tab","match":"\\t"}]}}},{"match":"\\t+$","captures":{"0":{"patterns":[{"name":"punctuation.whitespace.trailing.tab.hard-tab","match":"\\t"}]}}},{"name":"punctuation.whitespace.tab.hard-tab","match":"\\t"}]},"url":{"patterns":[{"match":"(?x)\n(\"|'|\\b)\n(\n\t# Not part of official URL schemes, included here for convenience\n\t(?: (?:jdbc|mvn|odbc|view-source) :)?\n\n\t# Common protocols/URI schemes\n\t( https?\n\t| s?ftp\n\t| ftps\n\t| file\n\t| wss?\n\t| (?:git|svn) (?:\\+(?:https?|ssh))?\n\t| ssh\n\t\n\t# Less common URI schemes\n\t| aaas?\n\t| acap\n\t| adiumxtra\n\t| admin\n\t| afp\n\t| app\n\t| atom\n\t| aurora\n\t| aw\n\t| beshare\n\t| bolo\n\t| cassandra\n\t| chrome(?:-extension)?\n\t| coaps?\n\t| cockroach\n\t| content\n\t| couchbase\n\t| crid\n\t| cvs\n\t| dict\n\t| dns\n\t| docker\n\t| ed2k\n\t| facetime\n\t| feed\n\t| finger\n\t| fish\n\t| gemini\n\t| github(?:-(?:mac|linux|windows))?\n\t| gizmoproject\n\t| gopher\n\t| go\n\t| hcp\n\t| imap\n\t| irc[6s]?\n\t| issue\n\t| keyparc\n\t| lastfm\n\t| ldaps?\n\t| man(?:-?page)?\n\t| maria(?:db)?\n\t| market\n\t| message\n\t| mms\n\t| modern-?sqlite\n\t| mongodb\n\t| ms-help\n\t| mssql\n\t| mumble\n\t| my?sql\n\t| netezza\n\t| nfs\n\t| ni\n\t| nntp\n\t| notes\n\t| oleodbc\n\t| oracle\n\t| payto\n\t| pgsql\n\t| pg\n\t| pop\n\t| postgres(?:ql)?\n\t| postgresql\n\t| presto(?:dbs?|s)\n\t| reload\n\t| resource\n\t| res\n\t| rmi\n\t| rsync\n\t| rtmf?p\n\t| rtmp\n\t| s3\n\t| saphana\n\t| secondlife\n\t| sgn\n\t| shttp\n\t| slack\n\t| smb\n\t| snmp\n\t| soldat\n\t| sqlite3?\n\t| sqlserver\n\t| steam\n\t| stratum\\+[a-z]+\n\t| stuns?\n\t| teamspeak\n\t| telnet\n\t| turns?\n\t| txmt\n\t| udp\n\t| unreal\n\t| ut2004\n\t| ventrilo\n\t| vnc\n\t| wais\n\t| web\\+[a-z]+\n\t| webcal\n\t| wtai\n\t| wyciwyg\n\t| xmpp\n\t| xri\n\t| z39\\.50[rs]\n\t| zoommtg\n\t\n\t# User-defined/arbitrary URI scheme starting with `x-`\n\t| x(?:-[a-z][a-z0-9]*)++\n\t) ://\n\t\n\t# Path specifier\n\t(?:\n\t\t(?! \\#\\w*\\#)\n\t\t(?: [-:\\@\\w.,~%+_/?=\u0026\\#;|!])\n\t)+\n\t\n\t# Don't include trailing punctuation\n\t(?\u003c![-.,?:\\#;])\n)\n(\\1)","captures":{"1":{"name":"punctuation.definition.link.begin.url"},"2":{"name":"constant.other.reference.link.underline.$3.url"},"4":{"name":"punctuation.definition.link.end.url"}}},{"match":"(?x)\n(\"|'|\\b)\n(\n\tmailto (:)\n\t(?:\n\t\t(?! \\#\\w*\\#)\n\t\t(?: [-:@\\w.,~%+_/?=\u0026\\#;|!])\n\t)+\n\t(?\u003c![-.,?:\\#;])\n)\n(\\1)","captures":{"1":{"name":"punctuation.definition.link.begin.url"},"2":{"name":"constant.other.reference.link.underline.mailto.url"},"3":{"name":"punctuation.separator.delimiter.scheme.url"},"4":{"name":"punctuation.definition.link.end.url"}}}]},"version":{"name":"constant.other.version-string","match":"(?x)\n(\"|'|\\b)\n([vV]?)\n(0 | [1-9]\\d*) (\\.)\n(0 | [1-9]\\d*) (\\.)\n(0 | [1-9]\\d*)\n(?:\n\t(-)\n\t(\n\t\t(?: 0\n\t\t| [1-9]\\d*\n\t\t| \\d*[a-zA-Z-][0-9a-zA-Z-]*\n\t\t)\n\t\t\n\t\t(?:\n\t\t\t\\.\n\t\t\t(?: 0\n\t\t\t| [1-9]\\d*\n\t\t\t| \\d*[a-zA-Z-][0-9a-zA-Z-]*\n\t\t\t)\n\t\t)*\n\t)\n)?\n(?:\n\t(\\+)\n\t(\n\t\t[0-9a-zA-Z-]+\n\t\t(?:\\.[0-9a-zA-Z-]+)*\n\t)\n)?\n(\\1)","captures":{"1":{"name":"punctuation.definition.version-string.begin"},"10":{"name":"punctuation.delimiter.separator.plus"},"11":{"name":"meta.build-metadata","patterns":[{"include":"#dot"}]},"12":{"name":"punctuation.definition.version-string.end"},"2":{"name":"punctuation.definition.version-prefix"},"3":{"name":"meta.major.release-number"},"4":{"patterns":[{"include":"#dot"}]},"5":{"name":"meta.minor.release-number"},"6":{"patterns":[{"include":"#dot"}]},"7":{"name":"meta.patch.release-number"},"8":{"patterns":[{"include":"#dash"}]},"9":{"name":"meta.prerelease.release-number","patterns":[{"include":"#dot"}]}}}}}
@@ -0,0 +1 @@
1
+ {"scopeName":"injection.interpolated-ruby","patterns":[{"include":"#interpolated-ruby"}],"repository":{"interpolated-ruby":{"name":"meta.interpolation.slim meta.string.ruby source.ruby.embedded.slim","begin":"(?\u003c!\\\\)#\\{{1,2}","end":"\\}{1,2}","patterns":[{"include":"source.ruby"}],"beginCaptures":{"0":{"name":"punctuation.section.interpolation.begin.slim"}},"endCaptures":{"0":{"name":"punctuation.section.interpolation.end.slim"}}}}}
@@ -1 +1 @@
1
- {"scopeName":"injections.etc","patterns":[{"name":"storage.type.class.${1:/downcase}","match":"(?\u003c!\\w)@?(PINHACK)\\b"}],"repository":{"scopeHack":{"begin":"\\A(?:\\xC2\\xAD|\\xAD){50}","end":"(?=A)B","patterns":[{"name":"markup.bold","match":"^ {5}(PRIMER PREVIEW - How grammar scopes look on GitHub):","captures":{"1":{"name":"constant.other.reference.link"}}},{"name":"comment.line","match":"^\\s*Last updated:\\s*(\\d{4}-\\d{2}-\\d{2})$"},{"name":"constant.other.reference.link","match":"^│ +(TEXTMATE.*) +│$","captures":{"1":{"name":"markup.heading"}}},{"match":"^│ +│$","captures":{"0":{"name":"constant.other.reference.link"}}},{"match":"^│\\s+(brackethighlighter.angle\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.angle"}}},{"match":"^│\\s+(brackethighlighter.curly\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.curly"}}},{"match":"^│\\s+(brackethighlighter.quote\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.quote"}}},{"match":"^│\\s+(brackethighlighter.round\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.round"}}},{"match":"^│\\s+(brackethighlighter.square\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.square"}}},{"match":"^│\\s+(brackethighlighter.tag\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.tag"}}},{"match":"^│\\s+(brackethighlighter.unmatched\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.unmatched"}}},{"match":"^│\\s+(carriage-return\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"carriage-return"}}},{"match":"^│\\s+(comment\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"comment"}}},{"match":"^│\\s+(constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"constant"}}},{"match":"^│\\s+(constant.character.escape\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"constant.character.escape"}}},{"match":"^│\\s+(constant.other.reference.link\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"constant.other.reference.link"}}},{"match":"^│\\s+(entity\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity"}}},{"match":"^│\\s+(entity.name\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity.name"}}},{"match":"^│\\s+(entity.name.constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity.name.constant"}}},{"match":"^│\\s+(entity.name.tag\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity.name.tag"}}},{"match":"^│\\s+(invalid.broken\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.broken"}}},{"match":"^│\\s+(invalid.deprecated\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.deprecated"}}},{"match":"^│\\s+(invalid.illegal\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.illegal"}}},{"match":"^│\\s+(invalid.unimplemented\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.unimplemented"}}},{"match":"^│\\s+(keyword\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"keyword"}}},{"match":"^│\\s+(keyword.operator.symbole\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"keyword.operator.symbole"}}},{"match":"^│\\s+(keyword.other.mark\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"keyword.other.mark"}}},{"match":"^│\\s+(markup.bold\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.bold"}}},{"match":"^│\\s+(markup.changed\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.changed"}}},{"match":"^│\\s+(markup.deleted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.deleted"}}},{"match":"^│\\s+(markup.heading\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.heading"}}},{"match":"^│\\s+(markup.ignored\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.ignored"}}},{"match":"^│\\s+(markup.inserted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.inserted"}}},{"match":"^│\\s+(markup.italic\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.italic"}}},{"match":"^│\\s+(markup.list\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.list"}}},{"match":"^│\\s+(markup.quote\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.quote"}}},{"match":"^│\\s+(markup.raw\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.raw"}}},{"match":"^│\\s+(markup.untracked\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.untracked"}}},{"match":"^│\\s+(message.error\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"message.error"}}},{"match":"^│\\s+(meta.diff.header\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.header"}}},{"match":"^│\\s+(meta.diff.header.from-file\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.header.from-file"}}},{"match":"^│\\s+(meta.diff.header.to-file\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.header.to-file"}}},{"match":"^│\\s+(meta.diff.range\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.range"}}},{"match":"^│\\s+(meta.module-reference\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.module-reference"}}},{"match":"^│\\s+(meta.output\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.output"}}},{"match":"^│\\s+(meta.property-name\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.property-name"}}},{"match":"^│\\s+(meta.separator\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.separator"}}},{"match":"^│\\s+(punctuation.definition.changed\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.changed"}}},{"match":"^│\\s+(punctuation.definition.comment\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.comment"}}},{"match":"^│\\s+(punctuation.definition.deleted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.deleted"}}},{"match":"^│\\s+(punctuation.definition.inserted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.inserted"}}},{"match":"^│\\s+(punctuation.definition.string\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.string"}}},{"match":"^│\\s+(punctuation.section.embedded\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.section.embedded"}}},{"match":"^│\\s+(source\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"source"}}},{"match":"^│\\s+(source.regexp\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"source.regexp"}}},{"match":"^│\\s+(source.ruby.embedded\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"source.ruby.embedded"}}},{"match":"^│\\s+(storage\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage"}}},{"match":"^│\\s+(storage.modifier.import\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.modifier.import"}}},{"match":"^│\\s+(storage.modifier.package\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.modifier.package"}}},{"match":"^│\\s+(storage.type\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.type"}}},{"match":"^│\\s+(storage.type.java\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.type.java"}}},{"match":"^│\\s+(string\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string"}}},{"match":"^│\\s+(string.comment\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.comment"}}},{"match":"^│\\s+(string.other.link\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.other.link"}}},{"match":"^│\\s+(string.regexp\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.regexp"}}},{"match":"^│\\s+(string.regexp.arbitrary-repitition\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.regexp.arbitrary-repitition"}}},{"match":"^│\\s+(string.regexp.character-class\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.regexp.character-class"}}},{"match":"^│\\s+(string.unquoted.import.ada\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.unquoted.import.ada"}}},{"match":"^│\\s+(sublimelinter.gutter-mark\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"sublimelinter.gutter-mark"}}},{"match":"^│\\s+(sublimelinter.mark.error\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"sublimelinter.mark.error"}}},{"match":"^│\\s+(sublimelinter.mark.warning\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"sublimelinter.mark.warning"}}},{"match":"^│\\s+(support\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"support"}}},{"match":"^│\\s+(support.constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"support.constant"}}},{"match":"^│\\s+(support.variable\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"support.variable"}}},{"match":"^│\\s+(variable\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable"}}},{"match":"^│\\s+(variable.language\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.language"}}},{"match":"^│\\s+(variable.other\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.other"}}},{"match":"^│\\s+(variable.other.constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.other.constant"}}},{"match":"^│\\s+(variable.parameter.function\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.parameter.function"}}},{"match":"^│\\s+(([a-z][-a-z.]+)\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"$2"}}},{"name":"comment.line","match":"^#.*$"}]}}}
1
+ {"scopeName":"injections.etc","patterns":[{"name":"storage.type.class.${1:/downcase}","match":"(?\u003c!\\w)@?(PINHACK)\\b"}],"repository":{"scopeHack":{"begin":"\\A(?:\\xC2\\xAD|\\x{AD}){50}","end":"(?=A)B","patterns":[{"name":"markup.bold","match":"^ {5}(PRIMER PREVIEW - How grammar scopes look on GitHub):","captures":{"1":{"name":"constant.other.reference.link"}}},{"name":"comment.line","match":"^\\s*Last updated:\\s*(\\d{4}-\\d{2}-\\d{2})$"},{"name":"constant.other.reference.link","match":"^│ +(TEXTMATE.*) +│$","captures":{"1":{"name":"markup.heading"}}},{"match":"^│ +│$","captures":{"0":{"name":"constant.other.reference.link"}}},{"match":"^│\\s+(brackethighlighter.angle\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.angle"}}},{"match":"^│\\s+(brackethighlighter.curly\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.curly"}}},{"match":"^│\\s+(brackethighlighter.quote\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.quote"}}},{"match":"^│\\s+(brackethighlighter.round\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.round"}}},{"match":"^│\\s+(brackethighlighter.square\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.square"}}},{"match":"^│\\s+(brackethighlighter.tag\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.tag"}}},{"match":"^│\\s+(brackethighlighter.unmatched\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"brackethighlighter.unmatched"}}},{"match":"^│\\s+(carriage-return\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"carriage-return"}}},{"match":"^│\\s+(comment\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"comment"}}},{"match":"^│\\s+(constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"constant"}}},{"match":"^│\\s+(constant.character.escape\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"constant.character.escape"}}},{"match":"^│\\s+(constant.other.reference.link\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"constant.other.reference.link"}}},{"match":"^│\\s+(entity\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity"}}},{"match":"^│\\s+(entity.name\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity.name"}}},{"match":"^│\\s+(entity.name.constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity.name.constant"}}},{"match":"^│\\s+(entity.name.tag\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"entity.name.tag"}}},{"match":"^│\\s+(invalid.broken\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.broken"}}},{"match":"^│\\s+(invalid.deprecated\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.deprecated"}}},{"match":"^│\\s+(invalid.illegal\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.illegal"}}},{"match":"^│\\s+(invalid.unimplemented\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"invalid.unimplemented"}}},{"match":"^│\\s+(keyword\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"keyword"}}},{"match":"^│\\s+(keyword.operator.symbole\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"keyword.operator.symbole"}}},{"match":"^│\\s+(keyword.other.mark\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"keyword.other.mark"}}},{"match":"^│\\s+(markup.bold\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.bold"}}},{"match":"^│\\s+(markup.changed\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.changed"}}},{"match":"^│\\s+(markup.deleted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.deleted"}}},{"match":"^│\\s+(markup.heading\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.heading"}}},{"match":"^│\\s+(markup.ignored\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.ignored"}}},{"match":"^│\\s+(markup.inserted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.inserted"}}},{"match":"^│\\s+(markup.italic\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.italic"}}},{"match":"^│\\s+(markup.list\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.list"}}},{"match":"^│\\s+(markup.quote\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.quote"}}},{"match":"^│\\s+(markup.raw\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.raw"}}},{"match":"^│\\s+(markup.untracked\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"markup.untracked"}}},{"match":"^│\\s+(message.error\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"message.error"}}},{"match":"^│\\s+(meta.diff.header\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.header"}}},{"match":"^│\\s+(meta.diff.header.from-file\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.header.from-file"}}},{"match":"^│\\s+(meta.diff.header.to-file\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.header.to-file"}}},{"match":"^│\\s+(meta.diff.range\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.diff.range"}}},{"match":"^│\\s+(meta.module-reference\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.module-reference"}}},{"match":"^│\\s+(meta.output\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.output"}}},{"match":"^│\\s+(meta.property-name\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.property-name"}}},{"match":"^│\\s+(meta.separator\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"meta.separator"}}},{"match":"^│\\s+(punctuation.definition.changed\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.changed"}}},{"match":"^│\\s+(punctuation.definition.comment\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.comment"}}},{"match":"^│\\s+(punctuation.definition.deleted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.deleted"}}},{"match":"^│\\s+(punctuation.definition.inserted\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.inserted"}}},{"match":"^│\\s+(punctuation.definition.string\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.definition.string"}}},{"match":"^│\\s+(punctuation.section.embedded\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"punctuation.section.embedded"}}},{"match":"^│\\s+(source\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"source"}}},{"match":"^│\\s+(source.regexp\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"source.regexp"}}},{"match":"^│\\s+(source.ruby.embedded\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"source.ruby.embedded"}}},{"match":"^│\\s+(storage\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage"}}},{"match":"^│\\s+(storage.modifier.import\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.modifier.import"}}},{"match":"^│\\s+(storage.modifier.package\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.modifier.package"}}},{"match":"^│\\s+(storage.type\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.type"}}},{"match":"^│\\s+(storage.type.java\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"storage.type.java"}}},{"match":"^│\\s+(string\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string"}}},{"match":"^│\\s+(string.comment\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.comment"}}},{"match":"^│\\s+(string.other.link\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.other.link"}}},{"match":"^│\\s+(string.regexp\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.regexp"}}},{"match":"^│\\s+(string.regexp.arbitrary-repitition\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.regexp.arbitrary-repitition"}}},{"match":"^│\\s+(string.regexp.character-class\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.regexp.character-class"}}},{"match":"^│\\s+(string.unquoted.import.ada\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"string.unquoted.import.ada"}}},{"match":"^│\\s+(sublimelinter.gutter-mark\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"sublimelinter.gutter-mark"}}},{"match":"^│\\s+(sublimelinter.mark.error\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"sublimelinter.mark.error"}}},{"match":"^│\\s+(sublimelinter.mark.warning\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"sublimelinter.mark.warning"}}},{"match":"^│\\s+(support\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"support"}}},{"match":"^│\\s+(support.constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"support.constant"}}},{"match":"^│\\s+(support.variable\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"support.variable"}}},{"match":"^│\\s+(variable\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable"}}},{"match":"^│\\s+(variable.language\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.language"}}},{"match":"^│\\s+(variable.other\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.other"}}},{"match":"^│\\s+(variable.other.constant\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.other.constant"}}},{"match":"^│\\s+(variable.parameter.function\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"variable.parameter.function"}}},{"match":"^│\\s+(([a-z][-a-z.]+)\\s+\\S+\\s+░▒▓█+)\\s+│$","captures":{"1":{"name":"$2"}}},{"name":"comment.line","match":"^#.*$"}]}}}
@@ -1 +1 @@
1
- {"scopeName":"inline.edgeql","patterns":[{"name":"comment-tagged-template.edgeql","contentName":"meta.embedded.block.edgeql","begin":"(`)(#\\s*edgeql[^\n]*)","end":"(`)","patterns":[{"include":"source.edgeql"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.go"},"2":{"name":"comment.line.number-sign.edgeql"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.go"}}}]}
1
+ {"scopeName":"inline.edgeql","patterns":[{"name":"commentTaggedString.edgeql","contentName":"meta.embedded.block.edgeql","begin":"('''|\"\"\"|'|\")(#\\s*edgeql)","end":"\\1","patterns":[{"include":"source.edgeql"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.dart"},"2":{"name":"comment.line.number-sign.edgeql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dart"}}},{"name":"commentTaggedString.edgeql.multiline","contentName":"meta.embedded.block.edgeql","begin":"(/\\*\\*\\s*edgeql\\s*\\**/)\\s*('''|\"\"\")","end":"\\2","patterns":[{"include":"source.edgeql"}],"beginCaptures":{"1":{"name":"punctuation.definition.comment.dart"},"2":{"name":"punctuation.definition.string.begin.dart"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dart"}}},{"name":"rawStringTagged.edgeql","contentName":"meta.embedded.block.edgeql","begin":"(r)('''|\"\"\"|'|\")(#\\s*edgeql)","end":"\\2","patterns":[{"include":"source.edgeql"}],"beginCaptures":{"1":{"name":"storage.type.string.dart"},"2":{"name":"punctuation.definition.string.begin.dart"},"3":{"name":"comment.line.number-sign.edgeql"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.dart"}}}]}
@@ -1 +1 @@
1
- {"scopeName":"liquid.injection","patterns":[{"include":"#injection"}],"repository":{"attribute":{"begin":"\\w+:","end":"(?=,|%}|}}|\\|)","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"attribute_liquid":{"begin":"\\w+:","end":"(?=,|\\|)|$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"comment_block":{"name":"comment.block.liquid","begin":"{%-?\\s*comment\\s*-?%}","end":"{%-?\\s*endcomment\\s*-?%}","patterns":[{"include":"#comment_block"},{"match":"(.(?!{%-?\\s*(comment|endcomment)\\s*-?%}))*."}]},"core":{"patterns":[{"include":"#raw_tag"},{"include":"#doc_tag"},{"include":"#comment_block"},{"include":"#style_codefence"},{"include":"#stylesheet_codefence"},{"include":"#json_codefence"},{"include":"#javascript_codefence"},{"include":"#object"},{"include":"#tag"},{"include":"text.html.basic"}]},"doc_tag":{"name":"meta.block.doc.liquid","contentName":"comment.block.documentation.liquid","begin":"{%-?\\s*(doc)\\s*-?%}","end":"{%-?\\s*(enddoc)\\s*-?%}","patterns":[{"include":"#liquid_doc_description_tag"},{"include":"#liquid_doc_param_tag"},{"include":"#liquid_doc_example_tag"},{"include":"#liquid_doc_fallback_tag"}],"beginCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}},"endCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}}},"filter":{"match":"\\|\\s*((?![\\.0-9])[a-zA-Z0-9_-]+\\:?)\\s*","captures":{"1":{"name":"support.function.liquid"}}},"injection":{"patterns":[{"include":"#raw_tag"},{"include":"#comment_block"},{"include":"#object"},{"include":"#tag_injection"}]},"invalid_range":{"name":"invalid.illegal.range.liquid","match":"\\((.(?!\\.\\.))+\\)"},"javascript_codefence":{"name":"meta.block.javascript.liquid","contentName":"meta.embedded.block.js","begin":"({%-?)\\s*(javascript)\\s*(-?%})","end":"({%-?)\\s*(endjavascript)\\s*(-?%})","patterns":[{"include":"source.js"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.javascript.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.javascript.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"json_codefence":{"name":"meta.block.schema.liquid","contentName":"meta.embedded.block.json","begin":"({%-?)\\s*(schema)\\s*(-?%})","end":"({%-?)\\s*(endschema)\\s*(-?%})","patterns":[{"include":"source.json"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.schema.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.schema.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"language_constant":{"name":"constant.language.liquid","match":"\\b(false|true|nil|blank)\\b|empty(?!\\?)"},"liquid_doc_description_tag":{"begin":"(@description)\\b\\s*","end":"(?=@|{%-?\\s*enddoc\\s*-?%})","patterns":[{"name":"string.quoted.single.liquid","match":"[^@]+"}],"beginCaptures":{"0":{"name":"comment.block.documentation.liquid"},"1":{"name":"storage.type.class.liquid"}}},"liquid_doc_example_tag":{"contentName":"meta.embedded.block.liquid","begin":"(@example)\\b\\s*","end":"(?=@|{%-?\\s*enddoc\\s*-?%})","patterns":[{"include":"#core"}],"beginCaptures":{"0":{"name":"comment.block.documentation.liquid"},"1":{"name":"storage.type.class.liquid"}}},"liquid_doc_fallback_tag":{"match":"(@\\w+)\\b","captures":{"1":{"name":"comment.block.liquid"}}},"liquid_doc_param_tag":{"match":"(@param)\\s+(?:({[^}]*}?)\\s+)?(\\[?[a-zA-Z_][\\w-]*\\]?)?(?:\\s+(.*))?","captures":{"1":{"name":"storage.type.class.liquid"},"2":{"name":"entity.name.type.instance.liquid"},"3":{"name":"variable.other.liquid"},"4":{"name":"string.quoted.single.liquid"}}},"number":{"name":"constant.numeric.liquid","match":"((-|\\+)\\s*)?[0-9]+(\\.[0-9]+)?"},"object":{"name":"meta.object.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){{-?","end":"-?}}","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"operator":{"match":"(?:(?\u003c=\\s)|\\b)(\\=\\=|!\\=|\\\u003e|\\\u003c|\\\u003e\\=|\\\u003c\\=|or|and|contains)(?:(?=\\s)|\\b)","captures":{"1":{"name":"keyword.operator.expression.liquid"}}},"range":{"name":"meta.range.liquid","begin":"\\(","end":"\\)","patterns":[{"name":"punctuation.range.liquid","match":"\\.\\."},{"include":"#variable_lookup"},{"include":"#number"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.liquid"}}},"raw_tag":{"name":"meta.entity.tag.raw.liquid","contentName":"string.unquoted.liquid","begin":"{%-?\\s*(raw)\\s*-?%}","end":"{%-?\\s*(endraw)\\s*-?%}","patterns":[{"match":"(.(?!{%-?\\s*endraw\\s*-?%}))*."}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"endCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"string":{"patterns":[{"include":"#string_single"},{"include":"#string_double"}]},"string_double":{"name":"string.quoted.double.liquid","begin":"\"","end":"\""},"string_single":{"name":"string.quoted.single.liquid","begin":"'","end":"'"},"style_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(style)\\s*(-?%})","end":"({%-?)\\s*(endstyle)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"stylesheet_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(stylesheet)\\s*(-?%})","end":"({%-?)\\s*(endstylesheet)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"tag":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_assign":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"(?=%})","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_assign_liquid":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"$","patterns":[{"include":"#filter"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_body":{"patterns":[{"include":"#tag_liquid"},{"include":"#tag_assign"},{"include":"#tag_comment_inline"},{"include":"#tag_case"},{"include":"#tag_conditional"},{"include":"#tag_for"},{"include":"#tag_paginate"},{"include":"#tag_render"},{"include":"#tag_tablerow"},{"include":"#tag_expression"}]},"tag_case":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_case_liquid":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_comment_block_liquid":{"name":"comment.block.liquid","begin":"(?:^\\s*)(comment)\\b","end":"(?:^\\s*)(endcomment)\\b","patterns":[{"include":"#tag_comment_block_liquid"},{"match":"(?:^\\s*)(?!(comment|endcomment)).*"}]},"tag_comment_inline":{"name":"comment.line.number-sign.liquid","begin":"#","end":"(?=%})"},"tag_comment_inline_liquid":{"name":"comment.line.number-sign.liquid","begin":"(?:^\\s*)#.*","end":"$"},"tag_conditional":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_conditional_liquid":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_expression":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_liquid":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_without_arguments":{"patterns":[{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endunless|endif)\\b","captures":{"1":{"name":"keyword.control.conditional.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endfor|endtablerow|endpaginate)\\b","captures":{"1":{"name":"keyword.control.loop.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcase)\\b","captures":{"1":{"name":"keyword.control.case.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(capture|case|comment|for|form|if|javascript|paginate|schema|style)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(else|break|continue)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}}]},"tag_for":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"(?=%})","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_for_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in|reversed)\\b"},{"name":"keyword.control.liquid","match":"\\b(offset|limit):"},{"include":"#value_expression"}]},"tag_for_liquid":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"$","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_injection":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?(?!-?\\s*(endstyle|endjavascript|endcomment|endraw))","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_liquid":{"name":"meta.entity.tag.liquid.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(liquid)\\b","end":"(?=%})","patterns":[{"include":"#tag_comment_block_liquid"},{"include":"#tag_comment_inline_liquid"},{"include":"#tag_assign_liquid"},{"include":"#tag_case_liquid"},{"include":"#tag_conditional_liquid"},{"include":"#tag_for_liquid"},{"include":"#tag_paginate_liquid"},{"include":"#tag_render_liquid"},{"include":"#tag_tablerow_liquid"},{"include":"#tag_expression_liquid"}],"beginCaptures":{"1":{"name":"keyword.control.liquid.liquid"}}},"tag_paginate":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"(?=%})","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_paginate_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(by)\\b"},{"include":"#value_expression"}]},"tag_paginate_liquid":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"$","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_render":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"(?=%})","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_liquid":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"$","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_special_keywords":{"name":"keyword.control.other.liquid","match":"\\b(with|as|for)\\b"},"tag_tablerow":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"(?=%})","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"tag_tablerow_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in)\\b"},{"name":"keyword.control.liquid","match":"\\b(cols|offset|limit):"},{"include":"#value_expression"}]},"tag_tablerow_liquid":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"$","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"value_expression":{"patterns":[{"match":"(\\[)(\\|)(?=[^\\]]*)(?=\\])","captures":{"2":{"name":"invalid.illegal.filter.liquid"},"3":{"name":"invalid.illegal.filter.liquid"}}},{"name":"invalid.illegal.filter.liquid","match":"(?\u003c=\\s)(\\+|\\-|\\/|\\*)(?=\\s)"},{"include":"#language_constant"},{"include":"#operator"},{"include":"#invalid_range"},{"include":"#range"},{"include":"#number"},{"include":"#string"},{"include":"#variable_lookup"}]},"variable_lookup":{"patterns":[{"name":"variable.language.liquid","match":"\\b(additional_checkout_buttons|address|all_country_option_tags|all_products|article|articles|block|blog|blogs|canonical_url|cart|checkout|collection|collections|comment|content_for_additional_checkout_buttons|content_for_header|content_for_index|content_for_layout|country_option_tags|currency|current_page|current_tags|customer|customer_address|discount_allocation|discount_application|external_video|font|forloop|form|fulfillment|gift_card|handle|image|images|line_item|link|linklist|linklists|location|localization|metafield|model|model_source|order|page|page_description|page_image|page_title|pages|paginate|part|policy|powered_by_link|predictive_search|product|product_option|product_variant|recommendations|request|routes|script|scripts|search|section|selling_plan|selling_plan_allocation|selling_plan_group|settings|shipping_method|shop|shop_locale|store_availability|tablerow|tax_line|template|theme|transaction|unit_price_measurement|variant|video|video_source)\\b"},{"name":"variable.parameter.liquid","match":"((?\u003c=\\w\\:\\s)\\w+)"},{"name":"meta.brackets.liquid","begin":"(?\u003c=\\w)\\[","end":"\\]","patterns":[{"include":"#string"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.liquid"}}},{"name":"variable.other.member.liquid","match":"(?\u003c=(\\w|\\])\\.)([-\\w]+\\??)"},{"name":"punctuation.accessor.liquid","match":"(?\u003c=\\w)\\.(?=\\w)"},{"name":"variable.other.liquid","match":"(?i)[a-z_](\\w|(?:-(?!\\}\\})))*"}]}}}
1
+ {"scopeName":"liquid.injection","patterns":[{"include":"#injection"}],"repository":{"attribute":{"begin":"\\w+:","end":"(?=,|%}|}}|\\|)","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"attribute_liquid":{"begin":"\\w+:","end":"(?=,|\\|)|$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"comment_block":{"name":"comment.block.liquid","begin":"{%-?\\s*comment\\s*-?%}","end":"{%-?\\s*endcomment\\s*-?%}","patterns":[{"include":"#comment_block"},{"match":"(.(?!{%-?\\s*(comment|endcomment)\\s*-?%}))*."}]},"core":{"patterns":[{"include":"#raw_tag"},{"include":"#doc_tag"},{"include":"#comment_block"},{"include":"#style_codefence"},{"include":"#stylesheet_codefence"},{"include":"#json_codefence"},{"include":"#javascript_codefence"},{"include":"#object"},{"include":"#tag"},{"include":"text.html.basic"}]},"doc_tag":{"name":"meta.block.doc.liquid","contentName":"comment.block.documentation.liquid","begin":"{%-?\\s*(doc)\\s*-?%}","end":"{%-?\\s*(enddoc)\\s*-?%}","patterns":[{"include":"#liquid_doc_description_tag"},{"include":"#liquid_doc_param_tag"},{"include":"#liquid_doc_example_tag"},{"include":"#liquid_doc_prompt_tag"},{"include":"#liquid_doc_fallback_tag"}],"beginCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}},"endCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}}},"filter":{"match":"\\|\\s*((?![\\.0-9])[a-zA-Z0-9_-]+\\:?)\\s*","captures":{"1":{"name":"support.function.liquid"}}},"injection":{"patterns":[{"include":"#raw_tag"},{"include":"#comment_block"},{"include":"#object"},{"include":"#tag_injection"}]},"invalid_range":{"name":"invalid.illegal.range.liquid","match":"\\((.(?!\\.\\.))+\\)"},"javascript_codefence":{"name":"meta.block.javascript.liquid","contentName":"meta.embedded.block.js","begin":"({%-?)\\s*(javascript)\\s*(-?%})","end":"({%-?)\\s*(endjavascript)\\s*(-?%})","patterns":[{"include":"source.js"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.javascript.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.javascript.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"json_codefence":{"name":"meta.block.schema.liquid","contentName":"meta.embedded.block.json","begin":"({%-?)\\s*(schema)\\s*(-?%})","end":"({%-?)\\s*(endschema)\\s*(-?%})","patterns":[{"include":"source.json"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.schema.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.schema.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"language_constant":{"name":"constant.language.liquid","match":"\\b(false|true|nil|blank)\\b|empty(?!\\?)"},"liquid_doc_description_tag":{"contentName":"string.quoted.single.liquid","begin":"(@description)\\b\\s*","end":"(?=@prompt|@example|@param|@description|{%-?\\s*enddoc\\s*-?%})","beginCaptures":{"0":{"name":"comment.block.documentation.liquid"},"1":{"name":"storage.type.class.liquid"}}},"liquid_doc_example_tag":{"contentName":"meta.embedded.block.liquid","begin":"(@example)\\b\\s*","end":"(?=@prompt|@example|@param|@description|{%-?\\s*enddoc\\s*-?%})","patterns":[{"include":"#core"}],"beginCaptures":{"0":{"name":"comment.block.documentation.liquid"},"1":{"name":"storage.type.class.liquid"}}},"liquid_doc_fallback_tag":{"match":"(@\\w+)\\b","captures":{"1":{"name":"comment.block.liquid"}}},"liquid_doc_param_tag":{"match":"(@param)\\s+(?:({[^}]*}?)\\s+)?(\\[?[a-zA-Z_][\\w-]*\\]?)?(?:\\s+(.*))?","captures":{"1":{"name":"storage.type.class.liquid"},"2":{"name":"entity.name.type.instance.liquid"},"3":{"name":"variable.other.liquid"},"4":{"name":"string.quoted.single.liquid"}}},"liquid_doc_prompt_tag":{"contentName":"string.quoted.single.liquid","begin":"(@prompt)\\b\\s*","end":"(?=@prompt|@example|@param|@description|{%-?\\s*enddoc\\s*-?%})","beginCaptures":{"0":{"name":"comment.block.documentation.liquid"},"1":{"name":"storage.type.class.liquid"}}},"number":{"name":"constant.numeric.liquid","match":"((-|\\+)\\s*)?[0-9]+(\\.[0-9]+)?"},"object":{"name":"meta.object.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){{-?","end":"-?}}","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"operator":{"match":"(?:(?\u003c=\\s)|\\b)(\\=\\=|!\\=|\\\u003e|\\\u003c|\\\u003e\\=|\\\u003c\\=|or|and|contains)(?:(?=\\s)|\\b)","captures":{"1":{"name":"keyword.operator.expression.liquid"}}},"range":{"name":"meta.range.liquid","begin":"\\(","end":"\\)","patterns":[{"name":"punctuation.range.liquid","match":"\\.\\."},{"include":"#variable_lookup"},{"include":"#number"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.liquid"}}},"raw_tag":{"name":"meta.entity.tag.raw.liquid","contentName":"string.unquoted.liquid","begin":"{%-?\\s*(raw)\\s*-?%}","end":"{%-?\\s*(endraw)\\s*-?%}","patterns":[{"match":"(.(?!{%-?\\s*endraw\\s*-?%}))*."}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"endCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"string":{"patterns":[{"include":"#string_single"},{"include":"#string_double"}]},"string_double":{"name":"string.quoted.double.liquid","begin":"\"","end":"\""},"string_single":{"name":"string.quoted.single.liquid","begin":"'","end":"'"},"style_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(style)\\s*(-?%})","end":"({%-?)\\s*(endstyle)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"stylesheet_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(stylesheet)\\s*(-?%})","end":"({%-?)\\s*(endstylesheet)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"tag":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_assign":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"(?=%})","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_assign_liquid":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"$","patterns":[{"include":"#filter"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_body":{"patterns":[{"include":"#tag_liquid"},{"include":"#tag_assign"},{"include":"#tag_comment_inline"},{"include":"#tag_case"},{"include":"#tag_conditional"},{"include":"#tag_for"},{"include":"#tag_paginate"},{"include":"#tag_render"},{"include":"#tag_tablerow"},{"include":"#tag_expression"}]},"tag_case":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_case_liquid":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_comment_block_liquid":{"name":"comment.block.liquid","begin":"(?:^\\s*)(comment)\\b","end":"(?:^\\s*)(endcomment)\\b","patterns":[{"include":"#tag_comment_block_liquid"},{"match":"(?:^\\s*)(?!(comment|endcomment)).*"}]},"tag_comment_inline":{"name":"comment.line.number-sign.liquid","begin":"#","end":"(?=%})"},"tag_comment_inline_liquid":{"name":"comment.line.number-sign.liquid","begin":"(?:^\\s*)#.*","end":"$"},"tag_conditional":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_conditional_liquid":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_expression":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_liquid":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_without_arguments":{"patterns":[{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endunless|endif)\\b","captures":{"1":{"name":"keyword.control.conditional.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endfor|endtablerow|endpaginate)\\b","captures":{"1":{"name":"keyword.control.loop.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcase)\\b","captures":{"1":{"name":"keyword.control.case.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(capture|case|comment|for|form|if|javascript|paginate|schema|style)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(else|break|continue)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}}]},"tag_for":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"(?=%})","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_for_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in|reversed)\\b"},{"name":"keyword.control.liquid","match":"\\b(offset|limit):"},{"include":"#value_expression"}]},"tag_for_liquid":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"$","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_injection":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?(?!-?\\s*(endstyle|endjavascript|endcomment|endraw))","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_liquid":{"name":"meta.entity.tag.liquid.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(liquid)\\b","end":"(?=%})","patterns":[{"include":"#tag_comment_block_liquid"},{"include":"#tag_comment_inline_liquid"},{"include":"#tag_assign_liquid"},{"include":"#tag_case_liquid"},{"include":"#tag_conditional_liquid"},{"include":"#tag_for_liquid"},{"include":"#tag_paginate_liquid"},{"include":"#tag_render_liquid"},{"include":"#tag_tablerow_liquid"},{"include":"#tag_expression_liquid"}],"beginCaptures":{"1":{"name":"keyword.control.liquid.liquid"}}},"tag_paginate":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"(?=%})","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_paginate_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(by)\\b"},{"include":"#value_expression"}]},"tag_paginate_liquid":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"$","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_render":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"(?=%})","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_liquid":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"$","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_special_keywords":{"name":"keyword.control.other.liquid","match":"\\b(with|as|for)\\b"},"tag_tablerow":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"(?=%})","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"tag_tablerow_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in)\\b"},{"name":"keyword.control.liquid","match":"\\b(cols|offset|limit):"},{"include":"#value_expression"}]},"tag_tablerow_liquid":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"$","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"value_expression":{"patterns":[{"match":"(\\[)(\\|)(?=[^\\]]*)(?=\\])","captures":{"2":{"name":"invalid.illegal.filter.liquid"},"3":{"name":"invalid.illegal.filter.liquid"}}},{"name":"invalid.illegal.filter.liquid","match":"(?\u003c=\\s)(\\+|\\-|\\/|\\*)(?=\\s)"},{"include":"#language_constant"},{"include":"#operator"},{"include":"#invalid_range"},{"include":"#range"},{"include":"#number"},{"include":"#string"},{"include":"#variable_lookup"}]},"variable_lookup":{"patterns":[{"name":"variable.language.liquid","match":"\\b(additional_checkout_buttons|address|all_country_option_tags|all_products|article|articles|block|blog|blogs|canonical_url|cart|checkout|collection|collections|comment|content_for_additional_checkout_buttons|content_for_header|content_for_index|content_for_layout|country_option_tags|currency|current_page|current_tags|customer|customer_address|discount_allocation|discount_application|external_video|font|forloop|form|fulfillment|gift_card|handle|image|images|line_item|link|linklist|linklists|location|localization|metafield|model|model_source|order|page|page_description|page_image|page_title|pages|paginate|part|policy|powered_by_link|predictive_search|product|product_option|product_variant|recommendations|request|routes|script|scripts|search|section|selling_plan|selling_plan_allocation|selling_plan_group|settings|shipping_method|shop|shop_locale|store_availability|tablerow|tax_line|template|theme|transaction|unit_price_measurement|variant|video|video_source)\\b"},{"name":"variable.parameter.liquid","match":"((?\u003c=\\w\\:\\s)\\w+)"},{"name":"meta.brackets.liquid","begin":"(?\u003c=\\w)\\[","end":"\\]","patterns":[{"include":"#string"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.liquid"}}},{"name":"variable.other.member.liquid","match":"(?\u003c=(\\w|\\])\\.)([-\\w]+\\??)"},{"name":"punctuation.accessor.liquid","match":"(?\u003c=\\w)\\.(?=\\w)"},{"name":"variable.other.liquid","match":"(?i)[a-z_](\\w|(?:-(?!\\}\\})))*"}]}}}
@@ -1 +1 @@
1
- {"scopeName":"markdown.move.codeblock","patterns":[{"include":"#move-code-block"}],"repository":{"move-code-block":{"name":"markup.fenced_code.block.markdown","begin":"(^|\\G)(\\s*)(\\`{3,}|~{3,})\\s*(?i:(move)(\\s+[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$","patterns":[{"contentName":"meta.embedded.block.move","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)","patterns":[{"include":"source.move#comments"},{"include":"source.move#comments"},{"include":"source.move#module"},{"include":"source.move#script"},{"include":"source.move#annotation"},{"include":"source.move#entry"},{"include":"source.move#public-scope"},{"include":"source.move#public"},{"include":"source.move#macro"},{"include":"source.move#native"},{"include":"source.move#import"},{"include":"source.move#friend"},{"include":"source.move#const"},{"include":"source.move#struct"},{"include":"source.move#enum"},{"include":"source.move#fun"},{"include":"source.move#spec"},{"include":"source.move#as"},{"include":"source.move#mut"},{"include":"source.move#let"},{"include":"source.move#types"},{"include":"source.move#assert"},{"include":"source.move#literals"},{"include":"source.move#control"},{"include":"source.move#move_copy"},{"include":"source.move#resource_methods"},{"include":"source.move#self_access"},{"include":"source.move#module_access"},{"include":"source.move#fun_call"},{"include":"source.move#block"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}}}}
1
+ {"scopeName":"markdown.move.codeblock","patterns":[{"include":"#move-code-block"}],"repository":{"move-code-block":{"name":"markup.fenced_code.block.markdown","begin":"(^|\\G)(\\s*)(\\`{3,}|~{3,})\\s*(?i:(move)(\\s+[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$","patterns":[{"contentName":"meta.embedded.block.move","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)","patterns":[{"include":"source.move#comments"},{"include":"source.move#module"},{"include":"source.move#script"},{"include":"source.move#annotation"},{"include":"source.move#entry"},{"include":"source.move#public-scope"},{"include":"source.move#public"},{"include":"source.move#macro"},{"include":"source.move#native"},{"include":"source.move#import"},{"include":"source.move#friend"},{"include":"source.move#const"},{"include":"source.move#struct"},{"include":"source.move#enum"},{"include":"source.move#fun"},{"include":"source.move#spec"},{"include":"source.move#as"},{"include":"source.move#mut"},{"include":"source.move#let"},{"include":"source.move#types"},{"include":"source.move#assert"},{"include":"source.move#literals"},{"include":"source.move#control"},{"include":"source.move#move_copy"},{"include":"source.move#resource_methods"},{"include":"source.move#self_access"},{"include":"source.move#module_access"},{"include":"source.move#fun_call"},{"include":"source.move#block"},{"include":"source.move#expr"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"4":{"name":"fenced_code.block.language.markdown"},"5":{"name":"fenced_code.block.language.attributes.markdown"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}}}}