github-linguist 8.0.1 → 9.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/grammars/go.mod.json +1 -1
- data/grammars/markdown.vue.codeblock.json +1 -0
- data/grammars/mdx.vue.codeblock.json +1 -0
- data/grammars/source.QB64.json +1 -0
- data/grammars/source.abap.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.angelscript.json +1 -1
- data/grammars/source.basic.json +1 -1
- data/grammars/source.bb.json +1 -1
- data/grammars/source.brs.json +1 -1
- data/grammars/source.bsl.json +1 -1
- data/grammars/source.cmake.json +1 -1
- data/grammars/source.cmakecache.json +1 -0
- data/grammars/source.cobol.json +1 -1
- data/grammars/source.dart.json +1 -1
- data/grammars/source.fsharp.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.graphql.json +1 -1
- data/grammars/source.hcl.json +1 -1
- data/grammars/source.hcl.terraform.json +1 -1
- data/grammars/source.julia.json +1 -1
- data/grammars/source.just.json +1 -1
- data/grammars/source.luau.json +1 -1
- data/grammars/source.matlab.json +1 -1
- data/grammars/source.mdx.astro.json +1 -0
- data/grammars/source.mdx.json +1 -1
- data/grammars/source.moonbit.json +1 -0
- data/grammars/source.msg.json +1 -0
- data/grammars/source.ned.json +1 -0
- data/grammars/source.nushell.json +1 -1
- data/grammars/source.odin.json +1 -1
- data/grammars/source.openesql.json +1 -0
- data/grammars/source.p4.json +1 -1
- data/grammars/source.polar.json +1 -1
- data/grammars/source.powerbuilder.json +1 -1
- data/grammars/source.rescript.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.scala.json +1 -1
- data/grammars/source.sdbl.json +1 -1
- data/grammars/source.tact.json +1 -0
- data/grammars/source.toc.json +1 -1
- data/grammars/source.ts.json +1 -1
- data/grammars/source.tsp.json +1 -0
- data/grammars/source.tsx.json +1 -1
- data/grammars/source.vba.json +1 -1
- data/grammars/source.vue.json +1 -0
- data/grammars/source.wdl.json +1 -1
- data/grammars/text.adblock.json +1 -1
- data/grammars/text.md.json +1 -1
- data/grammars/version +1 -1
- data/grammars/vue.directives.json +1 -0
- data/grammars/vue.interpolations.json +1 -0
- data/grammars/vue.sfc.style.variable.injection.json +1 -0
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/generated.rb +31 -0
- data/lib/linguist/generic.yml +1 -0
- data/lib/linguist/heuristics.yml +55 -11
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +93 -3
- data/lib/linguist/lazy_blob.rb +15 -7
- data/lib/linguist/repository.rb +18 -13
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/source/diff.rb +72 -0
- data/lib/linguist/source/repository.rb +64 -0
- data/lib/linguist/source/rugged.rb +95 -0
- metadata +21 -6
- data/grammars/source.cache.cmake.json +0 -1
- data/grammars/text.html.vue.json +0 -1
- data/grammars/text.mdx.astro.codeblock.json +0 -1
data/grammars/source.vba.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Visual Basic for Applications","scopeName":"source.vba","patterns":[{"include":"#comments"},{"include":"#functions"},{"include":"#keywords"},{"include":"#metadata"},{"include":"#numbers"},{"include":"#storage"},{"include":"#strings"},{"include":"#types"},{"name":"constant.other.vba","match":"_(?=\\s*\\n)"}],"repository":{"comments":{"begin":"(?=')|(?:^(?:(\\d*)\\s*|[a-zA-Z][a-zA-Z0-9]{0,254}:\\s*)|:\\s*)(?=(?i:Rem ))","end":"(?\u003c!\\s_)$\\n","patterns":[{"name":"comment.line.quote","match":"\\'.*"},{"name":"comment.line.rem","match":"Rem .*"},{"name":"comment.line.continuation","match":"^.*"}],"beginCaptures":{"1":{"name":"constant.numeric.decimal"}}},"functions":{"name":"entity.name.function.vba"},"keywords":{"patterns":[{"name":"keyword.conditional.vba","match":"(?i:\\b(Do( While| Until)?|While|Case( Else)?|Else(If)?|For( Each)?|(I)?If|In|New|(Select )?Case|Then|To|Step|With)\\b)"},{"name":"keyword.conditional.end.vba","match":"(?i:\\b(End( )?If|End (Select|With)|Next|Wend|Loop( While| Until)?|Exit (For|Do|While))\\b)"},{"name":"keyword.control.vba","match":"(?i:\\b(Exit (Function|Property|Sub)|As|And|By(Ref|Val)|Goto|Is|Like|Mod|Not|On Error|Optional|Or|Resume Next|Stop|Xor|Eqv|Imp|TypeOf|AddressOf)\\b|(\\b(End)\\b(?=\\n)))"},{"name":"keyword.io.vba","match":"(?i:\\b(Open|Close|Line Input|Lock|Unlock|Print|Seek|Get|Put|Write)\\b)"},{"name":"keyword.io.vba","match":"(?i:\\b(Input)(?= \\#))"},{"name":"keyword.other.vba","match":"(?i:\\b(Attribute|Call|End (Function|Property|Sub|Type|Enum)|(Const|Function|Property|Sub|Type|Enum)|Declare|PtrSafe|WithEvents|Event|RaiseEvent|Implements)\\b)"},{"name":"keyword.other.option.vba","match":"(?i)\\bOption (Base [01]|Compare (Binary|Text)|Explicit|Private Module)\\b"},{"name":"keyword.other.visibility.vba","match":"(?i:\\b(Private|Public|Global|Friend)\\b)"},{"name":"constant.language.vba","match":"(?i)\\b(Empty|False|Nothing|Null|True)\\b"}]},"metadata":{"name":"metadata.vba","begin":"(?i)^\\s*(BEGIN)\\b","end":"(?i)^\\s*(END)\\b","patterns":[{"include":"source.vba"}],"beginCaptures":{"1":{"name":"keyword.metadata.vba"}},"endCaptures":{"0":{"name":"keyword.metadata.vba"}}},"numbers":{"patterns":[{"name":"constant.numeric.date","match":"(?i)\\#((Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)|[0-9]{1,2})(-|\\/)[0-9]{1,2}((-|\\/)[0-9]{1,4})?\\#"},{"name":"constant.numeric.decimal","match":"(?\u003c!\\w)-?\\d+(\\.\\d+)?"},{"name":"constant.numeric.octal","match":"(?i)-?\u0026O[0-7]+"},{"name":"constant.numeric.hexadecimal","match":"(?i)-?\u0026H[0-9A-F]+"}]},"storage":{"patterns":[{"name":"storage.modifier.vba","match":"(?i)\\b(Class|Const|Dim|(G|L|S)et|ReDim( Preserve)?|Erase|Static)\\b"}]},"strings":{"patterns":[{"name":"string.quoted.double","match":"\\\"[^\\n\\r\\\"]*\""}]},"types":{"patterns":[{"name":"support.type.builtin.vba","match":"(?i)\\b(Any|Byte|Boolean|Currency|Collection|Date|Double|Integer|Long(Long|Ptr)?|Object|Single|String|Variant)\\b"},{"match":"(?i)(?\u003c= As )([a-zA-Z][a-zA-Z0-9_]*)","captures":{"1":{"name":"support.type"}}}]}}}
|
1
|
+
{"name":"Visual Basic for Applications","scopeName":"source.vba","patterns":[{"include":"#comments"},{"include":"#functions"},{"include":"#keywords"},{"include":"#metadata"},{"include":"#numbers"},{"include":"#storage"},{"include":"#strings"},{"include":"#types"},{"name":"constant.other.vba","match":"_(?=\\s*\\n)"}],"repository":{"comments":{"begin":"(?=')|(?:^(?:(\\d*)\\s*|[a-zA-Z][a-zA-Z0-9]{0,254}:\\s*)|:\\s*)(?=(?i:Rem ))","end":"(?\u003c!\\s_)$\\n","patterns":[{"name":"comment.line.quote","match":"\\'.*"},{"name":"comment.line.rem","match":"Rem .*"},{"name":"comment.line.continuation","match":"^.*"}],"beginCaptures":{"1":{"name":"constant.numeric.decimal"}}},"functions":{"begin":"(?i:\\b(Call|Function|Sub) )","end":"\\(|(?=\\n)","patterns":[{"name":"entity.name.function.vba","match":"(?i:\\b([a-zA-Z][a-zA-Z0-9_]*)\\b)"}],"beginCaptures":{"1":{"name":"keyword.other.vba"}}},"keywords":{"patterns":[{"name":"keyword.conditional.vba","match":"(?i:\\b(Do( While| Until)?|While|Case( Else)?|Else(If)?|For( Each)?|(I)?If|In|New|(Select )?Case|Then|To|Step|With)\\b)"},{"name":"keyword.conditional.end.vba","match":"(?i:\\b(End( )?If|End (Select|With)|Next|Wend|Loop( While| Until)?|Exit (For|Do|While))\\b)"},{"name":"keyword.control.vba","match":"(?i:\\b(Exit (Function|Property|Sub)|As|And|By(Ref|Val)|Goto|Is|Like|Mod|Not|On Error|Optional|Or|Resume Next|Stop|Xor|Eqv|Imp|TypeOf|AddressOf)\\b|(\\b(End)\\b(?=\\n)))"},{"name":"keyword.io.vba","match":"(?i:\\b(Open|Close|Line Input|Lock|Unlock|Print|Seek|Get|Put|Write)\\b)"},{"name":"keyword.io.vba","match":"(?i:\\b(Input)(?= \\#))"},{"name":"keyword.other.vba","match":"(?i:\\b(Attribute|Call|End (Function|Property|Sub|Type|Enum)|(Const|Function|Property|Sub|Type|Enum)|Declare|PtrSafe|WithEvents|Event|RaiseEvent|Implements)\\b)"},{"name":"keyword.other.option.vba","match":"(?i)\\bOption (Base [01]|Compare (Binary|Text)|Explicit|Private Module)\\b"},{"name":"keyword.other.visibility.vba","match":"(?i:\\b(Private|Public|Global|Friend)\\b)"},{"name":"constant.language.vba","match":"(?i)\\b(Empty|False|Nothing|Null|True)\\b"}]},"metadata":{"name":"metadata.vba","begin":"(?i)^\\s*(BEGIN)\\b","end":"(?i)^\\s*(END)\\b","patterns":[{"include":"source.vba"}],"beginCaptures":{"1":{"name":"keyword.metadata.vba"}},"endCaptures":{"0":{"name":"keyword.metadata.vba"}}},"numbers":{"patterns":[{"name":"constant.numeric.date","match":"(?i)\\#((Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)|[0-9]{1,2})(-|\\/)[0-9]{1,2}((-|\\/)[0-9]{1,4})?\\#"},{"name":"constant.numeric.decimal","match":"(?\u003c!\\w)-?\\d+(\\.\\d+)?"},{"name":"constant.numeric.octal","match":"(?i)-?\u0026O[0-7]+"},{"name":"constant.numeric.hexadecimal","match":"(?i)-?\u0026H[0-9A-F]+"}]},"storage":{"patterns":[{"name":"storage.modifier.vba","match":"(?i)\\b(Class|Const|Dim|(G|L|S)et|ReDim( Preserve)?|Erase|Static)\\b"}]},"strings":{"patterns":[{"name":"string.quoted.double","match":"\\\"[^\\n\\r\\\"]*\""}]},"types":{"patterns":[{"name":"support.type.builtin.vba","match":"(?i)\\b(Any|Byte|Boolean|Currency|Collection|Date|Double|Integer|Long(Long|Ptr)?|Object|Single|String|Variant)\\b"},{"match":"(?i)(?\u003c= As )([a-zA-Z][a-zA-Z0-9_]*)","captures":{"1":{"name":"support.type"}}}]}}}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"name":"Vue","scopeName":"source.vue","patterns":[{"include":"text.html.basic#comment"},{"include":"#self-closing-tag"},{"begin":"(\u003c)","end":"(\u003e)","patterns":[{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)md\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"text.html.markdown","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.gfm"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)html\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"text.html.derivative","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"#html-stuff"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)pug\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"text.pug","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"text.jade"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)stylus\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.stylus","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.stylus"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)postcss\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.postcss","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.postcss"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)sass\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.sass","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.sass"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)css\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.css","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.css"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)scss\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.css.scss","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.css.scss"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)less\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.css.less","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.css.less"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)js\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.js","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.js"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)ts\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.ts","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.ts"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)jsx\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.js.jsx","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)tsx\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.tsx","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.tsx"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)coffee\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.coffee","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.coffee"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)json\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.json","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.json"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)jsonc\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.json.comments","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)json5\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.json5","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)yaml\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.yaml","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.yaml"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)toml\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.toml","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.toml"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)(gql|graphql)\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.graphql","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.graphql"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)\\b(?=[^\u003e]*\\blang\\s*=\\s*(['\"]?)vue\\b\\2)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.vue","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)","patterns":[{"include":"source.vue"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"(template)\\b","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"text.html.derivative","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/template\\b)","patterns":[{"include":"#html-stuff"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"(script)\\b","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.js","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/script\\b)","patterns":[{"include":"source.js"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"(style)\\b","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"source.css","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/style\\b)","patterns":[{"include":"source.css"}]}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}},{"begin":"([a-zA-Z0-9:-]+)","end":"(\u003c/)(\\1)\\s*(?=\u003e)","patterns":[{"include":"#tag-stuff"},{"name":"text","begin":"(?\u003c=\u003e)","end":"(?=\u003c\\/)"}],"beginCaptures":{"1":{"name":"entity.name.tag.$1.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}}}],"repository":{"html-stuff":{"patterns":[{"include":"#template-tag"},{},{"include":"text.html.basic"}]},"self-closing-tag":{"name":"self-closing-tag","begin":"(\u003c)([a-zA-Z0-9:-]+)(?=([^\u003e]+/\u003e))","end":"(/\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}}},"tag-stuff":{"name":"meta.tag-stuff","begin":"\\G","end":"(?=/\u003e)|(\u003e)","patterns":[{"include":"#vue-directives"},{"include":"text.html.basic#attribute"}],"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}}},"template-tag":{"patterns":[{"include":"#template-tag-1"},{"include":"#template-tag-2"}]},"template-tag-1":{"name":"meta.template-tag.start","begin":"(\u003c)(template)\\b(\u003e)","end":"(/?\u003e)","patterns":[{"name":"meta.template-tag.end","begin":"\\G","end":"(?=/\u003e)|((\u003c/)(template)\\b)","patterns":[{"include":"#html-stuff"}],"endCaptures":{"2":{"name":"punctuation.definition.tag.begin.html.vue"},"3":{"name":"entity.name.tag.$3.html.vue"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"},"3":{"name":"punctuation.definition.tag.end.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}}},"template-tag-2":{"name":"meta.template-tag.start","begin":"(\u003c)(template)\\b","end":"(/?\u003e)","patterns":[{"name":"meta.template-tag.end","begin":"\\G","end":"(?=/\u003e)|((\u003c/)(template)\\b)","patterns":[{"include":"#tag-stuff"},{"include":"#html-stuff"}],"endCaptures":{"2":{"name":"punctuation.definition.tag.begin.html.vue"},"3":{"name":"entity.name.tag.$3.html.vue"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html.vue"},"2":{"name":"entity.name.tag.$2.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html.vue"}}},"vue-directives":{"patterns":[{"include":"#vue-directives-control"},{"include":"#vue-directives-style-attr"},{"include":"#vue-directives-original"},{"include":"#vue-directives-generic-attr"}]},"vue-directives-control":{"name":"meta.attribute.directive.control.vue","begin":"(v-for)|(v-if|v-else-if|v-else)","end":"(?=\\s*+[^=\\s])","patterns":[{"include":"#vue-directives-expression"}],"captures":{"1":{"name":"keyword.control.loop.vue"},"2":{"name":"keyword.control.conditional.vue"}}},"vue-directives-expression":{"patterns":[{"begin":"(=)\\s*('|\"|`)","end":"(\\2)","patterns":[{"name":"source.ts.embedded.html.vue","begin":"(?\u003c=('|\"|`))","end":"(?=\\1)","patterns":[{"include":"source.ts#expression"}]}],"beginCaptures":{"1":{"name":"punctuation.separator.key-value.html.vue"},"2":{"name":"punctuation.definition.string.begin.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}}},{"begin":"(=)\\s*(?=[^'\"`])","end":"(?=(\\s|\u003e|\\/\u003e))","patterns":[{"name":"source.ts.embedded.html.vue","begin":"(?=[^'\"`])","end":"(?=(\\s|\u003e|\\/\u003e))","patterns":[{"include":"source.ts#expression"}]}],"beginCaptures":{"1":{"name":"punctuation.separator.key-value.html.vue"}}}]},"vue-directives-generic-attr":{"name":"meta.attribute.generic.vue","begin":"\\b(generic)\\s*(=)","end":"(?\u003c='|\")","patterns":[{"name":"meta.type.parameters.vue","begin":"('|\")","end":"(\\1)","patterns":[{"include":"source.ts#comment"},{"name":"storage.modifier.ts","match":"(?\u003c![_$[:alnum:]])(?:(?\u003c=\\.\\.\\.)|(?\u003c!\\.))(extends|in|out)(?![_$[:alnum:]])(?:(?=\\.\\.\\.)|(?!\\.))"},{"include":"source.ts#type"},{"include":"source.ts#punctuation-comma"},{"name":"keyword.operator.assignment.ts","match":"(=)(?!\u003e)"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}}}],"captures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"}}},"vue-directives-original":{"name":"meta.attribute.directive.vue","begin":"(?:(?:(v-[\\w-]+)(:)?)|([:\\.])|(@)|(#))(?:(?:(\\[)([^\\]]*)(\\]))|([\\w-]+))?","end":"(?=\\s*[^=\\s])","patterns":[{"match":"(\\.)([\\w-]*)"},{"include":"#vue-directives-expression"}],"beginCaptures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"},"3":{"name":"punctuation.attribute-shorthand.bind.html.vue"},"4":{"name":"punctuation.attribute-shorthand.event.html.vue"},"5":{"name":"punctuation.attribute-shorthand.slot.html.vue"},"6":{"name":"punctuation.separator.key-value.html.vue"},"7":{"name":"source.ts.embedded.html.vue","patterns":[{"include":"source.ts#expression"}]},"8":{"name":"punctuation.separator.key-value.html.vue"},"9":{"name":"entity.other.attribute-name.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}}},"vue-directives-style-attr":{"name":"meta.attribute.style.vue","begin":"\\b(style)\\s*(=)","end":"(?\u003c='|\")","patterns":[{"name":"source.css.embedded.html.vue","begin":"('|\")","end":"(\\1)","patterns":[{"include":"source.css#comment-block"},{"include":"source.css#escapes"},{"include":"source.css#font-features"},{"name":"variable.css","match":"(?x) (?\u003c![\\w-])\n--\n(?:[-a-zA-Z_] | [^\\x00-\\x7F]) # First letter\n(?:[-a-zA-Z0-9_] | [^\\x00-\\x7F] # Remainder of identifier\n |\\\\(?:[0-9a-fA-F]{1,6}|.)\n)*"},{"name":"meta.property-name.css","begin":"(?\u003c![-a-zA-Z])(?=[-a-zA-Z])","end":"$|(?![-a-zA-Z])","patterns":[{"include":"source.css#property-names"}]},{"contentName":"meta.property-value.css","begin":"(:)\\s*","end":"\\s*(;)|\\s*(?='|\")","patterns":[{"include":"source.css#comment-block"},{"include":"source.css#property-values"}],"beginCaptures":{"1":{"name":"punctuation.separator.key-value.css"}},"endCaptures":{"1":{"name":"punctuation.terminator.rule.css"}}},{"name":"punctuation.terminator.rule.css","match":";"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.html.vue"}}}],"captures":{"1":{"name":"entity.other.attribute-name.html.vue"},"2":{"name":"punctuation.separator.key-value.html.vue"}}},"vue-interpolations":{"patterns":[{"name":"expression.embedded.vue","begin":"(\\{\\{)","end":"(\\}\\})","patterns":[{"name":"source.ts.embedded.html.vue","begin":"\\G","end":"(?=\\}\\})","patterns":[{"include":"source.ts#expression"}]}],"beginCaptures":{"1":{"name":"punctuation.definition.interpolation.begin.html.vue"}},"endCaptures":{"1":{"name":"punctuation.definition.interpolation.end.html.vue"}}}]}}}
|
data/grammars/source.wdl.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"WDL","scopeName":"source.wdl","patterns":[{"include":"#single-number-sign-comment"},{"include":"#double-number-sign-comment"},{"name":"entity.version.wdl","match":"(version)\\s+(.*)","captures":{"1":{"name":"keyword.other.version.wdl"},"2":{"name":"entity.version.number.wdl"}}},{"contentName":"entity.struct.wdl","begin":"(struct)\\s+([A-Za-z][A-Za-z0-9_]+)?","end":"({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"storage.type.struct.wdl"},"2":{"name":"variable.name.struct.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.struct-start.wdl"}}},{"contentName":"entity.task.wdl","begin":"(task)\\s+([A-Za-z][A-Za-z0-9_]+)?","end":"({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"storage.type.task.wdl"},"2":{"name":"variable.name.task.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.task-start.wdl"}}},{"begin":"(workflow)\\s+([A-Za-z][A-Za-z0-9_]+)","end":"({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"storage.type.workflow.wdl"},"2":{"name":"variable.name.workflow.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.workflow-start.wdl"}}},{"include":"#input-block"},{"include":"#command-block"},{"include":"#output-block"},{"include":"#requirements-block"},{"include":"#hints-block"},{"include":"#runtime-block"},{"include":"#meta-block"},{"include":"#parameter_meta-block"},{"include":"#atom"}],"repository":{"atom":{"patterns":[{"include":"#double-number-sign-comments"},{"include":"#single-number-sign-comments"},{"include":"#numeric"},{"include":"#strings"},{"include":"#keywords"},{"include":"#identity"}]},"command-block":{"contentName":"meta.embedded.block.shellscript","begin":"(?:\\s*)(command)\\s+(?:(\u003c\u003c\u003c)|({))","end":"(?:^|\\G)(?:\\s*)(?:(\u003e\u003e\u003e)|(}))(?:\\s*)$","patterns":[{"contentName":"meta.embedded.block.shellscript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*(?:(\u003e\u003e\u003e)|(}))\\s*$)","patterns":[{"include":"source.shell"}]}],"beginCaptures":{"1":{"name":"storage.type.command.wdl"},"2":{"name":"punctuation.heredoc.command-start.wdl"},"3":{"name":"punctuation.bracket.angle.command-start.wdl"}},"endCaptures":{"1":{"name":"punctuation.heredoc.command-end.wdl"},"2":{"name":"punctuation.bracket.angle.command-end.wdl"}}},"double-number-sign-comments":{"name":"comment.line.double-number-sign.documentation","begin":"(?:\\s*)(?:##) ?","while":"(?:^|\\G)\\s*(?:##) ?","patterns":[{"include":"source.gfm"}]},"double-quoted-strings":{"name":"string.quoted.double.wdl","begin":"\"","end":"\"","patterns":[{"include":"#placeholder"},{"include":"#escaped-character"}]},"escaped-character":{"name":"constant.character.escape.wdl","match":"(\\\\\\\\)|(\\\\n)|(\\\\t)|(\\\\')|(\\\\\")|(\\\\~)|(\\\\\\$)|(\\\\[0-7]{3})|(\\\\x[0-9a-fA-F]{2})|(\\\\u[0-9a-fA-F]{4})|(\\\\U[0-9a-fA-F]{8})","captures":{"1":{"name":"constant.character.escape.backslash.wdl"},"10":{"name":"constant.character.escape.four-byte-unicode.wdl"},"11":{"name":"constant.character.escape.eight-byte-unicode.wdl"},"2":{"name":"constant.character.escape.newline.wdl"},"3":{"name":"constant.character.escape.tab.wdl"},"4":{"name":"constant.character.escape.single-quote.wdl"},"5":{"name":"constant.character.escape.double-quote.wdl"},"6":{"name":"constant.character.escape.tilde.wdl"},"7":{"name":"constant.character.escape.dollar-sign.wdl"},"8":{"name":"constant.character.escape.octal.wdl"},"9":{"name":"constant.character.escape.hex.wdl"}}},"hints-block":{"name":"entity.hints-block.wdl","begin":"(?:\\s*)(hints)","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.hints.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.hints-start.wdl"}}},"identity":{"name":"variable.other.wdl","match":"\\b[A-Za-z][A-Za-z0-9_]*\\b"},"input-block":{"name":"entity.input-block.wdl","begin":"(?:\\s*)(input)[?=\\s|{i]","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.input.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.input-start.wdl"}}},"keywords":{"patterns":[{"name":"keyword.other.wdl","match":"\\b(import|version)\\b"},{"name":"storage.modifier.wdl","match":"\\b(alias|as|in|scatter)\\b"},{"name":"keyword.control.wdl","match":"\\b(call|else|if|then)\\b"},{"name":"storage.type","match":"\\b(command|hints|inputs|meta|object|outputs|parameter_meta|requirements|runtime
|
1
|
+
{"name":"WDL","scopeName":"source.wdl","patterns":[{"include":"#single-number-sign-comment"},{"include":"#double-number-sign-comment"},{"name":"entity.version.wdl","match":"(version)\\s+(.*)","captures":{"1":{"name":"keyword.other.version.wdl"},"2":{"name":"entity.version.number.wdl"}}},{"contentName":"entity.struct.wdl","begin":"(struct)\\s+([A-Za-z][A-Za-z0-9_]+)?","end":"({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"storage.type.struct.wdl"},"2":{"name":"variable.name.struct.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.struct-start.wdl"}}},{"contentName":"entity.task.wdl","begin":"(task)\\s+([A-Za-z][A-Za-z0-9_]+)?","end":"({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"storage.type.task.wdl"},"2":{"name":"variable.name.task.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.task-start.wdl"}}},{"begin":"(workflow)\\s+([A-Za-z][A-Za-z0-9_]+)","end":"({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"storage.type.workflow.wdl"},"2":{"name":"variable.name.workflow.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.workflow-start.wdl"}}},{"include":"#input-block"},{"include":"#command-block"},{"include":"#output-block"},{"include":"#requirements-block"},{"include":"#hints-block"},{"include":"#runtime-block"},{"include":"#meta-block"},{"include":"#parameter_meta-block"},{"include":"#atom"}],"repository":{"atom":{"patterns":[{"include":"#double-number-sign-comments"},{"include":"#single-number-sign-comments"},{"include":"#numeric"},{"include":"#strings"},{"include":"#keywords"},{"include":"#identity"}]},"command-block":{"contentName":"meta.embedded.block.shellscript","begin":"(?:\\s*)(command)\\s+(?:(\u003c\u003c\u003c)|({))","end":"(?:^|\\G)(?:\\s*)(?:(\u003e\u003e\u003e)|(}))(?:\\s*)$","patterns":[{"contentName":"meta.embedded.block.shellscript","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*(?:(\u003e\u003e\u003e)|(}))\\s*$)","patterns":[{"include":"source.shell"}]}],"beginCaptures":{"1":{"name":"storage.type.command.wdl"},"2":{"name":"punctuation.heredoc.command-start.wdl"},"3":{"name":"punctuation.bracket.angle.command-start.wdl"}},"endCaptures":{"1":{"name":"punctuation.heredoc.command-end.wdl"},"2":{"name":"punctuation.bracket.angle.command-end.wdl"}}},"double-number-sign-comments":{"name":"comment.line.double-number-sign.documentation","begin":"(?:\\s*)(?:##) ?","while":"(?:^|\\G)\\s*(?:##) ?","patterns":[{"include":"source.gfm"}]},"double-quoted-strings":{"name":"string.quoted.double.wdl","begin":"\"","end":"\"","patterns":[{"include":"#placeholder"},{"include":"#escaped-character"}]},"escaped-character":{"name":"constant.character.escape.wdl","match":"(\\\\\\\\)|(\\\\n)|(\\\\t)|(\\\\')|(\\\\\")|(\\\\~)|(\\\\\\$)|(\\\\[0-7]{3})|(\\\\x[0-9a-fA-F]{2})|(\\\\u[0-9a-fA-F]{4})|(\\\\U[0-9a-fA-F]{8})","captures":{"1":{"name":"constant.character.escape.backslash.wdl"},"10":{"name":"constant.character.escape.four-byte-unicode.wdl"},"11":{"name":"constant.character.escape.eight-byte-unicode.wdl"},"2":{"name":"constant.character.escape.newline.wdl"},"3":{"name":"constant.character.escape.tab.wdl"},"4":{"name":"constant.character.escape.single-quote.wdl"},"5":{"name":"constant.character.escape.double-quote.wdl"},"6":{"name":"constant.character.escape.tilde.wdl"},"7":{"name":"constant.character.escape.dollar-sign.wdl"},"8":{"name":"constant.character.escape.octal.wdl"},"9":{"name":"constant.character.escape.hex.wdl"}}},"hints-block":{"name":"entity.hints-block.wdl","begin":"(?:\\s*)(hints)","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.hints.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.hints-start.wdl"}}},"identity":{"name":"variable.other.wdl","match":"\\b[A-Za-z][A-Za-z0-9_]*\\b"},"input-block":{"name":"entity.input-block.wdl","begin":"(?:\\s*)(input)[?=\\s|{i]","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.input.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.input-start.wdl"}}},"keywords":{"patterns":[{"name":"keyword.other.wdl","match":"\\b(import|version)\\b"},{"name":"storage.modifier.wdl","match":"\\b(alias|as|in|scatter)\\b"},{"name":"keyword.control.wdl","match":"\\b(call|else|if|then)\\b"},{"name":"storage.type","match":"\\b(command|hints|inputs|meta|object|outputs|parameter_meta|requirements|runtime)\\b\\s*(?!:)"},{"name":"constant.language.wdl","match":"\\b(true|false|left|right|null)\\b"},{"name":"keyword.wdl","match":"\\b(after|alias|as|call|command|else|false|hints|if|in|import|input|meta|null|object|output|parameter_meta|requirements|runtime|scatter|then|true|version)\\b\\s*(?!:)"},{"name":"entity.name.type.wdl","match":"\\b(Array|Boolean|Directory|File|Float|Int|Map|None|Object|Pair|String)\\b"}]},"meta-block":{"name":"entity.meta-block.wdl","begin":"(?:\\s*)(meta)","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.meta.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.meta-start.wdl"}}},"multi-line-strings":{"name":"string.unquoted.multi-line.wdl","begin":"\u003c\u003c\u003c","end":"\u003e\u003e\u003e","patterns":[{"include":"#placeholder"},{"include":"#escaped-character"}]},"numeric":{"name":"constant.numeric.wdl","match":"-?(?:[0-9]+\\.[0-9]*(e|E)?|[0-9]+(e|E)?|[1-9][0-9]*|0[0-7]+|0[xX][0-9a-fA-F]|0)"},"output-block":{"name":"entity.output-block.wdl","begin":"(?:\\s*)(output)[?=\\s|{]","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.output.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.output-start.wdl"}}},"parameter_meta-block":{"name":"entity.parameter_meta-block.wdl","begin":"(?:\\s*)(parameter_meta)","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.parameter_meta.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.parameter_meta-start.wdl"}}},"placeholder":{"name":"constant.other.placeholder.wdl","match":"[$~]{\\s*([A-Za-z][A-Za-z0-9_]*)\\s*}"},"requirements-block":{"name":"entity.requirements-block.wdl","begin":"(?:\\s*)(requirements)","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.requirements.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.requirements-start.wdl"}}},"runtime-block":{"name":"entity.runtime-block.wdl","begin":"(?:\\s*)(runtime)","end":"(?:\\s*)({)","patterns":[{"include":"#atom"}],"beginCaptures":{"1":{"name":"keyword.other.runtime.wdl"}},"endCaptures":{"1":{"name":"punctuation.bracket.angle.runtime-start.wdl"}}},"single-number-sign-comments":{"name":"comment.line.number-sign.documentation","begin":"(?:\\s*)(?:#(?!#))","while":"(?:^|\\G)(?:\\s*)(?:#(?!#))"},"single-quoted-strings":{"name":"string.quoted.single.wdl","begin":"'","end":"'","patterns":[{"include":"#placeholder"},{"include":"#escaped-character"}]},"strings":{"patterns":[{"include":"#single-quoted-strings"},{"include":"#double-quoted-strings"},{"include":"#multi-line-strings"}]}}}
|
data/grammars/text.adblock.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Adblock","scopeName":"text.adblock","patterns":[{"include":"#adblockAgent"},{"include":"#preprocessor"},{"include":"#comments"},{"include":"#snippetRulesABP"},{"include":"#cssRules"},{"include":"#scriptletRules"},{"include":"#scriptletRulesUBO"},{"include":"#jsRules"},{"include":"#contentRules"},{"include":"#elemhideRules"},{"include":"#basicRulesNoUrl"},{"include":"#basicRulesRegex"},{"include":"#basicRules"}],"repository":{"adblockAgent":{"patterns":[{"match":"^(\\[)([^\\]]+)(\\])\\s*$","captures":{"1":{"name":"punctuation.definition.array.start.adblock.agent"},"2":{"patterns":[{"include":"#adblockData"},{"name":"punctuation.separator","match":";"},{"name":"invalid.illegal","match":".*"}]},"3":{"name":"punctuation.definition.array.end.adblock.agent"}}}]},"adblockData":{"patterns":[{"match":"(?x)\n (?:\\s*)\n (\n [Aa]d[Bb]lock(?:\\s[Pp]lus)?\n |u[Bb]lock(?:\\s[Oo]rigin)?\n |[Aa]d[Gg]uard\n )\n (?:\\s+(\\d+(?:\\.\\d+)*+\\+?))?\n (?:\\s*)","captures":{"1":{"name":"constant.language.agent.adblocker.name"},"2":{"name":"constant.numeric.decimal"}}}]},"appListPipeSeparated":{"patterns":[{"match":"((~?)([a-zA-Z0-9.-_]+)(\\|?))","captures":{"2":{"name":"keyword.other.adblock"},"3":{"name":"string.unquoted.adblock"},"4":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.app-list","match":".*"}]},"basicRules":{"patterns":[{"match":"^(.+?)((\\$(?!\\/))(.*))?$","captures":{"1":{"patterns":[{"include":"#urlPattern"}]},"3":{"name":"keyword.control.adblock"},"4":{"patterns":[{"include":"#basicRulesOptions"}]}}}]},"basicRulesNoUrl":{"patterns":[{"match":"^(\\$)(.+)$","captures":{"1":{"name":"keyword.control.adblock"},"2":{"patterns":[{"include":"#basicRulesOptions"}]}}}]},"basicRulesOptions":{"patterns":[{"name":"keyword.other.adblock","match":"replace=((\\/)(((\\\\\\/)|[^,/]|(\\\\,))+?)(\\/)(((\\\\\\/)|[^,/]|(\\\\,))*?)(\\/)([a-z]*))","captures":{"1":{"name":"string.regexp.adblock"}}},{"match":"(domain|denyallow|from|to)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#domainListPipeSeparated"}]}}},{"match":"(app)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#appListPipeSeparated"}]}}},{"match":"(dnstype)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#dnsTypesPipeSeparated"}]}}},{"match":"(client|ctag)(=)(((\\\\,)|[^,])+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#dnsClientsPipeSeparated"}]}}},{"name":"keyword.other.adblock","match":"(redirect|redirect-rule|csp|cookie)(=)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"name":"keyword.other.adblock","match":"(dnsrewrite)(=)(((\\\\,)|[^,])+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"keyword.other.delimiter","match":";"},{"name":"string.unquoted.adblock","match":"[^;]*"}]}}},{"name":"keyword.other.adblock","match":"(removeheader)(=)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"keyword.other.delimiter","match":":"},{"name":"string.unquoted.adblock","match":"[^:]*"}]}}},{"name":"keyword.other.adblock","match":"(rewrite)(=)(abp-resource:)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"keyword.other.adblock"},"4":{"name":"string.unquoted.adblock"}}},{"name":"keyword.other.adblock","match":"(removeparam|queryprune)(=)?(~)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"keyword.other.adblock"},"4":{"name":"string.unquoted.adblock"}}},{"match":"(method)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"string.unquoted.adblock","match":"(?i)(connect|delete|get|head|options|patch|post|put)"},{"name":"keyword.operator.adblock","match":"~|\\|"},{"name":"invalid.illegal.method-value","match":".+"}]}}},{"match":"(referrerpolicy)(=)?((\\w|-)+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"string.unquoted.adblock","match":"(?i)(no-referrer|no-referrer-when-downgrade|origin|origin-when-cross-origin|same-origin|strict-origin|strict-origin-when-cross-origin|unsafe-url)"},{"name":"invalid.illegal.referrerpolicy-value","match":"~|\\|.+"}]}}},{"match":"(permissions)(=)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"match":"(header)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"name":"keyword.other.adblock","match":"(inline-script|inline-font|mp4|empty|badfilter|genericblock|generichide|network|popup|popunder|important|replace|stealth)"},{"name":"keyword.other.adblock","match":"(~?)(first-party|third-party|match-case|elemhide|content|jsinject|urlblock|extension|all|strict1p|strict3p|1p|3p|css|frame|ghide|ehide|shide|specifichide)"},{"name":"keyword.other.adblock","match":"(~)?(document|doc|font|image|media|object|other|ping|beacon|script|stylesheet|css|subdocument|frame|websocket|xmlhttprequest|xhr|webrtc)(,|$)"},{"name":"invalid.illegal.removed.modifier","match":"(~)?(object-subrequest)"},{"name":"punctuation.definition.adblock","match":","},{"name":"invalid.illegal.redundant.modifier.separator","match":"\\$"}]},"basicRulesRegex":{"patterns":[{"match":"^(\\/[^\\/\\\\]*(?:\\\\.[^\\/\\\\]*)*\\/[dgimsuy]*)(?:(\\$)(.+))?$","captures":{"1":{"patterns":[{"include":"#regularExpression"}]},"2":{"name":"keyword.control.adblock"},"3":{"patterns":[{"include":"#basicRulesOptions"}]}}}]},"blockingScriptletRules":{"patterns":[{"match":"(?x)\n ^ # Start of the line\n \\s* # Optional leading whitespace\n (\\[.+?\\])? # Group 1. AdGuard modifier list\n (.*)? # Group 2. Domain list\n (\\#%\\#) # Group 3. Cosmetic rule marker\n (\\/\\/scriptlet) # Group 4. Scriptlet marker\n (\\() # Group 5. Opening parenthesis\n (.*\\S.*) # Group 6. Arguments. Note: we look for a parameter that contain at least one non-whitespace character\n (\\)) # Group 7. Closing parenthesis\n \\s* # Optional trailing whitespace\n $ # End of the line","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"name":"entity.name.function.adblock"},"5":{"name":"punctuation.section.adblock"},"6":{"patterns":[{"include":"#scriptletFunction"}]},"7":{"name":"punctuation.section.adblock"}}}]},"comments":{"patterns":[{"name":"comment.line.exclamation-sign","match":"^!.*"},{"name":"comment.line.hashtag-sign","match":"^#(?!(?:@?(?:\\$?\\?|\\$|%)?#)).*"}]},"contentAttributes":{"patterns":[{"match":"(\\[)([^\"=]+?)(\\=)(\".+?\")(\\])","captures":{"1":{"name":"punctuation.section.adblock"},"2":{"name":"keyword.other.adblock"},"3":{"name":"keyword.operator.adblock"},"4":{"name":"string.quoted.adblock"},"5":{"name":"punctuation.section.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"contentRules":{"patterns":[{"match":"^(\\[.+?\\])?(.*?)(\\$@?\\$)(.+?)(\\[.+)?$","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"name":"entity.name.function.adblock"},"5":{"patterns":[{"include":"#contentAttributes"}]}}}]},"cosmeticRulesOptions":{"match":"(\\[)(.+?)(\\])","captures":{"1":{"name":"keyword.control.adblock"},"2":{"patterns":[{"match":"(path)(=)(((\\\\,)|[^,])+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"match":"(domain)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#domainListPipeSeparated"}]}}},{"match":"(app)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#appListPipeSeparated"}]}}},{"match":"(url)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"name":"keyword.control.adblock","match":"\\$"},{"name":"punctuation.definition.adblock","match":","},{"name":"invalid.illegal.adblock","match":".*"}]},"3":{"name":"keyword.control.adblock"}}},"cssRules":{"patterns":[{"match":"^(\\[.+?\\])?(.*?)(#@?\\$\\??#)(.+)$","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"patterns":[{"include":"#cssStyle"}]}}}]},"cssSelector":{"patterns":[{"name":"entity.name.function.adblock","match":".+"}]},"cssStyle":{"patterns":[{"match":"(@media[\\s]+[^\\{]*)(\\{)([\\s]*[^\\{]*)(\\{)([\\s]*[^\\}]*)(\\})[\\s]*(\\})","captures":{"1":{"name":"entity.name.function.adblock"},"2":{"name":"punctuation.section.adblock"},"3":{"name":"entity.name.function.adblock"},"4":{"name":"punctuation.section.adblock"},"5":{"name":"string.quoted.adblock"},"6":{"name":"punctuation.section.adblock"},"7":{"name":"punctuation.section.adblock"}}},{"match":"([^{}]+)\\s*((\\{)(.+?)(\\}))","captures":{"1":{"name":"entity.name.function.adblock"},"3":{"name":"punctuation.section.adblock"},"4":{"name":"string.quoted.adblock"},"5":{"name":"punctuation.section.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"dnsClientsPipeSeparated":{"patterns":[{"match":"((~?)([^|]+)(\\|?))","captures":{"2":{"name":"keyword.other.adblock"},"3":{"name":"string.unquoted.adblock"},"4":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.app-list","match":".*"}]},"dnsTypesPipeSeparated":{"patterns":[{"match":"((~?)([a-zA-Z0-9.-_]+)(\\|?))","captures":{"2":{"name":"keyword.other.adblock"},"3":{"name":"string.unquoted.adblock"},"4":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.app-list","match":".*"}]},"domainListCommaSeparated":{"patterns":[{"match":"(~?)([^,]+)(,?)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"string.unquoted.adblock"},"3":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.domain-list","match":".*"}]},"domainListPipeSeparated":{"patterns":[{"match":"(~?)([^|]+)(\\|?)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"string.unquoted.adblock"},"3":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.domain-list","match":".*"}]},"elemhideRules":{"patterns":[{"match":"^(\\[.+?\\])?(.*?)(#@?\\??#\\^?)(.+)$","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"patterns":[{"include":"#cssSelector"}]}}}]},"emptyScriptletFunction":{"patterns":[{"name":"entity.name.section.adblock.empty-scriptlet","match":"\\s*\\z"}]},"exceptionScriptletRules":{"patterns":[{"match":"(?x)\n ^ # Start of the line\n \\s* # Optional leading whitespace\n (\\[.+?\\])? # Group 1. AdGuard modifier list\n (.*)? # Group 2. Domain list\n (\\#@%\\#) # Group 3. Cosmetic rule marker\n (\\/\\/scriptlet) # Group 4. Scriptlet marker\n (\\() # Group 5. Opening parenthesis\n (.*)? # Group 6. Arguments\n (\\)) # Group 7. Closing parenthesis\n \\s* # Optional trailing whitespace\n $ # End of the line","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"name":"entity.name.function.adblock"},"5":{"name":"punctuation.section.adblock"},"6":{"patterns":[{"include":"#emptyScriptletFunction"},{"include":"#scriptletFunction"}]},"7":{"name":"punctuation.section.adblock"}}}]},"jsRules":{"patterns":[{"contentName":"source.js","begin":"^(.*?)(#@?%#(?!\\/\\/scriptlet))","end":"$","patterns":[{"include":"source.js"}],"beginCaptures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"}}},{"match":"^(.*?)(#@?%#)(.+)$","captures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"},"3":{"name":"invalid.illegal"}}}]},"preprocessor":{"patterns":[{"match":"^(!#if)(\\s)(.*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"keyword.other.delimiter.whitespace"},"3":{"patterns":[{"name":"constant.language.platform.name","match":"[A-Za-z]+[\\w_-]*"},{"name":"keyword.operator.logical.and","match":"\u0026\u0026"},{"name":"keyword.operator.logical.or","match":"\\|\\|"},{"name":"keyword.operator.logical.not","match":"!"},{"name":"keyword.control.characters.parenthesis.open","match":"\\("},{"name":"keyword.control.characters.parenthesis.close","match":"\\)"},{"name":"keyword.other.delimiter.whitespace","match":"\\s+"},{"name":"invalid.illegal","match":".*"}]}}},{"match":"^(!#include) (.*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"string.unquoted"}}},{"match":"^(!#else)(\\s*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"keyword.other.delimiter.whitespace"}}},{"match":"^(!#endif)(\\s*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"keyword.other.delimiter.whitespace"}}},{"match":"^(!#safari_cb_affinity)(.*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"patterns":[{"name":"constant.language.contentblocker.name","match":"(all|general|privacy|social|security|other|custom|advanced)"},{"name":"keyword.control.characters","match":"(\\(|\\)|,)"},{"name":"invalid.illegal","match":".*"}]}}},{"match":"^(!\\+) (.*)$","captures":{"1":{"name":"keyword.preprocessor.hint"},"2":{"patterns":[{"name":"keyword.control.hint.name","match":"(NOT_OPTIMIZED|OPTIMIZED|PLATFORM|NOT_PLATFORM)"},{"name":"constant.language.platform.name","match":"(windows|mac|android|ios|ext_chromium|ext_ff|ext_edge|ext_opera|ext_ublock|ext_safari|ext_android_cb)"},{"name":"keyword.control.characters","match":"(\\(|\\)|,)"}]}}},{"name":"invalid.illegal.preprocessor","match":"^!#(?!#).+$"}]},"regularExpression":{"patterns":[{"contentName":"string.regexp","begin":"(/)","end":"((?\u003c!\\\\)/)([dgimsuy]*)?","patterns":[{"name":"keyword.control.regex","match":"(?\u003c!\\\\)([/\\^\\$\\|])"}],"beginCaptures":{"1":{"name":"keyword.other.regex.begin"}},"endCaptures":{"1":{"name":"keyword.other.regex.end"},"2":{"name":"keyword.other.regex"}}}]},"scriptletFunction":{"patterns":[{"match":"((['|\"])(.*?)(?\u003c!\\\\)(\\2))(,\\s*)?","captures":{"1":{"name":"string.quoted.adblock"},"5":{"name":"keyword.operator.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"scriptletFunctionUBO":{"patterns":[{"match":"((?:[^\\\\,]+|\\\\.?)*)(,|$)","captures":{"1":{"name":"string.quoted.adblock"},"2":{"name":"keyword.operator.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"scriptletRules":{"patterns":[{"include":"#exceptionScriptletRules"},{"include":"#blockingScriptletRules"}]},"scriptletRulesUBO":{"patterns":[{"match":"^(.*?)(#@?#)(\\+js)(\\()(.+)(\\)\\s*)$","captures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"},"3":{"name":"entity.name.function.adblock"},"4":{"name":"punctuation.section.adblock"},"5":{"patterns":[{"include":"#scriptletFunctionUBO"}]},"6":{"name":"punctuation.section.adblock"}}}]},"snippetRulesABP":{"patterns":[{"match":"^(.*?)(#@?\\$#)([^{]+)$","captures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"},"3":{"name":"constant.character.snippet.adblock"}}}]},"urlPattern":{"patterns":[{"name":"string.regexp.adblock","match":"^(@@)?(\\/)(.+)\\/$","captures":{"1":{"name":"keyword.other.adblock"}}},{"name":"keyword.other.adblock","match":"^@@\\|?\\|?"},{"name":"keyword.other.adblock","match":"^\\|\\|"},{"name":"keyword.other.adblock","match":"^\\|"},{"name":"keyword.other.adblock","match":"\\|$"},{"name":"keyword.other.adblock","match":"\\^"},{"name":"keyword.other.adblock","match":"\\*"}]}}}
|
1
|
+
{"name":"Adblock","scopeName":"text.adblock","patterns":[{"include":"#adblockAgent"},{"include":"#preprocessor"},{"include":"#comments"},{"include":"#snippetRulesABP"},{"include":"#cssRules"},{"include":"#scriptletRules"},{"include":"#scriptletRulesUBO"},{"include":"#jsRules"},{"include":"#contentRules"},{"include":"#elemhideRules"},{"include":"#basicRulesNoUrl"},{"include":"#basicRulesRegex"},{"include":"#basicRules"}],"repository":{"adblockAgent":{"patterns":[{"match":"^(\\[)([^\\]]+)(\\])\\s*$","captures":{"1":{"name":"punctuation.definition.array.start.adblock.agent"},"2":{"patterns":[{"include":"#adblockData"},{"name":"punctuation.separator","match":";"},{"name":"invalid.illegal","match":".*"}]},"3":{"name":"punctuation.definition.array.end.adblock.agent"}}}]},"adblockData":{"patterns":[{"match":"(?x)\n (?:\\s*)\n (\n [Aa]d[Bb]lock(?:\\s[Pp]lus)?\n |u[Bb]lock(?:\\s[Oo]rigin)?\n |[Aa]d[Gg]uard\n )\n (?:\\s+(\\d+(?:\\.\\d+)*+\\+?))?\n (?:\\s*)","captures":{"1":{"name":"constant.language.agent.adblocker.name"},"2":{"name":"constant.numeric.decimal"}}}]},"appListPipeSeparated":{"patterns":[{"match":"((~?)([a-zA-Z0-9.-_]+)(\\|?))","captures":{"2":{"name":"keyword.other.adblock"},"3":{"name":"string.unquoted.adblock"},"4":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.app-list","match":".*"}]},"basicRules":{"patterns":[{"match":"^(.+?)((\\$(?!\\/))(.*))?$","captures":{"1":{"patterns":[{"include":"#urlPattern"}]},"3":{"name":"keyword.control.adblock"},"4":{"patterns":[{"include":"#basicRulesOptions"}]}}}]},"basicRulesNoUrl":{"patterns":[{"match":"^(\\$)(.+)$","captures":{"1":{"name":"keyword.control.adblock"},"2":{"patterns":[{"include":"#basicRulesOptions"}]}}}]},"basicRulesOptions":{"patterns":[{"name":"keyword.other.adblock","match":"replace=((\\/)(((\\\\\\/)|[^,/]|(\\\\,))+?)(\\/)(((\\\\\\/)|[^,/]|(\\\\,))*?)(\\/)([a-z]*))","captures":{"1":{"name":"string.regexp.adblock"}}},{"match":"(domain|denyallow|from|to)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#domainListPipeSeparated"}]}}},{"match":"(app)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#appListPipeSeparated"}]}}},{"match":"(dnstype)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#dnsTypesPipeSeparated"}]}}},{"match":"(client|ctag)(=)(((\\\\,)|[^,])+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#dnsClientsPipeSeparated"}]}}},{"name":"keyword.other.adblock","match":"(redirect|redirect-rule|csp|cookie)(=)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"name":"keyword.other.adblock","match":"(dnsrewrite)(=)(((\\\\,)|[^,])+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"keyword.other.delimiter","match":";"},{"name":"string.unquoted.adblock","match":"[^;]*"}]}}},{"name":"keyword.other.adblock","match":"(removeheader)(=)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"keyword.other.delimiter","match":":"},{"name":"string.unquoted.adblock","match":"[^:]*"}]}}},{"name":"keyword.other.adblock","match":"(rewrite)(=)(abp-resource:)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"keyword.other.adblock"},"4":{"name":"string.unquoted.adblock"}}},{"name":"keyword.other.adblock","match":"(removeparam|queryprune)(=)?(~)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"keyword.other.adblock"},"4":{"name":"string.unquoted.adblock"}}},{"match":"(method)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"string.unquoted.adblock","match":"(?i)(connect|delete|get|head|options|patch|post|put)"},{"name":"keyword.operator.adblock","match":"~|\\|"},{"name":"invalid.illegal.method-value","match":".+"}]}}},{"match":"(referrerpolicy)(=)?((\\w|-)+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"name":"string.unquoted.adblock","match":"(?i)(no-referrer|no-referrer-when-downgrade|origin|origin-when-cross-origin|same-origin|strict-origin|strict-origin-when-cross-origin|unsafe-url)"},{"name":"invalid.illegal.referrerpolicy-value","match":"~|\\|.+"}]}}},{"match":"(permissions)(=)?(((\\\\,)|[^,])+)?","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"match":"(header)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"name":"keyword.other.adblock","match":"(inline-script|inline-font|mp4|empty|badfilter|genericblock|generichide|network|popup|popunder|important|replace|stealth)"},{"name":"keyword.other.adblock","match":"(~?)(first-party|third-party|match-case|elemhide|content|jsinject|urlblock|extension|all|strict1p|strict3p|1p|3p|css|frame|ghide|ehide|shide|specifichide)"},{"name":"keyword.other.adblock","match":"(~)?(document|doc|font|image|media|object|other|ping|beacon|script|stylesheet|css|subdocument|frame|websocket|xmlhttprequest|xhr|webrtc)(,|$)"},{"name":"invalid.illegal.removed.modifier","match":"(~)?(object-subrequest)"},{"name":"punctuation.definition.adblock","match":","},{"name":"invalid.illegal.redundant.modifier.separator","match":"\\$"}]},"basicRulesRegex":{"patterns":[{"match":"^(\\/[^\\/\\\\]*(?:\\\\.[^\\/\\\\]*)*\\/[dgimsuy]*)(?:(\\$)(.+))?$","captures":{"1":{"patterns":[{"include":"#regularExpression"}]},"2":{"name":"keyword.control.adblock"},"3":{"patterns":[{"include":"#basicRulesOptions"}]}}}]},"blockingScriptletRules":{"patterns":[{"match":"(?x)\n ^ # Start of the line\n \\s* # Optional leading whitespace\n (\\[.+?\\])? # Group 1. AdGuard modifier list\n (.*)? # Group 2. Domain list\n (\\#%\\#) # Group 3. Cosmetic rule marker\n (\\/\\/scriptlet) # Group 4. Scriptlet marker\n (\\() # Group 5. Opening parenthesis\n (.*\\S.*) # Group 6. Arguments. Note: we look for a parameter that contain at least one non-whitespace character\n (\\)) # Group 7. Closing parenthesis\n \\s* # Optional trailing whitespace\n $ # End of the line","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"name":"entity.name.function.adblock"},"5":{"name":"punctuation.section.adblock"},"6":{"patterns":[{"include":"#scriptletFunction"}]},"7":{"name":"punctuation.section.adblock"}}}]},"comments":{"patterns":[{"name":"comment.line.exclamation-sign","match":"^!.*"},{"name":"comment.line.hashtag-sign","match":"^#(?!(?:@?(?:\\$?\\?|\\$|%)?#)).*"}]},"contentAttributes":{"patterns":[{"match":"(\\[)([^\"=]+?)(\\=)(\".+?\")(\\])","captures":{"1":{"name":"punctuation.section.adblock"},"2":{"name":"keyword.other.adblock"},"3":{"name":"keyword.operator.adblock"},"4":{"name":"string.quoted.adblock"},"5":{"name":"punctuation.section.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"contentRules":{"patterns":[{"match":"^(\\[.+?\\])?(.*?)(\\$@?\\$)(.+?)(\\[.+)?$","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"name":"entity.name.function.adblock"},"5":{"patterns":[{"include":"#contentAttributes"}]}}}]},"cosmeticRulesOptions":{"match":"(\\[)(.+?)(\\])","captures":{"1":{"name":"keyword.control.adblock"},"2":{"patterns":[{"match":"(path)(=)(((\\\\,)|[^,])+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"match":"(domain)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#domainListPipeSeparated"}]}}},{"match":"(app)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"patterns":[{"include":"#appListPipeSeparated"}]}}},{"match":"(url)(=)([^,]+)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"keyword.operator.adblock"},"3":{"name":"string.unquoted.adblock"}}},{"name":"keyword.control.adblock","match":"\\$"},{"name":"punctuation.definition.adblock","match":","},{"name":"invalid.illegal.adblock","match":".*"}]},"3":{"name":"keyword.control.adblock"}}},"cssRules":{"patterns":[{"match":"^(\\[.+?\\])?(.*?)(#@?\\$\\??#)(.+)$","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"patterns":[{"include":"#cssStyle"}]}}}]},"cssSelector":{"patterns":[{"name":"entity.name.function.adblock","match":".+"}]},"cssStyle":{"patterns":[{"match":"(@media[\\s]+[^\\{]*)(\\{)([\\s]*[^\\{]*)(\\{)([\\s]*[^\\}]*)(\\})[\\s]*(\\})","captures":{"1":{"name":"entity.name.function.adblock"},"2":{"name":"punctuation.section.adblock"},"3":{"name":"entity.name.function.adblock"},"4":{"name":"punctuation.section.adblock"},"5":{"name":"string.quoted.adblock"},"6":{"name":"punctuation.section.adblock"},"7":{"name":"punctuation.section.adblock"}}},{"match":"([^{}]+)\\s*((\\{)(.+?)(\\}))","captures":{"1":{"name":"entity.name.function.adblock"},"3":{"name":"punctuation.section.adblock"},"4":{"name":"string.quoted.adblock"},"5":{"name":"punctuation.section.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"dnsClientsPipeSeparated":{"patterns":[{"match":"((~?)([^|]+)(\\|?))","captures":{"2":{"name":"keyword.other.adblock"},"3":{"name":"string.unquoted.adblock"},"4":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.app-list","match":".*"}]},"dnsTypesPipeSeparated":{"patterns":[{"match":"((~?)([a-zA-Z0-9.-_]+)(\\|?))","captures":{"2":{"name":"keyword.other.adblock"},"3":{"name":"string.unquoted.adblock"},"4":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.app-list","match":".*"}]},"domainListCommaSeparated":{"patterns":[{"match":"(~?)([^,]+)(,?)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"string.unquoted.adblock"},"3":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.domain-list","match":".*"}]},"domainListPipeSeparated":{"patterns":[{"match":"(~?)([^|]+)(\\|?)","captures":{"1":{"name":"keyword.other.adblock"},"2":{"name":"string.unquoted.adblock"},"3":{"name":"punctuation.definition.adblock"}}},{"name":"invalid.illegal.domain-list","match":".*"}]},"elemhideRules":{"patterns":[{"match":"^(\\[.+?\\])?(.*?)(#@?\\??#\\^?)(.+)$","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"patterns":[{"include":"#cssSelector"}]}}}]},"emptyScriptletFunction":{"patterns":[{"name":"entity.name.section.adblock.empty-scriptlet","match":"\\s*\\z"}]},"exceptionScriptletRules":{"patterns":[{"match":"(?x)\n ^ # Start of the line\n \\s* # Optional leading whitespace\n (\\[.+?\\])? # Group 1. AdGuard modifier list\n (.*)? # Group 2. Domain list\n (\\#@%\\#) # Group 3. Cosmetic rule marker\n (\\/\\/scriptlet) # Group 4. Scriptlet marker\n (\\() # Group 5. Opening parenthesis\n (.*)? # Group 6. Arguments\n (\\)) # Group 7. Closing parenthesis\n \\s* # Optional trailing whitespace\n $ # End of the line","captures":{"1":{"patterns":[{"include":"#cosmeticRulesOptions"}]},"2":{"patterns":[{"include":"#domainListCommaSeparated"}]},"3":{"name":"keyword.control.adblock"},"4":{"name":"entity.name.function.adblock"},"5":{"name":"punctuation.section.adblock"},"6":{"patterns":[{"include":"#emptyScriptletFunction"},{"include":"#scriptletFunction"}]},"7":{"name":"punctuation.section.adblock"}}}]},"jsRules":{"patterns":[{"contentName":"source.js","begin":"^(.*?)(#@?%#(?!\\/\\/scriptlet))","end":"$","patterns":[{"include":"source.js"}],"beginCaptures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"}}},{"match":"^(.*?)(#@?%#)(.+)$","captures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"},"3":{"name":"invalid.illegal"}}}]},"preprocessor":{"patterns":[{"match":"^(!#if)(\\s)(.*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"keyword.other.delimiter.whitespace"},"3":{"patterns":[{"name":"constant.language.platform.name","match":"[A-Za-z]+[\\w_-]*"},{"name":"keyword.operator.logical.and","match":"\u0026\u0026"},{"name":"keyword.operator.logical.or","match":"\\|\\|"},{"name":"keyword.operator.logical.not","match":"!"},{"name":"keyword.control.characters.parenthesis.open","match":"\\("},{"name":"keyword.control.characters.parenthesis.close","match":"\\)"},{"name":"keyword.other.delimiter.whitespace","match":"\\s+"},{"name":"invalid.illegal","match":".*"}]}}},{"match":"^(!#include) (.*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"string.unquoted"}}},{"match":"^(!#else)(\\s*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"keyword.other.delimiter.whitespace"}}},{"match":"^(!#endif)(\\s*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"name":"keyword.other.delimiter.whitespace"}}},{"match":"^(!#safari_cb_affinity)(.*)$","captures":{"1":{"name":"keyword.preprocessor.directive"},"2":{"patterns":[{"name":"constant.language.contentblocker.name","match":"(all|general|privacy|social|security|other|custom|advanced)"},{"name":"keyword.control.characters","match":"(\\(|\\)|,)"},{"name":"invalid.illegal","match":".*"}]}}},{"match":"^(!\\+) (.*)$","captures":{"1":{"name":"keyword.preprocessor.hint"},"2":{"patterns":[{"name":"keyword.control.hint.name","match":"(NOT_OPTIMIZED|OPTIMIZED|PLATFORM|NOT_PLATFORM)"},{"name":"constant.language.platform.name","match":"(windows|mac|android|ios|ext_chromium_mv3|ext_chromium|ext_ff|ext_edge|ext_opera|ext_ublock|ext_safari|ext_android_cb)"},{"name":"keyword.control.characters","match":"(\\(|\\)|,)"}]}}},{"name":"invalid.illegal.preprocessor","match":"^!#(?!#).+$"}]},"regularExpression":{"patterns":[{"contentName":"string.regexp","begin":"(/)","end":"((?\u003c!\\\\)/)([dgimsuy]*)?","patterns":[{"name":"keyword.control.regex","match":"(?\u003c!\\\\)([/\\^\\$\\|])"}],"beginCaptures":{"1":{"name":"keyword.other.regex.begin"}},"endCaptures":{"1":{"name":"keyword.other.regex.end"},"2":{"name":"keyword.other.regex"}}}]},"scriptletFunction":{"patterns":[{"match":"((['|\"])(.*?)(?\u003c!\\\\)(\\2))(,\\s*)?","captures":{"1":{"name":"string.quoted.adblock"},"5":{"name":"keyword.operator.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"scriptletFunctionUBO":{"patterns":[{"match":"((?:[^\\\\,]+|\\\\.?)*)(,|$)","captures":{"1":{"name":"string.quoted.adblock"},"2":{"name":"keyword.operator.adblock"}}},{"name":"invalid.illegal.adblock","match":".*"}]},"scriptletRules":{"patterns":[{"include":"#exceptionScriptletRules"},{"include":"#blockingScriptletRules"}]},"scriptletRulesUBO":{"patterns":[{"match":"^(.*?)(#@?#)(\\+js)(\\()(.+)(\\)\\s*)$","captures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"},"3":{"name":"entity.name.function.adblock"},"4":{"name":"punctuation.section.adblock"},"5":{"patterns":[{"include":"#scriptletFunctionUBO"}]},"6":{"name":"punctuation.section.adblock"}}}]},"snippetRulesABP":{"patterns":[{"match":"^(.*?)(#@?\\$#)([^{]+)$","captures":{"1":{"patterns":[{"include":"#domainListCommaSeparated"}]},"2":{"name":"keyword.control.adblock"},"3":{"name":"constant.character.snippet.adblock"}}}]},"urlPattern":{"patterns":[{"name":"string.regexp.adblock","match":"^(@@)?(\\/)(.+)\\/$","captures":{"1":{"name":"keyword.other.adblock"}}},{"name":"keyword.other.adblock","match":"^@@\\|?\\|?"},{"name":"keyword.other.adblock","match":"^\\|\\|"},{"name":"keyword.other.adblock","match":"^\\|"},{"name":"keyword.other.adblock","match":"\\|$"},{"name":"keyword.other.adblock","match":"\\^"},{"name":"keyword.other.adblock","match":"\\*"}]}}}
|