github-linguist 7.19.0 → 7.22.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/linguist/lex.linguist_yy.c +584 -498
- data/ext/linguist/lex.linguist_yy.h +2 -3
- data/ext/linguist/tokenizer.l +52 -15
- data/grammars/liquid.injection.json +1 -1
- data/grammars/markdown.cadence.codeblock.json +1 -0
- data/grammars/markdown.prisma.codeblock.json +1 -0
- data/grammars/source.abap.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.acucobol.json +1 -1
- data/grammars/source.alloy.json +1 -1
- data/grammars/source.astro.json +1 -0
- data/grammars/source.ats.json +1 -1
- data/grammars/source.ballerina.json +1 -1
- data/grammars/source.berry.bytecode.json +1 -0
- data/grammars/source.berry.json +1 -0
- data/grammars/source.bms.json +1 -0
- data/grammars/source.bmsmap.json +1 -0
- data/grammars/source.brs.json +1 -0
- data/grammars/source.cadence.json +1 -0
- data/grammars/source.cairo.json +1 -0
- data/grammars/source.cds.json +1 -0
- data/grammars/source.cl.json +1 -1
- data/grammars/source.clarion.json +1 -1
- data/grammars/source.cobol.json +1 -1
- data/grammars/source.cobol_acu_listfile.json +1 -0
- data/grammars/source.cobol_mf_listfile.json +1 -0
- data/grammars/source.cobol_mfprep.json +1 -0
- data/grammars/source.cobol_pcob_listfile.json +1 -0
- data/grammars/source.cobolit.json +1 -0
- data/grammars/source.cobsql_dir.json +1 -0
- data/grammars/source.css.json +1 -1
- data/grammars/source.csswg.json +1 -0
- data/grammars/source.curlrc.json +1 -1
- data/grammars/source.curry.json +1 -1
- data/grammars/source.dart.json +1 -1
- data/grammars/source.denizenscript.json +1 -1
- data/grammars/source.dir.json +1 -0
- data/grammars/source.ditroff.json +1 -1
- data/grammars/source.fsharp.json +1 -1
- data/grammars/source.gcode.json +1 -1
- data/grammars/source.gdresource.json +1 -0
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.gdshader.json +1 -0
- data/grammars/source.genero-forms.json +1 -0
- data/grammars/source.genero.json +1 -0
- data/grammars/source.git-revlist.json +1 -0
- data/grammars/source.hack.json +1 -1
- data/grammars/source.hlasm.json +1 -0
- data/grammars/source.hx.json +1 -1
- data/grammars/source.icurry.json +1 -1
- data/grammars/source.jcl.json +1 -1
- data/grammars/source.jsligo.json +1 -0
- data/grammars/source.json.json +1 -1
- data/grammars/source.julia.json +1 -1
- data/grammars/source.kotlin.json +1 -1
- data/grammars/source.ligo.json +1 -0
- data/grammars/source.livescript.json +1 -1
- data/grammars/source.mc.json +1 -0
- data/grammars/source.mfu.json +1 -0
- data/grammars/source.mfupp_dir.json +1 -0
- data/grammars/source.miniyaml.json +1 -1
- data/grammars/source.mligo.json +1 -0
- data/grammars/source.mlir.json +1 -1
- data/grammars/source.mo.json +1 -1
- data/grammars/source.move.json +1 -0
- data/grammars/source.nix.json +1 -1
- data/grammars/source.pli.json +1 -0
- data/grammars/source.pony.json +1 -1
- data/grammars/source.portugol.json +1 -0
- data/grammars/source.q.json +1 -1
- data/grammars/source.rascal.json +1 -1
- data/grammars/source.rego.json +1 -1
- data/grammars/source.religo.json +1 -0
- data/grammars/source.renpy.json +1 -1
- data/grammars/source.rescript.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.rsc.json +1 -0
- data/grammars/source.scala.json +1 -1
- data/grammars/source.shell.json +1 -1
- data/grammars/source.solidity.json +1 -1
- data/grammars/source.sqf.json +1 -1
- data/grammars/source.stan.json +1 -1
- data/grammars/source.star.json +1 -0
- data/grammars/source.stl.json +1 -0
- data/grammars/source.svelte.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.talon.json +1 -0
- data/grammars/source.ts.json +1 -1
- data/grammars/source.tsx.json +1 -1
- data/grammars/source.utreport.json +1 -0
- data/grammars/source.v.json +1 -1
- data/grammars/source.velocity.html.json +1 -0
- data/grammars/source.velocity.json +1 -0
- data/grammars/source.vyper.json +1 -1
- data/grammars/source.whiley.json +1 -0
- data/grammars/source.win32-messages.json +1 -0
- data/grammars/source.wren.json +1 -0
- data/grammars/source.wsd.json +1 -1
- data/grammars/source.yara.json +1 -1
- data/grammars/source.yul.json +1 -0
- data/grammars/text.hash-commented.json +1 -0
- data/grammars/text.html.liquid.json +1 -1
- data/grammars/text.html.markdown.astro.json +1 -1
- data/grammars/text.html.statamic.json +1 -0
- data/grammars/text.savane.json +1 -0
- data/grammars/text.srt.json +1 -1
- data/grammars/text.vtt.json +1 -0
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/blob_helper.rb +2 -2
- data/lib/linguist/generic.yml +2 -0
- data/lib/linguist/heuristics.yml +34 -1
- data/lib/linguist/language.rb +2 -2
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +327 -6
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/vendor.yml +4 -1
- metadata +60 -16
- data/grammars/source.brightauthorproject.json +0 -1
- data/grammars/source.brightscript.json +0 -1
- data/grammars/source.opencobol.json +0 -1
- data/grammars/source.vtt.json +0 -1
- data/grammars/text.html.astro.json +0 -1
- data/lib/linguist/linguist.so +0 -0
data/grammars/source.nix.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Nix","scopeName":"source.nix","patterns":[{"include":"#expression"}],"repository":{"attribute-bind":{"patterns":[{"include":"#attribute-name"},{"include":"#attribute-bind-from-equals"}]},"attribute-bind-from-equals":{"begin":"\\=","end":"\\;","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.bind.nix"}},"endCaptures":{"0":{"name":"punctuation.terminator.bind.nix"}}},"attribute-inherit":{"begin":"\\binherit\\b","end":"\\;","patterns":[{"begin":"\\(","end":"(?=\\;)","patterns":[{"begin":"\\)","end":"(?=\\;)","patterns":[{"include":"#bad-reserved"},{"include":"#attribute-name-single"},{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.section.function.arguments.nix"}}},{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.function.arguments.nix"}}},{"begin":"(?=[a-zA-Z\\_])","end":"(?=\\;)","patterns":[{"include":"#bad-reserved"},{"include":"#attribute-name-single"},{"include":"#others"}]},{"include":"#others"}],"beginCaptures":{"0":{"name":"keyword.other.inherit.nix"}},"endCaptures":{"0":{"name":"punctuation.terminator.inherit.nix"}}},"attribute-name":{"patterns":[{"name":"entity.other.attribute-name.multipart.nix","match":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*"},{"match":"\\."},{"include":"#string-quoted"},{"include":"#interpolation"}]},"attribute-name-single":{"name":"entity.other.attribute-name.single.nix","match":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*"},"attrset-contents":{"patterns":[{"include":"#attribute-inherit"},{"include":"#bad-reserved"},{"include":"#attribute-bind"},{"include":"#others"}]},"attrset-definition":{"begin":"(?=\\{)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"(\\{)","end":"(\\})","patterns":[{"include":"#attrset-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}}},{"begin":"(?\u003c=\\})","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}]}]},"attrset-definition-brace-opened":{"patterns":[{"begin":"(?\u003c=\\})","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}]},{"begin":"(?=.?)","end":"\\}","patterns":[{"include":"#attrset-contents"}],"endCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}}}]},"attrset-for-sure":{"patterns":[{"begin":"(?=\\brec\\b)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\brec\\b","end":"(?=\\{)","patterns":[{"include":"#others"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}},{"include":"#attrset-definition"},{"include":"#others"}]},{"begin":"(?=\\{\\s*(\\}|[^,?]*(=|;)))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attrset-definition"},{"include":"#others"}]}]},"attrset-or-function":{"begin":"\\{","end":"(?=([\\])};]|\\b(else|then)\\b))","patterns":[{"begin":"(?=(\\s*\\}|\\\"|\\binherit\\b|\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*(\\s*\\.|\\s*=[^=])|\\$\\{[a-zA-z0-9\\_\\'\\-]+\\}(\\s*\\.|\\s*=[^=])))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attrset-definition-brace-opened"}]},{"begin":"(?=(\\.\\.\\.|\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*\\s*[,?]))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition-brace-opened"}]},{"include":"#bad-reserved"},{"begin":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","end":"(?=([\\])};]|\\b(else|then)\\b))","patterns":[{"begin":"(?=\\.)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attrset-definition-brace-opened"}]},{"begin":"\\s*(\\,)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition-brace-opened"}],"beginCaptures":{"1":{"name":"keyword.operator.nix"}}},{"begin":"(?=\\=)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attribute-bind-from-equals"},{"include":"#attrset-definition-brace-opened"}]},{"begin":"(?=\\?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-parameter-default"},{"begin":"\\,","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition-brace-opened"}],"beginCaptures":{"0":{"name":"keyword.operator.nix"}}}]},{"include":"#others"}],"beginCaptures":{"0":{"name":"variable.parameter.function.maybe.nix"}}},{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.definition.attrset-or-function.nix"}}},"bad-reserved":{"name":"invalid.illegal.reserved.nix","match":"(?\u003c![\\w'-])(if|then|else|assert|with|let|in|rec|inherit)(?![\\w'-])"},"comment":{"patterns":[{"name":"comment.block.nix","begin":"/\\*([^*]|\\*[^\\/])*","end":"\\*\\/","patterns":[{"include":"#comment-remark"}]},{"name":"comment.line.number-sign.nix","begin":"\\#","end":"$","patterns":[{"include":"#comment-remark"}]}]},"comment-remark":{"match":"(TODO|FIXME|BUG|\\!\\!\\!):?","captures":{"1":{"name":"markup.bold.comment.nix"}}},"constants":{"patterns":[{"begin":"\\b(builtins|true|false|null)\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"constant.language.nix"}}},{"begin":"\\b(scopedImport|import|isNull|abort|throw|baseNameOf|dirOf|removeAttrs|map|toString|derivationStrict|derivation)\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"support.function.nix"}}},{"begin":"\\b[0-9]+\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"constant.numeric.nix"}}}]},"expression":{"patterns":[{"include":"#parens-and-cont"},{"include":"#list-and-cont"},{"include":"#string"},{"include":"#interpolation"},{"include":"#with-assert"},{"include":"#function-for-sure"},{"include":"#attrset-for-sure"},{"include":"#attrset-or-function"},{"include":"#let"},{"include":"#if"},{"include":"#operator-unary"},{"include":"#constants"},{"include":"#bad-reserved"},{"include":"#parameter-name-and-cont"},{"include":"#others"}]},"expression-cont":{"begin":"(?=.?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#parens"},{"include":"#list"},{"include":"#string"},{"include":"#interpolation"},{"include":"#function-for-sure"},{"include":"#attrset-for-sure"},{"include":"#attrset-or-function"},{"name":"keyword.operator.nix","match":"(\\bor\\b|\\.|==|!=|!|\\\u003c\\=|\\\u003c|\\\u003e\\=|\\\u003e|\u0026\u0026|\\|\\||-\\\u003e|//|\\?|\\+\\+|-|\\*|/(?=([^*]|$))|\\+)"},{"include":"#constants"},{"include":"#bad-reserved"},{"include":"#parameter-name"},{"include":"#others"}]},"function-body":{"begin":"(@\\s*([a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*)\\s*)?(\\:)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}]},"function-body-from-colon":{"begin":"(\\:)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.function.nix"}}},"function-contents":{"patterns":[{"include":"#bad-reserved"},{"include":"#function-parameter"},{"include":"#others"}]},"function-definition":{"begin":"(?=.?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-body-from-colon"},{"begin":"(?=.?)","end":"(?=\\:)","patterns":[{"begin":"(\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*)","end":"(?=\\:)","patterns":[{"begin":"\\@","end":"(?=\\:)","patterns":[{"include":"#function-header-until-colon-no-arg"},{"include":"#others"}]},{"include":"#others"}],"beginCaptures":{"0":{"name":"variable.parameter.function.4.nix"}}},{"begin":"(?=\\{)","end":"(?=\\:)","patterns":[{"include":"#function-header-until-colon-with-arg"}]}]},{"include":"#others"}]},"function-definition-brace-opened":{"begin":"(?=.?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-body-from-colon"},{"begin":"(?=.?)","end":"(?=\\:)","patterns":[{"include":"#function-header-close-brace-with-arg"},{"begin":"(?=.?)","end":"(?=\\})","patterns":[{"include":"#function-contents"}]}]},{"include":"#others"}]},"function-for-sure":{"patterns":[{"begin":"(?=(\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*\\s*[:@]|\\{[^}]*\\}\\s*:|\\{[^#}\"'/=]*[,\\?]))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition"}]}]},"function-header-close-brace-no-arg":{"begin":"\\}","end":"(?=\\:)","patterns":[{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.definition.entity.function.nix"}}},"function-header-close-brace-with-arg":{"begin":"\\}","end":"(?=\\:)","patterns":[{"include":"#function-header-terminal-arg"},{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.definition.entity.function.nix"}}},"function-header-open-brace":{"begin":"\\{","end":"(?=\\})","patterns":[{"include":"#function-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.entity.function.2.nix"}}},"function-header-terminal-arg":{"begin":"(?=@)","end":"(?=\\:)","patterns":[{"begin":"\\@","end":"(?=\\:)","patterns":[{"name":"variable.parameter.function.3.nix","begin":"(\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*)","end":"(?=\\:)"},{"include":"#others"}]},{"include":"#others"}]},"function-header-until-colon-no-arg":{"begin":"(?=\\{)","end":"(?=\\:)","patterns":[{"include":"#function-header-open-brace"},{"include":"#function-header-close-brace-no-arg"}]},"function-header-until-colon-with-arg":{"begin":"(?=\\{)","end":"(?=\\:)","patterns":[{"include":"#function-header-open-brace"},{"include":"#function-header-close-brace-with-arg"}]},"function-parameter":{"patterns":[{"name":"keyword.operator.nix","begin":"(\\.\\.\\.)","end":"(,|(?=\\}))","patterns":[{"include":"#others"}]},{"begin":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","end":"(,|(?=\\}))","patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#function-parameter-default"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"variable.parameter.function.1.nix"}},"endCaptures":{"0":{"name":"keyword.operator.nix"}}},{"include":"#others"}]},"function-parameter-default":{"begin":"\\?","end":"(?=[,}])","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.nix"}}},"if":{"begin":"(?=\\bif\\b)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\bif\\b","end":"\\bth(?=en\\b)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}},"endCaptures":{"0":{"name":"keyword.other.nix"}}},{"begin":"(?\u003c=th)en\\b","end":"\\bel(?=se\\b)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}},"endCaptures":{"0":{"name":"keyword.other.nix"}}},{"begin":"(?\u003c=el)se\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}},"endCaptures":{"0":{"name":"keyword.other.nix"}}}]},"illegal":{"name":"invalid.illegal","match":"."},"interpolation":{"name":"markup.italic","begin":"\\$\\{","end":"\\}","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nix"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.nix"}}},"let":{"begin":"(?=\\blet\\b)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\blet\\b","end":"(?=([\\])};,]|\\b(in|else|then)\\b))","patterns":[{"begin":"(?=\\{)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\{","end":"\\}","patterns":[{"include":"#attrset-contents"}]},{"begin":"(^|(?\u003c=\\}))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}]},{"include":"#others"}]},{"include":"#attrset-contents"},{"include":"#others"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}},{"begin":"\\bin\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}}]},"list":{"begin":"\\[","end":"\\]","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.list.nix"}}},"list-and-cont":{"begin":"(?=\\[)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#list"},{"include":"#expression-cont"}]},"operator-unary":{"name":"keyword.operator.unary.nix","match":"(!|-)"},"others":{"patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#illegal"}]},"parameter-name":{"match":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","captures":{"0":{"name":"variable.parameter.name.nix"}}},"parameter-name-and-cont":{"begin":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"variable.parameter.name.nix"}}},"parens":{"begin":"\\(","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.expression.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.expression.nix"}}},"parens-and-cont":{"begin":"(?=\\()","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#parens"},{"include":"#expression-cont"}]},"string":{"patterns":[{"begin":"(?=\\'\\')","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"name":"string.quoted.other.nix","begin":"\\'\\'","end":"\\'\\'(?!\\$|\\'|\\\\.)","patterns":[{"name":"constant.character.escape.nix","match":"\\'\\'(\\$|\\'|\\\\.)"},{"include":"#interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.other.start.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.string.other.end.nix"}}},{"include":"#expression-cont"}]},{"begin":"(?=\\\")","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#string-quoted"},{"include":"#expression-cont"}]},{"begin":"(~?[a-zA-Z0-9\\.\\_\\-\\+]*(\\/[a-zA-Z0-9\\.\\_\\-\\+]+)+)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"string.unquoted.path.nix"}}},{"begin":"(\\\u003c[a-zA-Z0-9\\.\\_\\-\\+]+(\\/[a-zA-Z0-9\\.\\_\\-\\+]+)*\\\u003e)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"string.unquoted.spath.nix"}}},{"begin":"([a-zA-Z][a-zA-Z0-9\\+\\-\\.]*\\:[a-zA-Z0-9\\%\\/\\?\\:\\@\\\u0026\\=\\+\\$\\,\\-\\_\\.\\!\\~\\*\\']+)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"string.unquoted.url.nix"}}}]},"string-quoted":{"name":"string.quoted.double.nix","begin":"\\\"","end":"\\\"","patterns":[{"name":"constant.character.escape.nix","match":"\\\\."},{"include":"#interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.double.start.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.string.double.end.nix"}}},"whitespace":{"match":"\\s+"},"with-assert":{"begin":"(?\u003c![\\w'-])(with|assert)(?![\\w'-])","end":"\\;","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}}}}
|
1
|
+
{"name":"Nix","scopeName":"source.nix","patterns":[{"include":"#expression"}],"repository":{"attribute-bind":{"patterns":[{"include":"#attribute-name"},{"include":"#attribute-bind-from-equals"}]},"attribute-bind-from-equals":{"begin":"\\=","end":"\\;","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.bind.nix"}},"endCaptures":{"0":{"name":"punctuation.terminator.bind.nix"}}},"attribute-inherit":{"begin":"\\binherit\\b","end":"\\;","patterns":[{"begin":"\\(","end":"(?=\\;)","patterns":[{"begin":"\\)","end":"(?=\\;)","patterns":[{"include":"#bad-reserved"},{"include":"#attribute-name-single"},{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.section.function.arguments.nix"}}},{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.function.arguments.nix"}}},{"begin":"(?=[a-zA-Z\\_])","end":"(?=\\;)","patterns":[{"include":"#bad-reserved"},{"include":"#attribute-name-single"},{"include":"#others"}]},{"include":"#others"}],"beginCaptures":{"0":{"name":"keyword.other.inherit.nix"}},"endCaptures":{"0":{"name":"punctuation.terminator.inherit.nix"}}},"attribute-name":{"patterns":[{"name":"entity.other.attribute-name.multipart.nix","match":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*"},{"match":"\\."},{"include":"#string-quoted"},{"include":"#interpolation"}]},"attribute-name-single":{"name":"entity.other.attribute-name.single.nix","match":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*"},"attrset-contents":{"patterns":[{"include":"#attribute-inherit"},{"include":"#bad-reserved"},{"include":"#attribute-bind"},{"include":"#others"}]},"attrset-definition":{"begin":"(?=\\{)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"(\\{)","end":"(\\})","patterns":[{"include":"#attrset-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}}},{"begin":"(?\u003c=\\})","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}]}]},"attrset-definition-brace-opened":{"patterns":[{"begin":"(?\u003c=\\})","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}]},{"begin":"(?=.?)","end":"\\}","patterns":[{"include":"#attrset-contents"}],"endCaptures":{"0":{"name":"punctuation.definition.attrset.nix"}}}]},"attrset-for-sure":{"patterns":[{"begin":"(?=\\brec\\b)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\brec\\b","end":"(?=\\{)","patterns":[{"include":"#others"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}},{"include":"#attrset-definition"},{"include":"#others"}]},{"begin":"(?=\\{\\s*(\\}|[^,?]*(=|;)))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attrset-definition"},{"include":"#others"}]}]},"attrset-or-function":{"begin":"\\{","end":"(?=([\\])};]|\\b(else|then)\\b))","patterns":[{"begin":"(?=(\\s*\\}|\\\"|\\binherit\\b|\\$\\{|\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*(\\s*\\.|\\s*=[^=])))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attrset-definition-brace-opened"}]},{"begin":"(?=(\\.\\.\\.|\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*\\s*[,?]))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition-brace-opened"}]},{"include":"#bad-reserved"},{"begin":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","end":"(?=([\\])};]|\\b(else|then)\\b))","patterns":[{"begin":"(?=\\.)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attrset-definition-brace-opened"}]},{"begin":"\\s*(\\,)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition-brace-opened"}],"beginCaptures":{"1":{"name":"keyword.operator.nix"}}},{"begin":"(?=\\=)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#attribute-bind-from-equals"},{"include":"#attrset-definition-brace-opened"}]},{"begin":"(?=\\?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-parameter-default"},{"begin":"\\,","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition-brace-opened"}],"beginCaptures":{"0":{"name":"keyword.operator.nix"}}}]},{"include":"#others"}],"beginCaptures":{"0":{"name":"variable.parameter.function.maybe.nix"}}},{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.definition.attrset-or-function.nix"}}},"bad-reserved":{"name":"invalid.illegal.reserved.nix","match":"(?\u003c![\\w'-])(if|then|else|assert|with|let|in|rec|inherit)(?![\\w'-])"},"comment":{"patterns":[{"name":"comment.block.nix","begin":"/\\*([^*]|\\*[^\\/])*","end":"\\*\\/","patterns":[{"include":"#comment-remark"}]},{"name":"comment.line.number-sign.nix","begin":"\\#","end":"$","patterns":[{"include":"#comment-remark"}]}]},"comment-remark":{"match":"(TODO|FIXME|BUG|\\!\\!\\!):?","captures":{"1":{"name":"markup.bold.comment.nix"}}},"constants":{"patterns":[{"begin":"\\b(builtins|true|false|null)\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"constant.language.nix"}}},{"begin":"\\b(scopedImport|import|isNull|abort|throw|baseNameOf|dirOf|removeAttrs|map|toString|derivationStrict|derivation)\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"support.function.nix"}}},{"begin":"\\b[0-9]+\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"constant.numeric.nix"}}}]},"expression":{"patterns":[{"include":"#parens-and-cont"},{"include":"#list-and-cont"},{"include":"#string"},{"include":"#interpolation"},{"include":"#with-assert"},{"include":"#function-for-sure"},{"include":"#attrset-for-sure"},{"include":"#attrset-or-function"},{"include":"#let"},{"include":"#if"},{"include":"#operator-unary"},{"include":"#constants"},{"include":"#bad-reserved"},{"include":"#parameter-name-and-cont"},{"include":"#others"}]},"expression-cont":{"begin":"(?=.?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#parens"},{"include":"#list"},{"include":"#string"},{"include":"#interpolation"},{"include":"#function-for-sure"},{"include":"#attrset-for-sure"},{"include":"#attrset-or-function"},{"name":"keyword.operator.nix","match":"(\\bor\\b|\\.|==|!=|!|\\\u003c\\=|\\\u003c|\\\u003e\\=|\\\u003e|\u0026\u0026|\\|\\||-\\\u003e|//|\\?|\\+\\+|-|\\*|/(?=([^*]|$))|\\+)"},{"include":"#constants"},{"include":"#bad-reserved"},{"include":"#parameter-name"},{"include":"#others"}]},"function-body":{"begin":"(@\\s*([a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*)\\s*)?(\\:)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}]},"function-body-from-colon":{"begin":"(\\:)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.function.nix"}}},"function-contents":{"patterns":[{"include":"#bad-reserved"},{"include":"#function-parameter"},{"include":"#others"}]},"function-definition":{"begin":"(?=.?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-body-from-colon"},{"begin":"(?=.?)","end":"(?=\\:)","patterns":[{"begin":"(\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*)","end":"(?=\\:)","patterns":[{"begin":"\\@","end":"(?=\\:)","patterns":[{"include":"#function-header-until-colon-no-arg"},{"include":"#others"}]},{"include":"#others"}],"beginCaptures":{"0":{"name":"variable.parameter.function.4.nix"}}},{"begin":"(?=\\{)","end":"(?=\\:)","patterns":[{"include":"#function-header-until-colon-with-arg"}]}]},{"include":"#others"}]},"function-definition-brace-opened":{"begin":"(?=.?)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-body-from-colon"},{"begin":"(?=.?)","end":"(?=\\:)","patterns":[{"include":"#function-header-close-brace-with-arg"},{"begin":"(?=.?)","end":"(?=\\})","patterns":[{"include":"#function-contents"}]}]},{"include":"#others"}]},"function-for-sure":{"patterns":[{"begin":"(?=(\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*\\s*[:@]|\\{[^}]*\\}\\s*:|\\{[^#}\"'/=]*[,\\?]))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#function-definition"}]}]},"function-header-close-brace-no-arg":{"begin":"\\}","end":"(?=\\:)","patterns":[{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.definition.entity.function.nix"}}},"function-header-close-brace-with-arg":{"begin":"\\}","end":"(?=\\:)","patterns":[{"include":"#function-header-terminal-arg"},{"include":"#others"}],"beginCaptures":{"0":{"name":"punctuation.definition.entity.function.nix"}}},"function-header-open-brace":{"begin":"\\{","end":"(?=\\})","patterns":[{"include":"#function-contents"}],"beginCaptures":{"0":{"name":"punctuation.definition.entity.function.2.nix"}}},"function-header-terminal-arg":{"begin":"(?=@)","end":"(?=\\:)","patterns":[{"begin":"\\@","end":"(?=\\:)","patterns":[{"name":"variable.parameter.function.3.nix","begin":"(\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*)","end":"(?=\\:)"},{"include":"#others"}]},{"include":"#others"}]},"function-header-until-colon-no-arg":{"begin":"(?=\\{)","end":"(?=\\:)","patterns":[{"include":"#function-header-open-brace"},{"include":"#function-header-close-brace-no-arg"}]},"function-header-until-colon-with-arg":{"begin":"(?=\\{)","end":"(?=\\:)","patterns":[{"include":"#function-header-open-brace"},{"include":"#function-header-close-brace-with-arg"}]},"function-parameter":{"patterns":[{"name":"keyword.operator.nix","begin":"(\\.\\.\\.)","end":"(,|(?=\\}))","patterns":[{"include":"#others"}]},{"begin":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","end":"(,|(?=\\}))","patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#function-parameter-default"},{"include":"#expression"}],"beginCaptures":{"0":{"name":"variable.parameter.function.1.nix"}},"endCaptures":{"0":{"name":"keyword.operator.nix"}}},{"include":"#others"}]},"function-parameter-default":{"begin":"\\?","end":"(?=[,}])","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.operator.nix"}}},"if":{"begin":"(?=\\bif\\b)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\bif\\b","end":"\\bth(?=en\\b)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}},"endCaptures":{"0":{"name":"keyword.other.nix"}}},{"begin":"(?\u003c=th)en\\b","end":"\\bel(?=se\\b)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}},"endCaptures":{"0":{"name":"keyword.other.nix"}}},{"begin":"(?\u003c=el)se\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}},"endCaptures":{"0":{"name":"keyword.other.nix"}}}]},"illegal":{"name":"invalid.illegal","match":"."},"interpolation":{"name":"meta.embedded","begin":"\\$\\{","end":"\\}","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.section.embedded.begin.nix"}},"endCaptures":{"0":{"name":"punctuation.section.embedded.end.nix"}}},"let":{"begin":"(?=\\blet\\b)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\blet\\b","end":"(?=([\\])};,]|\\b(in|else|then)\\b))","patterns":[{"begin":"(?=\\{)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"begin":"\\{","end":"\\}","patterns":[{"include":"#attrset-contents"}]},{"begin":"(^|(?\u003c=\\}))","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}]},{"include":"#others"}]},{"include":"#attrset-contents"},{"include":"#others"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}},{"begin":"\\bin\\b","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}}]},"list":{"begin":"\\[","end":"\\]","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.list.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.list.nix"}}},"list-and-cont":{"begin":"(?=\\[)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#list"},{"include":"#expression-cont"}]},"operator-unary":{"name":"keyword.operator.unary.nix","match":"(!|-)"},"others":{"patterns":[{"include":"#whitespace"},{"include":"#comment"},{"include":"#illegal"}]},"parameter-name":{"match":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","captures":{"0":{"name":"variable.parameter.name.nix"}}},"parameter-name-and-cont":{"begin":"\\b[a-zA-Z\\_][a-zA-Z0-9\\_\\'\\-]*","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"variable.parameter.name.nix"}}},"parens":{"begin":"\\(","end":"\\)","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.expression.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.expression.nix"}}},"parens-and-cont":{"begin":"(?=\\()","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#parens"},{"include":"#expression-cont"}]},"string":{"patterns":[{"begin":"(?=\\'\\')","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"name":"string.quoted.other.nix","begin":"\\'\\'","end":"\\'\\'(?!\\$|\\'|\\\\.)","patterns":[{"name":"constant.character.escape.nix","match":"\\'\\'(\\$|\\'|\\\\.)"},{"include":"#interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.other.start.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.string.other.end.nix"}}},{"include":"#expression-cont"}]},{"begin":"(?=\\\")","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#string-quoted"},{"include":"#expression-cont"}]},{"begin":"(~?[a-zA-Z0-9\\.\\_\\-\\+]*(\\/[a-zA-Z0-9\\.\\_\\-\\+]+)+)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"string.unquoted.path.nix"}}},{"begin":"(\\\u003c[a-zA-Z0-9\\.\\_\\-\\+]+(\\/[a-zA-Z0-9\\.\\_\\-\\+]+)*\\\u003e)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"string.unquoted.spath.nix"}}},{"begin":"([a-zA-Z][a-zA-Z0-9\\+\\-\\.]*\\:[a-zA-Z0-9\\%\\/\\?\\:\\@\\\u0026\\=\\+\\$\\,\\-\\_\\.\\!\\~\\*\\']+)","end":"(?=([\\])};,]|\\b(else|then)\\b))","patterns":[{"include":"#expression-cont"}],"beginCaptures":{"0":{"name":"string.unquoted.url.nix"}}}]},"string-quoted":{"name":"string.quoted.double.nix","begin":"\\\"","end":"\\\"","patterns":[{"name":"constant.character.escape.nix","match":"\\\\."},{"include":"#interpolation"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.double.start.nix"}},"endCaptures":{"0":{"name":"punctuation.definition.string.double.end.nix"}}},"whitespace":{"match":"\\s+"},"with-assert":{"begin":"(?\u003c![\\w'-])(with|assert)(?![\\w'-])","end":"\\;","patterns":[{"include":"#expression"}],"beginCaptures":{"0":{"name":"keyword.other.nix"}}}}}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"name":"PLI","scopeName":"source.pli","patterns":[{"name":"constant.numeric.pl1","match":"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)\\b"},{"name":"comment.block.pl1","contentName":"comment.block.pl1","begin":"\\/\\*","end":"\\*\\/"},{"name":"string.quoted.double.pl1","contentName":"string.quoted.double.pl1","begin":"\"","end":"\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pl1"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pl1"}}},{"name":"string.quoted.single.pl1","contentName":"string.quoted.single.pl1","begin":"'","end":"'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pl1"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pl1"}}},{"name":"keyword.pli","match":"(?\u003c![-_a-zA-Z0-9])(?i:ABNORMAL|ABS|ACOS|ACOSF|ADD|ADDBUFF|ADDR|ADDRDATA|ALIAS|ALIGNED|ALL|ALLOC|ALLOCATION|ALLOCN|ALLOCSIZE|ANY|ANYCONDITION|AREA|ASCII|ASIN|ASINF|ASM|ASMTDLI|ASSEMBLER|ASSIGNABLE|ATAN|ATAND|ATANF|ATANH|ATTENTION|ATTN|AUTO|AUTOMATIC|AVAILABLEAREA|BACKWARDS|BASED|BIGENDIAN|BIN|BINARY|BINARYVALUE|BIND|BINVALUE|BIT|BITLOCATION|BKWD|BLKSIZE|BOOL|BUF|BUFFERED|BUFFERS|BUFND|BUFNI|BUFOFF|BUFSP|BUILTIN|BX|BY|BYADDR|BYTE|BYVALUE|B4|CAST|CDS|CEIL|CENTERLEFT|CENTERRIGHT|CENTRELEFT|CENTRERIGHT|CHAR|CHARACTER|CHARG|CHARGRAPHIC|CHARVAL|CHECK|CHECKSTG|CMPAT|COBOL|COL|COLLATE|COLUMN|COMMENT|COMPARE|COMPILEDATE|COMPILETIME|COMPLETION|COMPLEX|COND|CONDITION|CONJG|CONN|CONNECTED|CONSECUTIVE|CONTROLLED|CONV|CONVERSION|COPY|COS|COSD|COSF|COSH|COUNT|COUNTER|CPLN|CPLX|CS|CSTG|CTL|CTLASA|CTL360|CURRENTSIZE|CURRENTSTORAGE|DATA|DATAFIELD|DATE|DATETIME|DAYS|DAYSTODATE|DAYSTOSECS|DB|DCL|DEC|DECIMAL|DEF|DEFINE|DEFINED|DESCRIPTOR|DESCRIPTORS|DFT|DIM|DIMENSION|DIRECT|DIVIDE|DOWNTHRU|EDIT|ELSE|EMPTY|ENDFILE|ENDPAGE|ENTRYADDR|ENV|ENVIRONMENT|EPSILON|ERF|ERFC|ERROR|EVENT|EXCL|EXCLUSIVE|EXIT|EXP|EXPF|EXPONENT|EXPORTS|EXT|EXTERNAL|FB|FBS|FILE|FILEDDINT|FILEDDTEST|FILEDDWORD|FILEID|FILEOPEN|FILEREAD|FILESEEK|FILETELL|FILEWRITE|FINISH|FIRST|FILETELL|FILEWRITE|FINISH|FIRST|FIXED|FIXEDOVERFLOW|FLOAT|FLOOR|FLUSH|FOFL|FORTRAN|FROM|FROMALIEN|FS|GAMMA|GENERIC|GENKEY|GETENV|GO|GRAPHIC|GX|HANDLE|HBOUND|HEX|HEXADEC|HEXIMAGE|HIGH|HUGE|IAND|IEEE|IEOR|IGNORE|IMAG|IN|INDEX|INDEXAREA|INDEXED|INIT|INITIAL|INLINE|INOT|INPUT|INT|INTER|INTERNAL|INTO|IOR|IRRED|IRREDUCIBLE|ISIGNED|ISLL|ISMAIN|ISRL|IUNSIGNED|KEY|KEYED|KEYFROM|KEYLENGTH|KEYLOC|KEYTO|LABEL|LAST|LBOUND|LEFT|LENGTH|LIKE|LIMITED|LINE|LINENO|LINESIZE|LINKAGE|LIST|LITTLEENDIAN|LOCATE|LOCATION|LOG|LOGF|LOGGAMMA|LOG10|LOG10F|LOG2|LOW|LOWERCASE|LOWER2|MACCOL|MACLMAR|MACNAME|MACRMAR|MAIN|MAX|MAXEXP|MAXLENGTH|MEMINDEX|MEMSEARCH|MEMVERIFY|MEMVERIFYR|MESEARCHR|MIN|MINEXP|MOD|MPSTR|MULTIPLY|NAME|NATIVE|NCP|NEW|NOCHARG|NOCHARGRAPHIC|NOCHECK|NOCMPAT|NOCONV|NOCONVERSION|NODESCRIPTOR|NOEXECOPS|NOFIXEDOVERFLOW|NOFOFL|NOINLINE|NOLOCK|NOMAP|NOMAPIN|NOMAPOUT|NONASSIGNABLE|NONCONNECTED|NONNATIVE|NOOFL|NOOVERFLOW|NORESCAN|NORMAL|NOSIZE|NOSTRG|NOSTRINGRANGE|NOSTRINGSIZE|NOSTRZ|NOSUBRG|NOSUBSCRIPTRANGE|NOUFL|NOUNDERFLOW|NOWRITE|NOZDIV|NOZERODIVIDE|OFFSET|OFFSETADD|OFFSETDIFF|OFFSETSUBTRACT|OFFSETVALUE|OFL|OMITTED|ONCHAR|ONCODE|ONCONDCOND|ONCONDID|ONCOUNT|ONFILE|ONGSOURCE|ONKEY|ONLOC|ONSOURCE|ONSUBCODE|ONWCHAR|ONWSOURCE|OPTIONAL|OPTIONS|ORDER|ORDINAL|ORDINALNAME|ORDINALPRED|ORDINALSUCC|OTHER|OTHERWISE|OUTPUT|OVERFLOW|PACKAGENAME|PAGE|PAGENO|PAGESIZE|PARAMETER|PARMSET|PASSWORD|PENDING|PIC|PICTURE|PLACES|POINTER|POINTERADD|POINTERDIFF|POINTERSUBTRACT|POINTERVALUE|POLY|POS|POSITION|PREC|PRECISION|PRED|PRESENT|PRINT|PRIORITY|PROC|PROCEDURENAME|PROD|PTR|PTRADD|PTRVALUE|PUTENV|QUOTE|RADIX|RAISE2|RANDOM|RANGE|RANK|REAL|RECORD|RECSIZE|RECURSIVE|RED|REDUCIBLE|REENTRANT|REFER|REGIONAL|REM|REORDER|REPATTERN|REPEAT|REPLACEBY2|REPLY|REREAD|RESCAN|RESERVED|RESERVES|RESIGNAL|RESPEC|RETCODE|RETURNS|REUSE|REVERSE|RIGHT|ROUND|SAMEKEY|SCALARVARYING|SCALE|SEARCH|SEARCHR|SECS|SECSTODATE|SECSTODAYS|SEQL|SEQUENTIAL|SERIALIZE4|SET|SIGN|SIGNED|SIN|SIND|SINF|SINH|SIS|SIZE|SKIP|SNAP|SOURCEFILE|SOURCELINE|SQRT|SQRTF|STATEMENT|STATIC|STATUS|STG|STMT|STORAGE|STREAM|STRG|STRING|STRINGRANGE|STRINGSIZE|STRUCTURE|STRZ|SUBRG|SUBSCRIPTRANGE|SUBSTR|SUBTRACT|SUCC|SUM|SYSIN|SYSNULL|SYSPARM|SYSPRINT|SYSTEM|SYSVERSION|TALLY|TAN|TAND|TANF|TANH|TASK|THEN|THREADID|TIME|TINY|TITLE|TO|TOTAL|TPK|TPM|TRANSIENT|TRANSLATE|TRANSMIT|TRIM|TRKOFL|TRUNC|TYPE|UFL|UNAL|UNALIGNED|UNALLOCATED|UNBUF|UNBUFFERED|UNDEFINEDFILE|UNDERFLOW|UNDF|UNLOCK|UNSIGNED|UNSPEC|UNTIL|UPDATE|UPPERCASE|UPTHRU|VALID|VALIDDATE|VALUE|VAR|VARGLIST|VARGSIZE|VARIABLE|VARYING|VARYINGZ|VB|VBS|VERIFY|VERIFYR|VS|VSAM|WAIT|WCHAR|WCHARVAL|WEEKDAY|WHEN|WHIGH|WHILE|WIDECHAR|WHEN|WHIGH|WHILE|WIDECHAR|WLOW|XMLCHAR|Y4DATE|Y4JULIAN|Y4YEAR|ZDIV|ZERODIVIDE)(?=\\s+|;|\\(|\\))"},{"name":"support.function.pli","match":"(?:^|\\s+)(?i:PLIASCII|PLICTF|PLICTFHX|PLIDUMP|PLIEBCDIC|PLIFILL|PLIMOVE|PLIOVER|PLIRETC|PLIRETV|PLISAXA|PLISAXB|PLISAXC|PLISRTx|PLITEST)(?=\\s+|;|\\(|\\))"},{"name":"meta.preprocessor.pli","match":"(?:^|\\s+)(?i:%ACTIVATE|%ACT|%INCLUDE|%DECLARE|%DCL|%LIST|%NOLIST|%OPTION|%PAGE|%POP|%PRINT|%NOPRINT|%PROCESS|%PUSH|%REPLACE|%SKIP|%XINCLUDE)(?=\\s+|;|\\(|\\))"},{"name":"meta.preprocessor.pli","match":"(?:^|\\s+)(?i:%[0-9a-zA-Z]*|%[0-9a-zA-Z]*)(?=\\s+|;|:|\\(|\\))"},{"name":"keyword.pli","match":"(?:^|\\s+)(?i:BEGIN|CALL|CLOSE|DECLARE|DEFAULT|DEFINEALIAS|DELAY|DELETE|DISPLAY|DO|END|ENTRY|FETCH|FORMAT|FREE|GET|GOTO|IF|LEAVE|NULL|ON|OPEN|PACKAGE|PROCEDURE|PUT|READ|RELEASE|RETURN|REVERT|REWRITE|SELECT|SIGNAL|STOP|WRITE)(?=\\s+|;|\\(|\\))"}]}
|
data/grammars/source.pony.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Pony","scopeName":"source.pony","patterns":[{"include":"#block-comments"},{"include":"#line-comments"},{"include":"#typedeclarations"},{"include":"#methoddeclarations"},{"include":"#keywords"},{"include":"#constants"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"block-comments":{"name":"comment.block.pony","begin":"/\\*","end":"\\*/","patterns":[{"include":"#block-comments"}]},"constants":{"patterns":[{"name":"constant.other.pony","match":"\\b(this)\\b"},{"name":"constant.language.pony","match":"\\b(true|false)\\b"},{"name":"constant.numeric.pony","match":"\\b((0b[0-1_]*)|(0x[0-9a-fA-F_]*)|([0-9][0-9_]*(\\.[0-9][0-9_]*)?((e|E)(\\+|-)?[0-9_]+)?))\\b"}]},"identifiers":{"patterns":[{"match":"\\b([_a-z][_a-zA-Z0-9]*)\\b(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"match":"\\.\\s*([_a-z][_a-zA-Z0-9]*)\\b[^\\(\\[]","captures":{"1":{"name":"variable.parameter.pony"}}},{"match":"@\\s*([_a-zA-z][_a-zA-Z0-9]*)\\s*(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"name":"entity.name.class.pony","match":"\\b(_*[A-Z][_a-zA-Z0-9]*)\\b"},{"match":"\\b(_*[a-z][_a-zA-Z0-9']*)"}]},"keywords":{"patterns":[{"name":"keyword.other.intrinsic.pony","match":"\\b(compile_intrinsic|compile_error)\\b"},{"name":"keyword.other.import.pony","match":"\\b(use)\\b"},{"name":"keyword.other.declaration.pony","match":"\\b(var|let|embed
|
1
|
+
{"name":"Pony","scopeName":"source.pony","patterns":[{"include":"#block-comments"},{"include":"#line-comments"},{"include":"#typedeclarations"},{"include":"#methoddeclarations"},{"include":"#keywords"},{"include":"#constants"},{"include":"#identifiers"},{"include":"#strings"}],"repository":{"block-comments":{"name":"comment.block.pony","begin":"/\\*","end":"\\*/","patterns":[{"include":"#block-comments"}]},"constants":{"patterns":[{"name":"constant.other.pony","match":"\\b(this)\\b"},{"name":"constant.language.pony","match":"\\b(true|false)\\b"},{"name":"constant.numeric.pony","match":"\\b((0b[0-1_]*)|(0x[0-9a-fA-F_]*)|([0-9][0-9_]*(\\.[0-9][0-9_]*)?((e|E)(\\+|-)?[0-9_]+)?))\\b"}]},"identifiers":{"patterns":[{"match":"\\b([_a-z][_a-zA-Z0-9]*)\\b(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"match":"\\.\\s*([_a-z][_a-zA-Z0-9]*)\\b[^\\(\\[]","captures":{"1":{"name":"variable.parameter.pony"}}},{"match":"@\\s*([_a-zA-z][_a-zA-Z0-9]*)\\s*(\\(|\\[)","captures":{"1":{"name":"support.function.pony"}}},{"name":"entity.name.class.pony","match":"\\b(_*[A-Z][_a-zA-Z0-9]*)\\b"},{"match":"\\b(_*[a-z][_a-zA-Z0-9']*)"}]},"keywords":{"patterns":[{"name":"keyword.other.intrinsic.pony","match":"\\b(compile_intrinsic|compile_error)\\b"},{"name":"keyword.other.import.pony","match":"\\b(use)\\b"},{"name":"keyword.other.declaration.pony","match":"\\b(var|let|embed)\\b"},{"name":"entity.other.attribute-name.pony","match":"\\b(iso|trn|ref|val|box|tag)\\b"},{"name":"keyword.control.jump.pony","match":"\\b(break|continue|return|error)\\b"},{"name":"keyword.control.pony","match":"\\b(if|ifdef|then|elseif|else|end|match|where|try|with|as|recover|consume|object|digestof)\\b"},{"name":"keyword.control.loop.pony","match":"\\b(while|do|repeat|until|for|in)\\b"},{"match":"(\\?|[-=]\u003e)"},{"match":"(\\-|\\+|\\*|/(?![/*])|%|\u003c\u003c|\u003e\u003e)"},{"match":"(==|!=|\u003c=|\u003e=|\u003c|\u003e)"},{"match":"\\b(is|isnt|not|and|or|xor)\\b"},{"match":"="},{"match":"(\\||\\\u0026|\\,|\\^)"}]},"line-comments":{"name":"comment.line.double-slash.pony","begin":"//","end":"\\n"},"methoddeclarations":{"match":"\\b(new|be|fun)\\s+(\\\\[_a-z][_a-zA-Z0-9]*\\\\)?\\s*(iso|trn|ref|val|box|tag)?\\b\\s*([_a-z][_a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.declaration.pony"},"2":{"name":"support.other.annotation.pony"},"3":{"name":"keyword.other.capability.pony"},"4":{"name":"entity.name.function.pony"}}},"strings":{"patterns":[{"name":"constant.character.pony","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.pony","match":"\\\\(?:[abfnrtv\\\\\"0]|x[0-9A-Fa-f]{2})"},{"name":"invalid.illegal.pony","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.character.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.character.end.pony"}}},{"name":"variable.parameter.pony","begin":"\"\"\"","end":"\"\"\"(?!\")","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pony"}}},{"name":"string.quoted.double.pony","begin":"\"","end":"\"","patterns":[{"name":"constant.string.escape.pony","match":"\\\\(?:[abfnrtv\\\\\"0]|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{6})"},{"name":"invalid.illegal.pony","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.pony"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.pony"}}}]},"typedeclarations":{"match":"\\b(type|interface|trait|primitive|struct|class|actor)\\s+(\\\\[_a-z][_a-zA-Z0-9]*\\\\)?\\s*(iso|trn|ref|val|box|tag)?@?\\s*([_A-Z][_a-zA-Z0-9]*)","captures":{"1":{"name":"keyword.declaration.pony"},"2":{"name":"support.other.annotation.pony"},"3":{"name":"keyword.other.capability.pony"},"4":{"name":"entity.name.type.pony"}}}}}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"name":"Portugol","scopeName":"source.portugol","patterns":[{"name":"comment.block.portugol","begin":"/\\*","end":"\\*/"},{"name":"comment.double-slash.portugol","match":"//.*"},{"name":"string.quoted.double.portugol","begin":"\"","end":"\""},{"name":"string.quoted.single.portugol","begin":"'","end":"'"},{"name":"keyword.control.portugol","match":"\\b(para|caso|continue|senao|para|se|escolha|enquanto|e|ou)\\b"},{"name":"keyword.other.portugol","match":"\\b(inclua|biblioteca|programa)\\b"},{"name":"keyword.operator.new.portugol","match":"\\b(=|!|\u003c|\u003e|\u0026|\\+|raiz|sen|cos|mod|div|-|\\^|\\*|\\/|\\|)\\b"},{"name":"constant.numeric.portugol","match":"\\b(\\d+|\\d+.?(f)?)\\b"},{"name":"constant.rgb-value.portugol","match":"(#)([0-9a-fA-F]{3}|[0-9a-fA-F]{6})\\b(?!.*?(?\u003c!@){)"},{"name":"constant.language.portugol","match":"\\b(falso|NULL|verdadeiro)\\b"},{"name":"storage.type.portugol","match":"\\b(enum|struct|state|array)\\b"},{"name":"variable.language.portugol","match":"\\b(this|parent|super)\\b"},{"begin":"(funcao)\\s*(\\/\\*.*\\*\\/)?\\s*(\\w+)\\s*\\(","end":"\\)(\\s*:\\s*(array\\s*\u003c\\s*\\w+\\s*\u003e|\\w*))?","patterns":[{"match":"\\s*(out|optional)?\\s*(\\w+)\\s*:\\s*(array\\s*\u003c\\s*\\w+\\s*\u003e|\\w*|),?","captures":{"1":{"name":"keyword.other.portugol"},"2":{"name":"support.variable.portugol"},"3":{"patterns":[{"include":"#witcherscript-var-types"}]}}}],"beginCaptures":{"1":{"name":"support.type.portugol"},"2":{"name":"comment.block.portugol"},"3":{"name":"support.function.portugol"}},"endCaptures":{"2":{"patterns":[{"include":"#witcherscript-var-types"}]}}},{"begin":"\\b(variavel)\\b\\s*","end":":\\s*(array\\s*\u003c\\s*\\w+\\s*\u003e|\\w*)\\s*;","patterns":[{"name":"support.variable.portugol","match":"(\\w+)\\s*,?"}],"beginCaptures":{"1":{"name":"storage.type.portugol"}},"endCaptures":{"1":{"patterns":[{"include":"#witcherscript-var-types"}]}}},{"match":"(default)\\s*(\\w+)","captures":{"1":{"name":"keyword.control.portugol"},"2":{"name":"support.variable"}}},{"match":"(escreva|leia)\\s*(\\w*)","captures":{"1":{"name":"keyword.other.portugol"},"2":{"name":"support.class.portugol"}}},{"match":"\\(\\s*(\\s*[A-Z]\\w+\\s*)\\s*\\)\\s*\\(","captures":{"1":{"name":"support.class.portugol"}}},{"match":"\\(\\s*\\(\\s*([A-Z]\\w+)\\s*\\)","captures":{"1":{"name":"support.class.portugol"}}},{"match":"(novo|nova)\\s*(\\w+)\\s*(in)\\s*(this)","captures":{"1":{"name":"variable.language.portugol"},"2":{"name":"support.class.portugol"},"3":{"name":"variable.language.portugol"},"4":{"name":"variable.language.portugol"}}},{"include":"#witcherscript-data-types"}],"repository":{"witcherscript-data-types":{"patterns":[{"name":"storage.type.portugol","match":"\\b(cadeia|inteiro|caractere|logico|real)\\b"}]},"witcherscript-object-types":{"patterns":[{"name":"support.class.portugol","match":"[A-Z]\\w+"}]},"witcherscript-var-types":{"patterns":[{"include":"#witcherscript-object-types"},{"match":"(array)\\s*\u003c\\s*(\\w+)\\s*\u003e","captures":{"1":{"name":"storage.type.portugol"},"2":{"patterns":[{"include":"#witcherscript-object-types"},{"include":"#witcherscript-data-types"}]}}},{"include":"#witcherscript-data-types"}]}}}
|
data/grammars/source.q.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"q/kdb","scopeName":"source.q","patterns":[{"name":"comment.block.q","begin":"^\\s*/\\s*$\\n","end":"^\\s*\\\\\\s*$\\n"},{"name":"comment.block.q","begin":"^\\\\\\s*\\n","end":"'As far as I know, there is no way to exit this kind of block comment'"},{"name":"comment.line.q","match":"\\s/.+$\\n?|^/.+$\\n"},{"name":"string.quoted.string.source.q","begin":"\"","end":"\"","patterns":[{"name":"constant.numeric.complex.source.q","match":"\\\\[trn\\\\\\\"]"},{"name":"constant.numeric.complex.source.q","match":"\\\\[0-9]{3}"},{"name":"message.error.q","match":"\\\\[0-9]{1,2}"}]},{"name":"string.interpolated.symbol.q","match":"(`:[:/a-zA-Z0-9_.]*)|(`[:a-zA-Z0-9_.]*)"},{"begin":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.namespace_dict_assign.q"},"3":{"name":"variable.parameter.complex.namespace_dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"name":"variable.parameter.complex.namespace_assignment.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"4":{"name":"support.function.assignment.q"},"5":{"name":"support.function.assignment.q"}}},{"name":"support.function.namespace.q","match":"\\.[qQhkozj]\\.\\w+"},{"name":"source.other_namespaces.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*(?=(\\W|\\b))"},{"name":"other.assignment.q","match":"(?\u003c=([^a-zA-Z0-9])|(?\u003c=\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"2":{"name":"variable.parameter.complex.assignment.q"},"3":{"name":"support.function.q"},"4":{"name":"support.function.q"}}},{"begin":"(?=([^a-zA-Z0-9]|\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"contentName":"meta.function.parameters.q","begin":"(\\{\\s*\\[)","end":"]","patterns":[{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*(?:(;)|(?=[\\]\\)]))","captures":{"1":{"name":"entity.other.inherited-class.q"},"2":{"name":"punctuation.separator.parameters.q"}}}]},{"name":"keyword.other.complex.keyword.q","match":"(?=(\\W|\\b))(abs|acos|aj|aj0|all|and|any|asc|asin|asof|atan|attr|avg|avgs|bin|binr|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|each|ej|ema|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|idesc|if|ij|ijf|in|insert|inter|inv|key|keys|last|like|lj|ljf|load|log|lower|lsq|ltime|ltrim|mavg|max|maxs|mcount|md5|mdev|med|meta|min|mins|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|prd|prds|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ss|ssr|string|sublist|sum|sums|sv|svar|system|tables|tan|til|trim|type|uj|ujf|ungroup|union|update|upper|upsert|value|var|view|views|vs|wavg|where|while|within|wj|wj1|wsum|xasc|xbar|xcol|xcols|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timestamp.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}D[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-SU-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.datetime.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}T[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timespan.q","match":"(?=(\\W|\\b))(([0-9]{1,6}D([0-9]{1,2})((:[0-5][0-9]){0,2}|:)(\\.[0-9]{0,9}[a-zA-Z0-9]*[A-Zacgklnopqrtuvwxy0-9])?)|([0-9]{2}:[0-5][0-9](:[0-5][0-9]\\.[0-9]{4,}|:[0-5][0-9]\\.[0-9]{9,}[a-zA-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])|\\.[0-9]{8,}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.time.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]((:[0-9]{2}(((([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:]){1,2})?([0-5][0-9]){1,2})|\\.[0-9]{3}[ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9]?|\\.[0-9]{0,3}))|\\.[0-9]{4,7}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.second.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]([0-5][0-9]([0-5][0-9])?|\\.[0-9]{2}|:[0-9]{2}|([a-zA-Z]){0,2}[0-5][0-9]))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.minute.q","match":"(?=(\\W|\\b))([0-9]{2}:([0-5][0-9]([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:])?)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.date.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2})(?=(\\W|\\b))"},{"name":"constant.numeric.complex.month.q","match":"(?=(\\W|\\b))([0-9]{4,}\\.([0][1-9]|[1][0-2])m)(?=(\\W|\\b))"},{"name":"support.function.io.q","match":"0:|1:|2:"},{"name":"constant.numeric.complex.q","match":"((?\u003c=(\\W))|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+[bhijf]?(\\.[0-9]+[m]?)?|0x[a-fA-F0-9]+)(?=(\\W|\\b)|_)"},{"name":"constant.numeric.complex.real.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+e[-]?[0-9]+)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.null.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0n|0N[ghijepmdznuvt]?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.inf.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0w|0W[hijepdznuvt]?)(?=(\\W|\\b))"},{"name":"support.function.q","match":"[!$@\\\\/#?|',`\\\\:]"},{"name":"support.function.q","match":"\\.(?=\\W)"},{"name":"source.q","match":"[a-zA-Z][a-zA-Z0-9_]+"},{"name":"support.function.q","match":"(?\u003c=[0-9\\s])_"}]}
|
1
|
+
{"name":"q/kdb","scopeName":"source.q","patterns":[{"name":"comment.block.q","begin":"^\\s*/\\s*$\\n","end":"^\\s*\\\\\\s*$\\n"},{"name":"comment.block.q","begin":"^\\\\\\s*\\n","end":"'As far as I know, there is no way to exit this kind of block comment'"},{"name":"comment.line.q","match":"\\s/.+$\\n?|^/.+$\\n"},{"name":"string.quoted.string.source.q","begin":"\"","end":"\"","patterns":[{"name":"constant.numeric.complex.source.q","match":"\\\\[trn\\\\\\\"]"},{"name":"constant.numeric.complex.source.q","match":"\\\\[0-9]{3}"},{"name":"message.error.q","match":"\\\\[0-9]{1,2}"}]},{"name":"string.interpolated.symbol.q","match":"(`:[:/a-zA-Z0-9_.]*)|(`[:a-zA-Z0-9_.]*)"},{"begin":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.namespace_dict_assign.q"},"3":{"name":"variable.parameter.complex.namespace_dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"name":"variable.parameter.complex.namespace_assignment.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"4":{"name":"support.function.assignment.q"},"5":{"name":"support.function.assignment.q"}}},{"name":"support.function.namespace.q","match":"\\.[qQhkozj]\\.\\w+"},{"name":"source.other_namespaces.q","match":"(?=(\\W|\\b))(\\.[a-zA-Z]+[a-zA-Z0-9_]*)(\\.[a-zA-Z0-9_]*)*(?=(\\W|\\b))"},{"name":"other.assignment.q","match":"(?\u003c=([^a-zA-Z0-9])|(?\u003c=\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","captures":{"2":{"name":"variable.parameter.complex.assignment.q"},"3":{"name":"support.function.q"},"4":{"name":"support.function.q"}}},{"begin":"(?=([^a-zA-Z0-9]|\\b))([a-zA-Z]+[a-zA-Z0-9_]*)\\s*\\[(?=.*\\]\\s*([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:))","end":"\\]([,+\\-*%@$!?\u003c\u003e=~|\u0026\\#]?)(::|:)","patterns":[{"include":"$self"}],"beginCaptures":{"2":{"name":"variable.parameter.complex.dict_assign.q"}},"endCaptures":{"1":{"name":"support.function.assignment.q"},"2":{"name":"support.function.assignment.q"}}},{"contentName":"meta.function.parameters.q","begin":"(\\{\\s*\\[)","end":"]","patterns":[{"match":"\\b([a-zA-Z_][a-zA-Z0-9_]*)\\s*(?:(;)|(?=[\\]\\)]))","captures":{"1":{"name":"entity.other.inherited-class.q"},"2":{"name":"punctuation.separator.parameters.q"}}}]},{"name":"keyword.other.complex.keyword.q","match":"(?=(\\W|\\b))(abs|acos|aj|aj0|ajf|ajf0|all|and|any|asc|asin|asof|atan|attr|avg|avgs|bin|binr|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|each|ej|ema|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|idesc|if|ij|ijf|in|insert|inter|inv|key|keys|last|like|lj|ljf|load|log|lower|lsq|ltime|ltrim|mavg|max|maxs|mcount|md5|mdev|med|meta|min|mins|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|prd|prds|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ss|ssr|string|sublist|sum|sums|sv|svar|system|tables|tan|til|trim|type|uj|ujf|ungroup|union|update|upper|upsert|value|var|view|views|vs|wavg|where|while|within|wj|wj1|ww|wsum|xasc|xbar|xcol|xcols|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timestamp.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}D[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-SU-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.datetime.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2}T[0-9]{2}(:[0-5][0-9]){0,2}(\\.[0-9]{3}([a-zA-CE-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])?|\\.[0-9]*|:)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.timespan.q","match":"(?=(\\W|\\b))(([0-9]{1,6}D([0-9]{1,2})((:[0-5][0-9]){0,2}|:)(\\.[0-9]{0,9}[a-zA-Z0-9]*[A-Zacgklnopqrtuvwxy0-9])?)|([0-9]{2}:[0-5][0-9](:[0-5][0-9]\\.[0-9]{4,}|:[0-5][0-9]\\.[0-9]{9,}[a-zA-Z0-9]*[ABCEFGHIJKLMNOPQRSUVWXYZagklnopqrtuvwxy0-9])|\\.[0-9]{8,}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.time.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]((:[0-9]{2}(((([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:]){1,2})?([0-5][0-9]){1,2})|\\.[0-9]{3}[ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9]?|\\.[0-9]{0,3}))|\\.[0-9]{4,7}))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.second.q","match":"(?=(\\W|\\b))([0-9]{2}:[0-5][0-9]([0-5][0-9]([0-5][0-9])?|\\.[0-9]{2}|:[0-9]{2}|([a-zA-Z]){0,2}[0-5][0-9]))(?=(\\W|\\b))"},{"name":"constant.numeric.complex.minute.q","match":"(?=(\\W|\\b))([0-9]{2}:([0-5][0-9]([ABCEFGHIJKLMNOPQRSUVWXYZacgklnopqrtuvwxy0-9:])?)?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.date.q","match":"(?=(\\W|\\b))([0-9]{4}\\.[0-9]{2}\\.[0-9]{2})(?=(\\W|\\b))"},{"name":"constant.numeric.complex.month.q","match":"(?=(\\W|\\b))([0-9]{4,}\\.([0][1-9]|[1][0-2])m)(?=(\\W|\\b))"},{"name":"support.function.io.q","match":"0:|1:|2:"},{"name":"constant.numeric.complex.q","match":"((?\u003c=(\\W))|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+[bhijf]?(\\.[0-9]+[m]?)?|0x[a-fA-F0-9]+)(?=(\\W|\\b)|_)"},{"name":"constant.numeric.complex.real.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))([-]?[0-9]+e[-]?[0-9]+)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.null.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0n|0N[ghijepmdznuvt]?)(?=(\\W|\\b))"},{"name":"constant.numeric.complex.inf.q","match":"((?\u003c=\\W)|(?\u003c=_)|(?\u003c=\\b))(0w|0W[hijepdznuvt]?)(?=(\\W|\\b))"},{"name":"support.function.q","match":"[!$@\\\\/#?|',`\\\\:]"},{"name":"support.function.q","match":"\\.(?=\\W)"},{"name":"source.q","match":"[a-zA-Z][a-zA-Z0-9_]+"},{"name":"support.function.q","match":"(?\u003c=[0-9\\s])_"}]}
|
data/grammars/source.rascal.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Rascal","scopeName":"source.rascal","patterns":[{"include":"#top_level"}],"repository":{"annotation":{"patterns":[{"name":"comment.block.annotation.rascal","begin":"(@[^ {]+)({)","end":"(})","beginCaptures":{"1":{"name":"storage.type.annotation.block.rascal"},"2":{"name":"punctuation.annotation-argument.begin.rascal"}},"endCaptures":{"1":{"name":"punctuation.annotation-argument.end.rascal"}}},{"name":"meta.annotation.inline.rascal","match":"(@[A-Za-z_0-9]+)","captures":{"1":{"name":"storage.type.annotation.inline.rascal"}}}]},"char_set":{"patterns":[{"name":"punctuation.other.lexicalcharset.rascal","begin":"\\[","end":"\\]","patterns":[{"include":"#string_escape"}]}]},"comment":{"patterns":[{"name":"comment.line.double-slash.rascal","match":"//.*$\\n?"},{"name":"comment.block.rascal","begin":"/\\*","end":"\\*/"}]},"regex":{"patterns":[{"name":"string.regexp.rascal","end":"/([dims]*)","patterns":[{"include":"#regex_escape"},{"include":"#string_interpolation"}],"endCaptures":{"1":{"name":"storage.modifier.regex.rascal"}}}]},"regex_escape":{"patterns":[{"name":"constant.character.escape.regex.rascal","match":"\\\\(/|\u003c|\u003e|\\\\)"}]},"string":{"patterns":[{"name":"string.quoted.single.rascal","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.double.rascal","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"},{"include":"#string_interpolation"}]},{"name":"string.interpolated.rascal","begin":"`","end":"`","patterns":[{"include":"#string_interpolation"},{"include":"#syntax_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.ordinary.rascal","match":"\\\\(\\\"|\\'|\u003c|\u003e|\\\\|[bnfrt])"},{"name":"constant.character.escape.unicode.rascal","match":"\\\\(u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |U(0[0-9 A-F a-f]|10)[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |a[0-7][0-9A-Fa-f] )"}]},"string_interpolation":{"patterns":[{"name":"support.interpolated-string.rascal","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#top_level"}],"beginCaptures":{"1":{"name":"punctuation.interpolation.begin.rascal"}},"endCaptures":{"2":{"name":"punctuation.interpolation.end.rascal"}}}]},"syntax_escape":{"patterns":[{"name":"constant.character.escape.syntax.rascal","match":"\\\\(\\\\|\u003c|\u003e|`)"}]},"top_level":{"patterns":[{"name":"punctuation.other.syntactic.rascal","begin":"(lexical|syntax)\\s+([a-zA-Z][A-Za-z_0-9]*)","end":";","patterns":[{"include":"#char_set"},{"include":"#string"},{"include":"#comment"},{"include":"#regex"},{"include":"#annotation"}],"captures":{"1":{"name":"keyword.control.rascal"},"2":{"name":"entity.name.type.rascal"}}},{"name":"constant.numeric.decimal.rascal","match":"(?\u003c![A-Za-z_])(0(?![0-9a-z_A-Z])|[1-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"constant.numeric.hex.rascal","match":"(?\u003c![A-Za-z_])0[Xx][0-9A-Fa-f]+(?![0-9a-z_A-Z])"},{"name":"constant.numeric.octal.rascal","match":"(?\u003c![A-Za-z_])0[0-7]+(?![0-9a-z_A-Z])"},{"name":"string.other.datetime.rascal","begin":"\\\\$","end":"\\\\$"},{"name":"constant.numeric.real.rascal","match":"(?\u003c![A-Za-z_]) ([0-9]+[dDfF] |[0-9]+[eE][+\\-]?[0-9]+[dDfF]? |[0-9]+\\.(?!\\.)[0-9]*[dDfF]? |[0-9]+\\.[0-9]*[eE][+\\-]?[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[eE][+\\-]?[0-9]+[dDfF]? )"},{"name":"constant.language.bool.rascal","match":"\\b(true|false)\\b"},{"name":"constant.numeric.rational.rascal","match":"(?\u003c![A-Za-z_])([0-9][0-9]*r|[1-9][0-9]*r[0-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"keyword.control.rascal","match":"\\b(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start)\\b"},{"name":"support.type.basic.rascal","match":"\\b(value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)\\b"},{"include":"#string"},{"include":"#regex"},{"include":"#annotation"},{"include":"#comment"},{"name":"variable.other.ordinary.rascal","match":"\\b[a-zA-Z][A-Za-z_0-9]*\\b"},{"name":"variable.other.escaped-keyword.rascal","match":"\\\\(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start|value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)"},{"name":"string.other.url.rascal","match":"\\|([0-9a-z_A-Z.\\-_~:/?#\\[\\]@!$\u0026'()*+,;=`])+\\|","captures":{"1":{"name":"markup.underline.link.rascal"}}}]}}}
|
1
|
+
{"name":"Rascal","scopeName":"source.rascal","patterns":[{"include":"#top_level"}],"repository":{"annotation":{"patterns":[{"name":"comment.block.annotation.rascal","begin":"(@[^ {]+)({)","end":"(})","beginCaptures":{"1":{"name":"storage.type.annotation.block.rascal"},"2":{"name":"punctuation.annotation-argument.begin.rascal"}},"endCaptures":{"1":{"name":"punctuation.annotation-argument.end.rascal"}}},{"name":"meta.annotation.inline.rascal","match":"(@[A-Za-z_0-9]+)","captures":{"1":{"name":"storage.type.annotation.inline.rascal"}}}]},"char_set":{"patterns":[{"name":"punctuation.other.lexicalcharset.rascal","begin":"\\[","end":"\\]","patterns":[{"include":"#string_escape"}]}]},"comment":{"patterns":[{"name":"comment.line.double-slash.rascal","match":"//.*$\\n?"},{"name":"comment.block.rascal","begin":"/\\*","end":"\\*/"}]},"regex":{"patterns":[{"name":"string.regexp.rascal","begin":"/(?!/|\\*)","end":"/([dims]*)","patterns":[{"include":"#regex_escape"},{"include":"#string_interpolation"}],"endCaptures":{"1":{"name":"storage.modifier.regex.rascal"}}}]},"regex_escape":{"patterns":[{"name":"constant.character.escape.regex.rascal","match":"\\\\(/|\u003c|\u003e|\\\\)"}]},"string":{"patterns":[{"name":"string.quoted.single.rascal","begin":"'","end":"'","patterns":[{"include":"#string_escape"}]},{"name":"string.quoted.double.rascal","begin":"\"","end":"\"","patterns":[{"include":"#string_escape"},{"include":"#string_interpolation"}]},{"name":"string.interpolated.rascal","begin":"`","end":"`","patterns":[{"include":"#string_interpolation"},{"include":"#syntax_escape"}]}]},"string_escape":{"patterns":[{"name":"constant.character.escape.ordinary.rascal","match":"\\\\(\\\"|\\'|\u003c|\u003e|\\\\|[bnfrt])"},{"name":"constant.character.escape.unicode.rascal","match":"\\\\(u[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |U(0[0-9 A-F a-f]|10)[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f] |a[0-7][0-9A-Fa-f] )"}]},"string_interpolation":{"patterns":[{"name":"support.interpolated-string.rascal","begin":"(\u003c)","end":"(\u003e)","patterns":[{"include":"#top_level"}],"beginCaptures":{"1":{"name":"punctuation.interpolation.begin.rascal"}},"endCaptures":{"2":{"name":"punctuation.interpolation.end.rascal"}}}]},"syntax_escape":{"patterns":[{"name":"constant.character.escape.syntax.rascal","match":"\\\\(\\\\|\u003c|\u003e|`)"}]},"top_level":{"patterns":[{"name":"punctuation.other.syntactic.rascal","begin":"(lexical|syntax)\\s+([a-zA-Z][A-Za-z_0-9]*)","end":";","patterns":[{"include":"#char_set"},{"include":"#string"},{"include":"#comment"},{"include":"#regex"},{"include":"#annotation"}],"captures":{"1":{"name":"keyword.control.rascal"},"2":{"name":"entity.name.type.rascal"}}},{"name":"constant.numeric.decimal.rascal","match":"(?\u003c![A-Za-z_])(0(?![0-9a-z_A-Z])|[1-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"constant.numeric.hex.rascal","match":"(?\u003c![A-Za-z_])0[Xx][0-9A-Fa-f]+(?![0-9a-z_A-Z])"},{"name":"constant.numeric.octal.rascal","match":"(?\u003c![A-Za-z_])0[0-7]+(?![0-9a-z_A-Z])"},{"name":"string.other.datetime.rascal","begin":"\\\\$","end":"\\\\$"},{"name":"constant.numeric.real.rascal","match":"(?\u003c![A-Za-z_]) ([0-9]+[dDfF] |[0-9]+[eE][+\\-]?[0-9]+[dDfF]? |[0-9]+\\.(?!\\.)[0-9]*[dDfF]? |[0-9]+\\.[0-9]*[eE][+\\-]?[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[dDfF]? |\\.(?!\\.)[0-9]+[eE][+\\-]?[0-9]+[dDfF]? )"},{"name":"constant.language.bool.rascal","match":"\\b(true|false)\\b"},{"name":"constant.numeric.rational.rascal","match":"(?\u003c![A-Za-z_])([0-9][0-9]*r|[1-9][0-9]*r[0-9][0-9]*(?![0-9a-z_A-Z]))"},{"name":"keyword.control.rascal","match":"\\b(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start)\\b"},{"name":"support.type.basic.rascal","match":"\\b(value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)\\b"},{"include":"#string"},{"include":"#regex"},{"include":"#annotation"},{"include":"#comment"},{"name":"variable.other.ordinary.rascal","match":"\\b[a-zA-Z][A-Za-z_0-9]*\\b"},{"name":"variable.other.escaped-keyword.rascal","match":"\\\\(syntax|keyword|lexical|break|continue|finally|private|fail|filter|if|tag|extend|append|non-assoc|assoc|test|anno|layout|data|join|it|bracket|in|import|all|solve|try|catch|notin|else|insert|switch|return|case|while|throws|visit|for|assert|default|map|alias|any|module|mod|public|one|throw|start|value|loc|node|num|type|bag|int|rat|rel|lrel|real|tuple|str|bool|void|datetime|set|map|list)"},{"name":"string.other.url.rascal","match":"\\|([0-9a-z_A-Z.\\-_~:/?#\\[\\]@!$\u0026'()*+,;=`])+\\|","captures":{"1":{"name":"markup.underline.link.rascal"}}}]}}}
|
data/grammars/source.rego.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Rego","scopeName":"source.rego","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#operator"},{"include":"#head"},{"include":"#term"}],"repository":{"call":{"name":"meta.function-call.rego","match":"([a-zA-Z_][a-zA-Z0-9_]*)\\(","captures":{"1":{"name":"support.function.any-method.rego"}}},"comment":{"name":"comment.line.number-sign.rego","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.rego"}}},"constant":{"name":"constant.language.rego","match":"\\b(?:true|false|null)\\b"},"head":{"name":"meta.function.rego","begin":"^([[:alpha:]_][[:alnum:]_]*)","end":"(=|{|\\n)","patterns":[{"include":"#term"}],"beginCaptures":{"1":{"name":"entity.name.function.declaration"}}},"keyword":{"name":"keyword.other.rego","match":"(^|\\s+)(?:(default|not|package|import|as|with|else|some|in))\\s+"},"number":{"name":"constant.numeric.rego","match":"(?x: # turn on extended mode\n -? # an optional minus\n (?:\n 0 # a zero\n | # ...or...\n [1-9] # a 1-9 character\n \\d* # followed by zero or more digits\n )\n (?:\n (?:\n \\. # a period\n \\d+ # followed by one or more digits\n )?\n (?:\n [eE] # an e character\n [+-]? # followed by an option +/-\n \\d+ # followed by one or more digits\n )? # make exponent optional\n )? # make decimal portion optional\n )"},"operator":{"patterns":[{"name":"keyword.operator.comparison.rego","match":"\\=|\\!\\=|\u003e|\u003c|\u003c\\=|\u003e\\=|\\+|-|\\*|%|/|\\||\u0026|:\\="}]},"string":{"name":"string.quoted.double.rego","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.rego","match":"(?x: # turn on extended mode\n\t \\\\ # a literal backslash\n\t (?: # ...followed by...\n\t [\"\\\\/bfnrt] # one of these characters\n\t | # ...or...\n\t u # a u\n\t [0-9a-fA-F]{4} # and four hex digits\n\t )\n\t )"},{"name":"invalid.illegal.unrecognized-string-escape.rego","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.rego"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.rego"}}},"term":{"patterns":[{"include":"#constant"},{"include":"#string"},{"include":"#number"},{"include":"#call"},{"include":"#variable"}]},"variable":{"name":"meta.identifier.rego","match":"\\b[[:alpha:]_][[:alnum:]_]*\\b"}}}
|
1
|
+
{"name":"Rego","scopeName":"source.rego","patterns":[{"include":"#comment"},{"include":"#keyword"},{"include":"#operator"},{"include":"#head"},{"include":"#term"}],"repository":{"call":{"name":"meta.function-call.rego","match":"([a-zA-Z_][a-zA-Z0-9_]*)\\(","captures":{"1":{"name":"support.function.any-method.rego"}}},"comment":{"name":"comment.line.number-sign.rego","match":"(#).*$\\n?","captures":{"1":{"name":"punctuation.definition.comment.rego"}}},"constant":{"name":"constant.language.rego","match":"\\b(?:true|false|null)\\b"},"head":{"name":"meta.function.rego","begin":"^([[:alpha:]_][[:alnum:]_]*)","end":"(=|{|\\n)","patterns":[{"include":"#term"}],"beginCaptures":{"1":{"name":"entity.name.function.declaration"}}},"keyword":{"name":"keyword.other.rego","match":"(^|\\s+)(?:(default|not|package|import|as|with|else|some|in|every|if|contains))\\s+"},"number":{"name":"constant.numeric.rego","match":"(?x: # turn on extended mode\n -? # an optional minus\n (?:\n 0 # a zero\n | # ...or...\n [1-9] # a 1-9 character\n \\d* # followed by zero or more digits\n )\n (?:\n (?:\n \\. # a period\n \\d+ # followed by one or more digits\n )?\n (?:\n [eE] # an e character\n [+-]? # followed by an option +/-\n \\d+ # followed by one or more digits\n )? # make exponent optional\n )? # make decimal portion optional\n )"},"operator":{"patterns":[{"name":"keyword.operator.comparison.rego","match":"\\=|\\!\\=|\u003e|\u003c|\u003c\\=|\u003e\\=|\\+|-|\\*|%|/|\\||\u0026|:\\="}]},"string":{"name":"string.quoted.double.rego","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.rego","match":"(?x: # turn on extended mode\n\t \\\\ # a literal backslash\n\t (?: # ...followed by...\n\t [\"\\\\/bfnrt] # one of these characters\n\t | # ...or...\n\t u # a u\n\t [0-9a-fA-F]{4} # and four hex digits\n\t )\n\t )"},{"name":"invalid.illegal.unrecognized-string-escape.rego","match":"\\\\."}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.rego"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.rego"}}},"term":{"patterns":[{"include":"#constant"},{"include":"#string"},{"include":"#number"},{"include":"#call"},{"include":"#variable"}]},"variable":{"name":"meta.identifier.rego","match":"\\b[[:alpha:]_][[:alnum:]_]*\\b"}}}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"name":"ReasonLIGO","scopeName":"source.religo","patterns":[{"include":"#string"},{"include":"#block_comment"},{"include":"#line_comment"},{"include":"#attribute"},{"include":"#macro"},{"include":"#letbinding"},{"include":"#typedefinition"},{"include":"#controlkeywords"},{"include":"#numericliterals"},{"include":"#operators"},{"include":"#identifierconstructor"},{"include":"#module"}],"repository":{"attribute":{"name":"keyword.control.attribute.religo","match":"\\[@.*\\]"},"block_comment":{"name":"comment.block.religo","begin":"/\\*","end":"\\*\\/"},"controlkeywords":{"name":"keyword.control.religo","match":"\\b(switch|if|else|assert|failwith)\\b"},"identifierconstructor":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\s+","captures":{"1":{"name":"variable.other.enummember.religo"}}},"letbinding":{"match":"\\b(let)\\b\\s*\\b(rec|)\\s*\\b([a-zA-Z$_][a-zA-Z0-9$_]*)","captures":{"1":{"name":"keyword.other.religo"},"2":{"name":"storage.modifier.religo"},"3":{"name":"entity.name.function.religo"}}},"line_comment":{"name":"comment.block.religo","match":"\\/\\/.*$"},"macro":{"name":"meta.preprocessor.religo","match":"^\\#[a-zA-Z]+"},"module":{"match":"\\b([A-Z][a-zA-Z0-9_$]*)\\.([a-z][a-zA-Z0-9_$]*)","captures":{"1":{"name":"storage.class.religo"},"2":{"name":"storage.var.religo"}}},"numericliterals":{"name":"constant.numeric.religo","match":"(\\+|\\-)?[0-9]+(n|tz|tez|mutez|)\\b"},"operators":{"name":"keyword.operator.religo","match":"\\s+(\\-|\\+|mod|land|lor|lxor|lsl|lsr|\u0026\u0026|\\|\\||\u003e|!=|\u003c=|=\u003e|\u003c|\u003e)\\s+"},"string":{"name":"string.quoted.double.religo","begin":"\\\"","end":"\\\""},"typedefinition":{"name":"entity.name.type.religo","match":"\\b(type)\\b"}}}
|
data/grammars/source.renpy.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Ren'Py","scopeName":"source.renpy","patterns":[{"begin":"(^[ \\t]+)?(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.python.renpy","begin":"#","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.python.renpy"}}},{"name":"constant.numeric.integer.long.hexadecimal.python.renpy","match":"\\b(?i:(0x[[:xdigit:]]*)L)"},{"name":"constant.numeric.integer.hexadecimal.python.renpy","match":"\\b(?i:(0x[[:xdigit:]]*))"},{"name":"constant.numeric.integer.long.octal.python.renpy","match":"\\b(?i:(0[0-7]+)L)"},{"name":"constant.numeric.integer.octal.python.renpy","match":"\\b(0[0-7]+)"},{"name":"constant.numeric.complex.python.renpy","match":"\\b(?i:(((\\d+(\\.(?=[^a-zA-Z_])\\d*)?|(?\u003c=[^0-9a-zA-Z_])\\.\\d+)(e[\\-\\+]?\\d+)?))J)"},{"name":"constant.numeric.float.python.renpy","match":"\\b(?i:(\\d+\\.\\d*(e[\\-\\+]?\\d+)?))(?=[^a-zA-Z_])"},{"name":"constant.numeric.float.python.renpy","match":"(?\u003c=[^0-9a-zA-Z_])(?i:(\\.\\d+(e[\\-\\+]?\\d+)?))"},{"name":"constant.numeric.float.python.renpy","match":"\\b(?i:(\\d+e[\\-\\+]?\\d+))"},{"name":"constant.numeric.integer.long.decimal.python.renpy","match":"\\b(?i:([1-9]+[0-9]*|0)L)"},{"name":"constant.numeric.integer.decimal.python.renpy","match":"\\b([1-9]+[0-9]*|0)"},{"match":"\\b(global)\\b","captures":{"1":{"name":"storage.modifier.global.python.renpy"}}},{"match":"\\b(nonlocal)\\b","captures":{"1":{"name":"storage.modifier.nonlocal.python.renpy"}}},{"match":"\\b(?:(import)|(from))\\b","captures":{"1":{"name":"keyword.control.import.python.renpy"},"2":{"name":"keyword.control.import.from.python.renpy"}}},{"name":"keyword.control.conditional.python.renpy","match":"\\b(if|elif|else)\\b"},{"name":"keyword.control.exception.python.renpy","match":"\\b(except|finally|try|raise)\\b"},{"name":"keyword.control.repeat.python.renpy","match":"\\b(for|while)\\b"},{"match":"\\b(assert|del|exec|print)\\b","captures":{"1":{"name":"keyword.other.python.renpy"}}},{"name":"invalid.deprecated.operator.python.renpy","match":"\u003c\u003e"},{"name":"keyword.operator.comparison.python.renpy","match":"\u003c\\=|\u003e\\=|\\=\\=|\u003c|\u003e|\\!\\="},{"name":"keyword.operator.assignment.augmented.python.renpy","match":"\\+\\=|-\\=|\\*\\=|/\\=|//\\=|%\\=|\u0026\\=|\\|\\=|\\^\\=|\u003e\u003e\\=|\u003c\u003c\\=|\\*\\*\\="},{"name":"keyword.operator.arithmetic.python.renpy","match":"\\+|\\-|\\*|\\*\\*|/|//|%|\u003c\u003c|\u003e\u003e|\u0026|\\||\\^|~"},{"name":"keyword.operator.assignment.python.renpy","match":"\\="},{"match":"^\\s*(label)\\s*([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.section.python.renpy.label.renpy"}}},{"match":"^\\s*(menu)\\s*([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.section.python.renpy.menu.renpy"}}},{"match":"^\\s*(screen)\\s*([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.class.python.renpy.screen.renpy"}}},{"match":"^\\s*(image)\\s+([a-zA-Z_0-9 ]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.class.image.python.renpy"}}},{"match":"^\\s*(transform)\\s+([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.section.python.renpy.transform.renpy"}}},{"match":"^\\s*(style)\\s+([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.tag.python.renpy.style.renpy"}}},{"match":"^\\s*(define|default)\\s+([a-zA-Z_0-9\\.]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"meta.definition.variable.python.renpy.renpy"}}},{"name":"meta.class.old-style.python.renpy","contentName":"entity.name.type.class.python.renpy","begin":"^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\:)","end":"\\s*(:)","patterns":[{"include":"#entity_name_class"}],"beginCaptures":{"1":{"name":"storage.type.class.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.section.class.begin.python.renpy"}}},{"name":"meta.class.python.renpy","begin":"^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\()","end":"(\\))\\s*(?:(\\:)|(.*$\\n?))","patterns":[{"contentName":"entity.name.type.class.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_class"}]},{"contentName":"meta.class.inheritance.python.renpy","begin":"(\\()","end":"(?=\\)|:)","patterns":[{"contentName":"entity.other.inherited-class.python.renpy","begin":"(?\u003c=\\(|,)\\s*","end":"\\s*(?:(,)|(?=\\)))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.inheritance.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.inheritance.begin.python.renpy"}}}],"beginCaptures":{"1":{"name":"storage.type.class.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.inheritance.end.python.renpy"},"2":{"name":"punctuation.section.class.begin.python.renpy"},"3":{"name":"invalid.illegal.missing-section-begin.python.renpy"}}},{"name":"meta.class.python.renpy","begin":"^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9])","end":"(\\()|(\\s*$\\n?|#.*$\\n?)","patterns":[{"contentName":"entity.name.type.class.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_function"}]}],"beginCaptures":{"1":{"name":"storage.type.class.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.inheritance.begin.python.renpy"},"2":{"name":"invalid.illegal.missing-inheritance.python.renpy"}}},{"name":"meta.function.python.renpy","begin":"^\\s*(def)\\s+(?=[A-Za-z_][A-Za-z0-9_]*\\s*\\()","end":"(\\))\\s*(?:(\\:)|(.*$\\n?))","patterns":[{"contentName":"entity.name.function.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_function"}]},{"contentName":"meta.function.parameters.python.renpy","begin":"(\\()","end":"(?=\\)\\s*\\:)","patterns":[{"include":"#keyword_arguments"},{"match":"\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)]))","captures":{"1":{"name":"variable.parameter.function.python.renpy"},"2":{"name":"punctuation.separator.parameters.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python.renpy"}}}],"beginCaptures":{"1":{"name":"storage.type.function.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python.renpy"},"2":{"name":"punctuation.section.function.begin.python.renpy"},"3":{"name":"invalid.illegal.missing-section-begin.python.renpy"}}},{"name":"meta.function.python.renpy","begin":"^\\s*(def)\\s+(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(\\()|\\s*($\\n?|#.*$\\n?)","patterns":[{"contentName":"entity.name.function.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_function"}]}],"beginCaptures":{"1":{"name":"storage.type.function.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python.renpy"},"2":{"name":"invalid.illegal.missing-parameters.python.renpy"}}},{"name":"meta.function.inline.python.renpy","begin":"(lambda)(?=\\s+)","end":"(\\:)","patterns":[{"contentName":"meta.function.inline.parameters.python.renpy","begin":"\\s+","end":"(?=\\:)","patterns":[{"include":"#keyword_arguments"},{"match":"\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)\\:]))","captures":{"1":{"name":"variable.parameter.function.python.renpy"},"2":{"name":"punctuation.separator.parameters.python.renpy"}}}]}],"beginCaptures":{"1":{"name":"storage.type.function.inline.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python.renpy"},"2":{"name":"punctuation.section.function.begin.python.renpy"},"3":{"name":"invalid.illegal.missing-section-begin.python.renpy"}}},{"match":"\\b(def|lambda)\\b","captures":{"1":{"name":"storage.type.function.python.renpy"}}},{"match":"\\b(class)\\b","captures":{"1":{"name":"storage.type.class.python.renpy"}}},{"name":"keyword.python.renpy","match":"\\$"},{"name":"keyword.python.renpy","match":"\\b(\\$|add|always|and|animation|as|assert|at|attribute|auto|bar|behind|block|break|button|call|camera|choice|circles|class|clear|clockwise|contains|continue|counterclockwise|def|default|define|del|drag|draggroup|elif|else|event|except|exec|expression|finally|fixed|for|frame|from|function|global|grid|group|has|hbox|hide|hotbar|hotspot|if|image|imagebutton|imagemap|import|in|index|init|input|is|jump|key|knot|label|lambda|layeredimage|menu|monologue|mousearea|music|new|nointeract|not|null|nvl|offset|old|on|onlayer|or|parallel|pass|pause|play|print|python|queue|raise|repeat|return|rpy|scene|screen|show|showif|side|sound|stop|strings|style|sustain|tag|take|testcase|text|textbutton|time|timer|transclude|transform|translate|try|use|vbar|vbox|viewport|voice|vpgrid|while|window|with|yield|zorder)\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b((?:action|activate_sound|activated|adjustment|allow|allow_underfull|alpha|alternate|alternate_keysym|arguments|arrowkeys|at|auto|cache|caption|changed|child_size|clicked|cols|copypaste|default|default_focus|drag_handle|drag_joined|drag_name|drag_offscreen|drag_raise|draggable|dragged|drop_allowable|droppable|dropped|edgescroll|exclude|focus|focus_mask|ground|height|hover|hovered|icon_tooltip|id|idle|image_style|insensitive|keysym|layer|length|mask|min_overlap|modal|mouse_drop|mousewheel|pagekeys|pixel_width|predict|prefix|properties|range|repeat|rows|scope|scrollbars|selected|selected_hover|selected_idle|selected_insensitive|sensitive|slow|slow_done|spacing|style|style_group|style_prefix|style_suffix|substitute|suffix|text_style|text_tooltip|tooltip|transpose|unhovered|value|variant|width|xadjustment|xinitial|yadjustment|yinitial|zorder))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b((?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:additive|adjust_spacing|align|alignaround|alpha|alt|anchor|angle|antialias|area|around|background|bar_invert|bar_resizing|bar_vertical|base_bar|black_color|blend|blur|bold|bottom_bar|bottom_gutter|bottom_margin|bottom_padding|box_layout|box_reverse|box_wrap|box_wrap_spacing|caret|child|clipping|color|corner1|corner2|crop|crop_relative|debug|delay|drop_shadow|drop_shadow_color|events|first_indent|first_spacing|fit|fit_first|focus_mask|font|foreground|gl_anisostropic|gl_blend_func|gl_color_mask|gl_depth|gl_mipmap|gl_pixel_perfect|gl_texture_wrap|hinting|hyperlink_functions|italic|justify|kerning|key_events|keyboard_focus|language|layout|left_bar|left_gutter|left_margin|left_padding|line_leading|line_spacing|margin|matrixanchor|matrixcolor|matrixtransform|maximum|maxsize|mesh|mesh_pad|min_width|minimum|minwidth|mipmap|modal|mouse|nearest|newline_indent|offset|order_reverse|outline_scaling|outlines|padding|perspective|pos|radius|rest_indent|right_bar|right_gutter|right_margin|right_padding|rotate|rotate_pad|ruby_style|shader|size|size_group|slow_abortable|slow_cps|slow_cps_multiplier|sound|spacing|strikethrough|subpixel|text_align|text_y_fudge|thumb|thumb_offset|thumb_shadow|top_bar|top_gutter|top_margin|top_padding|transform_anchor|underline|unscrollable|vertical|xalign|xanchor|xanchoraround|xaround|xcenter|xfill|xfit|xmargin|xmaximum|xminimum|xoffset|xpadding|xpan|xpos|xsize|xspacing|xtile|xysize|xzoom|yalign|yanchor|yanchoraround|yaround|ycenter|yfill|yfit|ymargin|ymaximum|yminimum|yoffset|ypadding|ypan|ypos|ysize|yspacing|ytile|yzoom|zoom|zpos|zzoom))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b((?:vscrollbar_|scrollbar_)(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|bar_invert|bar_resizing|bar_vertical|base_bar|bottom_bar|bottom_gutter|clipping|debug|keyboard_focus|left_bar|left_gutter|maximum|minimum|mouse|offset|pos|right_bar|right_gutter|thumb|thumb_offset|thumb_shadow|top_bar|top_gutter|unscrollable|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b(side_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|clipping|debug|maximum|minimum|offset|pos|spacing|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b(text_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:adjust_spacing|align|alt|anchor|antialias|area|black_color|bold|clipping|color|debug|drop_shadow|drop_shadow_color|first_indent|font|hinting|hyperlink_functions|italic|justify|kerning|language|layout|line_leading|line_spacing|maximum|min_width|minimum|minwidth|mipmap|newline_indent|offset|outline_scaling|outlines|pos|rest_indent|ruby_style|size|slow_abortable|slow_cps|slow_cps_multiplier|strikethrough|text_align|text_y_fudge|underline|vertical|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b(viewport_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|clipping|debug|maximum|minimum|offset|pos|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"meta.function.decorator.python.renpy","begin":"^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()","end":"(\\))","patterns":[{"contentName":"entity.name.function.decorator.python.renpy","begin":"(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()","end":"(?=\\s*\\()","patterns":[{"include":"#dotted_name"}],"beginCaptures":{"1":{"name":"punctuation.definition.decorator.python.renpy"}}},{"contentName":"meta.function.decorator.arguments.python.renpy","begin":"(\\()","end":"(?=\\))","patterns":[{"include":"#keyword_arguments"},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}}}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.function.decorator.python.renpy","contentName":"entity.name.function.decorator.python.renpy","begin":"^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*)","end":"(?=\\s|$\\n?|#)","patterns":[{"begin":"(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*(\\.[A-Za-z_][A-Za-z0-9_]*)*)","end":"(?=\\s|$\\n?|#)","patterns":[{"include":"#dotted_name"}],"beginCaptures":{"1":{"name":"punctuation.definition.decorator.python.renpy"}}}]},{"name":"meta.function-call.python.renpy","contentName":"meta.function-call.arguments.python.renpy","begin":"(?\u003c=\\)|\\])\\s*(\\()","end":"(\\))","patterns":[{"include":"#keyword_arguments"},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.function-call.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()","end":"(\\))","patterns":[{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()","end":"(?=\\s*\\()","patterns":[{"include":"#dotted_name"}]},{"contentName":"meta.function-call.arguments.python.renpy","begin":"(\\()","end":"(?=\\))","patterns":[{"include":"#keyword_arguments"},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}}}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.item-access.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\[)","end":"(\\])","patterns":[{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\[)","end":"(?=\\s*\\[)","patterns":[{"include":"#dotted_name"}]},{"contentName":"meta.item-access.arguments.python.renpy","begin":"(\\[)","end":"(?=\\])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}}}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.item-access.python.renpy","contentName":"meta.item-access.arguments.python.renpy","begin":"(?\u003c=\\)|\\])\\s*(\\[)","end":"(\\])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"include":"#line_continuation"},{"include":"#language_variables"},{"name":"constant.language.python.renpy","match":"\\b(None|True|False|Ellipsis|NotImplemented)\\b"},{"include":"#string_quoted_single"},{"include":"#string_quoted_double"},{"include":"#dotted_name"},{"begin":"(\\()","end":"(\\))","patterns":[{"include":"$self"}]},{"match":"(\\[)(\\s*(\\]))\\b","captures":{"1":{"name":"punctuation.definition.list.begin.python.renpy"},"2":{"name":"meta.empty-list.python.renpy"},"3":{"name":"punctuation.definition.list.end.python.renpy"}}},{"name":"meta.structure.list.python.renpy","begin":"(\\[)","end":"(\\])","patterns":[{"contentName":"meta.structure.list.item.python.renpy","begin":"(?\u003c=\\[|\\,)\\s*(?![\\],])","end":"\\s*(?:(,)|(?=\\]))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.list.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.list.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.list.end.python.renpy"}}},{"name":"meta.structure.tuple.python.renpy","match":"(\\()(\\s*(\\)))","captures":{"1":{"name":"punctuation.definition.tuple.begin.python.renpy"},"2":{"name":"meta.empty-tuple.python.renpy"},"3":{"name":"punctuation.definition.tuple.end.python.renpy"}}},{"name":"meta.structure.dictionary.python.renpy","match":"(\\{)(\\s*(\\}))","captures":{"1":{"name":"punctuation.definition.dictionary.begin.python.renpy"},"2":{"name":"meta.empty-dictionary.python.renpy"},"3":{"name":"punctuation.definition.dictionary.end.python.renpy"}}},{"name":"meta.structure.dictionary.python.renpy","begin":"(\\{)","end":"(\\})","patterns":[{"contentName":"meta.structure.dictionary.key.python.renpy","begin":"(?\u003c=\\{|\\,|^)\\s*(?![\\},])","end":"\\s*(?:(?=\\})|(\\:))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.valuepair.dictionary.python.renpy"}}},{"contentName":"meta.structure.dictionary.value.python.renpy","begin":"(?\u003c=\\:|^)\\s*","end":"\\s*(?:(?=\\})|(,))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.dictionary.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.dictionary.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.dictionary.end.python.renpy"}}}],"repository":{"builtin_exceptions":{"name":"support.type.exception.python.renpy","match":"(?x)\\b(\n\t\t\t\t(\n\t\t\t\t\tArithmetic|Assertion|Attribute|BlockingIO|BrokenPipe|Buffer|ChildProcess|\n\t\t\t\t\tConnection(Aborted|Refused|Reset)?|EOF|Environment|FileExists|\n\t\t\t\t\tFileNotFound|FloatingPoint|Interrupted|IO|IsADirectoryError|\n\t\t\t\t\tImport|Indentation|Index|Key|Lookup|Memory|Name|NotADirectory|\n\t\t\t\t\tNotImplemented|OS|Overflow|Permission|ProcessLookup|Reference|\n\t\t\t\t\tRuntime|Standard|Syntax|System|Tab|Timeout|Type|UnboundLocal|\n\t\t\t\t\tUnicode(Encode|Decode|Translate)?|Value|VMS|Windows|ZeroDivision\n\t\t\t\t)Error|\n\t\t\t\t((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes)?Warning|\n\t\t\t\t(Base)?Exception|\n\t\t\t\tSystemExit|StopIteration|NotImplemented|KeyboardInterrupt|GeneratorExit\n\t\t\t)\\b"},"builtin_functions":{"name":"support.function.builtin.python.renpy","match":"(?x)\\b(\n\t\t\t\t__import__|all|abs|any|apply|ascii|bin|callable|chr|classmethod|cmp|coerce|\n\t\t\t\tcompile|delattr|dir|divmod|enumerate|eval|execfile|filter|format|getattr|\n\t\t\t\tglobals|hasattr|hash|help|hex|id|input|intern|isinstance|issubclass|iter|\n\t\t\t\tlen|locals|map|max|min|next|oct|open|ord|pow|print|property|range|\n\t\t\t\traw_input|reduce|reload|repr|reversed|round|setattr|sorted|staticmethod|\n\t\t\t\tsum|super|type|unichr|vars|zip\n\t\t\t)\\b"},"builtin_types":{"name":"support.type.python.renpy","match":"(?x)\\b(\n\t\t\t\tbasestring|bool|buffer|bytearray|bytes|complex|dict|float|frozenset|int|\n\t\t\t\tlist|long|memoryview|object|range|set|slice|str|tuple|unicode|xrange\n\t\t\t)\\b"},"constant_placeholder":{"name":"constant.other.placeholder.tags.renpy","match":"\\{[^}]*\\}|\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]"},"docstrings":{"patterns":[{"name":"comment.block.python.renpy","begin":"^\\s*(?=[uU]?[rR]?\"\"\")","end":"(?\u003c=\"\"\")","patterns":[{"include":"#string_quoted_double"}]},{"name":"comment.block.python.renpy","begin":"^\\s*(?=[uU]?[rR]?''')","end":"(?\u003c=''')","patterns":[{"include":"#string_quoted_single"}]}]},"dotted_name":{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*)","end":"(?![A-Za-z0-9_\\.])","patterns":[{"begin":"(\\.)(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#magic_function_names"},{"include":"#magic_variable_names"},{"include":"#illegal_names"},{"include":"#generic_names"}]},{"begin":"(?\u003c!\\.)(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#builtin_functions"},{"include":"#builtin_types"},{"include":"#builtin_exceptions"},{"include":"#illegal_names"},{"include":"#magic_function_names"},{"include":"#magic_variable_names"},{"include":"#language_variables"},{"include":"#generic_names"}]}]},"entity_name_class":{"patterns":[{"include":"#illegal_names"},{"include":"#generic_names"}]},"entity_name_function":{"patterns":[{"include":"#magic_function_names"},{"include":"#illegal_names"},{"include":"#generic_names"}]},"escaped_char":{"match":"(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)","captures":{"1":{"name":"constant.character.escape.hex.python.renpy"},"10":{"name":"constant.character.escape.linefeed.python.renpy"},"11":{"name":"constant.character.escape.return.python.renpy"},"12":{"name":"constant.character.escape.tab.python.renpy"},"13":{"name":"constant.character.escape.vertical-tab.python.renpy"},"2":{"name":"constant.character.escape.octal.python.renpy"},"3":{"name":"constant.character.escape.newline.python.renpy"},"4":{"name":"constant.character.escape.backlash.python.renpy"},"5":{"name":"constant.character.escape.double-quote.python.renpy"},"6":{"name":"constant.character.escape.single-quote.python.renpy"},"7":{"name":"constant.character.escape.bell.python.renpy"},"8":{"name":"constant.character.escape.backspace.python.renpy"},"9":{"name":"constant.character.escape.formfeed.python.renpy"}}},"escaped_placeholder":{"name":"constant.character.escape.placeholder.python.renpy","match":"\\{\\{|\\[\\["},"escaped_unicode_char":{"match":"(\\\\U[0-9A-Fa-f]{8})|(\\\\u[0-9A-Fa-f]{4})|(\\\\N\\{[a-zA-Z ]+\\})","captures":{"1":{"name":"constant.character.escape.unicode.16-bit-hex.python.renpy"},"2":{"name":"constant.character.escape.unicode.32-bit-hex.python.renpy"},"3":{"name":"constant.character.escape.unicode.name.python.renpy"}}},"function_name":{"patterns":[{"include":"#magic_function_names"},{"include":"#magic_variable_names"},{"include":"#builtin_exceptions"},{"include":"#builtin_functions"},{"include":"#builtin_types"},{"include":"#generic_names"}]},"generic_names":{"match":"[A-Za-z_][A-Za-z0-9_]*"},"illegal_names":{"name":"invalid.illegal.name.python.renpy","match":"\\b(and|as|assert|break|class|continue|def|del|elif|else|except|exec|finally|for|global|if|import|in|is|lambda|nonlocal|not|or|print|raise|try|while|with|yield)\\b"},"keyword_arguments":{"begin":"\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(=)(?!=)","end":"\\s*(?:(,)|(?=$\\n?|[\\)\\:]))","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"variable.parameter.function.python.renpy"},"2":{"name":"keyword.operator.assignment.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.python.renpy"}}},"language_variables":{"name":"variable.language.python.renpy","match":"\\b(self|cls)\\b"},"line_continuation":{"match":"(\\\\)(.*)$\\n?","captures":{"1":{"name":"punctuation.separator.continuation.line.python.renpy"},"2":{"name":"invalid.illegal.unexpected-text.python.renpy"}}},"magic_function_names":{"name":"support.function.magic.python.renpy","match":"(?x)\\b(__(?:\n\t\t\t\t\t\tabs|add|and|cmp|coerce|complex|contains|del|delattr|\n\t\t\t\t\t\tdelete|delitem|delslice|div|divmod|enter|eq|exit|float|\n\t\t\t\t\t\tfloordiv|ge|get|getattr|getattribute|getitem|getslice|gt|\n\t\t\t\t\t\thash|hex|iadd|iand|idiv|ifloordiv|ilshift|imod|imul|init|\n\t\t\t\t\t\tint|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|\n\t\t\t\t\t\tlong|lshift|lt|mod|mul|ne|neg|new|nonzero|oct|or|pos|pow|\n\t\t\t\t\t\tradd|rand|rdiv|rdivmod|repr|rfloordiv|rlshift|rmod|rmul|ror|\n\t\t\t\t\t\trpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|\n\t\t\t\t\t\tsetslice|str|sub|truediv|unicode|xor\n\t\t\t\t\t)__)\\b"},"magic_variable_names":{"name":"support.variable.magic.python.renpy","match":"\\b__(all|bases|class|debug|dict|doc|file|members|metaclass|methods|name|slots|weakref)__\\b"},"regular_expressions":{"patterns":[{"include":"source.regexp.python"}]},"string_quoted_double":{"patterns":[{"name":"string.quoted.double.block.unicode-raw-regex.python.renpy","begin":"([uU]r)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.unicode-raw.python.renpy","begin":"([uU]R)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.raw-regex.python.renpy","begin":"(r)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.raw.python.renpy","begin":"(R)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.unicode.python.renpy","begin":"([uU])(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.single-line.unicode-raw-regex.python.renpy","match":"([uU]r)(\")((?:[^\"\\\\]|\\\\.)*)(\")","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.double.single-line.unicode-raw.python.renpy","begin":"([uU]R)(\")","end":"((?\u003c=\")(\")|\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.double.single-line.raw-regex.python.renpy","match":"(r)(\")((?:[^\"\\\\]|\\\\.)*)(\")","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.double.single-line.raw.python.renpy","begin":"(R)(\")","end":"((?\u003c=\")(\")|\")|(\\n)","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.double.single-line.unicode.python.renpy","begin":"([uU])(\")","end":"((?\u003c=\")(\")|\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.double.block.python.renpy","begin":"(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.single-line.python.renpy","begin":"(\")","end":"((?\u003c=\")(\")|\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}}]},"string_quoted_single":{"patterns":[{"name":"string.quoted.single.single-line.python.renpy","match":"(?\u003c!')(')(('))(?!')","captures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"},"2":{"name":"punctuation.definition.string.end.python.renpy"},"3":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.unicode-raw-regex.python.renpy","begin":"([uU]r)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.unicode-raw.python.renpy","begin":"([uU]R)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.raw-regex.python.renpy","begin":"(r)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.raw.python.renpy","begin":"(R)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.unicode.python.renpy","begin":"([uU])(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.single-line.unicode-raw-regex.python.renpy","match":"([uU]r)(')((?:[^'\\\\]|\\\\.)*)(')","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.single.single-line.unicode-raw.python.renpy","begin":"([uU]R)(')","end":"(')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.single.single-line.raw-regex.python.renpy","match":"(r)(')((?:[^'\\\\]|\\\\.)*)(')","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.single.single-line.raw.python.renpy","begin":"(R)(')","end":"(')|(\\n)","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.single.single-line.unicode.python.renpy","begin":"([uU])(')","end":"(')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.single.block.python.renpy","begin":"(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.single-line.python.renpy","begin":"(')","end":"(')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}}]},"strings":{"patterns":[{"include":"#string_quoted_double"},{"include":"#string_quoted_single"}]}}}
|
1
|
+
{"name":"Ren'Py","scopeName":"source.renpy","patterns":[{"begin":"(^[ \\t]+)?(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.python.renpy","begin":"#","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.python.renpy"}}},{"name":"constant.numeric.integer.long.hexadecimal.python.renpy","match":"\\b(?i:(0x[[:xdigit:]]*)L)"},{"name":"constant.numeric.integer.hexadecimal.python.renpy","match":"\\b(?i:(0x[[:xdigit:]]*))"},{"name":"constant.numeric.integer.long.octal.python.renpy","match":"\\b(?i:(0[0-7]+)L)"},{"name":"constant.numeric.integer.octal.python.renpy","match":"\\b(0[0-7]+)"},{"name":"constant.numeric.complex.python.renpy","match":"\\b(?i:(((\\d+(\\.(?=[^a-zA-Z_])\\d*)?|(?\u003c=[^0-9a-zA-Z_])\\.\\d+)(e[\\-\\+]?\\d+)?))J)"},{"name":"constant.numeric.float.python.renpy","match":"\\b(?i:(\\d+\\.\\d*(e[\\-\\+]?\\d+)?))(?=[^a-zA-Z_])"},{"name":"constant.numeric.float.python.renpy","match":"(?\u003c=[^0-9a-zA-Z_])(?i:(\\.\\d+(e[\\-\\+]?\\d+)?))"},{"name":"constant.numeric.float.python.renpy","match":"\\b(?i:(\\d+e[\\-\\+]?\\d+))"},{"name":"constant.numeric.integer.long.decimal.python.renpy","match":"\\b(?i:([1-9]+[0-9]*|0)L)"},{"name":"constant.numeric.integer.decimal.python.renpy","match":"\\b([1-9]+[0-9]*|0)"},{"match":"\\b(global)\\b","captures":{"1":{"name":"storage.modifier.global.python.renpy"}}},{"match":"\\b(nonlocal)\\b","captures":{"1":{"name":"storage.modifier.nonlocal.python.renpy"}}},{"match":"\\b(?:(import)|(from))\\b","captures":{"1":{"name":"keyword.control.import.python.renpy"},"2":{"name":"keyword.control.import.from.python.renpy"}}},{"name":"keyword.control.conditional.python.renpy","match":"\\b(if|elif|else)\\b"},{"name":"keyword.control.exception.python.renpy","match":"\\b(except|finally|try|raise)\\b"},{"name":"keyword.control.repeat.python.renpy","match":"\\b(for|while)\\b"},{"match":"\\b(assert|del|exec|print|match|case|async|await)\\b","captures":{"1":{"name":"keyword.other.python.renpy"}}},{"name":"invalid.deprecated.operator.python.renpy","match":"\u003c\u003e"},{"name":"keyword.operator.comparison.python.renpy","match":"\u003c\\=|\u003e\\=|\\=\\=|\u003c|\u003e|\\!\\="},{"name":"keyword.operator.assignment.augmented.python.renpy","match":"\\+\\=|-\\=|\\*\\=|/\\=|//\\=|%\\=|\u0026\\=|\\|\\=|\\^\\=|\u003e\u003e\\=|\u003c\u003c\\=|\\*\\*\\="},{"name":"keyword.operator.arithmetic.python.renpy","match":"\\+|\\-|\\*|\\*\\*|/|//|%|@|\u003c\u003c|\u003e\u003e|\u0026|\\||\\^|~"},{"name":"keyword.operator.assignment.python.renpy","match":"\\=|\\:\\="},{"match":"^\\s*(label)\\s*([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.section.python.renpy.label.renpy"}}},{"match":"^\\s*(menu)\\s*([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.section.python.renpy.menu.renpy"}}},{"match":"^\\s*(screen)\\s*([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.class.python.renpy.screen.renpy"}}},{"match":"^\\s*(image)\\s+([a-zA-Z_0-9 ]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.class.image.python.renpy"}}},{"match":"^\\s*(transform)\\s+([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.section.python.renpy.transform.renpy"}}},{"match":"^\\s*(style)\\s+([a-zA-Z_][a-zA-Z_0-9]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"entity.name.tag.python.renpy.style.renpy"}}},{"match":"^\\s*(define|default)\\s+([a-zA-Z_0-9\\.]*)","captures":{"1":{"name":"keyword.python.renpy"},"2":{"name":"meta.definition.variable.python.renpy.renpy"}}},{"name":"meta.class.old-style.python.renpy","contentName":"entity.name.type.class.python.renpy","begin":"^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\:)","end":"\\s*(:)","patterns":[{"include":"#entity_name_class"}],"beginCaptures":{"1":{"name":"storage.type.class.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.section.class.begin.python.renpy"}}},{"name":"meta.class.python.renpy","begin":"^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9]*\\s*\\()","end":"(\\))\\s*(?:(\\:)|(.*$\\n?))","patterns":[{"contentName":"entity.name.type.class.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_class"}]},{"contentName":"meta.class.inheritance.python.renpy","begin":"(\\()","end":"(?=\\)|:)","patterns":[{"contentName":"entity.other.inherited-class.python.renpy","begin":"(?\u003c=\\(|,)\\s*","end":"\\s*(?:(,)|(?=\\)))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.inheritance.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.inheritance.begin.python.renpy"}}}],"beginCaptures":{"1":{"name":"storage.type.class.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.inheritance.end.python.renpy"},"2":{"name":"punctuation.section.class.begin.python.renpy"},"3":{"name":"invalid.illegal.missing-section-begin.python.renpy"}}},{"name":"meta.class.python.renpy","begin":"^\\s*(class)\\s+(?=[a-zA-Z_][a-zA-Z_0-9])","end":"(\\()|(\\s*$\\n?|#.*$\\n?)","patterns":[{"contentName":"entity.name.type.class.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_function"}]}],"beginCaptures":{"1":{"name":"storage.type.class.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.inheritance.begin.python.renpy"},"2":{"name":"invalid.illegal.missing-inheritance.python.renpy"}}},{"name":"meta.function.python.renpy","begin":"^\\s*(def)\\s+(?=[A-Za-z_][A-Za-z0-9_]*\\s*\\()","end":"(\\))\\s*(?:(\\:)|(.*$\\n?))","patterns":[{"contentName":"entity.name.function.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_function"}]},{"contentName":"meta.function.parameters.python.renpy","begin":"(\\()","end":"(?=\\)\\s*\\:)","patterns":[{"include":"#keyword_arguments"},{"match":"\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)]))","captures":{"1":{"name":"variable.parameter.function.python.renpy"},"2":{"name":"punctuation.separator.parameters.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python.renpy"}}}],"beginCaptures":{"1":{"name":"storage.type.function.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python.renpy"},"2":{"name":"punctuation.section.function.begin.python.renpy"},"3":{"name":"invalid.illegal.missing-section-begin.python.renpy"}}},{"name":"meta.function.python.renpy","begin":"^\\s*(def)\\s+(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(\\()|\\s*($\\n?|#.*$\\n?)","patterns":[{"contentName":"entity.name.function.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#entity_name_function"}]}],"beginCaptures":{"1":{"name":"storage.type.function.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python.renpy"},"2":{"name":"invalid.illegal.missing-parameters.python.renpy"}}},{"name":"meta.function.inline.python.renpy","begin":"(lambda)(?=\\s+)","end":"(\\:)","patterns":[{"contentName":"meta.function.inline.parameters.python.renpy","begin":"\\s+","end":"(?=\\:)","patterns":[{"include":"#keyword_arguments"},{"match":"\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(?:(,)|(?=[\\n\\)\\:]))","captures":{"1":{"name":"variable.parameter.function.python.renpy"},"2":{"name":"punctuation.separator.parameters.python.renpy"}}}]}],"beginCaptures":{"1":{"name":"storage.type.function.inline.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python.renpy"},"2":{"name":"punctuation.section.function.begin.python.renpy"},"3":{"name":"invalid.illegal.missing-section-begin.python.renpy"}}},{"match":"\\b(def|lambda)\\b","captures":{"1":{"name":"storage.type.function.python.renpy"}}},{"match":"\\b(class)\\b","captures":{"1":{"name":"storage.type.class.python.renpy"}}},{"name":"keyword.python.renpy","match":"\\$"},{"name":"keyword.python.renpy","match":"\\b(\\$|add|always|and|animation|as|assert|at|attribute|auto|bar|behind|block|break|button|call|camera|choice|circles|class|clear|clockwise|contains|continue|counterclockwise|def|default|define|del|dismiss|drag|draggroup|elif|else|event|except|exec|expression|finally|fixed|for|frame|from|function|global|grid|group|has|hbox|hide|hotbar|hotspot|if|image|imagebutton|imagemap|import|in|index|init|input|is|jump|key|knot|label|lambda|layeredimage|menu|monologue|mousearea|music|nearrect|new|nointeract|not|null|nvl|offset|old|on|onlayer|or|parallel|pass|pause|play|print|python|queue|raise|repeat|return|rpy|scene|screen|show|showif|side|sound|stop|strings|style|sustain|tag|take|testcase|text|textbutton|time|timer|transclude|transform|translate|try|use|vbar|vbox|viewport|voice|vpgrid|while|window|with|yield|zorder)\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b((?:action|activate_sound|activated|adjustment|allow|allow_underfull|alpha|alt|alternate|alternate_keysym|arguments|arrowkeys|at|auto|cache|caption|capture|caret_blink|changed|child_size|clicked|cols|copypaste|default|default_focus|drag_handle|drag_joined|drag_name|drag_offscreen|drag_raise|draggable|dragged|dragging|drop_allowable|droppable|dropped|edgescroll|exclude|focus|focus_mask|ground|height|hover|hovered|icon_tooltip|id|idle|image_style|insensitive|keysym|layer|length|mask|min_overlap|modal|mouse_drop|mousewheel|pagekeys|pixel_width|predict|prefer_top|prefix|properties|range|rect|released|repeat|roll_forward|rows|scope|scrollbars|selected|selected_hover|selected_idle|selected_insensitive|sensitive|slow|slow_done|spacing|style|style_group|style_prefix|style_suffix|substitute|suffix|text_style|text_tooltip|tooltip|transpose|unhovered|value|variant|width|xadjustment|xinitial|yadjustment|yinitial|zorder))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b((?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:additive|adjust_spacing|align|alignaround|alpha|alt|anchor|angle|antialias|area|around|background|bar_invert|bar_resizing|bar_vertical|base_bar|black_color|blend|blur|bold|bottom_bar|bottom_gutter|bottom_margin|bottom_padding|box_layout|box_reverse|box_wrap|box_wrap_spacing|caret|child|clipping|color|corner1|corner2|crop|crop_relative|debug|delay|drop_shadow|drop_shadow_color|events|first_indent|first_spacing|fit|fit_first|focus_mask|font|foreground|gl_anisotropic|gl_blend_func|gl_color_mask|gl_depth|gl_drawable_resolution|gl_mipmap|gl_pixel_perfect|gl_texture_scaling|gl_texture_wrap|hinting|hyperlink_functions|italic|justify|kerning|key_events|keyboard_focus|language|layout|left_bar|left_gutter|left_margin|left_padding|line_leading|line_spacing|margin|matrixanchor|matrixcolor|matrixtransform|maximum|maxsize|mesh|mesh_pad|min_width|minimum|minwidth|mipmap|modal|mouse|nearest|newline_indent|offset|order_reverse|outline_scaling|outlines|padding|perspective|pos|radius|rest_indent|right_bar|right_gutter|right_margin|right_padding|rotate|rotate_pad|ruby_style|shader|size|size_group|slow_abortable|slow_cps|slow_cps_multiplier|sound|spacing|strikethrough|subpixel|text_align|text_y_fudge|thumb|thumb_offset|thumb_shadow|top_bar|top_gutter|top_margin|top_padding|transform_anchor|underline|unscrollable|vertical|xalign|xanchor|xanchoraround|xaround|xcenter|xfill|xfit|xmargin|xmaximum|xminimum|xoffset|xpadding|xpan|xpos|xsize|xspacing|xtile|xycenter|xysize|xzoom|yalign|yanchor|yanchoraround|yaround|ycenter|yfill|yfit|ymargin|ymaximum|yminimum|yoffset|ypadding|ypan|ypos|ysize|yspacing|ytile|yzoom|zoom|zpos|zzoom))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b((?:vscrollbar_|scrollbar_)(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|bar_invert|bar_resizing|bar_vertical|base_bar|bottom_bar|bottom_gutter|clipping|debug|keyboard_focus|left_bar|left_gutter|maximum|minimum|mouse|offset|pos|right_bar|right_gutter|thumb|thumb_offset|thumb_shadow|top_bar|top_gutter|unscrollable|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b(side_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|clipping|debug|maximum|minimum|offset|pos|spacing|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b(text_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:adjust_spacing|align|alt|anchor|antialias|area|black_color|bold|clipping|color|debug|drop_shadow|drop_shadow_color|first_indent|font|hinting|hyperlink_functions|italic|justify|kerning|language|layout|line_leading|line_spacing|maximum|min_width|minimum|minwidth|mipmap|newline_indent|offset|outline_scaling|outlines|pos|rest_indent|ruby_style|size|slow_abortable|slow_cps|slow_cps_multiplier|strikethrough|text_align|text_y_fudge|underline|vertical|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"entity.other.attribute-name.python.renpy","match":"\\b(viewport_(?:|activate_|hover_|idle_|insensitive_|selected_|selected_activate_|selected_hover_|selected_idle_|selected_insensitive_)(?:align|alt|anchor|area|clipping|debug|maximum|minimum|offset|pos|xalign|xanchor|xcenter|xfill|xmaximum|xminimum|xoffset|xpos|xsize|xysize|yalign|yanchor|ycenter|yfill|ymaximum|yminimum|yoffset|ypos|ysize))\\b"},{"name":"meta.function.decorator.python.renpy","begin":"^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()","end":"(\\))","patterns":[{"contentName":"entity.name.function.decorator.python.renpy","begin":"(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()","end":"(?=\\s*\\()","patterns":[{"include":"#dotted_name"}],"beginCaptures":{"1":{"name":"punctuation.definition.decorator.python.renpy"}}},{"contentName":"meta.function.decorator.arguments.python.renpy","begin":"(\\()","end":"(?=\\))","patterns":[{"include":"#keyword_arguments"},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}}}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.function.decorator.python.renpy","contentName":"entity.name.function.decorator.python.renpy","begin":"^\\s*(?=@\\s*[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*)","end":"(?=\\s|$\\n?|#)","patterns":[{"begin":"(?=(@)\\s*[A-Za-z_][A-Za-z0-9_]*(\\.[A-Za-z_][A-Za-z0-9_]*)*)","end":"(?=\\s|$\\n?|#)","patterns":[{"include":"#dotted_name"}],"beginCaptures":{"1":{"name":"punctuation.definition.decorator.python.renpy"}}}]},{"name":"meta.function-call.python.renpy","contentName":"meta.function-call.arguments.python.renpy","begin":"(?\u003c=\\)|\\])\\s*(\\()","end":"(\\))","patterns":[{"include":"#keyword_arguments"},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.function-call.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\()","end":"(\\))","patterns":[{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\()","end":"(?=\\s*\\()","patterns":[{"include":"#dotted_name"}]},{"contentName":"meta.function-call.arguments.python.renpy","begin":"(\\()","end":"(?=\\))","patterns":[{"include":"#keyword_arguments"},{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}}}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.item-access.python.renpy","begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[a-zA-Z_][a-zA-Z_0-9]*)*\\s*\\[)","end":"(\\])","patterns":[{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*\\s*\\[)","end":"(?=\\s*\\[)","patterns":[{"include":"#dotted_name"}]},{"contentName":"meta.item-access.arguments.python.renpy","begin":"(\\[)","end":"(?=\\])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}}}],"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"name":"meta.item-access.python.renpy","contentName":"meta.item-access.arguments.python.renpy","begin":"(?\u003c=\\)|\\])\\s*(\\[)","end":"(\\])","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python.renpy"}}},{"include":"#line_continuation"},{"include":"#language_variables"},{"name":"constant.language.python.renpy","match":"\\b(None|True|False|Ellipsis|NotImplemented)\\b"},{"include":"#string_quoted_single"},{"include":"#string_quoted_double"},{"include":"#dotted_name"},{"begin":"(\\()","end":"(\\))","patterns":[{"include":"$self"}]},{"match":"(\\[)(\\s*(\\]))\\b","captures":{"1":{"name":"punctuation.definition.list.begin.python.renpy"},"2":{"name":"meta.empty-list.python.renpy"},"3":{"name":"punctuation.definition.list.end.python.renpy"}}},{"name":"meta.structure.list.python.renpy","begin":"(\\[)","end":"(\\])","patterns":[{"contentName":"meta.structure.list.item.python.renpy","begin":"(?\u003c=\\[|\\,)\\s*(?![\\],])","end":"\\s*(?:(,)|(?=\\]))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.list.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.list.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.list.end.python.renpy"}}},{"name":"meta.structure.tuple.python.renpy","match":"(\\()(\\s*(\\)))","captures":{"1":{"name":"punctuation.definition.tuple.begin.python.renpy"},"2":{"name":"meta.empty-tuple.python.renpy"},"3":{"name":"punctuation.definition.tuple.end.python.renpy"}}},{"name":"meta.structure.dictionary.python.renpy","match":"(\\{)(\\s*(\\}))","captures":{"1":{"name":"punctuation.definition.dictionary.begin.python.renpy"},"2":{"name":"meta.empty-dictionary.python.renpy"},"3":{"name":"punctuation.definition.dictionary.end.python.renpy"}}},{"name":"meta.structure.dictionary.python.renpy","begin":"(\\{)","end":"(\\})","patterns":[{"contentName":"meta.structure.dictionary.key.python.renpy","begin":"(?\u003c=\\{|\\,|^)\\s*(?![\\},])","end":"\\s*(?:(?=\\})|(\\:))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.valuepair.dictionary.python.renpy"}}},{"contentName":"meta.structure.dictionary.value.python.renpy","begin":"(?\u003c=\\:|^)\\s*","end":"\\s*(?:(?=\\})|(,))","patterns":[{"include":"$self"}],"endCaptures":{"1":{"name":"punctuation.separator.dictionary.python.renpy"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.dictionary.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.dictionary.end.python.renpy"}}}],"repository":{"builtin_exceptions":{"name":"support.type.exception.python.renpy","match":"(?x)\\b(\n\t\t\t\t(\n\t\t\t\t\tArithmetic|Assertion|Attribute|BlockingIO|BrokenPipe|Buffer|ChildProcess|\n\t\t\t\t\tConnection(Aborted|Refused|Reset)?|EOF|Environment|FileExists|\n\t\t\t\t\tFileNotFound|FloatingPoint|Interrupted|IO|IsADirectoryError|\n\t\t\t\t\tImport|Indentation|Index|Key|Lookup|Memory|Name|NotADirectory|\n\t\t\t\t\tNotImplemented|OS|Overflow|Permission|ProcessLookup|Reference|\n\t\t\t\t\tRuntime|Standard|Syntax|System|Tab|Timeout|Type|UnboundLocal|\n\t\t\t\t\tUnicode(Encode|Decode|Translate)?|Value|VMS|Windows|ZeroDivision\n\t\t\t\t)Error|\n\t\t\t\t((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes)?Warning|\n\t\t\t\t(Base)?Exception|\n\t\t\t\tSystemExit|StopIteration|NotImplemented|KeyboardInterrupt|GeneratorExit\n\t\t\t)\\b"},"builtin_functions":{"name":"support.function.builtin.python.renpy","match":"(?x)\\b(\n\t\t\t\t__import__|all|abs|any|apply|ascii|bin|callable|chr|classmethod|cmp|coerce|\n\t\t\t\tcompile|delattr|dir|divmod|enumerate|eval|execfile|filter|format|getattr|\n\t\t\t\tglobals|hasattr|hash|help|hex|id|input|intern|isinstance|issubclass|iter|\n\t\t\t\tlen|locals|map|max|min|next|oct|open|ord|pow|print|property|range|\n\t\t\t\traw_input|reduce|reload|repr|reversed|round|setattr|sorted|staticmethod|\n\t\t\t\tsum|super|type|unichr|vars|zip\n\t\t\t)\\b"},"builtin_types":{"name":"support.type.python.renpy","match":"(?x)\\b(\n\t\t\t\tbasestring|bool|buffer|bytearray|bytes|complex|dict|float|frozenset|int|\n\t\t\t\tlist|long|memoryview|object|range|set|slice|str|tuple|unicode|xrange\n\t\t\t)\\b"},"constant_placeholder":{"name":"constant.other.placeholder.tags.renpy","match":"\\{[^}]*\\}|\\[([^\\[\\]]|\\[[^\\[\\]]*\\])*\\]"},"docstrings":{"patterns":[{"name":"comment.block.python.renpy","begin":"^\\s*(?=[fuUb]?[rR]?\"\"\")","end":"(?\u003c=\"\"\")","patterns":[{"include":"#string_quoted_double"}]},{"name":"comment.block.python.renpy","begin":"^\\s*(?=[fuUb]?[rR]?''')","end":"(?\u003c=''')","patterns":[{"include":"#string_quoted_single"}]}]},"dotted_name":{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*(?:\\.[A-Za-z_][A-Za-z0-9_]*)*)","end":"(?![A-Za-z0-9_\\.])","patterns":[{"begin":"(\\.)(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#magic_function_names"},{"include":"#magic_variable_names"},{"include":"#illegal_names"},{"include":"#generic_names"}]},{"begin":"(?\u003c!\\.)(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#builtin_functions"},{"include":"#builtin_types"},{"include":"#builtin_exceptions"},{"include":"#illegal_names"},{"include":"#magic_function_names"},{"include":"#magic_variable_names"},{"include":"#language_variables"},{"include":"#generic_names"}]}]},"entity_name_class":{"patterns":[{"include":"#illegal_names"},{"include":"#generic_names"}]},"entity_name_function":{"patterns":[{"include":"#magic_function_names"},{"include":"#illegal_names"},{"include":"#generic_names"}]},"escaped_char":{"match":"(\\\\x[0-9A-F]{2})|(\\\\[0-7]{3})|(\\\\\\n)|(\\\\\\\\)|(\\\\\\\")|(\\\\')|(\\\\a)|(\\\\b)|(\\\\f)|(\\\\n)|(\\\\r)|(\\\\t)|(\\\\v)","captures":{"1":{"name":"constant.character.escape.hex.python.renpy"},"10":{"name":"constant.character.escape.linefeed.python.renpy"},"11":{"name":"constant.character.escape.return.python.renpy"},"12":{"name":"constant.character.escape.tab.python.renpy"},"13":{"name":"constant.character.escape.vertical-tab.python.renpy"},"2":{"name":"constant.character.escape.octal.python.renpy"},"3":{"name":"constant.character.escape.newline.python.renpy"},"4":{"name":"constant.character.escape.backlash.python.renpy"},"5":{"name":"constant.character.escape.double-quote.python.renpy"},"6":{"name":"constant.character.escape.single-quote.python.renpy"},"7":{"name":"constant.character.escape.bell.python.renpy"},"8":{"name":"constant.character.escape.backspace.python.renpy"},"9":{"name":"constant.character.escape.formfeed.python.renpy"}}},"escaped_placeholder":{"name":"constant.character.escape.placeholder.python.renpy","match":"\\{\\{|\\[\\["},"escaped_unicode_char":{"match":"(\\\\U[0-9A-Fa-f]{8})|(\\\\u[0-9A-Fa-f]{4})|(\\\\N\\{[a-zA-Z ]+\\})","captures":{"1":{"name":"constant.character.escape.unicode.16-bit-hex.python.renpy"},"2":{"name":"constant.character.escape.unicode.32-bit-hex.python.renpy"},"3":{"name":"constant.character.escape.unicode.name.python.renpy"}}},"function_name":{"patterns":[{"include":"#magic_function_names"},{"include":"#magic_variable_names"},{"include":"#builtin_exceptions"},{"include":"#builtin_functions"},{"include":"#builtin_types"},{"include":"#generic_names"}]},"generic_names":{"match":"[A-Za-z_][A-Za-z0-9_]*"},"illegal_names":{"name":"invalid.illegal.name.python.renpy","match":"\\b(and|as|assert|async|await|break|class|continue|def|del|elif|else|except|exec|finally|for|global|if|import|in|is|lambda|nonlocal|not|or|print|raise|try|while|with|yield)\\b"},"keyword_arguments":{"begin":"\\b([a-zA-Z_][a-zA-Z_0-9]*)\\s*(=)(?!=)","end":"\\s*(?:(,)|(?=$\\n?|[\\)\\:]))","patterns":[{"include":"$self"}],"beginCaptures":{"1":{"name":"variable.parameter.function.python.renpy"},"2":{"name":"keyword.operator.assignment.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.separator.parameters.python.renpy"}}},"language_variables":{"name":"variable.language.python.renpy","match":"\\b(self|cls)\\b"},"line_continuation":{"match":"(\\\\)(.*)$\\n?","captures":{"1":{"name":"punctuation.separator.continuation.line.python.renpy"},"2":{"name":"invalid.illegal.unexpected-text.python.renpy"}}},"magic_function_names":{"name":"support.function.magic.python.renpy","match":"(?x)\\b(__(?:abs|add|and|cmp|coerce|complex|contains|del|delattr|delete|delitem|delslice|div|divmod|enter|eq|exit|float|floordiv|ge|get|getattr|getattribute|getitem|getslice|gt|hash|hex|iadd|iand|idiv|ifloordiv|ilshift|imod|imul|init|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|mod|mul|ne|neg|new|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|repr|rfloordiv|rlshift|rmod|rmul|ror|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|setslice|str|sub|truediv|unicode|xor)__)\\b"},"magic_variable_names":{"name":"support.variable.magic.python.renpy","match":"\\b__(all|bases|class|debug|dict|doc|file|members|metaclass|methods|name|slots|weakref)__\\b"},"regular_expressions":{"patterns":[{"include":"source.regexp.python"}]},"string_quoted_double":{"patterns":[{"name":"string.quoted.double.block.unicode-raw-regex.python.renpy","begin":"([fuUb]r)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.unicode-raw.python.renpy","begin":"([fuUb]R)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.raw-regex.python.renpy","begin":"(r)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.raw.python.renpy","begin":"(R)(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.block.unicode.python.renpy","begin":"([fuUb])(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.single-line.unicode-raw-regex.python.renpy","match":"([fuUb]r)(\")((?:[^\"\\\\]|\\\\.)*)(\")","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.double.single-line.unicode-raw.python.renpy","begin":"([fuUb]R)(\")","end":"((?\u003c=\")(\")|\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.double.single-line.raw-regex.python.renpy","match":"(r)(\")((?:[^\"\\\\]|\\\\.)*)(\")","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.double.single-line.raw.python.renpy","begin":"(R)(\")","end":"((?\u003c=\")(\")|\")|(\\n)","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.double.single-line.unicode.python.renpy","begin":"([fuUb])(\")","end":"((?\u003c=\")(\")|\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.double.block.python.renpy","begin":"(\"\"\")","end":"((?\u003c=\"\"\")(\")\"\"|\"\"\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"}}},{"name":"string.quoted.double.single-line.python.renpy","begin":"(\")","end":"((?\u003c=\")(\")|\")","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.double.python.renpy"},"3":{"name":"invalid.illegal.unclosed-string.python.renpy"}}}]},"string_quoted_single":{"patterns":[{"name":"string.quoted.single.single-line.python.renpy","match":"(?\u003c!')(')(('))(?!')","captures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"},"2":{"name":"punctuation.definition.string.end.python.renpy"},"3":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.unicode-raw-regex.python.renpy","begin":"([fuUb]r)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.unicode-raw.python.renpy","begin":"([fuUb]R)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.raw-regex.python.renpy","begin":"(r)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.raw.python.renpy","begin":"(R)(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.block.unicode.python.renpy","begin":"([fuUb])(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.single-line.unicode-raw-regex.python.renpy","match":"([fuUb]r)(')((?:[^'\\\\]|\\\\.)*)(')","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.single.single-line.unicode-raw.python.renpy","begin":"([fuUb]R)(')","end":"(')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.single.single-line.raw-regex.python.renpy","match":"(r)(')((?:[^'\\\\]|\\\\.)*)(')","captures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"},"3":{"patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"},{"include":"#regular_expressions"}]},"4":{"name":"punctuation.definition.string.end.python.renpy"}}},{"name":"string.quoted.single.single-line.raw.python.renpy","begin":"(R)(')","end":"(')|(\\n)","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.single.single-line.unicode.python.renpy","begin":"([fuUb])(')","end":"(')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_unicode_char"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"storage.type.string.python.renpy"},"2":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}},{"name":"string.quoted.single.block.python.renpy","begin":"(''')","end":"((?\u003c=''')(')''|''')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"meta.empty-string.single.python.renpy"}}},{"name":"string.quoted.single.single-line.python.renpy","begin":"(')","end":"(')","patterns":[{"include":"#escaped_placeholder"},{"include":"#constant_placeholder"},{"include":"#escaped_char"}],"beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python.renpy"}},"endCaptures":{"1":{"name":"punctuation.definition.string.end.python.renpy"},"2":{"name":"invalid.illegal.unclosed-string.python.renpy"}}}]},"strings":{"patterns":[{"include":"#string_quoted_double"},{"include":"#string_quoted_single"}]}}}
|