github-linguist 9.5.0 → 9.6.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.
- checksums.yaml +4 -4
- data/grammars/etc.json +1 -1
- data/grammars/markdown.mojo.codeblock.json +1 -0
- data/grammars/markdown.move.codeblock.json +1 -1
- data/grammars/source.4dm.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.apex.json +1 -1
- data/grammars/source.baml-jinja.json +1 -0
- data/grammars/source.baml.json +1 -0
- data/grammars/source.bb.json +1 -1
- data/grammars/source.brs.embedded.xml.json +1 -0
- data/grammars/source.bsl.json +1 -1
- data/grammars/source.c++.json +1 -1
- data/grammars/source.c.json +1 -1
- data/grammars/source.c3.json +1 -1
- data/grammars/source.cel.json +1 -0
- data/grammars/source.clarion.json +1 -1
- data/grammars/source.cmake.json +1 -1
- data/grammars/source.cs.json +1 -1
- data/grammars/source.csv.json +1 -1
- data/grammars/source.curlrc.json +1 -1
- data/grammars/source.daslang.json +1 -1
- data/grammars/source.data-weave.json +1 -1
- data/grammars/source.emacs.lisp.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.gimprc.json +1 -0
- data/grammars/source.gimpres.json +1 -0
- data/grammars/source.graphql.json +1 -1
- data/grammars/source.gtkrc.json +1 -0
- data/grammars/source.hack.json +1 -1
- data/grammars/source.hosts.json +1 -1
- data/grammars/source.il.json +1 -0
- data/grammars/source.ink.json +1 -1
- data/grammars/source.interp.json +1 -0
- data/grammars/source.jac.json +1 -1
- data/grammars/source.jactoml.json +1 -0
- data/grammars/source.jai.json +1 -1
- data/grammars/source.just.json +1 -1
- data/grammars/source.lean4.markdown.json +1 -1
- data/grammars/source.luau.json +1 -1
- data/grammars/source.m2.json +1 -1
- data/grammars/source.m3u.json +1 -1
- data/grammars/source.matlab.json +1 -1
- data/grammars/source.mdx.astro.json +1 -1
- data/grammars/source.mo.json +1 -1
- data/grammars/source.mojo.json +1 -1
- data/grammars/source.moonbit.config.json +1 -0
- data/grammars/source.moonbit.json +1 -1
- data/grammars/source.move.json +1 -1
- data/grammars/source.opy.json +1 -0
- data/grammars/source.pic.json +1 -1
- data/grammars/source.pkgconf.json +1 -0
- data/grammars/source.powerquery.json +1 -0
- data/grammars/source.powershell.json +1 -1
- data/grammars/source.prisma.json +1 -1
- data/grammars/source.quint.json +1 -0
- data/grammars/source.rascal.json +1 -1
- data/grammars/source.rascript.json +1 -1
- data/grammars/source.record-jar.json +1 -1
- data/grammars/source.redscript.json +1 -0
- data/grammars/source.slang.json +1 -1
- data/grammars/source.slint.json +1 -1
- data/grammars/source.soql.json +1 -1
- data/grammars/source.spicedb-yaml.json +1 -0
- data/grammars/source.spicedb.json +1 -0
- data/grammars/source.stan.json +1 -1
- data/grammars/source.surrealql.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.uri-list.json +1 -0
- data/grammars/source.v.json +1 -1
- data/grammars/source.wgsl.json +1 -1
- data/grammars/spicedb-yaml.injection.json +1 -0
- data/grammars/text.cachedir.json +1 -0
- data/grammars/text.cookie-jar.json +1 -0
- data/grammars/text.html.vue.json +1 -1
- data/grammars/text.mac-tts.json +1 -0
- data/grammars/text.roff.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/classifier.rb +2 -1
- data/lib/linguist/generated.rb +16 -0
- data/lib/linguist/generic.yml +2 -0
- data/lib/linguist/heuristics.yml +17 -0
- data/lib/linguist/language.rb +8 -0
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +139 -12
- data/lib/linguist/lazy_blob.rb +19 -1
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/vendor.yml +3 -0
- metadata +25 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"moonbit","scopeName":"source.moonbit","patterns":[{"include":"#strings"},{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#functions"},{"include":"#support"},{"include":"#attribute"},{"include":"#types"},{"include":"#modules"},{"include":"#variables"}],"repository":{"attribute":{"patterns":[{"match":"(#[a-z][A-Za-z0-9_. ]*)(.*)","captures":{"1":{"name":"keyword.control.directive"},"2":{"patterns":[{"include":"#strings"},{"name":"entity.name.tag","match":"[a-zA-Z0-9_. ]+"},{"name":"keyword.operator.attribute.moonbit","match":"="}]}}}]},"comments":{"patterns":[{"name":"comment.line","match":"//[^/].*"},{"name":"comment.block.documentation.moonbit","begin":"///","while":"///","patterns":[{"name":"markup.fenced_code.block.markdown","begin":"(^|\\G)(\\s*)(\\`{3,}|~{3,})\\s*(?i:(mbt\\s+test|mbt\\s+test(async)|mbt|moonbit\\s+test|moonbit\\s+test(async)|moonbit|)(\\s+[^`~]*)?$)","end":"(^|\\G)(\\2|\\s{0,3})(\\3)\\s*$","patterns":[{"contentName":"meta.embedded.block.moonbit","begin":"(^|\\G)(\\s*)(.*)","while":"(^|\\G)(?!\\s*([`~]{3,})\\s*$)","patterns":[{"include":"$self"}]}],"beginCaptures":{"3":{"name":"punctuation.definition.markdown"},"5":{"name":"fenced_code.block.language"},"6":{"name":"fenced_code.block.language.attributes"}},"endCaptures":{"3":{"name":"punctuation.definition.markdown"}}}]}]},"constants":{"patterns":[{"name":"constant.numeric.moonbit","match":"\\b\\d(\\d|_)*(?!\\.)((U)?(L)?|N?)\\b"},{"name":"constant.numeric.moonbit","match":"(?\u003c=\\.)\\d((?=\\.)|\\b)"},{"name":"constant.numeric.moonbit","match":"\\b\\d+(?=\\.\\.)"},{"name":"constant.numeric.moonbit","match":"\\b\\d[\\d_]*\\.[\\d_]*([Ee][+-]?\\d[\\d_]*\\b)?"},{"name":"constant.numeric.moonbit","match":"\\b0[Oo][0-7][0-7]*((U)?(L)?|N?)\\b"},{"name":"constant.numeric.moonbit","match":"\\b0[Xx][\\dAaBbCcDdEeFf][\\dAaBbCcDdEeFf_]*((U|L|UL|N)\\b|\\.[\\da-fA-F_]*([Pp][+-]?[\\da-fA-F_]+\\b)?)?"},{"name":"constant.language.moonbit","match":"\\b(true|false)\\b"}]},"escape":{"patterns":[{"name":"constant.character.escape.moonbit","match":"\\\\[0\\\\tnrb\"']"},{"name":"constant.character.escape.moonbit","match":"\\\\x[0-9a-fA-F]{2}"},{"name":"constant.character.escape.moonbit","match":"\\\\o[0-3][0-7]{2}"},{"name":"constant.character.escape.unicode.moonbit","match":"\\\\u[0-9a-fA-F]{4}"},{"name":"constant.character.escape.unicode.moonbit","match":"\\\\u{[0-9a-fA-F]*}"}]},"functions":{"patterns":[{"match":"\\b(fn)\\b\\s*(?:([A-Z][A-Za-z0-9_]*)::)?([a-z0-9_][A-Za-z0-9_]*)?\\b","captures":{"1":{"name":"keyword.moonbit"},"2":{"name":"entity.name.type.moonbit"},"3":{"name":"entity.name.function.moonbit"}}},{"name":"meta.function.call.moonbit","begin":"(?!\\bfn\\s+)(?:\\.|::)?([a-z0-9_][A-Za-z0-9_]*(\\!|\\?|\\!\\!)?)\\s*(\\()","end":"\\)","patterns":[{"include":"#comments"},{"include":"#constants"},{"include":"#keywords"},{"include":"#functions"},{"include":"#support"},{"include":"#types"},{"include":"#modules"},{"include":"#strings"},{"include":"#variables"}],"beginCaptures":{"1":{"name":"entity.name.function.moonbit"},"2":{"name":"punctuation.brackets.round.moonbit"}},"endCaptures":{"0":{"name":"punctuation.brackets.round.moonbit"}}}]},"interpolation":{"patterns":[{"name":"meta.embedded.line.moonbit","contentName":"source.moonbit","begin":"\\\\{","end":"}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.moonbit"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.moonbit"}}}]},"keywords":{"patterns":[{"name":"keyword.control.moonbit.async","match":"\\b(async)\\b"},{"name":"keyword.control.moonbit","match":"\\b(guard|if|while|break|continue|return|try|catch|except|raise|noraise|match|lexmatch|using|else|as|in|is|loop|for|async|defer)\\b"},{"name":"keyword.moonbit","match":"\\b(type!|lexmatch\\?|(type|typealias|let|const|enum|struct|import|trait|traitalias|derive|test|impl|with|fnalias|recur|suberror|letrec|and|where|declare)\\b)"},{"name":"storage.modifier.moonbit","match":"\\b(mut|pub|priv|readonly|extern)\\b"},{"name":"storage.type.function.arrow.moonbit","match":"-\u003e"},{"name":"storage.type.function.arrow.moonbit","match":"=\u003e"},{"name":"keyword.operator.assignment.moonbit","match":"="},{"name":"keyword.operator.other.moonbit","match":"\\|\u003e"},{"name":"keyword.operator.comparison.moonbit","match":"(===|==|!=|\u003e=|\u003c=|(?\u003c!-)(?\u003c!\\|)\u003e(?!\u003e)|\u003c(?!\u003c))"},{"name":"keyword.operator.logical.moonbit","match":"(\\bnot\\b|\u0026\u0026|\\|\\|)"},{"name":"keyword.operator.bitwise.moonbit","match":"(\\|(?!\\|)(?!\u003e)|\u0026(?!\u0026)|\\^|\u003c\u003c|\u003e\u003e)"},{"name":"keyword.operator.math.moonbit","match":"(\\+|-(?!\u003e)|\\*|%|/)"}]},"modules":{"patterns":[{"name":"entity.name.namespace.moonbit","match":"@[A-Za-z][A-Za-z0-9_/]*"}]},"strings":{"patterns":[{"name":"string.line","match":"(#\\|).*","captures":{"1":{"name":"keyword.operator.other.moonbit"}}},{"name":"string.line","match":"(\\$\\|)(.*)","captures":{"1":{"name":"keyword.operator.other.moonbit"},"2":{"patterns":[{"include":"#escape"},{"include":"#interpolation"}]}}},{"name":"string.quoted.single.moonbit","begin":"'","end":"'","patterns":[{"include":"#escape"}]},{"name":"string.quoted.double.moonbit","begin":"\"","end":"\"","patterns":[{"include":"#escape"},{"include":"#interpolation"}]}]},"support":{"patterns":[{"name":"support.class.moonbit","match":"\\b(Eq|Compare|Hash|Show|Default|ToJson|FromJson)\\b"}]},"types":{"patterns":[{"name":"entity.name.type.moonbit","match":"\\b(?\u003c!@)[A-Z][A-Za-z0-9_]*((\\?)+|\\b)"}]},"variables":{"patterns":[{"name":"variable.other.moonbit","match":"\\b(?\u003c!\\.|::)[a-z_][a-zA-Z0-9_]*\\b"}]}}}
|
|
1
|
+
{"name":"moonbit","scopeName":"source.moonbit","patterns":[{"include":"#doccomment"},{"include":"#linecomment"},{"include":"#regexliteral"},{"include":"#bytes"},{"include":"#string-double"},{"include":"#string-single"},{"include":"#multilineinterp"},{"include":"#multilinestring"},{"include":"#attributename"},{"include":"#type-annotation-var"},{"include":"#type-annotation-return"},{"include":"#object-method-key"},{"include":"#ternary-expression"},{"include":"#fn-definition"},{"include":"#let-destructure"},{"include":"#const-destructure"},{"include":"#as-typekw"},{"include":"#dotint"},{"include":"#float"},{"include":"#double"},{"include":"#int"},{"include":"#scope-keyword-operator-expression-as"},{"include":"#scope-keyword-operator-expression-is"},{"include":"#scope-keyword-operator-expression-not"},{"include":"#tryquestion"},{"include":"#trybang"},{"include":"#lexmatchquestion"},{"include":"#scope-keyword-control-flow"},{"include":"#scope-keyword-control-conditional"},{"include":"#scope-keyword-control-loop-for"},{"include":"#scope-keyword-control-loop-in"},{"include":"#scope-keyword-control-loop-loop"},{"include":"#scope-keyword-control-loop-while"},{"include":"#scope-keyword-control-loop-break"},{"include":"#scope-keyword-control-loop-continue"},{"include":"#scope-keyword-control-exception"},{"include":"#scope-keyword-control-import"},{"include":"#scope-keyword-control-proof"},{"include":"#uident"},{"include":"#prooflabel"},{"include":"#scope-keyword-other"},{"include":"#scope-storage-modifier"},{"include":"#scope-storage-modifier-accessibility"},{"include":"#scope-storage-type-function"},{"include":"#moonbit-impl-header"},{"include":"#scope-storage-type"},{"include":"#scope-storage-type-function-arrow"},{"include":"#scope-constant-language-boolean-true"},{"include":"#scope-constant-language-boolean-false"},{"include":"#method-call"},{"include":"#known-property-access"},{"include":"#property-access"},{"include":"#forall"},{"include":"#exists"},{"include":"#implies"},{"include":"#operator-overrides"},{"include":"#operators"},{"include":"#scope-punctuation-accessor"},{"include":"#scope-punctuation-separator-colon"},{"include":"#scope-punctuation-bracket-square"},{"include":"#scope-punctuation-separator-comma"},{"include":"#scope-punctuation-bracket-round"},{"include":"#scope-punctuation-bracket-curly"},{"include":"#scope-punctuation-terminator-statement"},{"include":"#punctuation"},{"include":"#function-call"},{"include":"#ident"},{"include":"#packagename"},{"include":"#byte"},{"include":"#char"}],"repository":{"as-typekw":{"name":"meta.type.as.moonbit","begin":"\\b(as)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$)","end":"(?=[)}{\\],;=\u003e]|\\b(?:as|if|else|match|guard|lexmatch|for|while|loop|in|break|continue|return|raise|throw|defer|try|catch|import|using|fn|predicate|lemma|let|letrec|const|type|struct|enum|enumview|extenum|trait|impl|typealias|traitalias|fnalias|suberror|test|pub|priv|readonly|extern|mut|async|declare|noraise|nobreak|proof_assert|proof_let|is|not)\\b)","patterns":[{"include":"#type-inner"}],"beginCaptures":{"1":{"name":"keyword.operator.expression.as.moonbit"}}},"attributename":{"name":"entity.name.function.decorator.moonbit","match":"#[a-zA-Z_][a-zA-Z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z0-9_]*)?"},"bind-default":{"begin":"(=)","end":"(?=[,}\\])])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.operator.assignment.moonbit"}}},"byte":{"name":"constant.character.byte.moonbit","match":"b'(?:\\\\(?:['\"\\\\nrtbf/ ]|x[0-9a-fA-F]{2}|o[0-3][0-7]{2}|u[0-9a-fA-F]{4}|u\\{[0-9a-fA-F]+\\}|.)|[^\\\\'\\n])+'"},"bytes":{"name":"string.quoted.double.bytes.moonbit","match":"b\"(?:[^\"\\\\\\n]|\\\\(?:['\"\\\\nrtbf/ ]|x[0-9a-fA-F]{2}|o[0-3][0-7]{2}|u[0-9a-fA-F]{4}|u\\{[0-9a-fA-F]+\\}|.))*\""},"char":{"name":"constant.character.moonbit","match":"'(?:\\\\(?:['\"\\\\nrtbf/ ]|x[0-9a-fA-F]{2}|o[0-3][0-7]{2}|u[0-9a-fA-F]{4}|u\\{[0-9a-fA-F]+\\}|.)|[^\\\\'\\n])+'"},"const-bind-array":{"begin":"\\[","end":"\\]","patterns":[{"include":"#const-bind-elem"}],"beginCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.moonbit"}}},"const-bind-elem":{"patterns":[{"name":"keyword.operator.rest.moonbit","match":"(\\.\\.\\.)"},{"include":"#bind-default"},{"include":"#const-bind-object"},{"include":"#const-bind-array"},{"name":"variable.other.constant.moonbit"},{"name":"punctuation.separator.comma.moonbit","match":","}]},"const-bind-object":{"begin":"\\{","end":"\\}","patterns":[{"include":"#const-bind-prop"}],"beginCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.moonbit"}}},"const-bind-prop":{"patterns":[{"name":"keyword.operator.rest.moonbit","match":"(\\.\\.\\.)"},{"captures":{"1":{"name":"variable.object.property.moonbit"},"3":{"name":"punctuation.destructuring.moonbit"}}},{"include":"#bind-default"},{"include":"#const-bind-object"},{"include":"#const-bind-array"},{"name":"variable.other.constant.moonbit"},{"name":"punctuation.separator.comma.moonbit","match":","}]},"const-destructure":{"begin":"\\b(const)\\s+(?=[{\\[])","end":"(?\u003c=[}\\]])","patterns":[{"include":"#mut-bind-object"},{"include":"#mut-bind-array"}],"beginCaptures":{"1":{"name":"storage.type.moonbit"}}},"doccomment":{"name":"comment.line.documentation.moonbit","match":"\\/\\/\\/[^\\n]*"},"dotint":{"name":"constant.numeric.integer.tuple-index.moonbit","match":"\\.[0-9]+"},"double":{"name":"constant.numeric.double.moonbit","match":"(?:0[xX][0-9a-fA-F][0-9a-fA-F_]*\\.[0-9a-fA-F_]*(?:[pP][+-]?[0-9][0-9_]*)?(?!\\.)|[0-9][0-9_]*\\.[0-9_]*(?:[eE][+-]?[0-9][0-9_]*)?(?!\\.))"},"exists":{"name":"keyword.operator.quantifier.moonbit","match":"∃"},"expr-scope-keyword-control-flow":{"name":"keyword.control.flow.moonbit","match":"\\b(raise|throw|return)\\b"},"expr-scope-storage-modifier":{"name":"storage.modifier.moonbit","match":"\\b(async)\\b"},"expr-scope-storage-modifier-accessibility":{"name":"storage.modifier.moonbit","match":"\\b(noraise|nobreak)\\b(?=\\s+(?:\\.\\.\\.|[[:alpha:]_\\[*#{\"'0-9]))"},"expression":{"patterns":[{"include":"#doccomment"},{"include":"#linecomment"},{"include":"#regexliteral"},{"include":"#bytes"},{"include":"#string-double"},{"include":"#string-single"},{"include":"#multilineinterp"},{"include":"#multilinestring"},{"include":"#attributename"},{"include":"#type-annotation-return"},{"include":"#object-method-key"},{"include":"#ternary-expression"},{"include":"#fn-definition"},{"include":"#as-typekw"},{"include":"#dotint"},{"include":"#float"},{"include":"#double"},{"include":"#int"},{"include":"#scope-keyword-operator-expression-as"},{"include":"#scope-keyword-operator-expression-is"},{"include":"#scope-keyword-operator-expression-not"},{"include":"#tryquestion"},{"include":"#trybang"},{"include":"#lexmatchquestion"},{"include":"#expr-scope-keyword-control-flow"},{"include":"#scope-keyword-control-conditional"},{"include":"#scope-keyword-control-loop-for"},{"include":"#scope-keyword-control-loop-in"},{"include":"#scope-keyword-control-loop-loop"},{"include":"#scope-keyword-control-loop-while"},{"include":"#scope-keyword-control-loop-break"},{"include":"#scope-keyword-control-loop-continue"},{"include":"#scope-keyword-control-exception"},{"include":"#uident"},{"include":"#prooflabel"},{"include":"#scope-keyword-other"},{"include":"#expr-scope-storage-modifier"},{"include":"#expr-scope-storage-modifier-accessibility"},{"include":"#scope-storage-type-function"},{"include":"#scope-storage-type-function-arrow"},{"include":"#scope-constant-language-boolean-true"},{"include":"#scope-constant-language-boolean-false"},{"include":"#method-call"},{"include":"#known-property-access"},{"include":"#property-access"},{"include":"#forall"},{"include":"#exists"},{"include":"#implies"},{"include":"#operator-overrides"},{"include":"#operators"},{"include":"#scope-punctuation-accessor"},{"include":"#scope-punctuation-separator-colon"},{"include":"#scope-punctuation-bracket-square"},{"include":"#scope-punctuation-separator-comma"},{"include":"#scope-punctuation-bracket-round"},{"include":"#scope-punctuation-bracket-curly"},{"include":"#scope-punctuation-terminator-statement"},{"include":"#punctuation"},{"include":"#function-call"},{"include":"#ident"},{"include":"#packagename"},{"include":"#byte"},{"include":"#char"}]},"float":{"name":"constant.numeric.float.moonbit","match":"(?:0[xX][0-9a-fA-F][0-9a-fA-F_]*\\.[0-9a-fA-F_]*[pP][+-]?[0-9][0-9_]*F|[0-9][0-9_]*\\.[0-9_]*(?:[eE][+-]?[0-9][0-9_]*)?F)"},"fn-definition":{"captures":{"1":{"name":"storage.type.function.moonbit"},"2":{"name":"entity.name.function.moonbit"}}},"forall":{"name":"keyword.operator.quantifier.moonbit","match":"∀"},"function-call":{"captures":{"1":{"name":"entity.name.function.moonbit"}}},"ident":{"name":"variable.other.readwrite.moonbit"},"implies":{"name":"keyword.operator.logical.implication.moonbit","match":"→"},"int":{"name":"constant.numeric.integer.moonbit","match":"(?:0[xX][0-9a-fA-F][0-9a-fA-F_]*|0[oO][0-7][0-7_]*|0[bB][01][01_]*|[0-9][0-9_]*)(?:UL|U|L|N)?"},"known-property-access":{"match":"(?\u003c=[\\w\\]\\)])(\\.)\\s*(\\.|\\.=|\\.\u003c|\\.\u003c=|\\.\\.)\\b","captures":{"1":{"name":"punctuation.accessor.moonbit"},"2":{"name":"keyword.operator.range.moonbit"}}},"let-destructure":{"begin":"\\b(let)\\s+(?=[{\\[])","end":"(?\u003c=[}\\]])","patterns":[{"include":"#mut-bind-object"},{"include":"#mut-bind-array"}],"beginCaptures":{"1":{"name":"storage.type.moonbit"}}},"lexmatchquestion":{"name":"keyword.control.conditional.moonbit","match":"lexmatch\\?"},"linecomment":{"name":"comment.line.double-slash.moonbit","match":"\\/\\/[^\\n]*"},"method-call":{"captures":{"1":{"name":"punctuation.accessor.moonbit"},"2":{"name":"entity.name.function.moonbit"}}},"moonbit-impl-header":{"name":"meta.impl.header.moonbit","begin":"\\b(impl)\\b","end":"(?=\\bwith\\b|[;{]|$)","patterns":[{"name":"keyword.other.impl.moonbit","match":"\\b(for)\\b"},{"include":"#type-inner"},{"include":"$self"}],"beginCaptures":{"1":{"name":"storage.type.moonbit"}}},"moonbit-interpolation-braces":{"begin":"\\{","end":"\\}","patterns":[{"include":"#moonbit-interpolation-braces"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.block.moonbit"}}},"multilineinterp":{"begin":"\\$\\|","end":"$","patterns":[{"name":"meta.embedded.expression.moonbit","begin":"\\\\\\{","end":"\\}","patterns":[{"include":"#moonbit-interpolation-braces"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.moonbit"}}},{"name":"string.quoted.other.multiline.interpolated.moonbit","match":"(?:\\\\(?!\\{)|[^\\\\\\n])+"}],"beginCaptures":{"0":{"name":"string.quoted.other.multiline.interpolated.moonbit punctuation.definition.string.begin.moonbit"}}},"multilinestring":{"name":"string.quoted.other.multiline.moonbit","match":"#\\|[^\\n]*"},"mut-bind-array":{"begin":"\\[","end":"\\]","patterns":[{"include":"#mut-bind-elem"}],"beginCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.moonbit"}}},"mut-bind-elem":{"patterns":[{"name":"keyword.operator.rest.moonbit","match":"(\\.\\.\\.)"},{"include":"#bind-default"},{"include":"#mut-bind-object"},{"include":"#mut-bind-array"},{"name":"variable.other.readwrite.moonbit"},{"name":"punctuation.separator.comma.moonbit","match":","}]},"mut-bind-object":{"begin":"\\{","end":"\\}","patterns":[{"include":"#mut-bind-prop"}],"beginCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.moonbit"}}},"mut-bind-prop":{"patterns":[{"name":"keyword.operator.rest.moonbit","match":"(\\.\\.\\.)"},{"captures":{"1":{"name":"variable.object.property.moonbit"},"3":{"name":"punctuation.destructuring.moonbit"}}},{"include":"#bind-default"},{"include":"#mut-bind-object"},{"include":"#mut-bind-array"},{"name":"variable.other.readwrite.moonbit"},{"name":"punctuation.separator.comma.moonbit","match":","}]},"object-method-key":{"captures":{"1":{"name":"entity.name.function.moonbit"}}},"operator-overrides":{"match":"(\\.\\.\u003c=)|(\u003e=\\.\\.)|(\\.\\.\\.)|(\\.\\.\u003c)|(\\.\\.=)|(\u003e\\.\\.)|(\\.\\.)|(=~)|(\\+=)|(-=)|(\\*=)|(/=)|(%=)|(\\|\u003e)|(\u003c\\|)|(\\|\\|)|(\u0026\u0026)|(==)|(!=)|(\u003c=)|(\u003e=)|(\u003c\u003c)|(\u003e\u003e)|(\u0026)|(\\+)|(=)|(-)|(\\|)|(\\^)|(\u003c)|(\u003e)|(\\*)|(/)|(%)","captures":{"1":{"name":"keyword.operator.range.moonbit"},"10":{"name":"keyword.operator.assignment.moonbit"},"11":{"name":"keyword.operator.assignment.moonbit"},"12":{"name":"keyword.operator.assignment.moonbit"},"13":{"name":"keyword.operator.assignment.moonbit"},"14":{"name":"keyword.operator.pipe.moonbit"},"15":{"name":"keyword.operator.pipe.moonbit"},"16":{"name":"keyword.operator.logical.moonbit"},"17":{"name":"keyword.operator.logical.moonbit"},"18":{"name":"keyword.operator.comparison.moonbit"},"19":{"name":"keyword.operator.comparison.moonbit"},"2":{"name":"keyword.operator.range.moonbit"},"20":{"name":"keyword.operator.comparison.moonbit"},"21":{"name":"keyword.operator.comparison.moonbit"},"22":{"name":"keyword.operator.bitwise.moonbit"},"23":{"name":"keyword.operator.bitwise.moonbit"},"24":{"name":"keyword.operator.bitwise.moonbit"},"25":{"name":"keyword.operator.arithmetic.moonbit"},"26":{"name":"keyword.operator.assignment.moonbit"},"27":{"name":"keyword.operator.arithmetic.moonbit"},"28":{"name":"keyword.operator.bitwise.moonbit"},"29":{"name":"keyword.operator.bitwise.moonbit"},"3":{"name":"keyword.operator.range.moonbit"},"30":{"name":"keyword.operator.comparison.moonbit"},"31":{"name":"keyword.operator.comparison.moonbit"},"32":{"name":"keyword.operator.arithmetic.moonbit"},"33":{"name":"keyword.operator.arithmetic.moonbit"},"34":{"name":"keyword.operator.arithmetic.moonbit"},"4":{"name":"keyword.operator.range.moonbit"},"5":{"name":"keyword.operator.range.moonbit"},"6":{"name":"keyword.operator.range.moonbit"},"7":{"name":"keyword.operator.range.moonbit"},"8":{"name":"keyword.operator.comparison.moonbit"},"9":{"name":"keyword.operator.assignment.moonbit"}}},"operators":{"name":"keyword.operator.moonbit","match":"!"},"packagename":{"name":"entity.name.namespace.moonbit"},"prooflabel":{"name":"keyword.other.proof-label.moonbit","match":"proof_(?:require|ensure|invariant|yield|decrease|reasoning|axiomatized)(?=\\s*:)"},"property-access":{"captures":{"1":{"name":"punctuation.accessor.moonbit"},"2":{"name":"variable.other.property.moonbit"}}},"punctuation":{"name":"punctuation.moonbit","match":"\u003c\\+|\u003c\\?|\\?|~"},"regexliteral":{"begin":"(re)(\")","end":"\"|$","patterns":[{"name":"meta.embedded.expression.moonbit","begin":"\\\\\\{","end":"\\}","patterns":[{"include":"#moonbit-interpolation-braces"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.moonbit"}}},{"name":"constant.character.escape.moonbit","match":"\\\\(?:['\"\\\\nrtbf/ ]|x[0-9a-fA-F]{2}|o[0-3][0-7]{2}|u[0-9a-fA-F]{4}|u\\{[0-9a-fA-F]+\\}|.)"},{"name":"string.regexp.moonbit","match":"(?:\\\\(?!\\{)|[^\"\\\\])+"}],"beginCaptures":{"1":{"name":"string.regexp.moonbit"},"2":{"name":"string.regexp.moonbit punctuation.definition.string.begin.moonbit"}},"endCaptures":{"0":{"name":"string.regexp.moonbit punctuation.definition.string.end.moonbit"}}},"scope-constant-language-boolean-false":{"name":"constant.language.boolean.false.moonbit","match":"\\b(false)\\b"},"scope-constant-language-boolean-true":{"name":"constant.language.boolean.true.moonbit","match":"\\b(true)\\b"},"scope-keyword-control-conditional":{"name":"keyword.control.conditional.moonbit","match":"\\b(if|else|guard|match|lexmatch)\\b"},"scope-keyword-control-exception":{"name":"keyword.control.exception.moonbit","match":"\\b(try|catch)\\b"},"scope-keyword-control-flow":{"name":"keyword.control.flow.moonbit","match":"\\b(raise|throw|return|defer)\\b"},"scope-keyword-control-import":{"name":"keyword.control.import.moonbit","match":"\\b(import|using)\\b"},"scope-keyword-control-loop-break":{"name":"keyword.control.loop.moonbit","match":"\\b(break)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$|\\s*[({\\[\"])"},"scope-keyword-control-loop-continue":{"name":"keyword.control.loop.moonbit","match":"\\b(continue)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$|\\s*[({\\[\"])"},"scope-keyword-control-loop-for":{"name":"keyword.control.loop.moonbit","match":"\\b(for)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$|\\s*[({\\[\"])"},"scope-keyword-control-loop-in":{"name":"keyword.control.loop.moonbit","match":"\\b(in)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$|\\s*[({\\[\"])"},"scope-keyword-control-loop-loop":{"name":"keyword.control.loop.moonbit","match":"\\b(loop)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$|\\s*[({\\[\"])"},"scope-keyword-control-loop-while":{"name":"keyword.control.loop.moonbit","match":"\\b(while)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$|\\s*[({\\[\"])"},"scope-keyword-control-proof":{"name":"keyword.control.proof.moonbit","match":"\\b(proof_assert|proof_let)\\b"},"scope-keyword-operator-expression-as":{"name":"keyword.operator.expression.moonbit","match":"\\b(as)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$)"},"scope-keyword-operator-expression-is":{"name":"keyword.operator.expression.moonbit","match":"\\b(is)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$)"},"scope-keyword-operator-expression-not":{"name":"keyword.operator.expression.moonbit","match":"\\b(not)\\b(?=\\s+[[:alpha:][:digit:]_@\"({\\[]|\\s*$)"},"scope-keyword-other":{"name":"keyword.other.moonbit","match":"\\b(_|Unit|Bool|Byte|Char|Int|Int64|UInt|UInt64|Float|Double|String|Bytes|Array|FixedArray|Option|Result|Json|where|with|all|open|derive|and)\\b"},"scope-punctuation-accessor":{"name":"punctuation.accessor.moonbit","match":"\\."},"scope-punctuation-bracket-curly":{"name":"punctuation.bracket.curly.moonbit","match":"\\{|\\}"},"scope-punctuation-bracket-round":{"name":"punctuation.bracket.round.moonbit","match":"\\(|\\)"},"scope-punctuation-bracket-square":{"name":"punctuation.bracket.square.moonbit","match":"\\[|\\]"},"scope-punctuation-separator-colon":{"name":"punctuation.separator.colon.moonbit","match":":"},"scope-punctuation-separator-comma":{"name":"punctuation.separator.comma.moonbit","match":","},"scope-punctuation-terminator-statement":{"name":"punctuation.terminator.statement.moonbit","match":";"},"scope-storage-modifier":{"name":"storage.modifier.moonbit","match":"\\b(async|pub|priv|readonly|extern)\\b"},"scope-storage-modifier-accessibility":{"name":"storage.modifier.moonbit","match":"\\b(noraise|mut|nobreak|declare)\\b(?=\\s+(?:\\.\\.\\.|[[:alpha:]_\\[*#{\"'0-9]))"},"scope-storage-type":{"name":"storage.type.moonbit","match":"\\b(let|const|letrec|type|struct|enum|extenum|suberror|enumview|typealias|traitalias|fnalias|trait|impl|test)\\b"},"scope-storage-type-function":{"name":"storage.type.function.moonbit","match":"\\b(fn|predicate|lemma)\\b"},"scope-storage-type-function-arrow":{"name":"storage.type.function.arrow.moonbit","match":"-\u003e|=\u003e"},"simple-type":{"name":"entity.name.type.moonbit"},"string-double":{"begin":"\"","end":"\"|$","patterns":[{"name":"meta.embedded.expression.moonbit","begin":"\\\\\\{","end":"\\}","patterns":[{"include":"#moonbit-interpolation-braces"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.moonbit"}}},{"name":"constant.character.escape.moonbit","match":"\\\\(?:['\"\\\\nrtbf/ ]|x[0-9a-fA-F]{2}|o[0-3][0-7]{2}|u[0-9a-fA-F]{4}|u\\{[0-9a-fA-F]+\\}|.)"},{"name":"string.quoted.double.moonbit","match":"[^\"\\\\]+"}],"beginCaptures":{"0":{"name":"string.quoted.double.moonbit punctuation.definition.string.begin.moonbit"}},"endCaptures":{"0":{"name":"string.quoted.double.moonbit punctuation.definition.string.end.moonbit"}}},"string-single":{"name":"string.quoted.single.moonbit","begin":"'","end":"'|$","patterns":[{"name":"constant.character.escape.moonbit","match":"\\\\(?:['\"\\\\nrtbf/ ]|x[0-9a-fA-F]{2}|o[0-3][0-7]{2}|u[0-9a-fA-F]{4}|u\\{[0-9a-fA-F]+\\}|.)"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.moonbit"}}},"ternary-expression":{"name":"meta.ternary-expression.moonbit","begin":"(\\?)(?![:])","end":"(:)","patterns":[{"include":"#ternary-expression"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.operator.ternary.moonbit"}},"endCaptures":{"1":{"name":"keyword.operator.ternary.moonbit"}}},"trybang":{"name":"keyword.control.exception.moonbit","match":"try!"},"tryquestion":{"name":"keyword.control.exception.moonbit","match":"try\\?"},"type-annotation-return":{"name":"meta.type.annotation.return.moonbit","begin":"(?\u003c=\\))(:)","end":"(?=[{;]|=\u003e)","patterns":[{"include":"#type-inner"}],"beginCaptures":{"1":{"name":"keyword.operator.type.annotation.moonbit"}}},"type-annotation-var":{"name":"meta.type.annotation.moonbit","end":"(?=[=;,])|^\\s*(?=if|else|match|guard|lexmatch|for|while|loop|in|break|continue|return|throw|defer|try|catch|import|using|fn|predicate|lemma|let|letrec|const|type|struct|enum|enumview|extenum|trait|impl|typealias|traitalias|fnalias|suberror|test|pub|priv|readonly|extern|mut|declare|nobreak|proof_assert|proof_let)\\b","patterns":[{"include":"#type-inner"}],"beginCaptures":{"1":{"name":"storage.type.moonbit"},"2":{"name":"variable.other.moonbit"},"3":{"name":"keyword.operator.type.annotation.moonbit"}}},"type-inner":{"patterns":[{"include":"#type-object-type"},{"include":"#type-paren"},{"include":"#uident"},{"include":"#doccomment"},{"include":"#linecomment"},{"include":"#scope-constant-language-boolean-true"},{"include":"#scope-constant-language-boolean-false"},{"include":"#scope-keyword-operator-expression-as"},{"include":"#scope-keyword-operator-expression-is"},{"include":"#scope-keyword-operator-expression-not"},{"include":"#simple-type"},{"name":"keyword.operator.type.array.moonbit","match":"\\[\\]"},{"name":"punctuation.separator.comma.moonbit","match":","}]},"type-object-member":{"name":"meta.type.annotation.member.moonbit","end":"(?=[;},])","patterns":[{"include":"#type-inner"}],"beginCaptures":{"1":{"name":"variable.object.property.moonbit"},"2":{"name":"keyword.operator.optional.moonbit"},"3":{"name":"keyword.operator.type.annotation.moonbit"}}},"type-object-type":{"name":"meta.object-type.moonbit","begin":"\\{","end":"\\}","patterns":[{"include":"#type-object-member"},{"include":"#type-inner"},{"name":"punctuation.separator.moonbit","match":";"}],"beginCaptures":{"0":{"name":"punctuation.definition.block.moonbit"}},"endCaptures":{"0":{"name":"punctuation.definition.block.moonbit"}}},"type-paren":{"begin":"\\(","end":"\\)","patterns":[{"include":"#type-inner"}]},"uident":{"name":"entity.name.type.moonbit","match":"[A-Z][A-Za-z0-9_]*\\??"}}}
|
data/grammars/source.move.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"scopeName":"source.move","patterns":[{"include":"#address"},{"include":"#comments"},{"include":"#extend_module"},{"include":"#module"},{"include":"#script"},{"include":"#annotation"},{"include":"#entry"},{"include":"#public-scope"},{"include":"#public"},{"include":"#native"},{"include":"#import"},{"include":"#friend"},{"include":"#const"},{"include":"#struct"},{"include":"#has_ability"},{"include":"#enum"},{"include":"#macro"},{"include":"#fun"},{"include":"#spec"}],"repository":{"=== DEPRECATED_BELOW ===":{},"abilities":{"name":"support.type.ability.move","match":"\\b(store|key|drop|copy)\\b"},"address":{"name":"meta.address_block.move","begin":"\\b(address)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"name":"meta.address.definition.move","begin":"(?\u003c=address)","end":"(?=[{])","patterns":[{"include":"#comments"},{"include":"#address_literal"},{"name":"entity.name.type.move","match":"\\b(\\w+)\\b"}]},{"include":"#module"}],"beginCaptures":{"1":{"name":"storage.modifier.type.address.keyword.move"}}},"annotation":{"name":"support.constant.annotation.move","begin":"#\\[","end":"\\]","patterns":[{"include":"#comments"},{"name":"meta.annotation.name.move","match":"\\b(\\w+)\\s*(?=\\=)"},{"name":"meta.annotation.value.move","begin":"=","end":"(?=[,\\]])","patterns":[{"include":"#literals"}]}]},"as":{"name":"keyword.control.as.move","match":"\\b(as)\\b"},"as-import":{"name":"meta.import.as.move","match":"\\b(as)\\b"},"block":{"name":"meta.block.move","begin":"{","end":"}","patterns":[{"include":"#expr"}]},"block-comments":{"patterns":[{"name":"comment.block.documentation.move","begin":"/\\*[\\*!](?![\\*/])","end":"\\*/"},{"name":"comment.block.move","begin":"/\\*","end":"\\*/"}]},"capitalized":{"name":"entity.name.type.use.move","match":"\\b([A-Z][a-zA-Z_0-9]*)\\b"},"comments":{"name":"meta.comments.move","patterns":[{"include":"#doc-comments"},{"include":"#line-comments"},{"include":"#block-comments"}]},"const":{"name":"meta.const.move","begin":"\\b(const)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#primitives"},{"include":"#literals"},{"include":"#types"},{"name":"constant.other.move","match":"\\b([A-Z][A-Z_0-9]+)\\b"},{"include":"#error_const"}],"beginCaptures":{"1":{"name":"storage.modifier.const.move"}}},"control":{"name":"keyword.control.move","match":"\\b(return|while|loop|if|else|break|continue|abort)\\b"},"doc-comments":{"name":"comment.block.documentation.move","begin":"///","end":"$","patterns":[{"match":"`(\\w+)`","captures":{"1":{"name":"markup.underline.link.move"}}}]},"entry":{"name":"storage.modifier.visibility.entry.move","match":"\\b(entry)\\b"},"enum":{"name":"meta.enum.move","begin":"\\b(enum)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#type_param"},{"name":"entity.name.type.enum.move","match":"\\b[A-Z][a-zA-Z_0-9]*\\b"},{"include":"#has"},{"include":"#abilities"},{"name":"meta.enum.definition.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"name":"entity.name.function.enum.move","match":"\\b([A-Z][A-Za-z_0-9]*)\\b(?=\\s*\\()"},{"name":"entity.name.type.enum.move","match":"\\b([A-Z][A-Za-z_0-9]*)\\b"},{"name":"meta.enum.tuple.move","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]},{"name":"meta.enum.struct.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]}]}],"beginCaptures":{"1":{"name":"keyword.control.enum.move"}}},"error_const":{"name":"variable.other.error.const.move","match":"\\b(E[A-Z][A-Za-z0-9_]*)\\b"},"escaped_identifier":{"name":"variable.language.escaped.move","begin":"`","end":"`"},"expr":{"name":"meta.expression.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#expr_generic"},{"include":"#packed_field"},{"include":"#import"},{"include":"#as"},{"include":"#mut"},{"include":"#let"},{"include":"#types"},{"include":"#literals"},{"include":"#control"},{"include":"#move_copy"},{"include":"#resource_methods"},{"include":"#self_access"},{"include":"#module_access"},{"include":"#label"},{"include":"#macro_call"},{"include":"#local_call"},{"include":"#method_call"},{"include":"#path_access"},{"include":"#match_expression"},{"name":"keyword.operator.macro.dollar.move","match":"\\$(?=[a-z])"},{"name":"variable.other.meta.move","match":"(?\u003c=[$])[a-z][A-Z_0-9a-z]*"},{"name":"constant.other.move","match":"\\b([A-Z][A-Z_]+)\\b"},{"include":"#error_const"},{"name":"entity.name.type.move","match":"\\b([A-Z][a-zA-Z_0-9]*)\\b"},{"include":"#paren"},{"include":"#block"}]},"expr_generic":{"name":"meta.expression.generic.type.move","begin":"\u003c(?=([\\sa-z_,0-9A-Z\u003c\u003e]+\u003e))","end":"\u003e","patterns":[{"include":"#comments"},{"include":"#types"},{"include":"#capitalized"},{"include":"#expr_generic"}]},"extend_module":{"name":"meta.extend_module.move","begin":"\\b(extend)\\b","end":"(?\u003c=[;}])","patterns":[{"include":"#comments"},{"include":"#module"}],"beginCaptures":{"1":{"name":"storage.modifier.type.extend.move"}}},"friend":{"name":"meta.friend.move","begin":"\\b(friend)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#address_literal"},{"name":"entity.name.type.module.move","match":"\\b([a-zA-Z][A-Za-z_0-9]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"fun":{"patterns":[{"include":"#fun_signature"},{"include":"#block"}]},"fun_body":{"name":"meta.fun_body.move","begin":"{","end":"(?\u003c=})","patterns":[{"include":"#expr"}]},"fun_call":{"name":"meta.fun_call.move","begin":"\\b(\\w+)\\s*(?:\u003c[\\w\\s,]+\u003e)?\\s*[(]","end":"[)]","patterns":[{"include":"#comments"},{"include":"#resource_methods"},{"include":"#self_access"},{"include":"#module_access"},{"include":"#move_copy"},{"include":"#literals"},{"include":"#fun_call"},{"include":"#block"},{"include":"#mut"},{"include":"#as"}],"beginCaptures":{"1":{"name":"entity.name.function.call.move"}}},"fun_signature":{"name":"meta.fun_signature.move","begin":"\\b(fun)\\b","end":"(?=[;{])","patterns":[{"include":"#comments"},{"include":"#module_access"},{"include":"#capitalized"},{"include":"#types"},{"include":"#mut"},{"name":"meta.function_name.move","begin":"(?\u003c=\\bfun)","end":"(?=[\u003c(])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"name":"entity.name.function.move","match":"\\b(\\w+)\\b"}]},{"include":"#fun_type_param"},{"name":"meta.parentheses.move","begin":"[(]","end":"[)]","patterns":[{"include":"#comments"},{"include":"#self_access"},{"include":"#expr_generic"},{"include":"#escaped_identifier"},{"include":"#module_access"},{"include":"#capitalized"},{"include":"#types"},{"include":"#mut"}]},{"name":"storage.modifier","match":"\\b(acquires)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.fun.move"}}},"fun_type_param":{"name":"meta.fun_generic_param.move","begin":"\u003c","end":"\u003e","patterns":[{"include":"#comments"},{"include":"#types"},{"include":"#phantom"},{"include":"#capitalized"},{"include":"#module_access"},{"include":"#abilities"}]},"has":{"name":"keyword.control.ability.has.move","match":"\\b(has)\\b"},"has_ability":{"name":"meta.has.ability.move","begin":"(?\u003c=[})])\\s+(has)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#abilities"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"ident":{"name":"meta.identifier.move","match":"\\b([a-zA-Z][A-Z_a-z0-9]*)\\b"},"import":{"name":"meta.import.move","begin":"\\b(use)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#use_fun"},{"include":"#address_literal"},{"include":"#as-import"},{"name":"entity.name.type.move","match":"\\b([A-Z]\\w*)\\b"},{"begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#as-import"},{"name":"entity.name.type.move","match":"\\b([A-Z]\\w*)\\b"}]},{"name":"meta.entity.name.type.module.move","match":"\\b(\\w+)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"inline":{"name":"storage.modifier.visibility.inline.move","match":"\\b(inline)\\b"},"label":{"name":"string.quoted.single.label.move","match":"'[a-z][a-z_0-9]*"},"let":{"name":"keyword.control.move","match":"\\b(let)\\b"},"line-comments":{"name":"comment.line.double-slash.move","begin":"//","end":"$"},"literals":{"name":"meta.literal.move","patterns":[{"name":"support.constant.address.base16.move","match":"@0x[A-F0-9a-f]+"},{"name":"support.constant.address.name.move","match":"@[a-zA-Z][a-zA-Z_0-9]*"},{"name":"constant.numeric.hex.move","match":"0x[_a-fA-F0-9]+(?:u(?:8|16|32|64|128|256))?"},{"name":"constant.numeric.move","match":"(?\u003c!(?:\\w|(?:(?\u003c!\\.)\\.)))[0-9][_0-9]*(?:\\.(?!\\.)(?:[0-9][_0-9]*)?)?(?:[eE][+\\-]?[_0-9]+)?(?:[u](?:8|16|32|64|128|256))?"},{"name":"meta.string.literal.move","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.hex.move","match":"\\\\x[a-fA-F0-9][A-Fa-f0-9]"},{"name":"constant.character.escape.move","match":"\\\\."},{"name":"string.quoted.double.raw.move","match":"."}]},{"name":"meta.vector.literal.ascii.move","begin":"\\bb\"","end":"\"","patterns":[{"name":"constant.character.escape.hex.move","match":"\\\\x[a-fA-F0-9][A-Fa-f0-9]"},{"name":"constant.character.escape.move","match":"\\\\."},{"name":"string.quoted.double.raw.move","match":"."}]},{"name":"meta.vector.literal.hex.move","begin":"x\"","end":"\"","patterns":[{"name":"constant.character.move","match":"[A-Fa-f0-9]+"}]},{"name":"constant.language.boolean.move","match":"\\b(?:true|false)\\b"},{"name":"meta.vector.literal.move","begin":"(\\bvector\\b)\\[","end":"\\]","patterns":[{"include":"#expr"}],"captures":{"1":{"name":"support.type.vector.move"}}}]},"local_call":{"name":"entity.name.function.call.local.move","match":"\\b([a-z][_a-z0-9]*)(?=[\u003c\\(])"},"macro":{"name":"meta.macro.move","begin":"\\b(macro)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"include":"#fun"}],"beginCaptures":{"1":{"name":"keyword.control.macro.move"}}},"macro_call":{"name":"meta.macro.call","match":"(\\b|\\.)([a-z][A-Za-z0-9_]*)(!)","captures":{"2":{"name":"support.function.macro.move"},"3":{"name":"support.function.operator.macro.move"}}},"match_expression":{"name":"meta.match.move","begin":"\\b(match)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#types"},{"name":"meta.match.block.move","begin":"{","end":"}","patterns":[{"name":"operator.match.move","match":"\\b(=\u003e)\\b"},{"include":"#expr"}]},{"include":"#expr"}],"beginCaptures":{"1":{"name":"keyword.control.match.move"}}},"method_call":{"name":"meta.path.call.move","match":"\\.([a-z][_a-z0-9]*)(?=[\u003c\\(])","captures":{"1":{"name":"entity.name.function.call.path.move"}}},"module":{"name":"meta.module.move","begin":"\\b(module)\\b","end":"(?\u003c=[;}])","patterns":[{"include":"#comments"},{"begin":"(?\u003c=\\b(module)\\b)","end":"(?=[;{])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"name":"constant.other.move","begin":"(?\u003c=\\b(module))","end":"(?=[(::){])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"}]},{"name":"entity.name.type.move","begin":"(?\u003c=::)","end":"(?=[\\s;{])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"}]}]},{"name":"meta.module_scope.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#annotation"},{"include":"#entry"},{"include":"#public-scope"},{"include":"#public"},{"include":"#native"},{"include":"#import"},{"include":"#friend"},{"include":"#const"},{"include":"#struct"},{"include":"#has_ability"},{"include":"#enum"},{"include":"#macro"},{"include":"#fun"},{"include":"#spec"}]}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"module_access":{"name":"meta.module_access.move","match":"\\b(\\w+)::(\\w+)\\b","captures":{"1":{"name":"meta.entity.name.type.accessed.module.move"},"2":{"name":"entity.name.function.call.move"}}},"move_copy":{"name":"variable.language.move","match":"\\b(move|copy)\\b"},"mut":{"name":"storage.modifier.mut.move","match":"\\b(mut)\\b"},"native":{"name":"storage.modifier.visibility.native.move","match":"\\b(native)\\b"},"packed_field":{"name":"meta.struct.field.move","match":"[a-z][a-z0-9_]+\\s*:\\s*(?=\\s)"},"paren":{"name":"meta.paren.move","begin":"\\(","end":"\\)","patterns":[{"include":"#expr"}]},"path_access":{"name":"meta.path.access.move","match":"\\.[a-z][_a-z0-9]*\\b"},"phantom":{"name":"keyword.control.phantom.move","match":"\\b(phantom)\\b"},"primitives":{"name":"support.type.primitives.move","match":"\\b(u8|u16|u32|u64|u128|u256|address|bool|signer)\\b"},"public":{"name":"storage.modifier.visibility.public.move","match":"\\b(public)\\b"},"public-scope":{"name":"meta.public.scoped.move","begin":"(?\u003c=\\b(public))\\s*\\(","end":"\\)","patterns":[{"include":"#comments"},{"name":"keyword.control.public.scope.move","match":"\\b(friend|script|package)\\b"}]},"resource_methods":{"name":"support.function.typed.move","match":"\\b(borrow_global|borrow_global_mut|exists|move_from|move_to_sender|move_to)\\b"},"script":{"name":"meta.script.move","begin":"\\b(script)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"name":"meta.script_scope.move","begin":"{","end":"}","patterns":[{"include":"#const"},{"include":"#comments"},{"include":"#import"},{"include":"#fun"}]}],"beginCaptures":{"1":{"name":"storage.modifier.script.move"}}},"self_access":{"name":"meta.self_access.move","match":"\\b(Self)::(\\w+)\\b","captures":{"1":{"name":"variable.language.self.move"},"2":{"name":"entity.name.function.call.move"}}},"spec":{"name":"meta.spec.move","begin":"\\b(spec)\\b","end":"(?\u003c=[;}])","patterns":[{"name":"storage.modifier.spec.target.move","match":"\\b(module|schema|struct|fun)"},{"name":"storage.modifier.spec.define.move","match":"\\b(define)"},{"name":"entity.name.function.move","match":"\\b(\\w+)\\b"},{"begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#spec_block"},{"include":"#spec_types"},{"include":"#spec_define"},{"include":"#spec_keywords"},{"include":"#control"},{"include":"#fun_call"},{"include":"#literals"},{"include":"#types"},{"include":"#let"}]}],"beginCaptures":{"1":{"name":"storage.modifier.spec.move"}}},"spec_block":{"name":"meta.spec_block.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#spec_block"},{"include":"#spec_types"},{"include":"#fun_call"},{"include":"#literals"},{"include":"#control"},{"include":"#types"},{"include":"#let"}]},"spec_define":{"name":"meta.spec_define.move","begin":"\\b(define)\\b","end":"(?=[;{])","patterns":[{"include":"#comments"},{"include":"#spec_types"},{"include":"#types"},{"begin":"(?\u003c=\\bdefine)","end":"(?=[(])","patterns":[{"include":"#comments"},{"name":"entity.name.function.move","match":"\\b(\\w+)\\b"}]}],"beginCaptures":{"1":{"name":"keyword.control.move.spec"}}},"spec_keywords":{"name":"keyword.control.move.spec","match":"\\b(global|pack|unpack|pragma|native|include|ensures|requires|invariant|apply|aborts_if|modifies)\\b"},"spec_types":{"name":"support.type.vector.move","match":"\\b(range|num|vector|bool|u8|u16|u32|u64|u128|u256|address)\\b"},"struct":{"name":"meta.struct.move","begin":"\\b(struct)\\b","end":"(?\u003c=[};\\)])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#has"},{"include":"#abilities"},{"name":"entity.name.type.struct.move","match":"\\b[A-Z][a-zA-Z_0-9]*\\b"},{"name":"meta.struct.paren.move","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#capitalized"},{"include":"#types"}]},{"include":"#type_param"},{"name":"meta.struct.paren.move","begin":"\\(","end":"(?\u003c=[)])","patterns":[{"include":"#comments"},{"include":"#types"}]},{"name":"meta.struct.body.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#self_access"},{"include":"#escaped_identifier"},{"include":"#module_access"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]},{"include":"#has_ability"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"struct_pack":{"name":"meta.struct.pack.move","begin":"(?\u003c=[A-Za-z0-9_\u003e])\\s*{","end":"}","patterns":[{"include":"#comments"}]},"type_param":{"name":"meta.generic_param.move","begin":"\u003c","end":"\u003e","patterns":[{"include":"#comments"},{"include":"#phantom"},{"include":"#capitalized"},{"include":"#module_access"},{"include":"#abilities"}]},"types":{"name":"meta.types.move","patterns":[{"include":"#primitives"},{"include":"#vector"}]},"use_fun":{"name":"meta.import.fun.move","begin":"\\b(fun)\\b","end":"(?=;)","patterns":[{"include":"#comments"},{"name":"keyword.control.as.move","match":"\\b(as)\\b"},{"name":"variable.language.self.use.fun.move","match":"\\b(Self)\\b"},{"name":"entity.name.function.use.move","match":"\\b(_______[a-z][a-z_0-9]+)\\b"},{"include":"#types"},{"include":"#escaped_identifier"},{"include":"#capitalized"}],"beginCaptures":{"1":{"name":"storage.modifier.fun.move"}}},"vector":{"name":"support.type.vector.move","match":"\\b(vector)\\b"}}}
|
|
1
|
+
{"scopeName":"source.move","patterns":[{"include":"#address"},{"include":"#comments"},{"include":"#extend_module"},{"include":"#module"},{"include":"#script"},{"include":"#annotation"},{"include":"#entry"},{"include":"#public-scope"},{"include":"#public"},{"include":"#native"},{"include":"#import"},{"include":"#friend"},{"include":"#const"},{"include":"#struct"},{"include":"#has_ability"},{"include":"#enum"},{"include":"#macro"},{"include":"#fun"},{"include":"#spec"}],"repository":{"=== DEPRECATED_BELOW ===":{},"abilities":{"name":"support.type.ability.move","match":"\\b(store|key|drop|copy)\\b"},"address":{"name":"meta.address_block.move","begin":"\\b(address)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"name":"meta.address.definition.move","begin":"(?\u003c=address)","end":"(?=[{])","patterns":[{"include":"#comments"},{"include":"#address_literal"},{"name":"entity.name.type.move","match":"\\b(\\w+)\\b"}]},{"include":"#module"}],"beginCaptures":{"1":{"name":"storage.modifier.type.address.keyword.move"}}},"address_literal":{"name":"support.constant.address.base16.move","match":"\\b0x[A-Fa-f0-9]+\\b"},"annotation":{"name":"support.constant.annotation.move","begin":"#\\[","end":"\\]","patterns":[{"include":"#comments"},{"name":"meta.annotation.name.move","match":"\\b(\\w+)\\s*(?=\\=)"},{"name":"meta.annotation.value.move","begin":"=","end":"(?=[,\\]])","patterns":[{"include":"#literals"}]}]},"as":{"name":"keyword.control.as.move","match":"\\b(as)\\b"},"as-import":{"name":"meta.import.as.move","match":"\\b(as)\\b"},"block":{"name":"meta.block.move","begin":"{","end":"}","patterns":[{"include":"#expr"}]},"block-comments":{"patterns":[{"name":"comment.block.documentation.move","begin":"/\\*[\\*!](?![\\*/])","end":"\\*/"},{"name":"comment.block.move","begin":"/\\*","end":"\\*/"}]},"capitalized":{"name":"entity.name.type.use.move","match":"\\b([A-Z][a-zA-Z_0-9]*)\\b"},"comments":{"name":"meta.comments.move","patterns":[{"include":"#doc-comments"},{"include":"#line-comments"},{"include":"#block-comments"}]},"const":{"name":"meta.const.move","begin":"\\b(const)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#primitives"},{"include":"#literals"},{"include":"#types"},{"name":"constant.other.move","match":"\\b([A-Z][A-Z_0-9]+)\\b"},{"include":"#error_const"}],"beginCaptures":{"1":{"name":"storage.modifier.const.move"}}},"control":{"name":"keyword.control.move","match":"\\b(return|while|loop|if|else|break|continue|abort)\\b"},"doc-comments":{"name":"comment.block.documentation.move","begin":"///","end":"$","patterns":[{"match":"`(\\w+)`","captures":{"1":{"name":"markup.underline.link.move"}}}]},"entry":{"name":"storage.modifier.visibility.entry.move","match":"\\b(entry)\\b"},"enum":{"name":"meta.enum.move","begin":"\\b(enum)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#type_param"},{"name":"entity.name.type.enum.move","match":"\\b[A-Z][a-zA-Z_0-9]*\\b"},{"include":"#has"},{"include":"#abilities"},{"name":"meta.enum.definition.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"name":"entity.name.function.enum.move","match":"\\b([A-Z][A-Za-z_0-9]*)\\b(?=\\s*\\()"},{"name":"entity.name.type.enum.move","match":"\\b([A-Z][A-Za-z_0-9]*)\\b"},{"name":"meta.enum.tuple.move","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]},{"name":"meta.enum.struct.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]}]}],"beginCaptures":{"1":{"name":"keyword.control.enum.move"}}},"error_const":{"name":"variable.other.error.const.move","match":"\\b(E[A-Z][A-Za-z0-9_]*)\\b"},"escaped_identifier":{"name":"variable.language.escaped.move","begin":"`","end":"`"},"expr":{"name":"meta.expression.move","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#expr_generic"},{"include":"#packed_field"},{"include":"#import"},{"include":"#as"},{"include":"#mut"},{"include":"#let"},{"include":"#types"},{"include":"#literals"},{"include":"#control"},{"include":"#move_copy"},{"include":"#self_access"},{"include":"#module_access"},{"include":"#label"},{"include":"#macro_call"},{"include":"#local_call"},{"include":"#method_call"},{"include":"#path_access"},{"include":"#match_expression"},{"name":"keyword.operator.macro.dollar.move","match":"\\$(?=[a-z])"},{"name":"variable.other.meta.move","match":"(?\u003c=[$])[a-z][A-Z_0-9a-z]*"},{"name":"constant.other.move","match":"\\b([A-Z][A-Z_]+)\\b"},{"include":"#error_const"},{"name":"entity.name.type.move","match":"\\b([A-Z][a-zA-Z_0-9]*)\\b"},{"include":"#paren"},{"include":"#block"}]},"expr_generic":{"name":"meta.expression.generic.type.move","begin":"\u003c(?=([\\sa-z_,0-9A-Z\u003c\u003e]+\u003e))","end":"\u003e","patterns":[{"include":"#comments"},{"include":"#types"},{"include":"#capitalized"},{"include":"#expr_generic"}]},"extend_module":{"name":"meta.extend_module.move","begin":"\\b(extend)\\b","end":"(?\u003c=[;}])","patterns":[{"include":"#comments"},{"include":"#module"}],"beginCaptures":{"1":{"name":"storage.modifier.type.extend.move"}}},"friend":{"name":"meta.friend.move","begin":"\\b(friend)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#address_literal"},{"name":"entity.name.type.module.move","match":"\\b([a-zA-Z][A-Za-z_0-9]*)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"fun":{"patterns":[{"include":"#fun_signature"},{"include":"#block"}]},"fun_body":{"name":"meta.fun_body.move","begin":"{","end":"(?\u003c=})","patterns":[{"include":"#expr"}]},"fun_call":{"name":"meta.fun_call.move","begin":"\\b(\\w+)\\s*(?:\u003c[\\w\\s,]+\u003e)?\\s*[(]","end":"[)]","patterns":[{"include":"#comments"},{"include":"#self_access"},{"include":"#module_access"},{"include":"#move_copy"},{"include":"#literals"},{"include":"#fun_call"},{"include":"#block"},{"include":"#mut"},{"include":"#as"}],"beginCaptures":{"1":{"name":"entity.name.function.call.move"}}},"fun_signature":{"name":"meta.fun_signature.move","begin":"\\b(fun)\\b","end":"(?=[;{])","patterns":[{"include":"#comments"},{"include":"#module_access"},{"include":"#capitalized"},{"include":"#types"},{"include":"#mut"},{"name":"meta.function_name.move","begin":"(?\u003c=\\bfun)","end":"(?=[\u003c(])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"name":"entity.name.function.move","match":"\\b(\\w+)\\b"}]},{"include":"#fun_type_param"},{"name":"meta.parentheses.move","begin":"[(]","end":"[)]","patterns":[{"include":"#comments"},{"include":"#self_access"},{"include":"#expr_generic"},{"include":"#escaped_identifier"},{"include":"#module_access"},{"include":"#capitalized"},{"include":"#types"},{"include":"#mut"}]},{"name":"storage.modifier","match":"\\b(acquires)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.fun.move"}}},"fun_type_param":{"name":"meta.fun_generic_param.move","begin":"\u003c","end":"\u003e","patterns":[{"include":"#comments"},{"include":"#types"},{"include":"#phantom"},{"include":"#capitalized"},{"include":"#module_access"},{"include":"#abilities"}]},"has":{"name":"keyword.control.ability.has.move","match":"\\b(has)\\b"},"has_ability":{"name":"meta.has.ability.move","begin":"(?\u003c=[})])\\s+(has)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#abilities"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"ident":{"name":"meta.identifier.move","match":"\\b([a-zA-Z][A-Z_a-z0-9]*)\\b"},"import":{"name":"meta.import.move","begin":"\\b(use)\\b","end":";","patterns":[{"include":"#comments"},{"include":"#use_fun"},{"include":"#address_literal"},{"include":"#as-import"},{"name":"entity.name.type.move","match":"\\b([A-Z]\\w*)\\b"},{"begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#as-import"},{"name":"entity.name.type.move","match":"\\b([A-Z]\\w*)\\b"}]},{"name":"meta.entity.name.type.module.move","match":"\\b(\\w+)\\b"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"label":{"name":"string.quoted.single.label.move","match":"'[a-z][a-z_0-9]*"},"let":{"name":"keyword.control.move","match":"\\b(let)\\b"},"line-comments":{"name":"comment.line.double-slash.move","begin":"//","end":"$"},"literals":{"name":"meta.literal.move","patterns":[{"name":"support.constant.address.decimal.move","match":"@[0-9][0-9_]*"},{"name":"support.constant.address.base16.move","match":"@0x[A-F0-9a-f]+"},{"name":"support.constant.address.name.move","match":"@[a-zA-Z][a-zA-Z_0-9]*"},{"name":"meta.constant.numeric.hex.move","match":"\\b(0x[_a-fA-F0-9]+)([ui](8|16|32|64|128|256))?\\b","captures":{"1":{"name":"constant.numeric.hex.move"},"2":{"name":"entity.name.type.integer.move"}}},{"name":"meta.constant.numeric.move","match":"\\b([0-9][_0-9]*)([ui](8|16|32|64|128|256))?\\b","captures":{"1":{"name":"constant.numeric.decimal.move"},"2":{"name":"entity.name.type.integer.move"}}},{"name":"meta.string.literal.move","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.hex.move","match":"\\\\x[a-fA-F0-9][A-Fa-f0-9]"},{"name":"constant.character.escape.move","match":"\\\\."},{"name":"string.quoted.double.raw.move","match":"."}]},{"name":"meta.vector.literal.ascii.move","begin":"\\bb\"","end":"\"","patterns":[{"name":"constant.character.escape.hex.move","match":"\\\\x[a-fA-F0-9][A-Fa-f0-9]"},{"name":"constant.character.escape.move","match":"\\\\."},{"name":"string.quoted.double.raw.move","match":"."}]},{"name":"meta.vector.literal.hex.move","begin":"x\"","end":"\"","patterns":[{"name":"constant.character.move","match":"[A-Fa-f0-9]+"}]},{"name":"constant.language.boolean.move","match":"\\b(?:true|false)\\b"},{"name":"meta.vector.literal.move","begin":"(\\bvector\\b)\\[","end":"\\]","patterns":[{"include":"#expr"}],"captures":{"1":{"name":"support.type.vector.move"}}}]},"local_call":{"name":"entity.name.function.call.local.move","match":"\\b([a-z][_a-z0-9]*)(?=[\u003c\\(])"},"macro":{"name":"meta.macro.move","begin":"\\b(macro)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"include":"#fun"}],"beginCaptures":{"1":{"name":"keyword.control.macro.move"}}},"macro_call":{"name":"meta.macro.call","match":"(\\b|\\.)([a-z][A-Za-z0-9_]*)(!)","captures":{"2":{"name":"support.function.macro.move"},"3":{"name":"support.function.operator.macro.move"}}},"match_expression":{"name":"meta.match.move","begin":"\\b(match)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#types"},{"name":"meta.match.block.move","begin":"{","end":"}","patterns":[{"name":"operator.match.move","match":"=\u003e"},{"include":"#expr"}]},{"include":"#expr"}],"beginCaptures":{"1":{"name":"keyword.control.match.move"}}},"method_call":{"name":"meta.path.call.move","match":"\\.([a-z][_a-z0-9]*)(?=[\u003c\\(])","captures":{"1":{"name":"entity.name.function.call.path.move"}}},"module":{"name":"meta.module.move","begin":"\\b(module)\\b","end":"(?\u003c=[;}])","patterns":[{"include":"#comments"},{"begin":"(?\u003c=\\b(module)\\b)","end":"(?=[;{])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"name":"constant.other.move","begin":"(?\u003c=\\b(module))","end":"(?=[(::){])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"}]},{"name":"entity.name.type.move","begin":"(?\u003c=::)","end":"(?=[\\s;{])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"}]}]},{"name":"meta.module_scope.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#annotation"},{"include":"#entry"},{"include":"#public-scope"},{"include":"#public"},{"include":"#native"},{"include":"#import"},{"include":"#friend"},{"include":"#const"},{"include":"#struct"},{"include":"#has_ability"},{"include":"#enum"},{"include":"#macro"},{"include":"#fun"},{"include":"#spec"}]}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"module_access":{"name":"meta.module_access.move","match":"\\b(\\w+)::(\\w+)\\b","captures":{"1":{"name":"meta.entity.name.type.accessed.module.move"},"2":{"name":"entity.name.function.call.move"}}},"move_copy":{"name":"variable.language.move","match":"\\b(move|copy)\\b"},"mut":{"name":"storage.modifier.mut.move","match":"\\b(mut)\\b"},"native":{"name":"storage.modifier.visibility.native.move","match":"\\b(native)\\b"},"packed_field":{"name":"meta.struct.field.move","match":"[a-z][a-z0-9_]+\\s*:\\s*(?=\\s)"},"paren":{"name":"meta.paren.move","begin":"\\(","end":"\\)","patterns":[{"include":"#expr"}]},"path_access":{"name":"meta.path.access.move","match":"\\.[a-z][_a-z0-9]*\\b"},"phantom":{"name":"keyword.control.phantom.move","match":"\\b(phantom)\\b"},"primitives":{"name":"support.type.primitives.move","match":"\\b([ui](8|16|32|64|128|256)|address|bool|signer)\\b"},"public":{"name":"storage.modifier.visibility.public.move","match":"\\b(public)\\b"},"public-scope":{"name":"meta.public.scoped.move","begin":"(?\u003c=\\b(public))\\s*\\(","end":"\\)","patterns":[{"include":"#comments"},{"name":"keyword.control.public.scope.move","match":"\\b(friend|script|package)\\b"}]},"resource_methods":{"name":"support.function.typed.move","match":"\\b(borrow_global|borrow_global_mut|exists|move_from|move_to_sender|move_to)\\b"},"script":{"name":"meta.script.move","begin":"\\b(script)\\b","end":"(?\u003c=})","patterns":[{"include":"#comments"},{"name":"meta.script_scope.move","begin":"{","end":"}","patterns":[{"include":"#const"},{"include":"#comments"},{"include":"#import"},{"include":"#fun"}]}],"beginCaptures":{"1":{"name":"storage.modifier.script.move"}}},"self_access":{"name":"meta.self_access.move","match":"\\b(Self)::(\\w+)\\b","captures":{"1":{"name":"variable.language.self.move"},"2":{"name":"entity.name.function.call.move"}}},"spec":{"name":"meta.spec.move","begin":"\\b(spec)\\b","end":"(?\u003c=[;}])","patterns":[{"name":"storage.modifier.spec.target.move","match":"\\b(module|schema|struct|fun)"},{"name":"storage.modifier.spec.define.move","match":"\\b(define)"},{"name":"entity.name.function.move","match":"\\b(\\w+)\\b"},{"begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#spec_block"},{"include":"#spec_types"},{"include":"#spec_define"},{"include":"#spec_keywords"},{"include":"#control"},{"include":"#fun_call"},{"include":"#literals"},{"include":"#types"},{"include":"#let"}]}],"beginCaptures":{"1":{"name":"storage.modifier.spec.move"}}},"spec_block":{"name":"meta.spec_block.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#spec_block"},{"include":"#spec_types"},{"include":"#fun_call"},{"include":"#literals"},{"include":"#control"},{"include":"#types"},{"include":"#let"}]},"spec_define":{"name":"meta.spec_define.move","begin":"\\b(define)\\b","end":"(?=[;{])","patterns":[{"include":"#comments"},{"include":"#spec_types"},{"include":"#types"},{"begin":"(?\u003c=\\bdefine)","end":"(?=[(])","patterns":[{"include":"#comments"},{"name":"entity.name.function.move","match":"\\b(\\w+)\\b"}]}],"beginCaptures":{"1":{"name":"keyword.control.move.spec"}}},"spec_keywords":{"name":"keyword.control.move.spec","match":"\\b(global|pack|unpack|pragma|native|include|ensures|requires|invariant|apply|aborts_if|modifies)\\b"},"spec_types":{"name":"support.type.vector.move","match":"\\b(range|num|vector|bool|u8|u16|u32|u64|u128|u256|address)\\b"},"struct":{"name":"meta.struct.move","begin":"\\b(struct)\\b","end":"(?\u003c=[};\\)])","patterns":[{"include":"#comments"},{"include":"#escaped_identifier"},{"include":"#has"},{"include":"#abilities"},{"name":"entity.name.type.struct.move","match":"\\b[A-Z][a-zA-Z_0-9]*\\b"},{"name":"meta.struct.paren.move","begin":"\\(","end":"\\)","patterns":[{"include":"#comments"},{"include":"#capitalized"},{"include":"#types"}]},{"include":"#type_param"},{"name":"meta.struct.paren.move","begin":"\\(","end":"(?\u003c=[)])","patterns":[{"include":"#comments"},{"include":"#types"}]},{"name":"meta.struct.body.move","begin":"{","end":"}","patterns":[{"include":"#comments"},{"include":"#self_access"},{"include":"#escaped_identifier"},{"include":"#module_access"},{"include":"#expr_generic"},{"include":"#capitalized"},{"include":"#types"}]},{"include":"#has_ability"}],"beginCaptures":{"1":{"name":"storage.modifier.type.move"}}},"struct_pack":{"name":"meta.struct.pack.move","begin":"(?\u003c=[A-Za-z0-9_\u003e])\\s*{","end":"}","patterns":[{"include":"#comments"}]},"type_param":{"name":"meta.generic_param.move","begin":"\u003c","end":"\u003e","patterns":[{"include":"#comments"},{"include":"#phantom"},{"include":"#capitalized"},{"include":"#module_access"},{"include":"#abilities"}]},"types":{"name":"meta.types.move","patterns":[{"include":"#primitives"},{"include":"#vector"}]},"use_fun":{"name":"meta.import.fun.move","begin":"\\b(fun)\\b","end":"(?=;)","patterns":[{"include":"#comments"},{"name":"keyword.control.as.move","match":"\\b(as)\\b"},{"name":"variable.language.self.use.fun.move","match":"\\b(Self)\\b"},{"name":"meta.entity.name.function.use.move","match":"\\b([a-z][a-z_0-9]*)\\b"},{"include":"#types"},{"include":"#escaped_identifier"},{"include":"#capitalized"}],"beginCaptures":{"1":{"name":"storage.modifier.fun.move"}}},"vector":{"name":"support.type.vector.move","match":"\\b(vector)\\b"}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"OverPy","scopeName":"source.opy","patterns":[{"include":"#comments"},{"include":"#multiline-comments"},{"include":"#macros"},{"include":"#fstrings"},{"include":"#strings"},{"include":"#apos-fstrings"},{"include":"#apos-strings"},{"include":"#string-modifiers"},{"include":"#labels"},{"include":"#keywords"},{"include":"#invalid"},{"include":"#numbers"},{"include":"#enums"},{"include":"#classes"},{"include":"#functions"}],"repository":{"apos-fstrings":{"name":"string.quoted.double.overpy","begin":"((?\u003c=f)|(?\u003c=f\\w)|(?\u003c=f\\w\\w))'","end":"'","patterns":[{"name":"constant.character.escape.overpy","match":"\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;)"},{"name":"constant.character.escape.overpy","contentName":"meta.embedded.overpy","begin":"\\{","end":"[\\}']","patterns":[{"include":"$self"}]}]},"apos-strings":{"name":"string.quoted.double.overpy","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.overpy","match":"(\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;))|(\\{\\d*\\})"}]},"classes":{"patterns":[{"name":"variable","match":"\\b[A-Z][a-z_]\\w*\\b"}]},"comments":{"patterns":[{"name":"comment.line.number-sign","match":"#[^!].*$"}]},"enums":{"patterns":[{"name":"constant","match":"\\b[A-Z_\\d]+\\b"}]},"fstrings":{"name":"string.quoted.double.overpy","begin":"((?\u003c=f)|(?\u003c=f\\w)|(?\u003c=f\\w\\w))\"","end":"\"","patterns":[{"name":"constant.character.escape.overpy","match":"\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;)"},{"name":"constant.character.escape.overpy","contentName":"meta.embedded.overpy","begin":"\\{","end":"[\\}\"]","patterns":[{"include":"$self"}]}]},"functions":{"patterns":[{"name":"entity","match":"\\b\\w+(?=\\()"}]},"invalid":{"patterns":[{"name":"invalid.illegal","match":"\\b(False|True|None|Null|class|finally|is|try|from|nonlocal|with|as|yield|assert|except|raise|disabled|import)\\b"}]},"keywords":{"patterns":[{"name":"keyword","match":"\\b(if|else|elif|do|while|for|return|continue|false|true|null|goto|lambda|pass|del|break|switch|case|default|def|rule|settings|globalvar|playervar|subroutine|unsigned|signed|int|float|bool|enum|const|macro|self)\\b"},{"name":"constant","match":"\\b(and|or|not|in)\\b|((\\+|\\-|\\*\\*|\\/|\\%|\\*|\u003c|\u003e)=?)|(\\=)|\\.|((min|max|\\!)\\=)"},{"name":"entity.name.tag","match":"\\b(eventPlayer|attacker|victim|eventDamage|eventHealing|eventWasCriticalHit|eventWasEnvironment|eventWasHealthPack|eventAbility|eventDirection|healee|healer|hostPlayer|localPlayer|loc|RULE_CONDITION|ruleCondition|RULE_START|__\\w+__|[A-Z]|[A-D][A-Z])\\b"},{"name":"markup.list","match":"\\@\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Event )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Team )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Slot )\\w+\\b"},{"name":"meta.diff.range","match":"(?\u003c=\\@Hero )\\w+\\b"}]},"labels":{"patterns":[{"name":"constant.other.reference.link","match":"^[ \\t]*(?!(do|else|elif|default)\\b)[A-Za-z\\d_]+(?=:)"},{"name":"constant.other.reference.link","match":"(?\u003c=goto )[A-Za-z\\d_]+"}]},"macros":{"name":"markup.heading","begin":"#!","end":"(?\u003c!\\\\)\\n"},"multiline-comments":{"name":"comment.line","begin":"\\/\\*","end":"\\*\\/"},"numbers":{"patterns":[{"name":"constant.numeric","match":"\\b[+-]?((\\d*\\.)?\\d+|0x[0-9a-fA-F]+)\\b"}]},"string-modifiers":{"patterns":[{"name":"entity.name.tag","match":"\\b[a-z]+(?=[\"'])"}]},"strings":{"name":"string.quoted.double.overpy","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.overpy","match":"(\\\\([\\\\\"'nrtzbf]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|\u0026\\w+;))|(\\{\\d*\\})"}]}}}
|
data/grammars/source.pic.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"Pic","scopeName":"source.pic","patterns":[{"include":"#binary"},{"include":"#tags"},{"include":"#embedded-roff"},{"include":"#embedded-latex"},{"include":"#main"}],"repository":{"attributes":{"patterns":[{"name":"entity.other.attribute-name.same-as.pikchr.pic","match":"\\bsame\\s+as\\b"},{"name":"entity.other.attribute-name.$1.pic","match":"(?x)\\b (chop|cw|dashed|diameter|diam|dotted|down|height|ht|invisible |invis|left|radius|rad|right|same|up|width|wid)\\b"},{"name":"entity.other.attribute-name.$1.pic","begin":"\\b(colou?r(?:ed)?|outlined?|shaded|fill)\\b[ \\t]*(?=\\w)","end":"(?=\\S)|(?\u003c=\\S)","patterns":[{"name":"constant.numeric.hexadecimal.hex.pikchr.pic","match":"\\G0[Xx][0-9A-Fa-f]{6}"},{"name":"support.constant.no-colour.pikchr.pic","match":"(?i)\\G(None|Off)\\b"},{"name":"support.constant.colour.pikchr.pic","match":"(?xi)\\G (AliceBlue|AntiqueWhite|Aquamarine|Aqua|Azure|Beige|Bisque|Black|BlanchedAlmond|BlueViolet|Blue|Brown|BurlyWood|CadetBlue |Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGreen|DarkGr[ae]y |DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y |DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro |GhostWhite|Goldenrod|Gold|Gr[ae]y|GreenYellow|Green|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|LavenderBlush|Lavender |LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon |LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|LimeGreen|Lime|Linen|Magenta|Maroon|MediumAquamarine |MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed |MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|OliveDrab|Olive|OrangeRed|Orange|Orchid |PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple |Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|Seashell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow |SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Turquoise|Violet|Wheat|WhiteSmoke|White|YellowGreen|Yellow)\\b"}],"applyEndPatternLast":true},{"name":"entity.other.attribute-name.$1.pikchr.pic","match":"\\b(aligned|big|bold|fit|italic|mono(?:space)?|small|(?:thickness|color|fill)(?!\\s*(?:[-:+/*%=!\u003c\u003e]?=|\u003c|\u003e))|thick|thin)\\b"},{"name":"entity.other.attribute-name.$1.dpic.pic","match":"\\b(scaled)\\b"}]},"backref":{"patterns":[{"name":"variable.language.backreference.pic","match":"\\b(last|(?:\\d*1[1-3]th|\\d*0th|(?:(?!11st)\\d)*1st|\\d*2nd|(?:(?!13rd)\\d*)3rd|\\d*[4-9]th)(?:[ \\t]+last)?)\\b"},{"name":"meta.backreference.computed.pic","match":"((')([^']*)('))(th)","captures":{"1":{"name":"string.quoted.single.pic"},"2":{"name":"punctuation.definition.string.begin.pic"},"3":{"name":"meta.expression.pic","patterns":[{"include":"#main"}]},"4":{"name":"punctuation.definition.string.end.pic"},"5":{"name":"constant.language.ordinal-suffix.pic"}}},{"name":"variable.language.backreference.pikchr.pic","match":"\\b(first|previous)\\b"}]},"binary":{"name":"raw.binary.data","begin":"^(?=.*(?![\\x02-\\x07\\f\\x7F])[\\x00-\\x06\\x{FFFD}])","end":"(?=A)B"},"boolean":{"name":"constant.boolean.$1.dformat.pic","match":"\\b(true|false|on|off)\\b"},"brackets":{"patterns":[{"begin":"\\(","end":"(?=\\))|^(?=\\.P[EF]\\b)","patterns":[{"name":"variable.language.global.pikchr.pic","match":"\\b(?:color|fill|thickness)\\b"},{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.pic"}}},{"begin":"\\[","end":"(?=\\])|^(?=\\.P[EF]\\b)","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.pic"}}},{"begin":"\\{","end":"(?=\\})|^(?=\\.P[EF]\\b)","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.pic"}}}]},"chem":{"patterns":[{"include":"#label"},{"match":"\\b(?:(?:(double|triple|front|back)[ \\t]+)?\\b(bond))\\b","captures":{"1":{"name":"storage.modifier.$1.pic.chem"},"2":{"name":"storage.type.bond.pic.chem"}}},{"match":"(?:\\b(aromatic)[ \\t]+)?\\b(benzene|(?:flat)?ring\\d*)","captures":{"1":{"name":"storage.modifier.aromatic.pic.chem"},"2":{"name":"storage.type.ring.pic.chem"}}},{"name":"storage.modifier.direction.pic.chem","match":"\\b(pointing)\\b"},{"name":"meta.set-size.pic.chem","match":"\\b(size)\\b[ \\t]*(\\d+)","captures":{"1":{"name":"entity.other.attribute-name.size.pic.chem"},"2":{"name":"constant.numeric.parameter.pic.chem"}}},{"name":"keyword.control.branch-point.pic.chem","match":"\\bBP\\b"},{"name":"string.unquoted.group-name.pic.chem","match":"(?=[A-Z])(?!BP)([\\w\\(\\).]+)","captures":{"1":{"patterns":[{"include":"#punctuation"},{"name":"punctuation.delimiter.period.full-stop.chem.pic","match":"\\."}]}}},{"begin":"\\(","end":"(?=\\))|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.chem.pic"}}},{"begin":"\\[","end":"(?=\\])|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.chem.pic"}}},{"begin":"\\{","end":"(?=\\})|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.chem.pic"}}},{"include":"$self"}]},"comment":{"patterns":[{"name":"comment.line.number-sign.pic","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.pic"}}},{"name":"comment.line.double-slash.non-standard.pikchr.pic","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.pic"}}},{"name":"comment.block.non-standard.pikchr.pic","begin":"/\\*","end":"\\*/|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.pic"}}}]},"dformat":{"patterns":[{"include":"#pic-line"},{"name":"meta.format.dformat.pic","begin":"^style\\b","end":"$","patterns":[{"include":"#boolean"},{"name":"constant.language.dformat.pic","match":"(?x)\\b\n(addr|addrdelta|addrht|bitwid|charwid|fill|linedisp\n|linethrutext|recht|recspread|reset|textht)\\b"},{"include":"#number"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.style.dformat.pic"}}},{"name":"meta.record.dformat.pic","begin":"^\\S.*$\\R?","end":"^(?=\\S)","patterns":[{"match":"^([ \\t]+[^:\\s]+:)?(?:(?\u003c=:)|[ \\t]+)(\\S+)\\s+(.*)$","captures":{"0":{"name":"markup.list.unnumbered.dformat.pic"},"1":{"patterns":[{"include":"#main"}]},"2":{"patterns":[{"name":"punctuation.separator.dash.dformat.pic","match":"-"},{"include":"#number"}]},"3":{"patterns":[{"contentName":"source.embedded.eqn.roff","begin":"@","end":"@","patterns":[{"include":"text.roff#eqn"}],"beginCaptures":{"0":{"name":"punctuation.definition.section.begin.eqn"}},"endCaptures":{"0":{"name":"punctuation.definition.section.end.eqn"}}}]}}}],"beginCaptures":{"0":{"name":"markup.bold.heading.dformat.pic"}}}]},"embedded-latex":{"name":"source.embedded.tex.pic","match":"^(?:\\\\\\w|%).*$","captures":{"0":{"patterns":[{"include":"text.tex"}]}}},"embedded-roff":{"begin":"^(?=[.'][ \\t]*(?:\\w|\\\\))","end":"(?\u003c!\\\\)$|(\\\\\".*)$","patterns":[{"include":"text.roff"}],"endCaptures":{"1":{"patterns":[{"include":"text.roff"}]}}},"escaped-newline":{"name":"constant.character.escape.newline.pic","begin":"\\\\$\\R?","end":"^(?:[.'])?","beginCaptures":{"0":{"name":"punctuation.definition.escape.pic"}}},"function-call":{"contentName":"meta.function-call.pic","begin":"\\b(?!\\d)(\\w+)(?=\\()","end":"(?!\\G)","patterns":[{"name":"meta.arguments.pic","begin":"\\G\\(","end":"\\)","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.arguments.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.definition.arguments.end.pic"}}}],"beginCaptures":{"1":{"patterns":[{"include":"#function-name"}]}}},"function-name":{"patterns":[{"name":"support.function.$1.pic","match":"(?:\\G|^)(atan2|cos|exp|int|log|max|min|s?rand|sin|sqrt|sprintf)$"},{"name":"entity.name.function.user-defined.pic","match":"(?:\\G|^)\\S+"}]},"globals":{"patterns":[{"name":"variable.language.global.pic","match":"(?x)\\b\n(arcrad|arrowhead|arrowht|arrowwid|boxht|boxwid|circlerad|dashwid\n|ellipseht|ellipsewid|fillval|lineht|linewid|maxpsht|maxpswid\n|moveht|movewid|scale|textht|textwid)\\b"},{"name":"variable.language.global.pikchr.pic","match":"\\b((?:left|right|top|bottom)?margin|charht|charwid|color|fill|fontscale|thickness)\\b"}]},"grap":{"patterns":[{"name":"variable.language.process-id.pic.grap","match":"\\bpid\\b"},{"name":"keyword.control.then.pic.grap","match":"\\bthen\\b"},{"name":"keyword.operator.pic.grap","match":"\\b(in|out|through)\\b"},{"include":"#comment"},{"include":"#string"},{"include":"#number"},{"include":"#boolean"},{"include":"#punctuation"},{"include":"#operators"},{"include":"#function-call"},{"include":"#macros"},{"include":"#pic-line"},{"name":"keyword.function.pic.grap","match":"(?x)\\b\n(assignment|circle|coord|copy|draw|for|frame|graph|grid|if|label\n|line|new|next|numberlist|pic|plot|print|sh|ticks?)\\b","captures":{"0":{"name":"entity.function.name.pic.grap"}}},{"name":"variable.other.property.$1.pic.grap","match":"(?x)\\b\n(above|arrow|below|bot|bottom|dashed|dotted|down|ht|invis\n|left|log|radius|right|[lr]just|size|solid|top|up|wid|x|y)\\b"},{"name":"support.function.grap.pic","match":"(?x)\\b\n(atan2|cos|exp|int|log|max|min|rand|sin|sqrt|bullet\n|plus|box|star|dot|times|htick|vtick|square|delta)\\b"},{"begin":"\\(","end":"(?=\\))|^(?=\\.P[EF]\\b|^[.']\\s*G2\\b)","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.chem.pic"}}},{"begin":"\\[","end":"(?=\\])|^(?=\\.P[EF]\\b|^[.']\\s*G2\\b)","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.chem.pic"}}},{"begin":"\\{","end":"(?=\\})|^(?=\\.P[EF]\\b|^[.']\\s*G2\\b)","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.chem.pic"}}},{"include":"#keywords"}]},"keywords":{"patterns":[{"name":"keyword.control.$1.pic","match":"\\b(for|do|if|then(?=\\s*\\{)|else)\\b"},{"name":"keyword.operator.$1.pic","match":"\\b(and|at|by|copy|from|reset|sh|then|thru|to|with|of(?:\\s+the\\s+way\\s+between)?)\\b"},{"name":"keyword.operator.$1.dpic.pic","match":"\\b(continue|exec)\\b"},{"name":"keyword.operator.$1.pikchr.pic","match":"\\b(above|below|close|go|heading|until\\s+even\\s+with|vertex\\s+of)\\b"}]},"label":{"match":"([A-Z][^#(\"\\s:]*)(:)","captures":{"1":{"name":"storage.type.label.pic"},"2":{"name":"punctuation.separator.key-value.pic"}}},"macros":{"patterns":[{"name":"meta.function.$1.pic","match":"(define|undef)\\b\\s*(\\w*)","captures":{"1":{"name":"storage.type.function.pic"},"2":{"name":"entity.name.function.pic"}}},{"name":"variable.other.positional.pic","match":"(\\$)\\d+","captures":{"1":{"name":"punctuation.definition.variable"}}},{"begin":"(until)[ \\t]+((\")([^\"]+)(\"))\\s*$\\R?","end":"^[ ]*(\\4)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.until.pic"},"2":{"name":"string.quoted.double.pic"},"3":{"name":"punctuation.definition.string.begin.pic"},"5":{"name":"punctuation.definition.string.end.pic"}},"endCaptures":{"1":{"name":"keyword.control.terminator.pic"}}}]},"main":{"patterns":[{"include":"#comment"},{"include":"#shell-command"},{"include":"#keywords"},{"include":"#positions"},{"include":"#backref"},{"include":"#macros"},{"include":"#string"},{"include":"#number"},{"include":"#escaped-newline"},{"include":"#operators"},{"include":"#brackets"},{"include":"#punctuation"},{"include":"#primitives"},{"include":"#attributes"},{"include":"#globals"},{"include":"#function-call"},{"include":"#label"},{"include":"#name"}]},"name":{"patterns":[{"name":"variable.positional.other.pic","match":"(\\$)(?!0)\\d+\\b","captures":{"1":{"name":"punctuation.definition.variable.pic"}}},{"name":"variable.other.user-defined.non-standard.pikchr.pic","match":"([$@])\\w+","captures":{"1":{"name":"punctuation.definition.variable.pikchr.pic"}}},{"name":"variable.other.user-defined.pic","match":"(?!\\d)\\w+\\b"}]},"number":{"name":"constant.numeric.pic","match":"(?:(?\u003c!\\d)-)?(?:\\d+(?:\\.(?:\\d+|(?=[Ee][-+]?\\d)))?)(?:[Ee][-+]?\\d+)?(?:(%)|(cm|in|mm|pc|pt|px)\\b)?","captures":{"1":{"name":"constant.other.unit.percentage.pikchr.pic"},"2":{"name":"constant.other.unit.$2.pikchr.pic"}}},"operators":{"patterns":[{"name":"keyword.operator.arrow.pic","match":"\u003c-\u003e|\u003c-|-\u003e"},{"name":"keyword.operator.arrow.unicode.pikchr.pic","match":"←|→|↔"},{"name":"keyword.operator.logical.boolean.pic","match":"\u0026\u0026|\\|{2}"},{"name":"keyword.operator.comparison.relational.numeric.pic","match":"[\u003c\u003e]=?"},{"name":"keyword.operator.comparison.relational.boolean.pic","match":"[!=]="},{"name":"keyword.operator.assignment.compound.pic","match":"[-+*/]="},{"name":"keyword.operator.assignment.pic","match":":?="},{"name":"keyword.operator.arithmetic.pic","match":"[-/+*%^]"},{"name":"keyword.operator.logical.not.negation.pic","match":"!"},{"name":"keyword.operator.arrow.html-entity.pikchr.pic","match":"\u0026(?:(?:left|right|leftright)arrow|[lr]arr);","captures":{"0":{"patterns":[{"include":"text.html.basic#character-reference"}]}}}]},"pic-line":{"begin":"^(pic)\\b","end":"$","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.dformat.pic"}}},"positions":{"patterns":[{"name":"entity.other.attribute-name.corner.pic","match":"(?\u003c=\\.)(?:bottom|bot|center|end|left|right|start|top|[ns][ew]|[bcelnrstw])\\b"},{"name":"variable.language.placement.pic","match":"(?x) \\b\n( (?:bottom|center|east|end|north|south|start|top|west|Here)\n| (?:lower|upper) \\s+ (?:left|right)\n| (?:left|right) (?=\\s+ of \\b)\n) \\b"},{"name":"meta.position.pic","match":"(?\u003cbalance\u003e\u003c([^\u003c\u003e]++|\\g\u003cbalance\u003e)*+\u003e){0}\\g\u003cbalance\u003e","captures":{"0":{"patterns":[{"name":"punctuation.definition.position.bracket.angle.begin.pic","match":"\u003c"},{"name":"punctuation.definition.position.bracket.angle.end.pic","match":"\u003e"},{"name":"punctuation.separator.coordinates.comma.pic","match":","},{"include":"#main"}]}}}]},"primitives":{"patterns":[{"name":"storage.type.primitive.$1.pic","match":"\\b(box|line|arrow|circle|ellipse|arc|move|spline|print|command|plot)\\b"},{"name":"storage.type.primitive.$1.pikchr.pic","match":"\\b(oval|cylinder|file|dot|text)\\b"}]},"punctuation":{"patterns":[{"name":"punctuation.definition.bracket.curly.pic","match":"\\}"},{"name":"punctuation.definition.bracket.round.pic","match":"\\)"},{"name":"punctuation.definition.bracket.square.pic","match":"\\]"},{"name":"punctuation.terminator.statement.pic","match":";"},{"name":"punctuation.separator.comma.pic","match":","},{"name":"punctuation.definition.bracket.angle.pic","match":"\u003c|\u003e"},{"name":"punctuation.delimiter.period.full-stop.pic","match":"\\.(?!\\d)"}]},"shell-braces":{"name":"meta.scope.group.shell","begin":"{","end":"}","patterns":[{"include":"#shell-braces"},{"include":"source.shell"}],"beginCaptures":{"0":{"name":"punctuation.definition.group.shell.begin.shell"}},"endCaptures":{"0":{"name":"punctuation.definition.group.shell.end.shell"}}},"shell-command":{"name":"meta.shell-command.pic","begin":"\\b(sh)\\b[ \\t]*","end":"(?!\\G)","patterns":[{"contentName":"source.embedded.shell","begin":"\\G{","end":"}","patterns":[{"include":"#shell-braces"},{"include":"source.shell"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.brace.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.brace.end.pic"}},"applyEndPatternLast":true},{"contentName":"source.embedded.shell","begin":"\\G(.)","end":"\\1","patterns":[{"include":"source.shell"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.arbitrary-delimiter.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.arbitrary-delimiter.end.pic"}}}],"beginCaptures":{"1":{"name":"keyword.operator.$1.pic"}}},"string":{"name":"string.quoted.double.pic","begin":"\"","end":"\"","patterns":[{"include":"#string-escapes"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pic"}}},"string-escapes":{"patterns":[{"name":"constant.character.escape.pic","match":"(\\\\)[\\\\\"]","captures":{"1":{"name":"punctuation.definition.escape.pic"}}},{"match":"(?:[^\"\\\\]|\\\\[^\"])+","captures":{"0":{"patterns":[{"include":"text.roff#escapes"}]}}}]},"tags":{"patterns":[{"name":"invalid.deprecated.function.picture.macro.roff","match":"^([.'])[ \\t]*(PS)[ \\t]*(\u003c)(.*)(?=$|\\\\\")","captures":{"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"},"3":{"name":"punctuation.definition.filename.roff"},"4":{"patterns":[{"include":"text.roff#params"}]}}},{"contentName":"source.embedded.pic","begin":"^([.'])[ \\t]*(PS)\\b([\\d \\t]*(?:#.*)?)?(\\\\[#\"].*)?$","end":"^([.'])[ \\t]*(P[EFY])\\b","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"meta.function.begin.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"},"3":{"patterns":[{"include":"source.pic"}]},"4":{"patterns":[{"include":"text.roff#escapes"}]}},"endCaptures":{"0":{"name":"meta.function.end.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.name.function.roff"}}},{"contentName":"source.embedded.chem.pic","begin":"^([.'])[ \\t]*(cstart)\\b\\s*(\\S.*)?","end":"^([.'])[ \\t]*(cend)\\b","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"meta.function.begin.chemical.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.chem"},"2":{"name":"entity.function.name.roff"},"3":{"name":"invalid.illegal.unexpected-characters.pic.chem"}},"endCaptures":{"0":{"name":"meta.function.end.chemical.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"}}},{"contentName":"source.embedded.dformat.pic","begin":"^([.'])[ \\t]*(begin[ \\t]+dformat)\\b","end":"^([.'])[ \\t]*(end)\\b","patterns":[{"include":"#dformat"}],"beginCaptures":{"0":{"name":"meta.function.begin.dformat.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.dformat"},"2":{"name":"entity.function.name.roff"}},"endCaptures":{"0":{"name":"meta.function.end.dformat.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"}}},{"contentName":"source.embedded.grap.pic","begin":"^([.'])[ \\t]*(G1)\\b(\\s*\\d+)?(\\s*\\\\\".*$)?","end":"^([.'])[ \\t]*(G2)\\b","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"meta.function.begin.graph.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.grap"},"2":{"name":"entity.function.name.roff"},"3":{"name":"constant.numeric.parameter.pic.grap"},"4":{"patterns":[{"include":"text.roff#escapes"}]}},"endCaptures":{"0":{"name":"meta.function.end.graph.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.grap"},"2":{"name":"entity.function.name.roff"}}}]}}}
|
|
1
|
+
{"name":"Pic","scopeName":"source.pic","patterns":[{"include":"#binary"},{"include":"#tags"},{"include":"#embedded-roff"},{"include":"#embedded-latex"},{"include":"#main"}],"repository":{"attributes":{"patterns":[{"name":"entity.other.attribute-name.same-as.pikchr.pic","match":"\\bsame\\s+as\\b"},{"name":"entity.other.attribute-name.$1.pic","match":"(?x)\\b (chop|cw|dashed|diameter|diam|dotted|down|figname|height|ht |invisible|invis|left|radius|rad|right|same|up|width|wid)\\b"},{"name":"entity.other.attribute-name.$1.pic","begin":"\\b(colou?r(?:ed)?|outlined?|shaded|fill)\\b[ \\t]*(?=\\w)","end":"(?=\\S)|(?\u003c=\\S)","patterns":[{"name":"constant.numeric.hexadecimal.hex.pikchr.pic","match":"\\G0[Xx][0-9A-Fa-f]{6}"},{"name":"support.constant.no-colour.pikchr.pic","match":"(?i)\\G(None|Off)\\b"},{"name":"support.constant.colour.pikchr.pic","match":"(?xi)\\G (AliceBlue|AntiqueWhite|Aquamarine|Aqua|Azure|Beige|Bisque|Black|BlanchedAlmond|BlueViolet|Blue|Brown|BurlyWood|CadetBlue |Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenrod|DarkGreen|DarkGr[ae]y |DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y |DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|Firebrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro |GhostWhite|Goldenrod|Gold|Gr[ae]y|GreenYellow|Green|Honeydew|HotPink|IndianRed|Indigo|Ivory|Khaki|LavenderBlush|Lavender |LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenrodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon |LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|LimeGreen|Lime|Linen|Magenta|Maroon|MediumAquamarine |MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed |MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|OliveDrab|Olive|OrangeRed|Orange|Orchid |PaleGoldenrod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|RebeccaPurple |Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|Seashell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow |SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Turquoise|Violet|Wheat|WhiteSmoke|White|YellowGreen|Yellow)\\b"}],"applyEndPatternLast":true},{"name":"entity.other.attribute-name.$1.pikchr.pic","match":"\\b(aligned|big|bold|fit|italic|mono(?:space)?|small|(?:thickness|color|fill)(?!\\s*(?:[-:+/*%=!\u003c\u003e]?=|\u003c|\u003e))|thick|thin)\\b"},{"name":"entity.other.attribute-name.$1.dpic.pic","match":"\\b(scaled)\\b"}]},"backref":{"patterns":[{"name":"variable.language.backreference.pic","match":"\\b(last|(?:\\d*1[1-3]th|\\d*0th|(?:(?!11st)\\d)*1st|\\d*2nd|(?:(?!13rd)\\d*)3rd|\\d*[4-9]th)(?:[ \\t]+last)?)\\b"},{"name":"meta.backreference.computed.pic","match":"((')([^']*)('))(th)","captures":{"1":{"name":"string.quoted.single.pic"},"2":{"name":"punctuation.definition.string.begin.pic"},"3":{"name":"meta.expression.pic","patterns":[{"include":"#main"}]},"4":{"name":"punctuation.definition.string.end.pic"},"5":{"name":"constant.language.ordinal-suffix.pic"}}},{"name":"variable.language.backreference.pikchr.pic","match":"\\b(first|previous)\\b"}]},"binary":{"name":"raw.binary.data","begin":"^(?=.*(?![\\x02-\\x07\\f\\x7F])[\\x00-\\x06\\x{FFFD}])","end":"(?=A)B"},"boolean":{"name":"constant.boolean.$1.dformat.pic","match":"\\b(true|false|on|off)\\b"},"brackets":{"patterns":[{"begin":"\\(","end":"(?=\\))|^(?=\\.P[EF]\\b)","patterns":[{"name":"variable.language.global.pikchr.pic","match":"\\b(?:color|fill|thickness)\\b"},{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.pic"}}},{"begin":"\\[","end":"(?=\\])|^(?=\\.P[EF]\\b)","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.pic"}}},{"begin":"\\{","end":"(?=\\})|^(?=\\.P[EF]\\b)","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.pic"}}}]},"chem":{"patterns":[{"include":"#label"},{"match":"\\b(?:(?:(double|triple|front|back)[ \\t]+)?\\b(bond))\\b","captures":{"1":{"name":"storage.modifier.$1.pic.chem"},"2":{"name":"storage.type.bond.pic.chem"}}},{"match":"(?:\\b(aromatic)[ \\t]+)?\\b(benzene|(?:flat)?ring\\d*)","captures":{"1":{"name":"storage.modifier.aromatic.pic.chem"},"2":{"name":"storage.type.ring.pic.chem"}}},{"name":"storage.modifier.direction.pic.chem","match":"\\b(pointing)\\b"},{"name":"meta.set-size.pic.chem","match":"\\b(size)\\b[ \\t]*(\\d+)","captures":{"1":{"name":"entity.other.attribute-name.size.pic.chem"},"2":{"name":"constant.numeric.parameter.pic.chem"}}},{"name":"keyword.control.branch-point.pic.chem","match":"\\bBP\\b"},{"name":"string.unquoted.group-name.pic.chem","match":"(?=[A-Z])(?!BP)([\\w\\(\\).]+)","captures":{"1":{"patterns":[{"include":"#punctuation"},{"name":"punctuation.delimiter.period.full-stop.chem.pic","match":"\\."}]}}},{"begin":"\\(","end":"(?=\\))|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.chem.pic"}}},{"begin":"\\[","end":"(?=\\])|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.chem.pic"}}},{"begin":"\\{","end":"(?=\\})|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.chem.pic"}}},{"include":"$self"}]},"comment":{"patterns":[{"name":"comment.line.number-sign.pic","begin":"#","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.pic"}}},{"name":"comment.line.double-slash.non-standard.pikchr.pic","begin":"//","end":"$","beginCaptures":{"0":{"name":"punctuation.definition.comment.pic"}}},{"name":"comment.block.non-standard.pikchr.pic","begin":"/\\*","end":"\\*/|^(?=\\.P[EF]\\b|^[.']\\s*cend\\b)","beginCaptures":{"0":{"name":"punctuation.definition.comment.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.pic"}}}]},"dformat":{"patterns":[{"include":"#pic-line"},{"name":"meta.format.dformat.pic","begin":"^style\\b","end":"$","patterns":[{"include":"#boolean"},{"name":"constant.language.dformat.pic","match":"(?x)\\b\n(addr|addrdelta|addrht|bitwid|charwid|fill|linedisp\n|linethrutext|recht|recspread|reset|textht)\\b"},{"include":"#number"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.style.dformat.pic"}}},{"name":"meta.record.dformat.pic","begin":"^\\S.*$\\R?","end":"^(?=\\S)","patterns":[{"match":"^([ \\t]+[^:\\s]+:)?(?:(?\u003c=:)|[ \\t]+)(\\S+)\\s+(.*)$","captures":{"0":{"name":"markup.list.unnumbered.dformat.pic"},"1":{"patterns":[{"include":"#main"}]},"2":{"patterns":[{"name":"punctuation.separator.dash.dformat.pic","match":"-"},{"include":"#number"}]},"3":{"patterns":[{"contentName":"source.embedded.eqn.roff","begin":"@","end":"@","patterns":[{"include":"text.roff#eqn"}],"beginCaptures":{"0":{"name":"punctuation.definition.section.begin.eqn"}},"endCaptures":{"0":{"name":"punctuation.definition.section.end.eqn"}}}]}}}],"beginCaptures":{"0":{"name":"markup.bold.heading.dformat.pic"}}}]},"embedded-latex":{"name":"source.embedded.tex.pic","match":"^(?:\\\\\\w|%).*$","captures":{"0":{"patterns":[{"include":"text.tex"}]}}},"embedded-roff":{"begin":"^(?=[.'][ \\t]*(?:\\w|\\\\))","end":"(?\u003c!\\\\)$|(\\\\\".*)$","patterns":[{"include":"text.roff"}],"endCaptures":{"1":{"patterns":[{"include":"text.roff"}]}}},"escaped-newline":{"name":"constant.character.escape.newline.pic","begin":"\\\\$\\R?","end":"^(?:[.'])?","beginCaptures":{"0":{"name":"punctuation.definition.escape.pic"}}},"function-call":{"contentName":"meta.function-call.pic","begin":"\\b(?!\\d)(\\w+)(?=\\()","end":"(?!\\G)","patterns":[{"name":"meta.arguments.pic","begin":"\\G\\(","end":"\\)","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.arguments.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.definition.arguments.end.pic"}}}],"beginCaptures":{"1":{"patterns":[{"include":"#function-name"}]}}},"function-name":{"patterns":[{"name":"support.function.$1.pic","match":"(?:\\G|^)(atan2|cos|exp|int|log|max|min|s?rand|sin|sqrt|sprintf)$"},{"name":"entity.name.function.user-defined.pic","match":"(?:\\G|^)\\S+"}]},"globals":{"patterns":[{"name":"variable.language.global.pic","match":"(?x)\\b\n(arcrad|arrowhead|arrowht|arrowwid|boxht|boxwid|circlerad|dashwid\n|ellipseht|ellipsewid|fillval|lineht|linewid|maxpsht|maxpswid\n|moveht|movewid|scale|textht|textwid)\\b"},{"name":"variable.language.global.pikchr.pic","match":"\\b((?:left|right|top|bottom)?margin|charht|charwid|color|diamond(?:ht|wid)|fill|fontscale|thickness)\\b"}]},"grap":{"patterns":[{"name":"variable.language.process-id.pic.grap","match":"\\bpid\\b"},{"name":"keyword.control.then.pic.grap","match":"\\bthen\\b"},{"name":"keyword.operator.pic.grap","match":"\\b(in|out|through)\\b"},{"include":"#comment"},{"include":"#string"},{"include":"#number"},{"include":"#boolean"},{"include":"#punctuation"},{"include":"#operators"},{"include":"#function-call"},{"include":"#macros"},{"include":"#pic-line"},{"name":"keyword.function.pic.grap","match":"(?x)\\b\n(assignment|circle|coord|copy|draw|for|frame|graph|grid|if|label\n|line|new|next|numberlist|pic|plot|print|sh|ticks?)\\b","captures":{"0":{"name":"entity.function.name.pic.grap"}}},{"name":"variable.other.property.$1.pic.grap","match":"(?x)\\b\n(above|arrow|below|bot|bottom|dashed|dotted|down|ht|invis\n|left|log|radius|right|[lr]just|size|solid|top|up|wid|x|y)\\b"},{"name":"support.function.grap.pic","match":"(?x)\\b\n(atan2|cos|exp|int|log|max|min|rand|sin|sqrt|bullet\n|plus|box|star|dot|times|htick|vtick|square|delta)\\b"},{"begin":"\\(","end":"(?=\\))|^(?=\\.P[EF]\\b|^[.']\\s*G2\\b)","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.round.chem.pic"}}},{"begin":"\\[","end":"(?=\\])|^(?=\\.P[EF]\\b|^[.']\\s*G2\\b)","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.square.chem.pic"}}},{"begin":"\\{","end":"(?=\\})|^(?=\\.P[EF]\\b|^[.']\\s*G2\\b)","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"punctuation.definition.bracket.curly.chem.pic"}}},{"include":"#keywords"}]},"keywords":{"patterns":[{"name":"keyword.control.$1.pic","match":"\\b(for|do|if|then(?=\\s*\\{)|else)\\b"},{"name":"keyword.operator.$1.pic","match":"\\b(and|at|by|copy|from|reset|sh|then|thru|to|with|of(?:\\s+the\\s+way\\s+between)?)\\b"},{"name":"keyword.operator.$1.dpic.pic","match":"\\b(continue|exec)\\b"},{"name":"keyword.operator.$1.pikchr.pic","match":"\\b(above|below|close|go|heading|until\\s+even\\s+with|vertex\\s+of)\\b"}]},"label":{"match":"([A-Z][^#(\"\\s:]*)(:)","captures":{"1":{"name":"storage.type.label.pic"},"2":{"name":"punctuation.separator.key-value.pic"}}},"macros":{"patterns":[{"name":"meta.function.$1.pic","match":"(define|undef)\\b\\s*(\\w*)","captures":{"1":{"name":"storage.type.function.pic"},"2":{"name":"entity.name.function.pic"}}},{"name":"variable.other.positional.pic","match":"(\\$)\\d+","captures":{"1":{"name":"punctuation.definition.variable"}}},{"begin":"(until)[ \\t]+((\")([^\"]+)(\"))\\s*$\\R?","end":"^[ ]*(\\4)\\b","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.control.until.pic"},"2":{"name":"string.quoted.double.pic"},"3":{"name":"punctuation.definition.string.begin.pic"},"5":{"name":"punctuation.definition.string.end.pic"}},"endCaptures":{"1":{"name":"keyword.control.terminator.pic"}}}]},"main":{"patterns":[{"include":"#comment"},{"include":"#shell-command"},{"include":"#keywords"},{"include":"#positions"},{"include":"#backref"},{"include":"#macros"},{"include":"#string"},{"include":"#number"},{"include":"#escaped-newline"},{"include":"#operators"},{"include":"#brackets"},{"include":"#punctuation"},{"include":"#primitives"},{"include":"#attributes"},{"include":"#globals"},{"include":"#function-call"},{"include":"#label"},{"include":"#name"}]},"name":{"patterns":[{"name":"variable.positional.other.pic","match":"(\\$)(?!0)\\d+\\b","captures":{"1":{"name":"punctuation.definition.variable.pic"}}},{"name":"variable.other.user-defined.non-standard.pikchr.pic","match":"([$@])\\w+","captures":{"1":{"name":"punctuation.definition.variable.pikchr.pic"}}},{"name":"variable.other.user-defined.pic","match":"(?!\\d)\\w+\\b"}]},"number":{"name":"constant.numeric.pic","match":"(?:(?\u003c!\\d)-)?(?:\\d+(?:\\.(?:\\d+|(?=[Ee][-+]?\\d)))?)(?:[Ee][-+]?\\d+)?(?:(%)|(cm|in|mm|pc|pt|px)\\b)?","captures":{"1":{"name":"constant.other.unit.percentage.pikchr.pic"},"2":{"name":"constant.other.unit.$2.pikchr.pic"}}},"operators":{"patterns":[{"name":"keyword.operator.arrow.pic","match":"\u003c-\u003e|\u003c-|-\u003e"},{"name":"keyword.operator.arrow.unicode.pikchr.pic","match":"←|→|↔"},{"name":"keyword.operator.logical.boolean.pic","match":"\u0026\u0026|\\|{2}"},{"name":"keyword.operator.comparison.relational.numeric.pic","match":"[\u003c\u003e]=?"},{"name":"keyword.operator.comparison.relational.boolean.pic","match":"[!=]="},{"name":"keyword.operator.assignment.compound.pic","match":"[-+*/]="},{"name":"keyword.operator.assignment.pic","match":":?="},{"name":"keyword.operator.arithmetic.pic","match":"[-/+*%^]"},{"name":"keyword.operator.logical.not.negation.pic","match":"!"},{"name":"keyword.operator.arrow.html-entity.pikchr.pic","match":"\u0026(?:(?:left|right|leftright)arrow|[lr]arr);","captures":{"0":{"patterns":[{"include":"text.html.basic#character-reference"}]}}}]},"pic-line":{"begin":"^(pic)\\b","end":"$","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.dformat.pic"}}},"positions":{"patterns":[{"name":"entity.other.attribute-name.corner.pic","match":"(?\u003c=\\.)(?:bottom|bot|center|end|left|right|start|top|[ns][ew]|[bcelnrstw])\\b"},{"name":"variable.language.placement.pic","match":"(?x) \\b\n( (?:bottom|center|east|end|north|south|start|top|west|Here)\n| (?:lower|upper) \\s+ (?:left|right)\n| (?:left|right) (?=\\s+ of \\b)\n) \\b"},{"name":"meta.position.pic","match":"(?\u003cbalance\u003e\u003c([^\u003c\u003e]++|\\g\u003cbalance\u003e)*+\u003e){0}\\g\u003cbalance\u003e","captures":{"0":{"patterns":[{"name":"punctuation.definition.position.bracket.angle.begin.pic","match":"\u003c"},{"name":"punctuation.definition.position.bracket.angle.end.pic","match":"\u003e"},{"name":"punctuation.separator.coordinates.comma.pic","match":","},{"include":"#main"}]}}}]},"primitives":{"patterns":[{"name":"storage.type.primitive.$1.pic","match":"\\b(box|line|arrow|circle|ellipse|arc|move|spline|polygon|print|command|plot)\\b"},{"name":"storage.type.primitive.$1.pikchr.pic","match":"\\b(oval|diamond|cylinder|file|dot|text)\\b"}]},"punctuation":{"patterns":[{"name":"punctuation.definition.bracket.curly.pic","match":"\\}"},{"name":"punctuation.definition.bracket.round.pic","match":"\\)"},{"name":"punctuation.definition.bracket.square.pic","match":"\\]"},{"name":"punctuation.terminator.statement.pic","match":";"},{"name":"punctuation.separator.comma.pic","match":","},{"name":"punctuation.definition.bracket.angle.pic","match":"\u003c|\u003e"},{"name":"punctuation.delimiter.period.full-stop.pic","match":"\\.(?!\\d)"}]},"shell-braces":{"name":"meta.scope.group.shell","begin":"{","end":"}","patterns":[{"include":"#shell-braces"},{"include":"source.shell"}],"beginCaptures":{"0":{"name":"punctuation.definition.group.shell.begin.shell"}},"endCaptures":{"0":{"name":"punctuation.definition.group.shell.end.shell"}}},"shell-command":{"name":"meta.shell-command.pic","begin":"\\b(sh)\\b[ \\t]*","end":"(?!\\G)","patterns":[{"contentName":"source.embedded.shell","begin":"\\G{","end":"}","patterns":[{"include":"#shell-braces"},{"include":"source.shell"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.brace.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.brace.end.pic"}},"applyEndPatternLast":true},{"contentName":"source.embedded.shell","begin":"\\G(.)","end":"\\1","patterns":[{"include":"source.shell"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.arbitrary-delimiter.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.balanced-text.arbitrary-delimiter.end.pic"}}}],"beginCaptures":{"1":{"name":"keyword.operator.$1.pic"}}},"string":{"name":"string.quoted.double.pic","begin":"\"","end":"\"","patterns":[{"include":"#string-escapes"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pic"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pic"}}},"string-escapes":{"patterns":[{"name":"constant.character.escape.pic","match":"(\\\\)[\\\\\"]","captures":{"1":{"name":"punctuation.definition.escape.pic"}}},{"match":"(?:[^\"\\\\]|\\\\[^\"])+","captures":{"0":{"patterns":[{"include":"text.roff#escapes"}]}}}]},"tags":{"patterns":[{"name":"invalid.deprecated.function.picture.macro.roff","match":"^([.'])[ \\t]*(PS)[ \\t]*(\u003c)(.*)(?=$|\\\\\")","captures":{"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"},"3":{"name":"punctuation.definition.filename.roff"},"4":{"patterns":[{"include":"text.roff#params"}]}}},{"contentName":"source.embedded.pic","begin":"^([.'])[ \\t]*(PS)\\b([\\d \\t]*(?:#.*)?)?(\\\\[#\"].*)?$","end":"^([.'])[ \\t]*(P[EFY])\\b","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"meta.function.begin.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"},"3":{"patterns":[{"include":"source.pic"}]},"4":{"patterns":[{"include":"text.roff#escapes"}]}},"endCaptures":{"0":{"name":"meta.function.end.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.name.function.roff"}}},{"contentName":"source.embedded.chem.pic","begin":"^([.'])[ \\t]*(cstart)\\b\\s*(\\S.*)?","end":"^([.'])[ \\t]*(cend)\\b","patterns":[{"include":"#chem"}],"beginCaptures":{"0":{"name":"meta.function.begin.chemical.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.chem"},"2":{"name":"entity.function.name.roff"},"3":{"name":"invalid.illegal.unexpected-characters.pic.chem"}},"endCaptures":{"0":{"name":"meta.function.end.chemical.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"}}},{"contentName":"source.embedded.dformat.pic","begin":"^([.'])[ \\t]*(begin[ \\t]+dformat)\\b","end":"^([.'])[ \\t]*(end)\\b","patterns":[{"include":"#dformat"}],"beginCaptures":{"0":{"name":"meta.function.begin.dformat.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.dformat"},"2":{"name":"entity.function.name.roff"}},"endCaptures":{"0":{"name":"meta.function.end.dformat.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.roff"},"2":{"name":"entity.function.name.roff"}}},{"contentName":"source.embedded.grap.pic","begin":"^([.'])[ \\t]*(G1)\\b(\\s*\\d+)?(\\s*\\\\\".*$)?","end":"^([.'])[ \\t]*(G2)\\b","patterns":[{"include":"#grap"}],"beginCaptures":{"0":{"name":"meta.function.begin.graph.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.grap"},"2":{"name":"entity.function.name.roff"},"3":{"name":"constant.numeric.parameter.pic.grap"},"4":{"patterns":[{"include":"text.roff#escapes"}]}},"endCaptures":{"0":{"name":"meta.function.end.graph.picture.section.macro.roff"},"1":{"name":"punctuation.definition.macro.pic.grap"},"2":{"name":"entity.function.name.roff"}}}]}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"Package Config","scopeName":"source.pkgconf","patterns":[{"include":"#main"}],"repository":{"comments":{"patterns":[{"name":"comment.block.c.pkgconf","begin":"^\\s*(/\\*)","end":"\\*/","beginCaptures":{"1":{"name":"punctuation.definition.comment.begin.c.pkgconf"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.end.c.pkgconf"}}},{"include":"etc#comment"}]},"escape":{"patterns":[{"name":"constant.character.escape.backslash.pkgconf","match":"(\\\\)\\\\","captures":{"1":{"name":"punctuation.definition.escape.backslash.pkgconf"}}},{"name":"constant.character.escape.comment.pkgconf","match":"(\\\\)#","captures":{"1":{"name":"punctuation.definition.escape.backslash.pkgconf"}}},{"name":"constant.character.escape.whitespace.pkgconf","match":"(\\\\)[ \\t]","captures":{"1":{"name":"punctuation.definition.escape.backslash.pkgconf"}}},{"name":"meta.line-continuation.pkgconf","begin":"(\\\\)$\\s*","end":"^[ \\t]*","beginCaptures":{"0":{"name":"constant.character.escape.newline.pkgconf"},"1":{"name":"punctuation.definition.escape.backslash.pkgconf"}}}]},"interpolation":{"patterns":[{"name":"constant.character.escape.interpolation.pkgconf","match":"\\$\\${?"},{"name":"variable.other.bracket.shell.pkgconf","match":"((\\$\\{))[^}]+((\\}))","captures":{"1":{"name":"punctuation.definition.variable.shell.begin.pkgconf"},"2":{"name":"brackethighlighter.curly"},"3":{"name":"punctuation.definition.variable.shell.end.pkgconf"},"4":{"name":"brackethighlighter.curly"}}}]},"keyword":{"patterns":[{"name":"meta.field.${2:/downcase}.pkgconf","contentName":"string.unquoted.pkgconf","begin":"(?i)^(\\s*)(Name|Description)(:)[ \\t]*","end":"^(?!\\1\\s+\\S)|(?=\\s*#)","patterns":[{"include":"#keywordInnards"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.indent.pkgconf"},"2":{"name":"variable.keyword.field-name.pkgconf"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"meta.field.${2:/downcase}.pkgconf","contentName":"constant.other.reference.link","begin":"(?i)^(\\s*)(URL|Source|Licen[cs]e\\.file)(:)[ \\t]*","end":"^(?!\\1\\s+\\S)|(?=\\s*#)","patterns":[{"include":"#keywordInnards"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.indent.pkgconf"},"2":{"name":"variable.keyword.field-name.pkgconf"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"meta.field.maintainer.pkgconf","begin":"(?i)^(\\s*)(Maintainer)(:)[ \\t]*","end":"^(?!\\1\\s+\\S)|(?=\\s*#)","patterns":[{"begin":"\\G([^\\s\u003c\u003e][^\u003c\u003e]*)\\s+(?=\u003c)","end":"(?!\\G)","patterns":[{"match":"\\G((\u003c))([^@\u003e]+@[^@\u003e]+)((\u003e))","captures":{"1":{"name":"punctuation.definition.bracket.angle.ascii.begin.pkgconf"},"2":{"name":"brackethighlighter.angle"},"3":{"patterns":[{"include":"etc#emailUnquoted"}]},"4":{"name":"punctuation.definition.bracket.angle.ascii.end.pkgconf"},"5":{"name":"brackethighlighter.angle"}}},{"match":"\\G((\u003c))([^\u003c\u003e]+)((\u003e))","captures":{"1":{"name":"punctuation.definition.bracket.angle.ascii.begin.pkgconf"},"2":{"name":"brackethighlighter.angle"},"3":{"name":"constant.other.reference.link"},"4":{"name":"punctuation.definition.bracket.angle.ascii.end.pkgconf"},"5":{"name":"brackethighlighter.angle"}}}],"beginCaptures":{"1":{"name":"entity.name.author.pkgconf","patterns":[{"include":"#escape"},{"include":"#interpolation"}]}},"applyEndPatternLast":true}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.indent.pkgconf"},"2":{"name":"variable.keyword.field-name.pkgconf"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"meta.field.version.pkgconf","contentName":"constant.other.version-string.pkgconf","begin":"(?i)^(\\s*)(Version)(:)[ \\t]*","end":"^(?!\\1\\s+\\S)|(?=\\s*#)","patterns":[{"include":"#keywordInnards"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.indent.pkgconf"},"2":{"name":"variable.keyword.field-name.pkgconf"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"meta.field.${2:/downcase}.pkgconf","begin":"(?i)^(\\s*)(Conflicts|Provides|Requires(?:\\.(?:internal|shared|private))?)(:)[ \\t]*","end":"^(?!\\1\\s+\\S)|(?=\\s*#)","patterns":[{"name":"meta.package-spec.pkgconf","match":"\\s*([-\\w+./]+)(?:\\s*(\u003e=|\u003c=|==?|!=|\u003c|\u003e)\\s*(\\d+(?:\\.\\d+)*[-\\w]*))?","captures":{"1":{"name":"entity.name.package.pkgconf"},"2":{"patterns":[{"include":"etc#opCmp"},{"name":"keyword.operator.logical.comparison.equal-to.equals.pkgconf","match":"(?:^|\\G)=$"}]},"3":{"name":"constant.other.version-string.pkgconf"}}},{"include":"etc#comma"},{"include":"#keywordInnards"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.indent.pkgconf"},"2":{"name":"variable.keyword.field-name.pkgconf"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"meta.field.${2:/downcase}.pkgconf","begin":"(?i)^(\\s*)((?:Cflags|Libs)(?:\\.(?:internal|shared|private))?)(:)[ \\t]*","end":"^(?!\\1\\s+\\S)|(?=\\s*#)","patterns":[{"name":"meta.flag.pkgconf","match":"((-)W)\\s*(a|l|p)(?=,)((?:[^#\\s\\\\]|\\\\.)++)","captures":{"1":{"name":"storage.type.flag.pkgconf"},"2":{"name":"punctuation.definition.option.name.dash.pkgconf"},"3":{"name":"constant.other.bareword.pkgconf"},"4":{"patterns":[{"include":"etc#comma"},{"name":"storage.type.flag.pkgconf","match":"(?:^|(?\u003c=,))(--?)((?:[^#,\\s\\\\]|\\\\.)++)","captures":{"1":{"name":"punctuation.definition.option.name.dash.pkgconf"},"2":{"patterns":[{"include":"#escape"},{"include":"#interpolation"}]}}}]}}},{"name":"meta.flag.pkgconf","match":"((-)(?:framework(?=\\s)|no(?=(?:\\s*|-)\\w)|\\w))\\s*((?:[^#\\s\\\\]|\\\\.)++)?","captures":{"1":{"name":"storage.type.flag.pkgconf"},"2":{"name":"punctuation.definition.option.name.dash.pkgconf"},"3":{"name":"constant.other.bareword.pkgconf","patterns":[{"include":"#escape"},{"include":"#interpolation"}]}}},{"name":"constant.other.bareword.pkgconf","match":"(?:[^#\\s\\\\]|\\\\.)++","captures":{"0":{"patterns":[{"include":"#escape"},{"include":"#interpolation"}]}}},{"include":"#escape"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.indent.pkgconf"},"2":{"name":"variable.keyword.field-name.pkgconf"},"3":{"patterns":[{"include":"etc#kolon"}]}}},{"name":"meta.field.other.pkgconf","contentName":"string.unquoted.field.pkgconf","begin":"^(\\s*)([^\\s:]+)(:)[ \\t]*","end":"^(?!\\1\\s+\\S)|(?=\\s*#)","patterns":[{"include":"#keywordInnards"}],"beginCaptures":{"1":{"name":"punctuation.whitespace.leading.indent.pkgconf"},"2":{"name":"variable.keyword.field-name.pkgconf"},"3":{"patterns":[{"include":"etc#kolon"}]}}}]},"keywordInnards":{"patterns":[{"include":"#escape"},{"include":"#interpolation"}]},"main":{"patterns":[{"include":"#comments"},{"include":"#variable"},{"include":"#keyword"}]},"variable":{"name":"meta.variable.pkgconf","contentName":"string.unquoted.pkgconf","begin":"^(?!\\d)(\\w+)\\s*(=)[ \\t]*","end":"(?=\\s*(?:$|#))","patterns":[{"include":"#escape"},{"include":"#interpolation"}],"beginCaptures":{"1":{"name":"variable.assignment.pkgconf"},"2":{"patterns":[{"include":"etc#eql"}]}}}}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"name":"powerquery","scopeName":"source.powerquery","patterns":[{"include":"#Noise"},{"include":"#LiteralExpression"},{"include":"#Keywords"},{"include":"#ImplicitVariable"},{"include":"#IntrinsicVariable"},{"include":"#Operators"},{"include":"#DotOperators"},{"include":"#TypeName"},{"include":"#RecordExpression"},{"include":"#Punctuation"},{"include":"#QuotedIdentifier"},{"include":"#Identifier"}],"repository":{"BlockComment":{"name":"comment.block.powerquery","begin":"/\\*","end":"\\*/"},"DecimalNumber":{"name":"constant.numeric.decimal.powerquery","match":"(?\u003c![\\d\\w])(\\d*\\.\\d+)\\b"},"DotOperators":{"match":"(?\u003c!\\.)(?:(\\.\\.\\.)|(\\.\\.))(?!\\.)","captures":{"1":{"name":"keyword.operator.ellipsis.powerquery"},"2":{"name":"keyword.operator.list.powerquery"}}},"EscapeSequence":{"name":"constant.character.escapesequence.powerquery","begin":"#\\(","end":"\\)","patterns":[{"match":"(#|[[:xdigit:]]{4}|[[:xdigit:]]{8}|cr|lf|tab)(?:,(#|[[:xdigit:]]{4}|[[:xdigit:]]{8}|cr|lf|tab))*"},{"name":"invalid.illegal.escapesequence.powerquery","match":"[^\\)]"}],"beginCaptures":{"0":{"name":"punctuation.definition.escapesequence.begin.powerquery"}},"endCaptures":{"0":{"name":"punctuation.definition.escapesequence.end.powerquery"}}},"FloatNumber":{"name":"constant.numeric.float.powerquery","match":"(\\d*\\.)?\\d+(e|E)(\\+|-)?\\d+"},"HexNumber":{"name":"constant.numeric.integer.hexadecimal.powerquery","match":"0(x|X)[[:xdigit:]]+"},"Identifier":{"match":"(?x:(?\u003c![\\._\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Nd}\\p{Pc}\\p{Mn}\\p{Mc}\\p{Cf}])(@?)([_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}][_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Nd}\\p{Pc}\\p{Mn}\\p{Mc}\\p{Cf}]*(?:\\.[_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}][_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Nd}\\p{Pc}\\p{Mn}\\p{Mc}\\p{Cf}])*)\\b)","captures":{"1":{"name":"keyword.operator.inclusiveidentifier.powerquery"},"2":{"name":"entity.name.powerquery"}}},"ImplicitVariable":{"name":"keyword.operator.implicitvariable.powerquery","match":"\\b_\\b"},"InclusiveIdentifier":{"match":"@","captures":{"0":{"name":"inclusiveidentifier.powerquery"}}},"IntNumber":{"match":"\\b(\\d+)\\b","captures":{"1":{"name":"constant.numeric.integer.powerquery"}}},"IntrinsicVariable":{"match":"(?\u003c![\\d\\w])(#sections|#shared)\\b","captures":{"1":{"name":"constant.language.intrinsicvariable.powerquery"}}},"Keywords":{"match":"\\b(?:(and|or|not)|(if|then|else)|(try|otherwise)|(as|each|in|is|let|meta|type|error)|(section|shared))\\b","captures":{"1":{"name":"keyword.operator.word.logical.powerquery"},"2":{"name":"keyword.control.conditional.powerquery"},"3":{"name":"keyword.control.exception.powerquery"},"4":{"name":"keyword.other.powerquery"},"5":{"name":"keyword.powerquery"}}},"LineComment":{"name":"comment.line.double-slash.powerquery","match":"//.*"},"LiteralExpression":{"patterns":[{"include":"#String"},{"include":"#NumericConstant"},{"include":"#LogicalConstant"},{"include":"#NullConstant"},{"include":"#FloatNumber"},{"include":"#DecimalNumber"},{"include":"#HexNumber"},{"include":"#IntNumber"}]},"LogicalConstant":{"name":"constant.language.logical.powerquery","match":"\\b(true|false)\\b"},"Noise":{"patterns":[{"include":"#BlockComment"},{"include":"#LineComment"},{"include":"#Whitespace"}]},"NullConstant":{"name":"constant.language.null.powerquery","match":"\\b(null)\\b"},"NumericConstant":{"match":"(?\u003c![\\d\\w])(#infinity|#nan)\\b","captures":{"1":{"name":"constant.language.numeric.float.powerquery"}}},"Operators":{"match":"(=\u003e)|(=)|(\u003c\u003e|\u003c|\u003e|\u003c=|\u003e=)|(\u0026)|(\\+|-|\\*|\\/)|(!)|(\\?)","captures":{"1":{"name":"keyword.operator.function.powerquery"},"2":{"name":"keyword.operator.assignment-or-comparison.powerquery"},"3":{"name":"keyword.operator.comparison.powerquery"},"4":{"name":"keyword.operator.combination.powerquery"},"5":{"name":"keyword.operator.arithmetic.powerquery"},"6":{"name":"keyword.operator.sectionaccess.powerquery"},"7":{"name":"keyword.operator.optional.powerquery"}}},"Punctuation":{"match":"(,)|(\\()|(\\))|({)|(})","captures":{"1":{"name":"punctuation.separator.powerquery"},"2":{"name":"punctuation.section.parens.begin.powerquery"},"3":{"name":"punctuation.section.parens.end.powerquery"},"4":{"name":"punctuation.section.braces.begin.powerquery"},"5":{"name":"punctuation.section.braces.end.powerquery"}}},"QuotedIdentifier":{"name":"entity.name.powerquery","begin":"#\"","end":"\"(?!\")","patterns":[{"name":"constant.character.escape.quote.powerquery","match":"\"\""},{"include":"#EscapeSequence"}],"beginCaptures":{"0":{"name":"punctuation.definition.quotedidentifier.begin.powerquery"}},"endCaptures":{"0":{"name":"punctuation.definition.quotedidentifier.end.powerquery"}}},"RecordExpression":{"contentName":"meta.recordexpression.powerquery","begin":"\\[","end":"\\]","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.powerquery"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.powerquery"}}},"String":{"name":"string.quoted.double.powerquery","begin":"\"","end":"\"(?!\")","patterns":[{"name":"constant.character.escape.quote.powerquery","match":"\"\""},{"include":"#EscapeSequence"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powerquery"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powerquery"}}},"TypeName":{"match":"\\b(?:(optional|nullable)|(action|any|anynonnull|binary|date|datetime|datetimezone|duration|function|list|logical|none|null|number|record|table|text|type))\\b","captures":{"1":{"name":"storage.modifier.powerquery"},"2":{"name":"storage.type.powerquery"}}},"Whitespace":{"match":"\\s+"}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"PowerShell","scopeName":"source.powershell","patterns":[{"name":"comment.block.powershell","begin":"\u003c#","end":"#\u003e","patterns":[{"include":"#commentEmbeddedDocs"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.powershell"}}},{"name":"keyword.operator.redirection.powershell","match":"[2-6]\u003e\u00261|\u003e\u003e|\u003e|\u003c\u003c|\u003c|\u003e|\u003e\\||[1-6]\u003e|[1-6]\u003e\u003e"},{"include":"#commands"},{"include":"#commentLine"},{"include":"#variable"},{"include":"#subexpression"},{"include":"#function"},{"include":"#attribute"},{"include":"#UsingDirective"},{"include":"#type"},{"include":"#hashtable"},{"include":"#doubleQuotedString"},{"include":"#scriptblock"},{"include":"#doubleQuotedStringEscapes"},{"name":"string.quoted.single.powershell","begin":"['\\x{2018}-\\x{201B}]","end":"['\\x{2018}-\\x{201B}]","patterns":[{"name":"constant.character.escape.powershell","match":"['\\x{2018}-\\x{201B}]{2}"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"applyEndPatternLast":true},{"name":"string.quoted.double.heredoc.powershell","begin":"(@[\"\\x{201C}-\\x{201E}])\\s*$","end":"^[\"\\x{201C}-\\x{201E}]@","patterns":[{"include":"#variableNoProperty"},{"include":"#doubleQuotedStringEscapes"},{"include":"#interpolation"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}}},{"name":"string.quoted.single.heredoc.powershell","begin":"(@['\\x{2018}-\\x{201B}])\\s*$","end":"^['\\x{2018}-\\x{201B}]@","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}}},{"include":"#numericConstant"},{"name":"meta.group.array-expression.powershell","begin":"(@)(\\()","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.array.begin.powershell"},"2":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}},{"name":"meta.group.complex.subexpression.powershell","begin":"((\\$))(\\()","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.substatement.powershell"},"2":{"name":"punctuation.definition.subexpression.powershell"},"3":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}},{"name":"support.function.powershell","match":"(\\b(([A-Za-z0-9\\-_\\.]+)\\.(?i:exe|com|cmd|bat))\\b)"},{"name":"keyword.control.powershell","match":"(?\u003c!\\w|-|\\.)((?i:begin|break|catch|clean|continue|data|default|define|do|dynamicparam|else|elseif|end|exit|finally|for|from|if|in|inlinescript|parallel|param|process|return|sequence|switch|throw|trap|try|until|var|while)|%|\\?)(?!\\w)"},{"name":"keyword.control.powershell","match":"(?\u003c!\\w|-|[^\\)]\\.)((?i:(foreach|where)(?!-object))|%|\\?)(?!\\w)"},{"begin":"(?\u003c!\\w)(--%)(?!\\w)","end":"$","patterns":[{"name":"string.unquoted.powershell","match":".+"}],"beginCaptures":{"1":{"name":"keyword.control.powershell"}}},{"name":"storage.modifier.powershell","match":"(?\u003c!\\w)((?i:hidden|static))(?!\\w)"},{"match":"(?\u003c!\\w|-)((?i:class)|%|\\?)(?:\\s)+((?:\\p{L}|\\d|_|-|)+)\\b","captures":{"1":{"name":"storage.type.powershell"},"2":{"name":"entity.name.function"}}},{"name":"keyword.operator.comparison.powershell","match":"(?\u003c!\\w)-(?i:is(?:not)?|as)\\b"},{"name":"keyword.operator.comparison.powershell","match":"(?\u003c!\\w)-(?i:[ic]?(?:eq|ne|[gl][te]|(?:not)?(?:like|match|contains|in)|replace))(?!\\p{L})"},{"name":"keyword.operator.unary.powershell","match":"(?\u003c!\\w)-(?i:join|split)(?!\\p{L})|!"},{"name":"keyword.operator.logical.powershell","match":"(?\u003c!\\w)-(?i:and|or|not|xor)(?!\\p{L})|!"},{"name":"keyword.operator.bitwise.powershell","match":"(?\u003c!\\w)-(?i:band|bor|bnot|bxor|shl|shr)(?!\\p{L})"},{"name":"keyword.operator.string-format.powershell","match":"(?\u003c!\\w)-(?i:f)(?!\\p{L})"},{"name":"keyword.operator.assignment.powershell","match":"[+%*/-]?=|[+/*%-]"},{"name":"punctuation.terminator.statement.powershell","match":"\\|{2}|\u0026{2}|;"},{"name":"keyword.operator.other.powershell","match":"\u0026|(?\u003c!\\w)\\.(?= )|`|,|\\|"},{"name":"keyword.operator.range.powershell","match":"(?\u003c!\\s|^)\\.\\.(?=\\-?\\d|\\(|\\$)"}],"repository":{"RequiresDirective":{"name":"meta.requires.powershell","begin":"(?\u003c=#)(?i:(requires))\\s","end":"$","patterns":[{"name":"keyword.other.powershell","match":"\\-(?i:Modules|PSSnapin|RunAsAdministrator|ShellId|Version|Assembly|PSEdition)"},{"name":"variable.parameter.powershell","match":"(?\u003c!-)\\b\\p{L}+|\\d+(?:\\.\\d+)*"},{"include":"#hashtable"}],"beginCaptures":{"0":{"name":"keyword.control.requires.powershell"}}},"UsingDirective":{"match":"(?\u003c!\\w)(?i:(using))\\s+(?i:(namespace|module))\\s+(?i:((?:\\w+(?:\\.)?)+))","captures":{"1":{"name":"keyword.control.using.powershell"},"2":{"name":"keyword.other.powershell"},"3":{"name":"variable.parameter.powershell"}}},"attribute":{"name":"meta.attribute.powershell","begin":"(\\[)\\s*\\b(?i)(cmdletbinding|alias|outputtype|parameter|validatenotnull|validatenotnullorempty|validatecount|validateset|allownull|allowemptycollection|allowemptystring|validatescript|validaterange|validatepattern|validatelength|supportswildcards)\\b","end":"(\\])","patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"$self"},{"match":"(?i)\\b(mandatory|valuefrompipeline|valuefrompipelinebypropertyname|valuefromremainingarguments|position|parametersetname|defaultparametersetname|supportsshouldprocess|supportspaging|positionalbinding|helpuri|confirmimpact|helpmessage)\\b(?:\\s+)?(=)?","captures":{"1":{"name":"variable.parameter.attribute.powershell"},"2":{"name":"keyword.operator.assignment.powershell"}}}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}}],"beginCaptures":{"1":{"name":"punctuation.section.bracket.begin.powershell"},"2":{"name":"support.function.attribute.powershell"}},"endCaptures":{"1":{"name":"punctuation.section.bracket.end.powershell"}}},"commands":{"patterns":[{"name":"support.function.powershell","match":"(?:(\\p{L}|\\d|_|-|\\\\|\\:)*\\\\)?\\b(?i:Add|Approve|Assert|Backup|Block|Build|Checkpoint|Clear|Close|Compare|Complete|Compress|Confirm|Connect|Convert|ConvertFrom|ConvertTo|Copy|Debug|Deny|Deploy|Disable|Disconnect|Dismount|Edit|Enable|Enter|Exit|Expand|Export|Find|Format|Get|Grant|Group|Hide|Import|Initialize|Install|Invoke|Join|Limit|Lock|Measure|Merge|Mount|Move|New|Open|Optimize|Out|Ping|Pop|Protect|Publish|Push|Read|Receive|Redo|Register|Remove|Rename|Repair|Request|Reset|Resize|Resolve|Restart|Restore|Resume|Revoke|Save|Search|Select|Send|Set|Show|Skip|Split|Start|Step|Stop|Submit|Suspend|Switch|Sync|Test|Trace|Unblock|Undo|Uninstall|Unlock|Unprotect|Unpublish|Unregister|Update|Use|Wait|Watch|Write)\\-.+?(?:\\.(?i:exe|cmd|bat|ps1))?\\b"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:foreach-object)(?!\\w)"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:where-object)(?!\\w)"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:sort-object)(?!\\w)"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:tee-object)(?!\\w)"}]},"commentEmbeddedDocs":{"patterns":[{"name":"comment.documentation.embedded.powershell","match":"(?:^|\\G)(?i:\\s*(\\.)(COMPONENT|DESCRIPTION|EXAMPLE|FUNCTIONALITY|INPUTS|LINK|NOTES|OUTPUTS|ROLE|SYNOPSIS))\\s*$","captures":{"1":{"name":"constant.string.documentation.powershell"},"2":{"name":"keyword.operator.documentation.powershell"}}},{"name":"comment.documentation.embedded.powershell","match":"(?:^|\\G)(?i:\\s*(\\.)(EXTERNALHELP|FORWARDHELP(?:CATEGORY|TARGETNAME)|PARAMETER|REMOTEHELPRUNSPACE))\\s+(.+?)\\s*$","captures":{"1":{"name":"constant.string.documentation.powershell"},"2":{"name":"keyword.operator.documentation.powershell"},"3":{"name":"keyword.operator.documentation.powershell"}}}]},"commentLine":{"name":"comment.line.powershell","begin":"(?\u003c![`\\\\-])(#)#*","end":"$\\n?","patterns":[{"include":"#commentEmbeddedDocs"},{"include":"#RequiresDirective"}],"captures":{"1":{"name":"punctuation.definition.comment.powershell"}}},"doubleQuotedString":{"name":"string.quoted.double.powershell","begin":"[\"\\x{201C}-\\x{201E}]","end":"[\"\\x{201C}-\\x{201E}]","patterns":[{"match":"(?i)\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,64}\\b"},{"include":"#variableNoProperty"},{"include":"#doubleQuotedStringEscapes"},{"name":"constant.character.escape.powershell","match":"[\"\\x{201C}-\\x{201E}]{2}"},{"include":"#interpolation"},{"name":"keyword.other.powershell","match":"`\\s*$"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"applyEndPatternLast":true},"doubleQuotedStringEscapes":{"patterns":[{"name":"constant.character.escape.powershell","match":"`[`0abefnrtv'\"\\x{2018}-\\x{201E}$]"},{"include":"#unicodeEscape"}]},"function":{"begin":"^(?:\\s*+)(?i)(function|filter|configuration|workflow)\\s+(?:(global|local|script|private):)?((?:\\p{L}|\\d|_|-|\\.)+)","end":"(?=\\{|\\()","patterns":[{"include":"#commentLine"}],"beginCaptures":{"0":{"name":"meta.function.powershell"},"1":{"name":"storage.type.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"3":{"name":"entity.name.function.powershell"}}},"hashtable":{"name":"meta.hashtable.powershell","begin":"(@)(\\{)","end":"(\\})","patterns":[{"name":"meta.hashtable.assignment.powershell","match":"\\b((?:\\'|\\\")?)(\\w+)((?:\\'|\\\")?)(?:\\s+)?(=)(?:\\s+)?","captures":{"1":{"name":"punctuation.definition.string.begin.powershell"},"2":{"name":"variable.other.readwrite.powershell"},"3":{"name":"punctuation.definition.string.end.powershell"},"4":{"name":"keyword.operator.assignment.powershell"}}},{"include":"#scriptblock"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.hashtable.begin.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"}},"endCaptures":{"1":{"name":"punctuation.section.braces.end.powershell"}}},"interpolation":{"name":"meta.embedded.substatement.powershell","contentName":"interpolated.complex.source.powershell","begin":"(((\\$)))((\\())","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.substatement.powershell"},"2":{"name":"punctuation.definition.substatement.powershell"},"3":{"name":"punctuation.section.embedded.substatement.begin.powershell"},"4":{"name":"punctuation.section.group.begin.powershell"},"5":{"name":"punctuation.section.embedded.substatement.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"},"1":{"name":"punctuation.section.embedded.substatement.end.powershell"}}},"numericConstant":{"patterns":[{"match":"(?\u003c!\\w)([-+]?0(?:x|X)[0-9a-fA-F_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.hex.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?(?:[0-9_]+)?\\.[0-9_]+(?:(?:e|E)[0-9]+)?(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?0(?:b|B)[01_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.octal.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+\\.(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+[\\.]?(?:F|f|D|d|M|m))((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+[\\.]?(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}}]},"scriptblock":{"name":"meta.scriptblock.powershell","begin":"\\{","end":"\\}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.powershell"}}},"subexpression":{"name":"meta.group.simple.subexpression.powershell","begin":"\\(","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}},"type":{"begin":"\\[","end":"\\]","patterns":[{"name":"storage.type.powershell","match":"(?!\\d+|\\.)(?:\\p{L}|\\p{N}|\\.)+"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.bracket.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.bracket.end.powershell"}}},"unicodeEscape":{"patterns":[{"name":"constant.character.escape.powershell","match":"`u\\{(?:(?:10)?([0-9a-fA-F]){1,4}|0?\\g\u003c1\u003e{1,5})}"},{"name":"invalid.character.escape.powershell","match":"`u(?:\\{[0-9a-fA-F]{,6}.)?"}]},"variable":{"patterns":[{"match":"(\\$)(?i:(False|Null|True))\\b","captures":{"0":{"name":"constant.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"}}},{"match":"(\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?\\b","captures":{"0":{"name":"support.constant.variable.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\b)((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"support.variable.automatic.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?\\b","captures":{"0":{"name":"variable.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$|@)(global|local|private|script|using|workflow):((?:\\p{L}|\\d|_)+))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)(global|local|private|script|using|workflow):([^}]*[^}`])(\\}))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"},"3":{"name":"storage.modifier.scope.powershell"},"5":{"name":"punctuation.section.braces.end.powershell"},"6":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$|@)((?:\\p{L}|\\d|_)+:)?((?:\\p{L}|\\d|_)+))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"support.variable.drive.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)((?:\\p{L}|\\d|_)+:)?([^}]*[^}`])(\\}))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"},"3":{"name":"support.variable.drive.powershell"},"5":{"name":"punctuation.section.braces.end.powershell"},"6":{"name":"variable.other.member.powershell"}}}]},"variableNoProperty":{"patterns":[{"match":"(\\$)(?i:(False|Null|True))\\b","captures":{"0":{"name":"constant.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"}}},{"match":"(\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))\\b","captures":{"0":{"name":"support.constant.variable.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\b)","captures":{"0":{"name":"support.variable.automatic.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))\\b","captures":{"0":{"name":"variable.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(global|local|private|script|using|workflow):((?:\\p{L}|\\d|_)+))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)(global|local|private|script|using|workflow):([^}]*[^}`])(\\}))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"keyword.other.powershell"},"5":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)((?:\\p{L}|\\d|_)+:)?((?:\\p{L}|\\d|_)+))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"support.variable.drive.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)((?:\\p{L}|\\d|_)+:)?([^}]*[^}`])(\\}))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin"},"3":{"name":"support.variable.drive.powershell"},"5":{"name":"punctuation.section.braces.end"}}}]}}}
|
|
1
|
+
{"name":"PowerShell","scopeName":"source.powershell","patterns":[{"name":"comment.block.powershell","begin":"\u003c#","end":"#\u003e","patterns":[{"include":"#commentEmbeddedDocs"}],"beginCaptures":{"0":{"name":"punctuation.definition.comment.block.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.comment.block.end.powershell"}}},{"name":"keyword.operator.redirection.powershell","match":"[2-6]\u003e\u00261|\u003e\u003e|\u003e|\u003c\u003c|\u003c|\u003e|\u003e\\||[1-6]\u003e|[1-6]\u003e\u003e"},{"include":"#commands"},{"include":"#commentLine"},{"include":"#variable"},{"include":"#subexpression"},{"include":"#function"},{"include":"#attribute"},{"include":"#UsingDirective"},{"include":"#type"},{"include":"#hashtable"},{"include":"#doubleQuotedString"},{"include":"#scriptblock"},{"include":"#doubleQuotedStringEscapes"},{"name":"string.quoted.single.powershell","begin":"['\\x{2018}-\\x{201B}]","end":"['\\x{2018}-\\x{201B}]","patterns":[{"name":"constant.character.escape.powershell","match":"['\\x{2018}-\\x{201B}]{2}"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"applyEndPatternLast":true},{"name":"string.quoted.double.heredoc.powershell","begin":"(@[\"\\x{201C}-\\x{201E}])\\s*$","end":"^[\"\\x{201C}-\\x{201E}]@","patterns":[{"include":"#variableNoProperty"},{"include":"#doubleQuotedStringEscapes"},{"include":"#interpolation"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}}},{"name":"string.quoted.single.heredoc.powershell","begin":"(@['\\x{2018}-\\x{201B}])\\s*$","end":"^['\\x{2018}-\\x{201B}]@","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}}},{"include":"#numericConstant"},{"name":"meta.group.array-expression.powershell","begin":"(@)(\\()","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.array.begin.powershell"},"2":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}},{"name":"meta.group.complex.subexpression.powershell","begin":"((\\$))(\\()","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.substatement.powershell"},"2":{"name":"punctuation.definition.subexpression.powershell"},"3":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}},{"name":"support.function.powershell","match":"(\\b(([A-Za-z0-9\\-_\\.]+)\\.(?i:exe|com|cmd|bat))\\b)"},{"name":"keyword.control.powershell","match":"(?\u003c!\\w|-|\\.)((?i:begin|break|catch|clean|continue|data|default|define|do|dynamicparam|else|elseif|end|exit|finally|for|from|if|in|inlinescript|parallel|param|process|return|sequence|switch|throw|trap|try|until|var|while)|%|\\?)(?!\\w)"},{"name":"keyword.control.powershell","match":"(?\u003c!\\w|-|[^\\)]\\.)((?i:(foreach|where)(?!-object))|%|\\?)(?!\\w)"},{"begin":"(?\u003c!\\w)(--%)(?!\\w)","end":"$","patterns":[{"name":"string.unquoted.powershell","match":".+"}],"beginCaptures":{"1":{"name":"keyword.control.powershell"}}},{"name":"storage.modifier.powershell","match":"(?\u003c!\\w)((?i:hidden|static))(?!\\w)"},{"match":"(?\u003c!\\w|-)((?i:class)|%|\\?)(?:\\s)+((?:\\p{L}|\\d|_|-|)+)\\b","captures":{"1":{"name":"storage.type.powershell"},"2":{"name":"entity.name.function"}}},{"name":"keyword.operator.comparison.powershell","match":"(?\u003c!\\w)-(?i:is(?:not)?|as)\\b"},{"name":"keyword.operator.comparison.powershell","match":"(?\u003c!\\w)-(?i:[ic]?(?:eq|ne|[gl][te]|(?:not)?(?:like|match|contains|in)|replace))(?!\\p{L})"},{"name":"keyword.operator.unary.powershell","match":"(?\u003c!\\w)-(?i:join|split)(?!\\p{L})|!"},{"name":"keyword.operator.logical.powershell","match":"(?\u003c!\\w)-(?i:and|or|not|xor)(?!\\p{L})|!"},{"name":"keyword.operator.bitwise.powershell","match":"(?\u003c!\\w)-(?i:band|bor|bnot|bxor|shl|shr)(?!\\p{L})"},{"name":"keyword.operator.string-format.powershell","match":"(?\u003c!\\w)-(?i:f)(?!\\p{L})"},{"name":"keyword.operator.assignment.powershell","match":"[+%*/-]?=|[+/*%-]"},{"name":"punctuation.terminator.statement.powershell","match":"\\|{2}|\u0026{2}|;"},{"name":"keyword.operator.other.powershell","match":"\u0026|(?\u003c!\\w)\\.(?= )|`|,|\\|"},{"name":"keyword.operator.range.powershell","match":"(?\u003c!\\s|^)\\.\\.(?=\\-?\\d|\\(|\\$)"}],"repository":{"RequiresDirective":{"name":"meta.requires.powershell","begin":"(?\u003c=#)(?i:(requires))\\s","end":"$","patterns":[{"name":"keyword.other.powershell","match":"\\-(?i:Modules|PSSnapin|RunAsAdministrator|ShellId|Version|Assembly|PSEdition)"},{"name":"variable.parameter.powershell","match":"(?\u003c!-)\\b\\p{L}+|\\d+(?:\\.\\d+)*"},{"include":"#hashtable"}],"beginCaptures":{"0":{"name":"keyword.control.requires.powershell"}}},"UsingDirective":{"match":"(?\u003c!\\w)(?i:(using))\\s+(?i:(namespace|module))\\s+(?i:((?:\\w+(?:\\.)?)+))","captures":{"1":{"name":"keyword.control.using.powershell"},"2":{"name":"keyword.other.powershell"},"3":{"name":"variable.parameter.powershell"}}},"attribute":{"name":"meta.attribute.powershell","begin":"(\\[)\\s*\\b(?i)(cmdletbinding|alias|outputtype|parameter|validatenotnull|validatenotnullorempty|validatecount|validateset|allownull|allowemptycollection|allowemptystring|validatescript|validaterange|validatepattern|validatelength|supportswildcards)\\b","end":"(\\])","patterns":[{"begin":"\\(","end":"\\)","patterns":[{"include":"$self"},{"match":"(?i)\\b(mandatory|valuefrompipeline|valuefrompipelinebypropertyname|valuefromremainingarguments|position|parametersetname|defaultparametersetname|supportsshouldprocess|supportspaging|positionalbinding|helpuri|confirmimpact|helpmessage)\\b(?:\\s+)?(=)?","captures":{"1":{"name":"variable.parameter.attribute.powershell"},"2":{"name":"keyword.operator.assignment.powershell"}}}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}}],"beginCaptures":{"1":{"name":"punctuation.section.bracket.begin.powershell"},"2":{"name":"support.function.attribute.powershell"}},"endCaptures":{"1":{"name":"punctuation.section.bracket.end.powershell"}}},"commands":{"patterns":[{"name":"support.function.powershell","match":"(?:(\\p{L}|\\d|_|-|\\\\|\\:)*\\\\)?\\b(?i:Add|Approve|Assert|Backup|Block|Build|Checkpoint|Clear|Close|Compare|Complete|Compress|Confirm|Connect|Convert|ConvertFrom|ConvertTo|Copy|Debug|Deny|Deploy|Disable|Disconnect|Dismount|Edit|Enable|Enter|Exit|Expand|Export|Find|Format|Get|Grant|Group|Hide|Import|Initialize|Install|Invoke|Join|Limit|Lock|Measure|Merge|Mount|Move|New|Open|Optimize|Out|Ping|Pop|Protect|Publish|Push|Read|Receive|Redo|Register|Remove|Rename|Repair|Request|Reset|Resize|Resolve|Restart|Restore|Resume|Revoke|Save|Search|Select|Send|Set|Show|Skip|Split|Start|Step|Stop|Submit|Suspend|Switch|Sync|Test|Trace|Unblock|Undo|Uninstall|Unlock|Unprotect|Unpublish|Unregister|Update|Use|Wait|Watch|Write)\\-.+?(?:\\.(?i:exe|cmd|bat|ps1))?\\b"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:foreach-object)(?!\\w)"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:where-object)(?!\\w)"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:sort-object)(?!\\w)"},{"name":"support.function.powershell","match":"(?\u003c!\\w)(?i:tee-object)(?!\\w)"}]},"commentEmbeddedDocs":{"patterns":[{"name":"comment.documentation.embedded.powershell","match":"(?:^|\\G)(?i:\\s*(\\.)(COMPONENT|DESCRIPTION|EXAMPLE|FUNCTIONALITY|INPUTS|LINK|NOTES|OUTPUTS|ROLE|SYNOPSIS))\\s*$","captures":{"1":{"name":"constant.string.documentation.powershell"},"2":{"name":"keyword.operator.documentation.powershell"}}},{"name":"comment.documentation.embedded.powershell","match":"(?:^|\\G)(?i:\\s*(\\.)(EXTERNALHELP|FORWARDHELP(?:CATEGORY|TARGETNAME)|PARAMETER|REMOTEHELPRUNSPACE))\\s+(.+?)\\s*$","captures":{"1":{"name":"constant.string.documentation.powershell"},"2":{"name":"keyword.operator.documentation.powershell"},"3":{"name":"keyword.operator.documentation.powershell"}}}]},"commentLine":{"name":"comment.line.powershell","begin":"(?\u003c![`\\\\-])(#)#*","end":"$\\n?","patterns":[{"include":"#commentEmbeddedDocs"},{"include":"#RequiresDirective"}],"captures":{"1":{"name":"punctuation.definition.comment.powershell"}}},"doubleQuotedString":{"name":"string.quoted.double.powershell","begin":"[\"\\x{201C}-\\x{201E}]","end":"[\"\\x{201C}-\\x{201E}]","patterns":[{"match":"(?i)\\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,64}\\b"},{"include":"#variableNoProperty"},{"include":"#doubleQuotedStringEscapes"},{"name":"constant.character.escape.powershell","match":"[\"\\x{201C}-\\x{201E}]{2}"},{"include":"#interpolation"},{"name":"keyword.other.powershell","match":"`\\s*$"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.powershell"}},"applyEndPatternLast":true},"doubleQuotedStringEscapes":{"patterns":[{"name":"constant.character.escape.powershell","match":"`[`0abefnrtv'\"\\x{2018}-\\x{201E}$]"},{"include":"#unicodeEscape"}]},"function":{"begin":"^(?:\\s*+)(?i)(function|filter|configuration|workflow)\\s+(?:(global|local|script|private):)?((?:\\p{L}|\\d|_|-|\\.)+)","end":"(?=\\{|\\()","patterns":[{"include":"#commentLine"}],"beginCaptures":{"0":{"name":"meta.function.powershell"},"1":{"name":"storage.type.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"3":{"name":"entity.name.function.powershell"}}},"hashtable":{"name":"meta.hashtable.powershell","begin":"(@)(\\{)","end":"(\\})","patterns":[{"name":"meta.hashtable.assignment.powershell","match":"\\b((?:\\'|\\\")?)(\\w+)((?:\\'|\\\")?)(?:\\s+)?(=)(?:\\s+)?","captures":{"1":{"name":"punctuation.definition.string.begin.powershell"},"2":{"name":"variable.other.readwrite.powershell"},"3":{"name":"punctuation.definition.string.end.powershell"},"4":{"name":"keyword.operator.assignment.powershell"}}},{"include":"#scriptblock"},{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.hashtable.begin.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"}},"endCaptures":{"1":{"name":"punctuation.section.braces.end.powershell"}}},"interpolation":{"name":"meta.embedded.substatement.powershell","contentName":"interpolated.complex.source.powershell","begin":"(((\\$)))((\\())","end":"(\\))","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"keyword.other.substatement.powershell"},"2":{"name":"punctuation.definition.substatement.powershell"},"3":{"name":"punctuation.section.embedded.substatement.begin.powershell"},"4":{"name":"punctuation.section.group.begin.powershell"},"5":{"name":"punctuation.section.embedded.substatement.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"},"1":{"name":"punctuation.section.embedded.substatement.end.powershell"}}},"numericConstant":{"patterns":[{"match":"(?\u003c!\\w)([-+]?0(?:x|X)[0-9a-fA-F_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.hex.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?(?:[0-9_]+)?\\.[0-9_]+(?:(?:e|E)[0-9]+)?(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?0(?:b|B)[01_]+(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.octal.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+\\.(?:e|E)(?:[0-9_])?+(?:F|f|D|d|M|m)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+[\\.]?(?:F|f|D|d|M|m))((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}},{"match":"(?\u003c!\\w)([-+]?[0-9_]+[\\.]?(?:U|u|L|l|UL|Ul|uL|ul|LU|Lu|lU|lu)?)((?i:[kmgtp]b)?)\\b","captures":{"1":{"name":"constant.numeric.integer.powershell"},"2":{"name":"keyword.other.powershell"}}}]},"scriptblock":{"name":"meta.scriptblock.powershell","begin":"\\{","end":"\\}","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.braces.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.braces.end.powershell"}}},"subexpression":{"name":"meta.group.simple.subexpression.powershell","begin":"\\(","end":"\\)","patterns":[{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.powershell"}}},"type":{"begin":"\\[","end":"\\]","patterns":[{"name":"storage.type.powershell","match":"(?!\\d+|\\.)(?:\\p{L}|\\p{N}|\\.)+"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.section.bracket.begin.powershell"}},"endCaptures":{"0":{"name":"punctuation.section.bracket.end.powershell"}}},"unicodeEscape":{"patterns":[{"name":"constant.character.escape.powershell","match":"`u\\{(?:(?:10)?([0-9a-fA-F]){1,4}|0?\\g\u003c1\u003e{1,5})}"},{"name":"invalid.character.escape.powershell","match":"`u(?:\\{[0-9a-fA-F]{,6}.)?"}]},"variable":{"patterns":[{"match":"(\\$)(?i:(False|Null|True))\\b","captures":{"0":{"name":"constant.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"}}},{"match":"(\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?\\b","captures":{"0":{"name":"variable.other.constant.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\b)((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"support.variable.automatic.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?\\b","captures":{"0":{"name":"variable.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$|@)(global|local|private|script|using|workflow):((?:\\p{L}|\\d|_)+))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)(global|local|private|script|using|workflow):([^}]*[^}`])(\\}))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"},"3":{"name":"storage.modifier.scope.powershell"},"5":{"name":"punctuation.section.braces.end.powershell"},"6":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$|@)((?:\\p{L}|\\d|_)+:)?((?:\\p{L}|\\d|_)+))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"support.variable.drive.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)((?:\\p{L}|\\d|_)+:)?([^}]*[^}`])(\\}))((?:\\.(?:\\p{L}|\\d|_)+)*\\b)?","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin.powershell"},"3":{"name":"support.variable.drive.powershell"},"5":{"name":"punctuation.section.braces.end.powershell"},"6":{"name":"variable.other.member.powershell"}}}]},"variableNoProperty":{"patterns":[{"match":"(\\$)(?i:(False|Null|True))\\b","captures":{"0":{"name":"constant.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"}}},{"match":"(\\$)(?i:(Error|ExecutionContext|Host|Home|PID|PsHome|PsVersionTable|ShellID))\\b","captures":{"0":{"name":"variable.other.constant.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)((?:[$^?])|(?i:_|Args|ConsoleFileName|Event|EventArgs|EventSubscriber|ForEach|Input|LastExitCode|Matches|MyInvocation|NestedPromptLevel|Profile|PSBoundParameters|PsCmdlet|PsCulture|PSDebugContext|PSItem|PSCommandPath|PSScriptRoot|PsUICulture|Pwd|Sender|SourceArgs|SourceEventArgs|StackTrace|Switch|This)\\b)","captures":{"0":{"name":"support.variable.automatic.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(\\$)(?i:(ConfirmPreference|DebugPreference|ErrorActionPreference|ErrorView|FormatEnumerationLimit|InformationPreference|LogCommandHealthEvent|LogCommandLifecycleEvent|LogEngineHealthEvent|LogEngineLifecycleEvent|LogProviderHealthEvent|LogProviderLifecycleEvent|MaximumAliasCount|MaximumDriveCount|MaximumErrorCount|MaximumFunctionCount|MaximumHistoryCount|MaximumVariableCount|OFS|OutputEncoding|PSCulture|PSDebugContext|PSDefaultParameterValues|PSEmailServer|PSItem|PSModuleAutoLoadingPreference|PSModuleAutoloadingPreference|PSSenderInfo|PSSessionApplicationName|PSSessionConfigurationName|PSSessionOption|ProgressPreference|VerbosePreference|WarningPreference|WhatIfPreference))\\b","captures":{"0":{"name":"variable.language.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"3":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(global|local|private|script|using|workflow):((?:\\p{L}|\\d|_)+))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)(global|local|private|script|using|workflow):([^}]*[^}`])(\\}))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"storage.modifier.scope.powershell"},"4":{"name":"keyword.other.powershell"},"5":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)((?:\\p{L}|\\d|_)+:)?((?:\\p{L}|\\d|_)+))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"support.variable.drive.powershell"},"4":{"name":"variable.other.member.powershell"}}},{"match":"(?i:(\\$)(\\{)((?:\\p{L}|\\d|_)+:)?([^}]*[^}`])(\\}))","captures":{"0":{"name":"variable.other.readwrite.powershell"},"1":{"name":"punctuation.definition.variable.powershell"},"2":{"name":"punctuation.section.braces.begin"},"3":{"name":"support.variable.drive.powershell"},"5":{"name":"punctuation.section.braces.end"}}}]}}}
|