@shikijs/langs 3.1.0 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/abap.mjs +1 -1
- package/dist/actionscript-3.mjs +1 -1
- package/dist/ada.mjs +1 -1
- package/dist/angular-expression.mjs +1 -1
- package/dist/angular-html.mjs +1 -1
- package/dist/angular-inline-style.mjs +1 -1
- package/dist/angular-inline-template.mjs +1 -1
- package/dist/angular-template-blocks.mjs +1 -1
- package/dist/angular-template.mjs +1 -1
- package/dist/angular-ts.mjs +1 -1
- package/dist/apache.mjs +1 -1
- package/dist/apex.mjs +1 -1
- package/dist/apl.mjs +1 -1
- package/dist/applescript.mjs +1 -1
- package/dist/ara.mjs +1 -1
- package/dist/asciidoc.mjs +1 -1
- package/dist/asm.mjs +1 -1
- package/dist/astro.mjs +1 -1
- package/dist/awk.mjs +1 -1
- package/dist/ballerina.mjs +1 -1
- package/dist/bat.mjs +1 -1
- package/dist/beancount.mjs +1 -1
- package/dist/berry.mjs +1 -1
- package/dist/bibtex.mjs +1 -1
- package/dist/bicep.mjs +1 -1
- package/dist/blade.mjs +1 -1
- package/dist/bsl.mjs +1 -1
- package/dist/c.mjs +1 -1
- package/dist/cadence.mjs +1 -1
- package/dist/cairo.mjs +1 -1
- package/dist/clarity.mjs +1 -1
- package/dist/clojure.mjs +1 -1
- package/dist/cmake.mjs +1 -1
- package/dist/cobol.mjs +1 -1
- package/dist/codeql.mjs +1 -1
- package/dist/coffee.mjs +1 -1
- package/dist/common-lisp.mjs +1 -1
- package/dist/coq.mjs +1 -1
- package/dist/cpp-macro.mjs +1 -1
- package/dist/cpp.mjs +1 -1
- package/dist/crystal.mjs +1 -1
- package/dist/csharp.mjs +1 -1
- package/dist/css.mjs +1 -1
- package/dist/csv.mjs +1 -1
- package/dist/cue.mjs +1 -1
- package/dist/cypher.mjs +1 -1
- package/dist/d.mjs +1 -1
- package/dist/dart.mjs +1 -1
- package/dist/dax.mjs +1 -1
- package/dist/desktop.mjs +1 -1
- package/dist/diff.mjs +1 -1
- package/dist/dotenv.mjs +1 -1
- package/dist/dream-maker.mjs +1 -1
- package/dist/edge.mjs +1 -1
- package/dist/elixir.mjs +1 -1
- package/dist/elm.mjs +1 -1
- package/dist/emacs-lisp.mjs +1 -1
- package/dist/erb.mjs +1 -1
- package/dist/erlang.mjs +1 -1
- package/dist/es-tag-css.mjs +1 -1
- package/dist/es-tag-glsl.mjs +1 -1
- package/dist/es-tag-html.mjs +1 -1
- package/dist/es-tag-sql.mjs +1 -1
- package/dist/es-tag-xml.mjs +1 -1
- package/dist/fennel.mjs +1 -1
- package/dist/fish.mjs +1 -1
- package/dist/fluent.mjs +1 -1
- package/dist/fortran-fixed-form.mjs +1 -1
- package/dist/fortran-free-form.mjs +1 -1
- package/dist/fsharp.mjs +1 -1
- package/dist/gdresource.mjs +1 -1
- package/dist/gdscript.mjs +1 -1
- package/dist/gdshader.mjs +1 -1
- package/dist/genie.mjs +1 -1
- package/dist/gherkin.mjs +1 -1
- package/dist/git-commit.mjs +1 -1
- package/dist/git-rebase.mjs +1 -1
- package/dist/gleam.mjs +1 -1
- package/dist/glimmer-js.mjs +1 -1
- package/dist/glimmer-ts.mjs +1 -1
- package/dist/glsl.mjs +1 -1
- package/dist/gnuplot.mjs +1 -1
- package/dist/go.mjs +1 -1
- package/dist/graphql.mjs +1 -1
- package/dist/groovy.mjs +1 -1
- package/dist/hack.mjs +1 -1
- package/dist/haml.mjs +1 -1
- package/dist/handlebars.mjs +1 -1
- package/dist/haskell.mjs +1 -1
- package/dist/haxe.mjs +1 -1
- package/dist/hcl.mjs +1 -1
- package/dist/hjson.mjs +1 -1
- package/dist/hlsl.mjs +1 -1
- package/dist/html-derivative.mjs +1 -1
- package/dist/html.mjs +1 -1
- package/dist/http.mjs +1 -1
- package/dist/hxml.mjs +1 -1
- package/dist/hy.mjs +1 -1
- package/dist/imba.mjs +1 -4
- package/dist/index.mjs +2 -0
- package/dist/ini.mjs +1 -1
- package/dist/java.mjs +1 -1
- package/dist/javascript.mjs +1 -1
- package/dist/jinja-html.mjs +1 -1
- package/dist/jinja.mjs +1 -1
- package/dist/jison.mjs +1 -1
- package/dist/json.mjs +1 -1
- package/dist/json5.mjs +1 -1
- package/dist/jsonc.mjs +1 -1
- package/dist/jsonl.mjs +1 -1
- package/dist/jsonnet.mjs +1 -1
- package/dist/jssm.mjs +1 -1
- package/dist/jsx.mjs +1 -1
- package/dist/julia.mjs +1 -1
- package/dist/kotlin.mjs +1 -1
- package/dist/kusto.mjs +1 -1
- package/dist/latex.mjs +1 -1
- package/dist/lean.mjs +1 -1
- package/dist/less.mjs +1 -1
- package/dist/liquid.mjs +1 -1
- package/dist/llvm.d.mts +3 -0
- package/dist/llvm.mjs +5 -0
- package/dist/log.mjs +1 -1
- package/dist/logo.mjs +1 -1
- package/dist/lua.mjs +1 -1
- package/dist/luau.mjs +1 -1
- package/dist/make.mjs +1 -1
- package/dist/markdown-vue.mjs +1 -1
- package/dist/markdown.mjs +1 -1
- package/dist/marko.mjs +1 -1
- package/dist/matlab.mjs +1 -1
- package/dist/mdc.mjs +1 -1
- package/dist/mdx.mjs +1 -1
- package/dist/mermaid.mjs +1 -1
- package/dist/mipsasm.mjs +1 -1
- package/dist/mojo.mjs +1 -1
- package/dist/move.mjs +1 -1
- package/dist/narrat.mjs +1 -1
- package/dist/nextflow.mjs +1 -1
- package/dist/nginx.mjs +1 -1
- package/dist/nim.mjs +1 -1
- package/dist/nix.mjs +1 -1
- package/dist/nushell.mjs +1 -1
- package/dist/objective-c.mjs +1 -1
- package/dist/objective-cpp.mjs +1 -1
- package/dist/ocaml.mjs +1 -1
- package/dist/pascal.mjs +1 -1
- package/dist/perl.mjs +1 -1
- package/dist/php.mjs +1 -1
- package/dist/plsql.mjs +1 -1
- package/dist/po.mjs +1 -1
- package/dist/polar.mjs +1 -1
- package/dist/postcss.mjs +1 -1
- package/dist/powerquery.mjs +1 -1
- package/dist/powershell.mjs +1 -1
- package/dist/prisma.mjs +1 -1
- package/dist/prolog.mjs +1 -1
- package/dist/proto.mjs +1 -1
- package/dist/pug.mjs +1 -1
- package/dist/puppet.mjs +1 -1
- package/dist/purescript.mjs +1 -1
- package/dist/python.mjs +1 -1
- package/dist/qml.mjs +1 -1
- package/dist/qss.mjs +1 -1
- package/dist/r.mjs +1 -1
- package/dist/racket.mjs +1 -1
- package/dist/raku.mjs +1 -1
- package/dist/razor.mjs +1 -1
- package/dist/reg.mjs +1 -1
- package/dist/regexp.mjs +1 -1
- package/dist/rel.mjs +1 -1
- package/dist/riscv.mjs +1 -1
- package/dist/rst.mjs +1 -1
- package/dist/ruby.mjs +1 -1
- package/dist/rust.mjs +1 -1
- package/dist/sas.mjs +1 -1
- package/dist/sass.mjs +1 -1
- package/dist/scala.mjs +1 -1
- package/dist/scheme.mjs +1 -1
- package/dist/scss.mjs +1 -1
- package/dist/sdbl.mjs +1 -1
- package/dist/shaderlab.mjs +1 -1
- package/dist/shellscript.mjs +1 -1
- package/dist/shellsession.mjs +1 -1
- package/dist/smalltalk.mjs +1 -1
- package/dist/solidity.mjs +1 -1
- package/dist/soy.mjs +1 -1
- package/dist/sparql.mjs +1 -1
- package/dist/splunk.mjs +1 -1
- package/dist/sql.mjs +1 -1
- package/dist/ssh-config.mjs +1 -1
- package/dist/stata.mjs +1 -1
- package/dist/stylus.mjs +1 -1
- package/dist/svelte.mjs +1 -1
- package/dist/swift.mjs +1 -1
- package/dist/system-verilog.mjs +1 -1
- package/dist/systemd.mjs +1 -1
- package/dist/talonscript.mjs +1 -1
- package/dist/tasl.mjs +1 -1
- package/dist/tcl.mjs +1 -1
- package/dist/templ.mjs +1 -1
- package/dist/terraform.mjs +1 -1
- package/dist/tex.mjs +1 -1
- package/dist/toml.mjs +1 -1
- package/dist/tsx.mjs +1 -1
- package/dist/turtle.mjs +1 -1
- package/dist/twig.mjs +1 -1
- package/dist/typescript.mjs +1 -1
- package/dist/typespec.mjs +1 -1
- package/dist/typst.mjs +1 -1
- package/dist/v.mjs +1 -1
- package/dist/vala.mjs +1 -1
- package/dist/vb.mjs +1 -1
- package/dist/verilog.mjs +1 -1
- package/dist/vhdl.mjs +1 -1
- package/dist/viml.mjs +1 -1
- package/dist/vue-html.mjs +1 -1
- package/dist/vue-sfc-style-variable-injection.mjs +1 -1
- package/dist/vue.mjs +1 -1
- package/dist/vyper.mjs +1 -1
- package/dist/wasm.mjs +1 -1
- package/dist/wenyan.mjs +1 -1
- package/dist/wgsl.mjs +1 -1
- package/dist/wikitext.mjs +1 -1
- package/dist/wit.d.mts +3 -0
- package/dist/wit.mjs +5 -0
- package/dist/wolfram.mjs +1 -1
- package/dist/xml.mjs +1 -1
- package/dist/xsl.mjs +1 -1
- package/dist/yaml.mjs +1 -1
- package/dist/zenscript.mjs +1 -1
- package/dist/zig.mjs +1 -1
- package/package.json +5 -3
package/dist/fsharp.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import markdown from './markdown.mjs'
|
|
2
2
|
|
|
3
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"F#\",\"name\":\"fsharp\",\"patterns\":[{\"include\":\"#compiler_directives\"},{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#definition\"},{\"include\":\"#abstract_definition\"},{\"include\":\"#attributes\"},{\"include\":\"#modules\"},{\"include\":\"#anonymous_functions\"},{\"include\":\"#du_declaration\"},{\"include\":\"#record_declaration\"},{\"include\":\"#records\"},{\"include\":\"#strp_inlined\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}],\"repository\":{\"abstract_definition\":{\"begin\":\"\\\\b(static\\\\s+)?(abstract)\\\\s+(member)?(\\\\s+\\\\[\\\\<.*\\\\>\\\\])?\\\\s*([_[:alpha:]0-9,\\\\._`\\\\s]+)(<)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"support.function.attribute.fsharp\"},\"5\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(with)\\\\b|=|$\",\"endCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"name\":\"abstract.definition.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#common_declaration\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\\\s*(:)((?!with\\\\b)\\\\b([\\\\w0-9'`^._ ]+)){0,1}\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words isn't blacklisted\",\"match\":\"(?!with|get|set\\\\b)\\\\s*([\\\\w0-9'`^._]+)\"},{\"include\":\"#keywords\"}]},\"anonymous_functions\":{\"patterns\":[{\"begin\":\"\\\\b(fun)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"(->)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"}},\"name\":\"function.anonymous\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(?=(->))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"include\":\"#variables\"}]}]},\"anonymous_record_declaration\":{\"begin\":\"(\\\\{\\\\|)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\|\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"match\":\"[[:alpha:]0-9'`^_ ]+(:)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`^_ ]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"include\":\"#keywords\"}]},\"attributes\":{\"patterns\":[{\"begin\":\"\\\\[\\\\<\",\"end\":\"\\\\>\\\\]|\\\\]\",\"name\":\"support.function.attribute.fsharp\",\"patterns\":[{\"include\":\"$self\"}]}]},\"cexprs\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"keyword.fsharp\"}},\"match\":\"\\\\b(async|seq|promise|task|maybe|asyncMaybe|controller|scope|application|pipeline)(?=\\\\s*\\\\{)\",\"name\":\"cexpr.fsharp\"}]},\"chars\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.quoted.single.fsharp\"}},\"match\":\"('\\\\\\\\?.')\",\"name\":\"char.fsharp\"}]},\"comments\":{\"patterns\":[{\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"match\":\"(\\\\(\\\\*{3}.*\\\\*{3}\\\\))\",\"name\":\"comment.literate.command.fsharp\"},{\"begin\":\"^\\\\s*(\\\\(\\\\*\\\\*(?!\\\\)))((?!\\\\*\\\\)).)*$\",\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"endCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"name\":\"comment.block.markdown.fsharp\",\"patterns\":[{\"include\":\"text.html.markdown\"}],\"while\":\"^(?!\\\\s*(\\\\*)+\\\\)\\\\s*$)\"},{\"begin\":\"(\\\\(\\\\*(?!\\\\)))\",\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"end\":\"(\\\\*+\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"name\":\"comment.block.fsharp\",\"patterns\":[{\"comments\":\"Capture // when inside of (* *) like that the rule which capture comments starting by // is not trigger. See https://github.com/ionide/ionide-fsgrammar/issues/155\",\"match\":\"//\",\"name\":\"fast-capture.comment.line.double-slash.fsharp\"},{\"comments\":\"Capture (*) when inside of (* *) so that it doesn't prematurely end the comment block.\",\"match\":\"\\\\(\\\\*\\\\)\",\"name\":\"fast-capture.comment.line.mul-operator.fsharp\"},{\"include\":\"#comments\"}]},{\"captures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"match\":\"((?<!\\\\()(\\\\*)+\\\\))\",\"name\":\"comment.block.markdown.fsharp.end\"},{\"begin\":\"(?<![!%&+-.<=>?@^|/])///(?!/)\",\"name\":\"comment.line.markdown.fsharp\",\"patterns\":[{\"include\":\"text.html.markdown\"}],\"while\":\"(?<![!%&+-.<=>?@^|/])///(?!/)\"},{\"match\":\"(?<![!%&+-.<=>?@^|/])//(.*$)\",\"name\":\"comment.line.double-slash.fsharp\"}]},\"common_binding_definition\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attributes\"},{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*(static member|member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\\\\s*((?=,)|(?=\\\\=))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"begin\":\"(:)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\)\\\\s*(([?[:alpha:]0-9'`^._ ]*)))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(:)\\\\s*(\\\\^[[:alpha:]0-9'._]+)\\\\s*(when)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"end\":\"(?=:)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'^._]+)\"},{\"match\":\"(\\\\(|\\\\))\",\"name\":\"keyword.symbol.fsharp\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(:)\\\\s*([?[:alpha:]0-9'`^._ ]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(->)\\\\s*(\\\\()?\\\\s*([?[:alpha:]0-9'`^._ ]+)*\"},{\"begin\":\"(\\\\*)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\)\\\\s*(([?[:alpha:]0-9'`^._ ]+))*)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(\\\\*)(\\\\s*([?[:alpha:]0-9'`^._ ]+))*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"end\":\"(?==)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(<+(?![[:space:]]*\\\\)))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"beginComment\":\"The group (?![[:space:]]*\\\\) is for protection against overload operator. static member (<)\",\"end\":\"((?<!:)>|\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"endComment\":\"The group (?<!:) prevent us from stopping on :> when using SRTP synthax\",\"patterns\":[{\"include\":\"#generic_declaration\"}]},{\"include\":\"#anonymous_record_declaration\"},{\"begin\":\"({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#record_signature\"}]},{\"include\":\"#definition\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},\"common_declaration\":{\"patterns\":[{\"begin\":\"\\\\s*(->)\\\\s*([[:alpha:]0-9'`^._ ]+)(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`^._ ]+)\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"\\\\s*(->)\\\\s*(?!with|get|set\\\\b)\\\\b([\\\\w0-9'`^._]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"begin\":\"(\\\\?{0,1})([[:alpha:]0-9'`^._ ]+)\\\\s*(:)(\\\\s*([?[:alpha:]0-9'`^._ ]+)(<))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"keyword.symbol.fsharp\"},\"5\":{\"name\":\"entity.name.type.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`^._ ]+)\"},{\"include\":\"#keywords\"}]}]},\"compiler_directives\":{\"patterns\":[{\"captures\":{},\"match\":\"\\\\s?(#if|#elif|#elseif|#else|#endif|#light|#nowarn)\",\"name\":\"keyword.control.directive.fsharp\"}]},\"constants\":{\"patterns\":[{\"match\":\"\\\\(\\\\)\",\"name\":\"keyword.symbol.fsharp\"},{\"match\":\"\\\\b-?[0-9][0-9_]*((\\\\.(?!\\\\.)([0-9][0-9_]*([eE][+-]??[0-9][0-9_]*)?)?)|([eE][+-]??[0-9][0-9_]*))\",\"name\":\"constant.numeric.float.fsharp\"},{\"match\":\"\\\\b(-?((0(x|X)[0-9a-fA-F][0-9a-fA-F_]*)|(0(o|O)[0-7][0-7_]*)|(0(b|B)[01][01_]*)|([0-9][0-9_]*)))\",\"name\":\"constant.numeric.integer.nativeint.fsharp\"},{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.boolean.fsharp\"},{\"match\":\"\\\\b(null|void)\\\\b\",\"name\":\"constant.other.fsharp\"}]},\"definition\":{\"patterns\":[{\"begin\":\"\\\\b(let mutable|static let mutable|static let|let inline|let|and|member val|member inline|static member inline|static member val|static member|default|member|override|let!)(\\\\s+rec|mutable)?(\\\\s+\\\\[\\\\<.*\\\\>\\\\])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\._`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"support.function.attribute.fsharp\"},\"4\":{\"name\":\"storage.modifier.fsharp\"},\"5\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\s*((with\\\\b)|(=|\\\\n+=|(?<=\\\\=)))\",\"endCaptures\":{\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(use|use!|and|and!)\\\\s+(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\._`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"\\\\s*(=)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"(?<=with|and)\\\\s*\\\\b((get|set)\\\\s*(?=\\\\())(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9\\\\._`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"4\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\s*(=|\\\\n+=|(?<=\\\\=))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(static val mutable|val mutable|val inline|val)(\\\\s+rec|mutable)?(\\\\s+\\\\[\\\\<.*\\\\>\\\\])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^-=]*\\\\]|[_[:alpha:]]([_[:alpha:]0-9,\\\\._]+)*|``[_[:alpha:]]([_[:alpha:]0-9,\\\\._`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"support.function.attribute.fsharp\"},\"4\":{\"name\":\"storage.modifier.fsharp\"},\"5\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\n$\",\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(new)\\\\b\\\\s+(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]}]},\"double_tick\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.quoted.single.fsharp\"},\"2\":{\"name\":\"variable.other.binding.fsharp\"},\"3\":{\"name\":\"string.quoted.single.fsharp\"}},\"match\":\"(``)([^`]*)(``)\",\"name\":\"variable.other.binding.fsharp\"}]},\"du_declaration\":{\"patterns\":[{\"begin\":\"\\\\b(of)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"$|(\\\\|)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"du_declaration.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\\\\s*(:)\\\\s*([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(``([[:alpha:]0-9'^._ ]+)``|[[:alpha:]0-9'`^._]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"include\":\"#keywords\"}]}]},\"generic_declaration\":{\"patterns\":[{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*(static member|member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(('|\\\\^)[[:alpha:]0-9'._]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"match\":\"\\\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let\\\\!|return\\\\!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use\\\\!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\":\",\"name\":\"keyword.symbol.fsharp\"},{\"include\":\"#constants\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(('|\\\\^)[[:alpha:]0-9'._]+)\"},{\"begin\":\"(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(('|\\\\^)[[:alpha:]0-9'._]+)\"},{\"include\":\"#tuple_signature\"},{\"include\":\"#generic_declaration\"}]},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([?[:alpha:]0-9'`^._ ]+))+\"},{\"include\":\"#tuple_signature\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words are allowed\",\"match\":\"(?!when|and|or\\\\b)\\\\b([\\\\w0-9'`^._]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"comments\":\"Prevent captures of `|>` as a keyword when defining custom operator like `<|>`\",\"match\":\"(\\\\|)\"},{\"include\":\"#keywords\"}]},\"keywords\":{\"patterns\":[{\"match\":\"\\\\b(private|public|internal)\\\\b\",\"name\":\"storage.modifier\"},{\"match\":\"\\\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use\\\\!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\"\\\\b(match|yield|yield!|with|if|then|else|elif|for|in|return!|return|try|finally|while|do)(?!')\\\\b\",\"name\":\"keyword.control\"},{\"match\":\"(\\\\->|\\\\<\\\\-)\",\"name\":\"keyword.symbol.arrow.fsharp\"},{\"match\":\"[.?]*(&&&|\\\\|\\\\|\\\\||\\\\^\\\\^\\\\^|~~~|~\\\\+|~\\\\-|<<<|>>>|\\\\|>|:>|:\\\\?>|:|\\\\[|\\\\]|\\\\;|<>|=|@|\\\\|\\\\||&&|&|%|{|}|\\\\||_|\\\\.\\\\.|\\\\,|\\\\+|\\\\-|\\\\*|\\\\/|\\\\^|\\\\!|\\\\>|\\\\>\\\\=|\\\\>\\\\>|\\\\<|\\\\<\\\\=|\\\\(|\\\\)|\\\\<\\\\<)[.?]*\",\"name\":\"keyword.symbol.fsharp\"}]},\"member_declaration\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#common_declaration\"},{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*(static member|member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\\\\s*((?=,)|(?=\\\\=))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\"(\\\\(|\\\\))\",\"name\":\"keyword.symbol.fsharp\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\?{0,1})([[:alpha:]0-9'`^._]+|``[[:alpha:]0-9'`^:,._ ]+``)\\\\s*(:{0,1})(\\\\s*([?[:alpha:]0-9'`<>._ ]+)){0,1}\"},{\"include\":\"#keywords\"}]},\"modules\":{\"patterns\":[{\"begin\":\"\\\\b(namespace global)|\\\\b(namespace|module)\\\\s*(public|internal|private|rec)?\\\\s+([[:alpha:]|``][[:alpha:]0-9'_. ]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"storage.modifier.fsharp\"},\"4\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s?=|\\\\s|$)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"entity.name.section.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)([A-Z][[:alpha:]0-9'_]*)\",\"name\":\"entity.name.section.fsharp\"}]},{\"begin\":\"\\\\b(open type|open)\\\\s+([[:alpha:]|``][[:alpha:]0-9'_]*)(?=(\\\\.[A-Z][[:alpha:]0-9_]*)*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s|$)\",\"name\":\"namespace.open.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)([[:alpha:]][[:alpha:]0-9'_]*)\",\"name\":\"entity.name.section.fsharp\"},{\"include\":\"#comments\"}]},{\"begin\":\"^\\\\s*(module)\\\\s+([A-Z][[:alpha:]0-9'_]*)\\\\s*(=)\\\\s*([A-Z][[:alpha:]0-9'_]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"entity.name.type.namespace.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s|$)\",\"name\":\"namespace.alias.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)([A-Z][[:alpha:]0-9'_]*)\",\"name\":\"entity.name.section.fsharp\"}]}]},\"record_declaration\":{\"patterns\":[{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(?<=\\\\})\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(((mutable)\\\\s[[:alpha:]]+)|[[:alpha:]0-9'`<>^._]*)\\\\s*((?<!:):(?!:))\\\\s*\",\"beginCaptures\":{\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"$|(;|\\\\})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`^_ ]+)\"},{\"include\":\"#keywords\"}]},{\"include\":\"#compiler_directives\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#definition\"},{\"include\":\"#attributes\"},{\"include\":\"#anonymous_functions\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}]}]},\"record_signature\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)\"},{\"begin\":\"({)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"[[:alpha:]0-9'`^_ ]+(=)([[:alpha:]0-9'`^_ ]+)\"},{\"include\":\"#record_signature\"}]},{\"include\":\"#keywords\"}]},\"records\":{\"patterns\":[{\"begin\":\"\\\\b(type)[\\\\s]+(private|internal|public)?\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"storage.modifier.fsharp\"}},\"end\":\"\\\\s*((with)|((as)\\\\s+([[:alpha:]0-9']+))|(=)|[\\\\n=]|(\\\\(\\\\)))\",\"endCaptures\":{\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"keyword.fsharp\"},\"5\":{\"name\":\"variable.parameter.fsharp\"},\"6\":{\"name\":\"keyword.symbol.fsharp\"},\"7\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"record.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attributes\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'^._]+|``[[:alpha:]0-9'`^:,._ ]+``)\"},{\"begin\":\"(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"((?<!:)>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(('|\\\\^)``[[:alpha:]0-9`^:,._ ]+``|('|\\\\^)[[:alpha:]0-9`^:._]+)\"},{\"match\":\"\\\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\\\b\",\"name\":\"keyword.fsharp\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"match\":\"(static member|member|new)\"},{\"include\":\"#common_binding_definition\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words isn't blacklisted\",\"match\":\"([\\\\w0-9'`^._]+)\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"storage.modifier.fsharp\"}},\"match\":\"\\\\s*(private|internal|public)\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(?=(=)|[\\\\n=]|(\\\\(\\\\))|(as))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"include\":\"#keywords\"}]}]},\"string_formatter\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.format.specifier.fsharp\"}},\"match\":\"(%0?-?(\\\\d+)?((a|t)|(\\\\.\\\\d+)?(f|F|e|E|g|G|M)|(b|c|s|d|i|x|X|o|u)|(s|b|O)|(\\\\+?A)))\",\"name\":\"entity.name.type.format.specifier.fsharp\"}]},\"strings\":{\"patterns\":[{\"begin\":\"(?=[^\\\\\\\\])(@\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\")(?!\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.literal.fsharp\",\"patterns\":[{\"match\":\"\\\"(\\\")\",\"name\":\"constant.character.string.escape.fsharp\"}]},{\"begin\":\"(?=[^\\\\\\\\])(\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\"\\\"\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.triple.fsharp\",\"patterns\":[{\"include\":\"#string_formatter\"}]},{\"begin\":\"(?=[^\\\\\\\\])(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.double.fsharp\",\"patterns\":[{\"match\":\"\\\\\\\\$[ \\\\t]*\",\"name\":\"punctuation.separator.string.ignore-eol.fsharp\"},{\"match\":\"\\\\\\\\(['\\\"\\\\\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x[0-9a-fA-F]{2})|(u[0-9a-fA-F]{4})|(U00(0[0-9a-fA-F]|10)[0-9a-fA-F]{4}))\",\"name\":\"constant.character.string.escape.fsharp\"},{\"match\":\"\\\\\\\\(([0-9]{1,3})|(x[^\\\\s]{0,2})|(u[^\\\\s]{0,4})|(U[^\\\\s]{0,8})|[^\\\\s])\",\"name\":\"invalid.illegal.character.string.fsharp\"},{\"include\":\"#string_formatter\"}]}]},\"strp_inlined\":{\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#strp_inlined_body\"}]}]},\"strp_inlined_body\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#anonymous_functions\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#strp_inlined_body\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"variable.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"match\":\"(static member|member)\\\\s*([[:alpha:]0-9'`<>^._]+|``[[:alpha:]0-9' <>^._]+``)\\\\s*(:)\"},{\"include\":\"#compiler_directives\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#keywords\"},{\"include\":\"#text\"},{\"include\":\"#definition\"},{\"include\":\"#attributes\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}]},\"text\":{\"patterns\":[{\"match\":\"\\\\\\\\\",\"name\":\"text.fsharp\"}]},\"tuple_signature\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([?[:alpha:]0-9'`^._ ]+))+\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([?[:alpha:]0-9'`^._ ]+))+\"},{\"include\":\"#tuple_signature\"}]},{\"include\":\"#keywords\"}]},\"variables\":{\"patterns\":[{\"match\":\"\\\\(\\\\)\",\"name\":\"keyword.symbol.fsharp\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"(\\\\?{0,1})(``[[:alpha:]0-9'`^:,._ ]+``|(?!private|struct\\\\b)\\\\b[\\\\w[:alpha:]0-9'`<>^._ ]+)\"}]}},\"scopeName\":\"source.fsharp\",\"embeddedLangs\":[\"markdown\"],\"aliases\":[\"f#\",\"fs\"]}"))
|
|
3
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"F#\",\"name\":\"fsharp\",\"patterns\":[{\"include\":\"#compiler_directives\"},{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#definition\"},{\"include\":\"#abstract_definition\"},{\"include\":\"#attributes\"},{\"include\":\"#modules\"},{\"include\":\"#anonymous_functions\"},{\"include\":\"#du_declaration\"},{\"include\":\"#record_declaration\"},{\"include\":\"#records\"},{\"include\":\"#strp_inlined\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}],\"repository\":{\"abstract_definition\":{\"begin\":\"\\\\b(static\\\\s+)?(abstract)\\\\s+(member)?(\\\\s+\\\\[<.*>])?\\\\s*([_[:alpha:]0-9,.`\\\\s]+)(<)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"support.function.attribute.fsharp\"},\"5\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(with)\\\\b|=|$\",\"endCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"name\":\"abstract.definition.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#common_declaration\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\??)([[:alpha:]0-9'`\\\\^._ ]+)\\\\s*(:)((?!with\\\\b)\\\\b([\\\\w0-9'`\\\\^._ ]+))?\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words isn't blacklisted\",\"match\":\"(?!with|get|set\\\\b)\\\\s*([\\\\w0-9'`\\\\^._]+)\"},{\"include\":\"#keywords\"}]},\"anonymous_functions\":{\"patterns\":[{\"begin\":\"\\\\b(fun)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"(->)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"}},\"name\":\"function.anonymous\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(?=(->))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"include\":\"#variables\"}]}]},\"anonymous_record_declaration\":{\"begin\":\"(\\\\{\\\\|)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\|})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"match\":\"[[:alpha:]0-9'`\\\\^_ ]+(:)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`\\\\^_ ]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"include\":\"#keywords\"}]},\"attributes\":{\"patterns\":[{\"begin\":\"\\\\[<\",\"end\":\">]|]\",\"name\":\"support.function.attribute.fsharp\",\"patterns\":[{\"include\":\"$self\"}]}]},\"cexprs\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"keyword.fsharp\"}},\"match\":\"\\\\b(async|seq|promise|task|maybe|asyncMaybe|controller|scope|application|pipeline)(?=\\\\s*\\\\{)\",\"name\":\"cexpr.fsharp\"}]},\"chars\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.quoted.single.fsharp\"}},\"match\":\"('\\\\\\\\?.')\",\"name\":\"char.fsharp\"}]},\"comments\":{\"patterns\":[{\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"match\":\"(\\\\(\\\\*{3}.*\\\\*{3}\\\\))\",\"name\":\"comment.literate.command.fsharp\"},{\"begin\":\"^\\\\s*(\\\\(\\\\*\\\\*(?!\\\\)))((?!\\\\*\\\\)).)*$\",\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"endCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"name\":\"comment.block.markdown.fsharp\",\"patterns\":[{\"include\":\"text.html.markdown\"}],\"while\":\"^(?!\\\\s*(\\\\*)+\\\\)\\\\s*$)\"},{\"begin\":\"(\\\\(\\\\*(?!\\\\)))\",\"beginCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"end\":\"(\\\\*+\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"name\":\"comment.block.fsharp\",\"patterns\":[{\"comments\":\"Capture // when inside of (* *) like that the rule which capture comments starting by // is not trigger. See https://github.com/ionide/ionide-fsgrammar/issues/155\",\"match\":\"//\",\"name\":\"fast-capture.comment.line.double-slash.fsharp\"},{\"comments\":\"Capture (*) when inside of (* *) so that it doesn't prematurely end the comment block.\",\"match\":\"\\\\(\\\\*\\\\)\",\"name\":\"fast-capture.comment.line.mul-operator.fsharp\"},{\"include\":\"#comments\"}]},{\"captures\":{\"1\":{\"name\":\"comment.block.fsharp\"}},\"match\":\"((?<!\\\\()(\\\\*)+\\\\))\",\"name\":\"comment.block.markdown.fsharp.end\"},{\"begin\":\"(?<![!%\\\\&+-.<=>?@\\\\^|/])///(?!/)\",\"name\":\"comment.line.markdown.fsharp\",\"patterns\":[{\"include\":\"text.html.markdown\"}],\"while\":\"(?<![!%\\\\&+-.<=>?@\\\\^|/])///(?!/)\"},{\"match\":\"(?<![!%\\\\&+-.<=>?@\\\\^|/])//(.*$)\",\"name\":\"comment.line.double-slash.fsharp\"}]},\"common_binding_definition\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attributes\"},{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*(static member|member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\\\\s*((?=,)|(?==))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"begin\":\"(:)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\)\\\\s*(([?[:alpha:]0-9'`\\\\^._ ]*)))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(:)\\\\s*(\\\\^[[:alpha:]0-9'._]+)\\\\s*(when)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"end\":\"(?=:)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'\\\\^._]+)\"},{\"match\":\"([()])\",\"name\":\"keyword.symbol.fsharp\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(:)\\\\s*([?[:alpha:]0-9'`\\\\^._ ]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(->)\\\\s*(\\\\()?\\\\s*([?[:alpha:]0-9'`\\\\^._ ]+)*\"},{\"begin\":\"(\\\\*)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\)\\\\s*(([?[:alpha:]0-9'`\\\\^._ ]+))*)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(\\\\*)(\\\\s*([?[:alpha:]0-9'`\\\\^._ ]+))*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"end\":\"(?==)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#tuple_signature\"}]},{\"begin\":\"(<+(?!\\\\s*\\\\)))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"beginComment\":\"The group (?![[:space:]]*\\\\) is for protection against overload operator. static member (<)\",\"end\":\"((?<!:)>|\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"endComment\":\"The group (?<!:) prevent us from stopping on :> when using SRTP synthax\",\"patterns\":[{\"include\":\"#generic_declaration\"}]},{\"include\":\"#anonymous_record_declaration\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#record_signature\"}]},{\"include\":\"#definition\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},\"common_declaration\":{\"patterns\":[{\"begin\":\"\\\\s*(->)\\\\s*([[:alpha:]0-9'`\\\\^._ ]+)(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`\\\\^._ ]+)\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.arrow.fsharp\"},\"2\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"\\\\s*(->)\\\\s*(?!with|get|set\\\\b)\\\\b([\\\\w0-9'`\\\\^._]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"begin\":\"(\\\\??)([[:alpha:]0-9'`\\\\^._ ]+)\\\\s*(:)(\\\\s*([?[:alpha:]0-9'`\\\\^._ ]+)(<))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"keyword.symbol.fsharp\"},\"5\":{\"name\":\"entity.name.type.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`\\\\^._ ]+)\"},{\"include\":\"#keywords\"}]}]},\"compiler_directives\":{\"patterns\":[{\"captures\":{},\"match\":\"\\\\s?(#(?:if|elif|elseif|else|endif|light|nowarn))\",\"name\":\"keyword.control.directive.fsharp\"}]},\"constants\":{\"patterns\":[{\"match\":\"\\\\(\\\\)\",\"name\":\"keyword.symbol.fsharp\"},{\"match\":\"\\\\b-?[0-9][0-9_]*((\\\\.(?!\\\\.)([0-9][0-9_]*([eE][+\\\\-]??[0-9][0-9_]*)?)?)|([eE][+\\\\-]??[0-9][0-9_]*))\",\"name\":\"constant.numeric.float.fsharp\"},{\"match\":\"\\\\b(-?((0([xX])\\\\h[_\\\\h]*)|(0([oO])[0-7][0-7_]*)|(0([bB])[01][01_]*)|([0-9][0-9_]*)))\",\"name\":\"constant.numeric.integer.nativeint.fsharp\"},{\"match\":\"\\\\b(true|false)\\\\b\",\"name\":\"constant.language.boolean.fsharp\"},{\"match\":\"\\\\b(null|void)\\\\b\",\"name\":\"constant.other.fsharp\"}]},\"definition\":{\"patterns\":[{\"begin\":\"\\\\b(let mutable|static let mutable|static let|let inline|let|and|member val|member inline|static member inline|static member val|static member|default|member|override|let!)(\\\\s+rec|mutable)?(\\\\s+\\\\[<.*>])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^\\\\-=]*]|[_[:alpha:]]([_[:alpha:]0-9.]+)*|``[_[:alpha:]]([_[:alpha:]0-9.`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"support.function.attribute.fsharp\"},\"4\":{\"name\":\"storage.modifier.fsharp\"},\"5\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\s*((with\\\\b)|(=|\\\\n+=|(?<==)))\",\"endCaptures\":{\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(use|use!|and|and!)\\\\s+(\\\\[[^\\\\-=]*]|[_[:alpha:]]([_[:alpha:]0-9.]+)*|``[_[:alpha:]]([_[:alpha:]0-9.`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"\\\\s*(=)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"(?<=with|and)\\\\s*\\\\b((get|set)\\\\s*(?=\\\\())(\\\\[[^\\\\-=]*]|[_[:alpha:]]([_[:alpha:]0-9.]+)*|``[_[:alpha:]]([_[:alpha:]0-9.`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"4\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\s*(=|\\\\n+=|(?<==))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(static val mutable|val mutable|val inline|val)(\\\\s+rec|mutable)?(\\\\s+\\\\[<.*>])?\\\\s*(private|internal|public)?\\\\s+(\\\\[[^\\\\-=]*]|[_[:alpha:]]([_[:alpha:]0-9,.]+)*|``[_[:alpha:]]([_[:alpha:]0-9,.`\\\\s]+|(?<=,)\\\\s)*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"support.function.attribute.fsharp\"},\"4\":{\"name\":\"storage.modifier.fsharp\"},\"5\":{\"name\":\"variable.fsharp\"}},\"end\":\"\\\\n$\",\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]},{\"begin\":\"\\\\b(new)\\\\b\\\\s+(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"binding.fsharp\",\"patterns\":[{\"include\":\"#common_binding_definition\"}]}]},\"double_tick\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"string.quoted.single.fsharp\"},\"2\":{\"name\":\"variable.other.binding.fsharp\"},\"3\":{\"name\":\"string.quoted.single.fsharp\"}},\"match\":\"(``)([^`]*)(``)\",\"name\":\"variable.other.binding.fsharp\"}]},\"du_declaration\":{\"patterns\":[{\"begin\":\"\\\\b(of)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"end\":\"$|(\\\\|)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"du_declaration.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`<>\\\\^._]+|``[[:alpha:]0-9' <>\\\\^._]+``)\\\\s*(:)\\\\s*([[:alpha:]0-9'`<>\\\\^._]+|``[[:alpha:]0-9' <>\\\\^._]+``)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(``([[:alpha:]0-9'\\\\^._ ]+)``|[[:alpha:]0-9'`\\\\^._]+)\"},{\"include\":\"#anonymous_record_declaration\"},{\"include\":\"#keywords\"}]}]},\"generic_declaration\":{\"patterns\":[{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*(static member|member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['\\\\^])[[:alpha:]0-9'._]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"match\":\"\\\\b(private|to|public|internal|function|yield!|yield|class|exception|match|delegate|of|new|in|as|if|then|else|elif|for|begin|end|inherit|do|let!|return!|return|interface|with|abstract|enum|member|try|finally|and|when|or|use|use!|struct|while|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\":\",\"name\":\"keyword.symbol.fsharp\"},{\"include\":\"#constants\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['\\\\^])[[:alpha:]0-9'._]+)\"},{\"begin\":\"(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['\\\\^])[[:alpha:]0-9'._]+)\"},{\"include\":\"#tuple_signature\"},{\"include\":\"#generic_declaration\"}]},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([?[:alpha:]0-9'`\\\\^._ ]+))+\"},{\"include\":\"#tuple_signature\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words are allowed\",\"match\":\"(?!when|and|or\\\\b)\\\\b([\\\\w0-9'`\\\\^._]+)\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"comments\":\"Prevent captures of `|>` as a keyword when defining custom operator like `<|>`\",\"match\":\"(\\\\|)\"},{\"include\":\"#keywords\"}]},\"keywords\":{\"patterns\":[{\"match\":\"\\\\b(private|public|internal)\\\\b\",\"name\":\"storage.modifier\"},{\"match\":\"\\\\b(private|to|public|internal|function|class|exception|delegate|of|new|as|begin|end|inherit|let!|interface|abstract|enum|member|and|when|or|use|use!|struct|mutable|assert|base|done|downcast|downto|extern|fixed|global|lazy|upcast|not)(?!')\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\"\\\\b(match|yield|yield!|with|if|then|else|elif|for|in|return!|return|try|finally|while|do)(?!')\\\\b\",\"name\":\"keyword.control\"},{\"match\":\"(->|<-)\",\"name\":\"keyword.symbol.arrow.fsharp\"},{\"match\":\"[.?]*(&&&|\\\\|\\\\|\\\\||\\\\^\\\\^\\\\^|~~~|~\\\\+|~-|<<<|>>>|\\\\|>|:>|:\\\\?>|[:\\\\[\\\\];]|<>|[=@]|\\\\|\\\\||&&|[\\\\&%{}|_]|\\\\.\\\\.|[,+\\\\-*/\\\\^!>]|>=|>>|<|<=|[()]|<<)[.?]*\",\"name\":\"keyword.symbol.fsharp\"}]},\"member_declaration\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#common_declaration\"},{\"begin\":\"(:)\\\\s*(\\\\()\\\\s*(static member|member)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"keyword.symbol.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"}},\"comments\":\"SRTP syntax support\",\"end\":\"(\\\\))\\\\s*((?=,)|(?==))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"include\":\"#variables\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"match\":\"([()])\",\"name\":\"keyword.symbol.fsharp\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\??)([[:alpha:]0-9'`\\\\^._]+|``[[:alpha:]0-9'`\\\\^:,._ ]+``)\\\\s*(:?)(\\\\s*([?[:alpha:]0-9'`<>._ ]+))?\"},{\"include\":\"#keywords\"}]},\"modules\":{\"patterns\":[{\"begin\":\"\\\\b(?:(namespace global)|(namespace|module)\\\\s*(public|internal|private|rec)?\\\\s+([[:alpha:]|`][[:alpha:]0-9'_. ]*))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"storage.modifier.fsharp\"},\"4\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s?=|\\\\s|$)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"entity.name.section.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)([A-Z][[:alpha:]0-9'_]*)\",\"name\":\"entity.name.section.fsharp\"}]},{\"begin\":\"\\\\b(open(?: type|))\\\\s+([[:alpha:]|`][[:alpha:]0-9'_]*)(?=(\\\\.[A-Z][[:alpha:]0-9_]*)*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s|$)\",\"name\":\"namespace.open.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)(\\\\p{alpha}[[:alpha:]0-9'_]*)\",\"name\":\"entity.name.section.fsharp\"},{\"include\":\"#comments\"}]},{\"begin\":\"^\\\\s*(module)\\\\s+([A-Z][[:alpha:]0-9'_]*)\\\\s*(=)\\\\s*([A-Z][[:alpha:]0-9'_]*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"entity.name.type.namespace.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"},\"4\":{\"name\":\"entity.name.section.fsharp\"}},\"end\":\"(\\\\s|$)\",\"name\":\"namespace.alias.fsharp\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.namespace-reference.fsharp\"},\"2\":{\"name\":\"entity.name.section.fsharp\"}},\"match\":\"(\\\\.)([A-Z][[:alpha:]0-9'_]*)\",\"name\":\"entity.name.section.fsharp\"}]}]},\"record_declaration\":{\"patterns\":[{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(((mutable)\\\\s\\\\p{alpha}+)|[[:alpha:]0-9'`<>\\\\^._]*)\\\\s*((?<!:):(?!:))\\\\s*\",\"beginCaptures\":{\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"$|([;}])\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#comments\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'`\\\\^_ ]+)\"},{\"include\":\"#keywords\"}]},{\"include\":\"#compiler_directives\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#definition\"},{\"include\":\"#attributes\"},{\"include\":\"#anonymous_functions\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}]}]},\"record_signature\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"[[:alpha:]0-9'`\\\\^_ ]+(=)([[:alpha:]0-9'`\\\\^_ ]+)\"},{\"begin\":\"(\\\\{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(})\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"[[:alpha:]0-9'`\\\\^_ ]+(=)([[:alpha:]0-9'`\\\\^_ ]+)\"},{\"include\":\"#record_signature\"}]},{\"include\":\"#keywords\"}]},\"records\":{\"patterns\":[{\"begin\":\"\\\\b(type)\\\\s+(private|internal|public)?\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"storage.modifier.fsharp\"}},\"end\":\"\\\\s*((with)|((as)\\\\s+([[:alpha:]0-9']+))|(=)|[\\\\n=]|(\\\\(\\\\)))\",\"endCaptures\":{\"2\":{\"name\":\"keyword.fsharp\"},\"3\":{\"name\":\"keyword.fsharp\"},\"4\":{\"name\":\"keyword.fsharp\"},\"5\":{\"name\":\"variable.parameter.fsharp\"},\"6\":{\"name\":\"keyword.symbol.fsharp\"},\"7\":{\"name\":\"keyword.symbol.fsharp\"}},\"name\":\"record.fsharp\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#attributes\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"([[:alpha:]0-9'\\\\^._]+|``[[:alpha:]0-9'`\\\\^:,._ ]+``)\"},{\"begin\":\"(<)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"((?<!:)>)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"((['\\\\^])``[[:alpha:]0-9`\\\\^:,._ ]+``|(['\\\\^])[[:alpha:]0-9`\\\\^:._]+)\"},{\"match\":\"\\\\b(interface|with|abstract|and|when|or|not|struct|equality|comparison|unmanaged|delegate|enum)\\\\b\",\"name\":\"keyword.fsharp\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.fsharp\"}},\"match\":\"(static member|member|new)\"},{\"include\":\"#common_binding_definition\"}]},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"comments\":\"Here we need the \\\\w modifier in order to check that the words isn't blacklisted\",\"match\":\"([\\\\w0-9'`\\\\^._]+)\"},{\"include\":\"#keywords\"}]},{\"captures\":{\"1\":{\"name\":\"storage.modifier.fsharp\"}},\"match\":\"\\\\s*(private|internal|public)\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"\\\\s*(?=(=)|[\\\\n=]|(\\\\(\\\\))|(as))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#member_declaration\"}]},{\"include\":\"#keywords\"}]}]},\"string_formatter\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.format.specifier.fsharp\"}},\"match\":\"(%0?-?(\\\\d+)?(([at])|(\\\\.\\\\d+)?([fFeEgGM])|([bcsdixXou])|([sbO])|(\\\\+?A)))\",\"name\":\"entity.name.type.format.specifier.fsharp\"}]},\"strings\":{\"patterns\":[{\"begin\":\"(?=[^\\\\\\\\])(@\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\")(?!\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.literal.fsharp\",\"patterns\":[{\"match\":\"\\\"(\\\")\",\"name\":\"constant.character.string.escape.fsharp\"}]},{\"begin\":\"(?=[^\\\\\\\\])(\\\"\\\"\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\"\\\"\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.triple.fsharp\",\"patterns\":[{\"include\":\"#string_formatter\"}]},{\"begin\":\"(?=[^\\\\\\\\])(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.begin.fsharp\"}},\"end\":\"(\\\")\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.fsharp\"}},\"name\":\"string.quoted.double.fsharp\",\"patterns\":[{\"match\":\"\\\\\\\\$[ \\\\t]*\",\"name\":\"punctuation.separator.string.ignore-eol.fsharp\"},{\"match\":\"\\\\\\\\(['\\\"\\\\\\\\abfnrtv]|([01][0-9][0-9]|2[0-4][0-9]|25[0-5])|(x\\\\h{2})|(u\\\\h{4})|(U00(0\\\\h|10)\\\\h{4}))\",\"name\":\"constant.character.string.escape.fsharp\"},{\"match\":\"\\\\\\\\(([0-9]{1,3})|(x\\\\S{0,2})|(u\\\\S{0,4})|(U\\\\S{0,8})|\\\\S)\",\"name\":\"invalid.illegal.character.string.fsharp\"},{\"include\":\"#string_formatter\"}]}]},\"strp_inlined\":{\"patterns\":[{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#strp_inlined_body\"}]}]},\"strp_inlined_body\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#anonymous_functions\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(\\\\^[[:alpha:]0-9'._]+)\"},{\"match\":\"\\\\b(and|when|or)\\\\b\",\"name\":\"keyword.fsharp\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"include\":\"#strp_inlined_body\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.fsharp\"},\"2\":{\"name\":\"variable.fsharp\"},\"3\":{\"name\":\"keyword.symbol.fsharp\"}},\"match\":\"(static member|member)\\\\s*([[:alpha:]0-9'`<>\\\\^._]+|``[[:alpha:]0-9' <>\\\\^._]+``)\\\\s*(:)\"},{\"include\":\"#compiler_directives\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#chars\"},{\"include\":\"#double_tick\"},{\"include\":\"#keywords\"},{\"include\":\"#text\"},{\"include\":\"#definition\"},{\"include\":\"#attributes\"},{\"include\":\"#keywords\"},{\"include\":\"#cexprs\"},{\"include\":\"#text\"}]},\"text\":{\"patterns\":[{\"match\":\"\\\\\\\\\",\"name\":\"text.fsharp\"}]},\"tuple_signature\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([?[:alpha:]0-9'`\\\\^._ ]+))+\"},{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"}},\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.fsharp\"}},\"match\":\"(([?[:alpha:]0-9'`\\\\^._ ]+))+\"},{\"include\":\"#tuple_signature\"}]},{\"include\":\"#keywords\"}]},\"variables\":{\"patterns\":[{\"match\":\"\\\\(\\\\)\",\"name\":\"keyword.symbol.fsharp\"},{\"captures\":{\"1\":{\"name\":\"keyword.symbol.fsharp\"},\"2\":{\"name\":\"variable.parameter.fsharp\"}},\"match\":\"(\\\\??)(``[[:alpha:]0-9'`\\\\^:,._ ]+``|(?!private|struct\\\\b)\\\\b[\\\\w[:alpha:]0-9'`<>\\\\^._ ]+)\"}]}},\"scopeName\":\"source.fsharp\",\"embeddedLangs\":[\"markdown\"],\"aliases\":[\"f#\",\"fs\"]}"))
|
|
4
4
|
|
|
5
5
|
export default [
|
|
6
6
|
...markdown,
|
package/dist/gdresource.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import gdshader from './gdshader.mjs'
|
|
2
2
|
import gdscript from './gdscript.mjs'
|
|
3
3
|
|
|
4
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"GDResource\",\"name\":\"gdresource\",\"patterns\":[{\"include\":\"#embedded_shader\"},{\"include\":\"#embedded_gdscript\"},{\"include\":\"#comment\"},{\"include\":\"#heading\"},{\"include\":\"#key_value\"}],\"repository\":{\"comment\":{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.gdresource\"}},\"match\":\"(;).*$\\\\n?\",\"name\":\"comment.line.gdresource\"},\"data\":{\"patterns\":[{\"include\":\"#comment\"},{\"begin\":\"(?<!\\\\w)(\\\\{)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.table.inline.gdresource\"}},\"end\":\"\\\\s*(
|
|
4
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"GDResource\",\"name\":\"gdresource\",\"patterns\":[{\"include\":\"#embedded_shader\"},{\"include\":\"#embedded_gdscript\"},{\"include\":\"#comment\"},{\"include\":\"#heading\"},{\"include\":\"#key_value\"}],\"repository\":{\"comment\":{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.gdresource\"}},\"match\":\"(;).*$\\\\n?\",\"name\":\"comment.line.gdresource\"},\"data\":{\"patterns\":[{\"include\":\"#comment\"},{\"begin\":\"(?<!\\\\w)(\\\\{)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.table.inline.gdresource\"}},\"end\":\"\\\\s*(})(?!\\\\w)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.table.inline.gdresource\"}},\"patterns\":[{\"include\":\"#key_value\"},{\"include\":\"#data\"}]},{\"begin\":\"(?<!\\\\w)(\\\\[)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.array.gdresource\"}},\"end\":\"\\\\s*(])(?!\\\\w)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.array.gdresource\"}},\"patterns\":[{\"include\":\"#data\"}]},{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"string.quoted.triple.basic.block.gdresource\",\"patterns\":[{\"match\":\"\\\\\\\\([btnfr\\\"\\\\\\\\\\\\n/ ]|u\\\\h{4}|U\\\\h{8})\",\"name\":\"constant.character.escape.gdresource\"},{\"match\":\"\\\\\\\\[^btnfr/\\\"\\\\\\\\\\\\n]\",\"name\":\"invalid.illegal.escape.gdresource\"}]},{\"match\":\"\\\"res://[^\\\"\\\\\\\\]*(?:\\\\\\\\.[^\\\"\\\\\\\\]*)*\\\"\",\"name\":\"support.function.any-method.gdresource\"},{\"match\":\"(?<=type=)\\\"[^\\\"\\\\\\\\]*(?:\\\\\\\\.[^\\\"\\\\\\\\]*)*\\\"\",\"name\":\"support.class.library.gdresource\"},{\"match\":\"(?<=NodePath\\\\(|parent=|name=)\\\"[^\\\"\\\\\\\\]*(?:\\\\\\\\.[^\\\"\\\\\\\\]*)*\\\"\",\"name\":\"constant.character.escape.gdresource\"},{\"begin\":\"\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.double.basic.line.gdresource\",\"patterns\":[{\"match\":\"\\\\\\\\([btnfr\\\"\\\\\\\\\\\\n/ ]|u\\\\h{4}|U\\\\h{8})\",\"name\":\"constant.character.escape.gdresource\"},{\"match\":\"\\\\\\\\[^btnfr/\\\"\\\\\\\\\\\\n]\",\"name\":\"invalid.illegal.escape.gdresource\"}]},{\"match\":\"'.*?'\",\"name\":\"string.quoted.single.literal.line.gdresource\"},{\"match\":\"(?<!\\\\w)(true|false)(?!\\\\w)\",\"name\":\"constant.language.gdresource\"},{\"match\":\"(?<!\\\\w)([+\\\\-]?(0|([1-9](([0-9]|_[0-9])+)?))(?:(?:\\\\.(0|([1-9](([0-9]|_[0-9])+)?)))?[eE][+\\\\-]?[1-9]_?[0-9]*|\\\\.[0-9_]*))(?!\\\\w)\",\"name\":\"constant.numeric.float.gdresource\"},{\"match\":\"(?<!\\\\w)([+\\\\-]?(0|([1-9](([0-9]|_[0-9])+)?)))(?!\\\\w)\",\"name\":\"constant.numeric.integer.gdresource\"},{\"match\":\"(?<!\\\\w)([+\\\\-]?inf)(?!\\\\w)\",\"name\":\"constant.numeric.inf.gdresource\"},{\"match\":\"(?<!\\\\w)([+\\\\-]?nan)(?!\\\\w)\",\"name\":\"constant.numeric.nan.gdresource\"},{\"match\":\"(?<!\\\\w)(0x((\\\\h((\\\\h|_\\\\h)+)?)))(?!\\\\w)\",\"name\":\"constant.numeric.hex.gdresource\"},{\"match\":\"(?<!\\\\w)(0o[0-7](_?[0-7])*)(?!\\\\w)\",\"name\":\"constant.numeric.oct.gdresource\"},{\"match\":\"(?<!\\\\w)(0b[01](_?[01])*)(?!\\\\w)\",\"name\":\"constant.numeric.bin.gdresource\"},{\"begin\":\"(?<!\\\\w)(Vector2|Vector2i|Vector3|Vector3i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|Object|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|StringName|Quaternion|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedColorArray)(\\\\()\\\\s?\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.library.gdresource\"}},\"end\":\"\\\\s?(\\\\))\",\"patterns\":[{\"include\":\"#key_value\"},{\"include\":\"#data\"}]},{\"begin\":\"(?<!\\\\w)(ExtResource|SubResource)(\\\\()\\\\s?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.gdresource\"}},\"end\":\"\\\\s?(\\\\))\",\"patterns\":[{\"include\":\"#key_value\"},{\"include\":\"#data\"}]}]},\"embedded_gdscript\":{\"begin\":\"(script/source) = \\\"\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"}},\"end\":\"\\\"\",\"patterns\":[{\"include\":\"source.gdscript\"}]},\"embedded_shader\":{\"begin\":\"(code) = \\\"\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"}},\"end\":\"\\\"\",\"name\":\"meta.embedded.block.gdshader\",\"patterns\":[{\"include\":\"source.gdshader\"}]},\"heading\":{\"begin\":\"\\\\[([a-z_]*)\\\\s?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.gdresource\"}},\"end\":\"]\",\"patterns\":[{\"include\":\"#heading_properties\"},{\"include\":\"#data\"}]},\"heading_properties\":{\"patterns\":[{\"match\":\"(\\\\s*[A-Za-z_\\\\-][A-Za-z0-9_\\\\-]*\\\\s*=)(?=\\\\s*$)\",\"name\":\"invalid.illegal.noValue.gdresource\"},{\"begin\":\"\\\\s*([A-Za-z_\\\\-]\\\\S*|\\\".+\\\"|'.+'|[0-9]+)\\\\s*(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"},\"2\":{\"name\":\"punctuation.definition.keyValue.gdresource\"}},\"end\":\"($|(?==)|,?|\\\\s*(?=}))\",\"patterns\":[{\"include\":\"#data\"}]}]},\"key_value\":{\"patterns\":[{\"match\":\"(\\\\s*[A-Za-z_\\\\-][A-Za-z0-9_\\\\-]*\\\\s*=)(?=\\\\s*$)\",\"name\":\"invalid.illegal.noValue.gdresource\"},{\"begin\":\"\\\\s*([A-Za-z_\\\\-]\\\\S*|\\\".+\\\"|'.+'|[0-9]+)\\\\s*(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"variable.other.property.gdresource\"},\"2\":{\"name\":\"punctuation.definition.keyValue.gdresource\"}},\"end\":\"($|(?==)|,|\\\\s*(?=}))\",\"patterns\":[{\"include\":\"#data\"}]}]}},\"scopeName\":\"source.gdresource\",\"embeddedLangs\":[\"gdshader\",\"gdscript\"]}"))
|
|
5
5
|
|
|
6
6
|
export default [
|
|
7
7
|
...gdshader,
|
package/dist/gdscript.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"GDScript\",\"fileTypes\":[\"gd\"],\"name\":\"gdscript\",\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#expression\"}],\"repository\":{\"annotated_parameter\":{\"begin\":\"\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(:)\\\\s*([a-zA-Z_]\\\\w*)?\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.function.language.gdscript\"},\"2\":{\"name\":\"punctuation.separator.annotation.gdscript\"},\"3\":{\"name\":\"entity.name.type.class.gdscript\"}},\"end\":\"(,)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.parameters.gdscript\"}},\"patterns\":[{\"include\":\"#expression\"},{\"match\":\"=(?!=)\",\"name\":\"keyword.operator.assignment.gdscript\"}]},\"annotations\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.decorator.gdscript\"},\"2\":{\"name\":\"entity.name.function.decorator.gdscript\"}},\"match\":\"(@)(export|export_group|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_global_dir|export_global_file|export_multiline|export_node_path|export_placeholder|export_range|export_storage|icon|onready|rpc|tool|warning_ignore|static_unload)\\\\b\"},\"any_method\":{\"match\":\"\\\\b([A-Za-z_]\\\\w*)\\\\b(?=\\\\s*(?:[(]))\",\"name\":\"entity.name.function.other.gdscript\"},\"any_property\":{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.gdscript\"},\"2\":{\"name\":\"constant.language.gdscript\"},\"3\":{\"name\":\"variable.other.property.gdscript\"}},\"match\":\"\\\\b(\\\\.)\\\\s*(?<![@\\\\$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\\\w*))\\\\b(?![(])\"},\"any_variable\":{\"match\":\"\\\\b(?<![@\\\\$#%])([A-Za-z_]\\\\w*)\\\\b(?![(])\",\"name\":\"variable.other.gdscript\"},\"arithmetic_operator\":{\"match\":\"->|\\\\+=|-=|\\\\*\\\\*=|\\\\*=|\\\\^=|/=|%=|&=|~=|\\\\|=|\\\\*\\\\*|\\\\*|/|%|\\\\+|-\",\"name\":\"keyword.operator.arithmetic.gdscript\"},\"assignment_operator\":{\"match\":\"=\",\"name\":\"keyword.operator.assignment.gdscript\"},\"base_expression\":{\"patterns\":[{\"include\":\"#builtin_get_node_shorthand\"},{\"include\":\"#nodepath_object\"},{\"include\":\"#nodepath_function\"},{\"include\":\"#strings\"},{\"include\":\"#builtin_classes\"},{\"include\":\"#const_vars\"},{\"include\":\"#keywords\"},{\"include\":\"#operators\"},{\"include\":\"#lambda_declaration\"},{\"include\":\"#class_declaration\"},{\"include\":\"#variable_declaration\"},{\"include\":\"#signal_declaration_bare\"},{\"include\":\"#signal_declaration\"},{\"include\":\"#function_declaration\"},{\"include\":\"#statement_keyword\"},{\"include\":\"#assignment_operator\"},{\"include\":\"#in_keyword\"},{\"include\":\"#control_flow\"},{\"include\":\"#match_keyword\"},{\"include\":\"#curly_braces\"},{\"include\":\"#square_braces\"},{\"include\":\"#round_braces\"},{\"include\":\"#function_call\"},{\"include\":\"#region\"},{\"include\":\"#comment\"},{\"include\":\"#self\"},{\"include\":\"#func\"},{\"include\":\"#letter\"},{\"include\":\"#numbers\"},{\"include\":\"#pascal_case_class\"},{\"include\":\"#line_continuation\"}]},\"bitwise_operator\":{\"match\":\"&|\\\\||<<=|>>=|<<|>>|\\\\^|~\",\"name\":\"keyword.operator.bitwise.gdscript\"},\"boolean_operator\":{\"match\":\"(&&|\\\\|\\\\|)\",\"name\":\"keyword.operator.boolean.gdscript\"},\"builtin_classes\":{\"match\":\"(?<![^.]\\\\.|:)\\\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|JSON|UPNP|OS|IP|JSONRPC|XRVRS)\\\\b\",\"name\":\"entity.name.type.class.builtin.gdscript\"},\"builtin_get_node_shorthand\":{\"patterns\":[{\"include\":\"#builtin_get_node_shorthand_quoted\"},{\"include\":\"#builtin_get_node_shorthand_bare\"},{\"include\":\"#builtin_get_node_shorthand_bare_multi\"}]},\"builtin_get_node_shorthand_bare\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"},\"2\":{\"name\":\"constant.character.escape.gdscript\"},\"3\":{\"name\":\"constant.character.escape.gdscript\"},\"4\":{\"name\":\"constant.character.escape.gdscript\"}},\"match\":\"(?<!/\\\\s*)(\\\\$\\\\s*|%|\\\\$%\\\\s*)(/\\\\s*)?([a-zA-Z_]\\\\w*)\\\\b(?!\\\\s*/)\",\"name\":\"meta.literal.nodepath.bare.gdscript\"},\"builtin_get_node_shorthand_bare_multi\":{\"begin\":\"(\\\\$\\\\s*|%|\\\\$%\\\\s*)(/\\\\s*)?([a-zA-Z_]\\\\w*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"},\"2\":{\"name\":\"constant.character.escape.gdscript\"},\"3\":{\"name\":\"constant.character.escape.gdscript\"}},\"end\":\"(?!\\\\s*/\\\\s*%?\\\\s*[a-zA-Z_]\\\\w*)\",\"name\":\"meta.literal.nodepath.bare.gdscript\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.character.escape.gdscript\"},\"2\":{\"name\":\"keyword.control.flow.gdscript\"},\"3\":{\"name\":\"constant.character.escape.gdscript\"}},\"match\":\"(/)\\\\s*(%)?\\\\s*([a-zA-Z_]\\\\w*)\\\\s*\"}]},\"builtin_get_node_shorthand_quoted\":{\"begin\":\"(?:(\\\\$|%)|(&|\\\\^|@))(\\\"|')\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"},\"2\":{\"name\":\"variable.other.enummember.gdscript\"}},\"end\":\"(\\\\3)\",\"name\":\"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript\",\"patterns\":[{\"match\":\"%\",\"name\":\"keyword.control.flow\"}]},\"class_declaration\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"class.other.gdscript\"}},\"match\":\"(?<=^class)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=:)\"},\"class_enum\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"variable.other.enummember.gdscript\"}},\"match\":\"\\\\b([A-Z][a-zA-Z_0-9]*)\\\\.([A-Z_0-9]+)\"},\"class_is\":{\"captures\":{\"1\":{\"name\":\"storage.type.is.gdscript\"},\"2\":{\"name\":\"entity.name.type.class.gdscript\"}},\"match\":\"\\\\s+(is)\\\\s+([a-zA-Z_]\\\\w*)\"},\"class_name\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"class.other.gdscript\"}},\"match\":\"(?<=class_name)\\\\s+([a-zA-Z_]\\\\w*(\\\\.([a-zA-Z_]\\\\w*))?)\"},\"class_new\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"storage.type.new.gdscript\"},\"3\":{\"name\":\"punctuation.parenthesis.begin.gdscript\"}},\"match\":\"\\\\b([a-zA-Z_]\\\\w*).(new)\\\\(\"},\"comment\":{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.number-sign.gdscript\"}},\"match\":\"(##|#).*$\\\\n?\",\"name\":\"comment.line.number-sign.gdscript\"},\"compare_operator\":{\"match\":\"<=|>=|==|<|>|!=|!\",\"name\":\"keyword.operator.comparison.gdscript\"},\"const_vars\":{\"match\":\"\\\\b([A-Z_][A-Z_0-9]*)\\\\b\",\"name\":\"variable.other.constant.gdscript\"},\"control_flow\":{\"match\":\"\\\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\\\b\",\"name\":\"keyword.control.gdscript\"},\"curly_braces\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.dict.begin.gdscript\"}},\"end\":\"\\\\}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.dict.end.gdscript\"}},\"patterns\":[{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"}]},\"expression\":{\"patterns\":[{\"include\":\"#getter_setter_godot4\"},{\"include\":\"#base_expression\"},{\"include\":\"#assignment_operator\"},{\"include\":\"#annotations\"},{\"include\":\"#class_name\"},{\"include\":\"#builtin_classes\"},{\"include\":\"#class_new\"},{\"include\":\"#class_is\"},{\"include\":\"#class_enum\"},{\"include\":\"#any_method\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"}]},\"extends_statement\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gdscript\"},\"2\":{\"name\":\"entity.other.inherited-class.gdscript\"}},\"match\":\"(extends)\\\\s+([a-zA-Z_]\\\\w*\\\\.[a-zA-Z_]\\\\w*)?\"},\"func\":{\"match\":\"\\\\bfunc\\\\b\",\"name\":\"keyword.language.gdscript\"},\"function_arguments\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.begin.gdscript\"}},\"contentName\":\"meta.function.parameters.gdscript\",\"end\":\"(?=\\\\))(?!\\\\)\\\\s*\\\\()\",\"patterns\":[{\"match\":\"(,)\",\"name\":\"punctuation.separator.arguments.gdscript\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function-call.gdscript\"},\"2\":{\"name\":\"keyword.operator.assignment.gdscript\"}},\"match\":\"\\\\b([a-zA-Z_]\\\\w*)\\\\s*(=)(?!=)\"},{\"match\":\"=(?!=)\",\"name\":\"keyword.operator.assignment.gdscript\"},{\"include\":\"#base_expression\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.gdscript\"},\"2\":{\"name\":\"punctuation.definition.arguments.begin.gdscript\"}},\"match\":\"\\\\s*(\\\\))\\\\s*(\\\\()\"},{\"include\":\"#letter\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"},{\"include\":\"#keywords\"}]},\"function_call\":{\"begin\":\"(?=\\\\b[a-zA-Z_]\\\\w*\\\\b\\\\()\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.gdscript\"}},\"name\":\"meta.function-call.gdscript\",\"patterns\":[{\"include\":\"#function_name\"},{\"include\":\"#function_arguments\"}]},\"function_declaration\":{\"begin\":\"\\\\s*(func)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"end\":\"(:)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.begin.gdscript\"}},\"name\":\"meta.function.gdscript\",\"patterns\":[{\"include\":\"#parameters\"},{\"include\":\"#line_continuation\"},{\"include\":\"#base_expression\"}]},\"function_name\":{\"patterns\":[{\"include\":\"#builtin_classes\"},{\"match\":\"\\\\b(preload)\\\\b\",\"name\":\"keyword.language.gdscript\"},{\"match\":\"\\\\b([a-zA-Z_]\\\\w*)\\\\b\",\"name\":\"entity.name.function.gdscript\"}]},\"getter_setter_godot4\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.function.gdscript\"},\"2\":{\"name\":\"punctuation.separator.annotation.gdscript\"}},\"match\":\"(get)\\\\s*(:)\",\"name\":\"meta.variable.declaration.getter.gdscript\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.gdscript\"},\"2\":{\"name\":\"punctuation.definition.arguments.begin.gdscript\"},\"3\":{\"name\":\"variable.other.gdscript\"},\"4\":{\"name\":\"punctuation.definition.arguments.end.gdscript\"},\"5\":{\"name\":\"punctuation.separator.annotation.gdscript\"}},\"match\":\"(set)\\\\s*(\\\\()\\\\s*([A-Za-z_]\\\\w*)\\\\s*(\\\\))\\\\s*(:)\",\"name\":\"meta.variable.declaration.setter.gdscript\"}]},\"in_keyword\":{\"patterns\":[{\"begin\":\"\\\\b(for)\\\\b\",\"captures\":{\"1\":{\"name\":\"keyword.control.gdscript\"}},\"end\":\":\",\"patterns\":[{\"match\":\"\\\\bin\\\\b\",\"name\":\"keyword.control.gdscript\"},{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"}]},{\"match\":\"\\\\bin\\\\b\",\"name\":\"keyword.operator.wordlike.gdscript\"}]},\"keywords\":{\"match\":\"\\\\b(?:class|class_name|abstract|is|onready|tool|static|export|as|void|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace|super)\\\\b\",\"name\":\"keyword.language.gdscript\"},\"lambda_declaration\":{\"begin\":\"(func)\\\\s?(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"end\":\"(:|(?=[#'\\\"\\\\n]))\",\"end2\":\"(\\\\s*(\\\\-\\\\>)\\\\s*(void\\\\w*)|([a-zA-Z_]\\\\w*)\\\\s*\\\\:)\",\"endCaptures2\":{\"1\":{\"name\":\"punctuation.separator.annotation.result.gdscript\"},\"2\":{\"name\":\"keyword.language.void.gdscript\"},\"3\":{\"name\":\"entity.name.type.class.gdscript markup.italic\"}},\"name\":\"meta.function.gdscript\",\"patterns\":[{\"include\":\"#parameters\"},{\"include\":\"#line_continuation\"},{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"}]},\"letter\":{\"match\":\"\\\\b(?:true|false|null)\\\\b\",\"name\":\"constant.language.gdscript\"},\"line_continuation\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.continuation.line.gdscript\"},\"2\":{\"name\":\"invalid.illegal.line.continuation.gdscript\"}},\"match\":\"(\\\\\\\\)\\\\s*(\\\\S.*$\\\\n?)\"},{\"begin\":\"(\\\\\\\\)\\\\s*$\\\\n?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.continuation.line.gdscript\"}},\"end\":\"(?=^\\\\s*$)|(?!(\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\\"\\\\\\\"\\\\\\\"|\\\\'|\\\\\\\"))|(\\\\G$))\",\"patterns\":[{\"include\":\"#base_expression\"}]}]},\"loose_default\":{\"begin\":\"(=)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.gdscript\"}},\"end\":\"(,)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.parameters.gdscript\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"match_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.control.gdscript\"}},\"match\":\"^\\n\\\\s*(match)\"},\"nodepath_function\":{\"begin\":\"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.gdscript\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.gdscript\"}},\"contentName\":\"meta.function.parameters.gdscript\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.end.gdscript\"}},\"name\":\"meta.function.gdscript\",\"patterns\":[{\"begin\":\"(\\\"|')\",\"end\":\"\\\\1\",\"name\":\"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape\",\"patterns\":[{\"match\":\"%\",\"name\":\"keyword.control.flow\"}]},{\"include\":\"#expression\"}]},\"nodepath_object\":{\"begin\":\"(NodePath)\\\\s*(?:\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.library.gdscript\"}},\"end\":\"(?:\\\\))\",\"name\":\"meta.literal.nodepath.gdscript\",\"patterns\":[{\"begin\":\"(\\\"|')\",\"end\":\"\\\\1\",\"name\":\"string.quoted.gdscript constant.character.escape.gdscript\",\"patterns\":[{\"match\":\"%\",\"name\":\"keyword.control.flow.gdscript\"}]}]},\"numbers\":{\"patterns\":[{\"match\":\"0b[01_]+\",\"name\":\"constant.numeric.integer.binary.gdscript\"},{\"match\":\"0x[0-9A-Fa-f_]+\",\"name\":\"constant.numeric.integer.hexadecimal.gdscript\"},{\"match\":\"\\\\.[0-9][0-9_]*([eE][+-]?[0-9_]+)?\",\"name\":\"constant.numeric.float.gdscript\"},{\"match\":\"([0-9][0-9_]*)?\\\\.[0-9_]*([eE][+-]?[0-9_]+)?\",\"name\":\"constant.numeric.float.gdscript\"},{\"match\":\"[0-9][0-9_]*[eE][+-]?[0-9_]+\",\"name\":\"constant.numeric.float.gdscript\"},{\"match\":\"[-]?[0-9][0-9_]*\",\"name\":\"constant.numeric.integer.gdscript\"}]},\"operators\":{\"patterns\":[{\"include\":\"#wordlike_operator\"},{\"include\":\"#boolean_operator\"},{\"include\":\"#arithmetic_operator\"},{\"include\":\"#bitwise_operator\"},{\"include\":\"#compare_operator\"}]},\"parameters\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.begin.gdscript\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.end.gdscript\"}},\"name\":\"meta.function.parameters.gdscript\",\"patterns\":[{\"include\":\"#annotated_parameter\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function.language.gdscript\"},\"2\":{\"name\":\"punctuation.separator.parameters.gdscript\"}},\"match\":\"([a-zA-Z_]\\\\w*)\\\\s*(?:(,)|(?=[)#\\\\n=]))\"},{\"include\":\"#comment\"},{\"include\":\"#loose_default\"}]},\"pascal_case_class\":{\"match\":\"\\\\b([A-Z]+[a-z_0-9]*([A-Z]?[a-z_0-9]+)*[A-Z]?)\\\\b\",\"name\":\"entity.name.type.class.gdscript\"},\"region\":{\"match\":\"#(end)?region.*$\\\\n?\",\"name\":\"keyword.language.region.gdscript\"},\"round_braces\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.begin.gdscript\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.end.gdscript\"}},\"patterns\":[{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"}]},\"self\":{\"match\":\"\\\\bself\\\\b\",\"name\":\"variable.language.gdscript\"},\"signal_declaration\":{\"begin\":\"\\\\s*(signal)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"end\":\"((?=[#'\\\"\\\\n]))\",\"name\":\"meta.signal.gdscript\",\"patterns\":[{\"include\":\"#parameters\"},{\"include\":\"#line_continuation\"}]},\"signal_declaration_bare\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"match\":\"\\\\s*(signal)\\\\s+([a-zA-Z_]\\\\w*)(?=[\\\\n\\\\s])\",\"name\":\"meta.signal.gdscript\"},\"square_braces\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.begin.gdscript\"}},\"end\":\"\\\\]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.end.gdscript\"}},\"patterns\":[{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"}]},\"statement\":{\"patterns\":[{\"include\":\"#extends_statement\"}]},\"statement_keyword\":{\"patterns\":[{\"match\":\"\\\\b(?<!\\\\.)(continue|assert|break|elif|else|if|pass|return|while)\\\\b\",\"name\":\"keyword.control.flow.gdscript\"},{\"match\":\"\\\\b(?<!\\\\.)(class)\\\\b\",\"name\":\"storage.type.class.gdscript\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"}},\"match\":\"^\\\\s*(case|match)(?=\\\\s*([-+\\\\w\\\\d(\\\\[{'\\\":#]|$))\\\\b\"}]},\"string_bracket_placeholders\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.gdscript\"},\"3\":{\"name\":\"storage.type.format.gdscript\"},\"4\":{\"name\":\"storage.type.format.gdscript\"}},\"match\":\"({{|}}|(?:{\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\\"]+\\\\])*(![rsa])?(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)?}))\",\"name\":\"meta.format.brace.gdscript\"},{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.gdscript\"},\"3\":{\"name\":\"storage.type.format.gdscript\"},\"4\":{\"name\":\"storage.type.format.gdscript\"}},\"match\":\"({\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\\"]+\\\\])*(![rsa])?(:)[^'\\\"{}\\\\n]*(?:\\\\{[^'\\\"}\\\\n]*?\\\\}[^'\\\"{}\\\\n]*)*})\",\"name\":\"meta.format.brace.gdscript\"}]},\"string_percent_placeholders\":{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.gdscript\"}},\"match\":\"(%(\\\\([\\\\w\\\\s]*\\\\))?[-+#0 ]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])\",\"name\":\"meta.format.percent.gdscript\"},\"strings\":{\"begin\":\"(r)?(\\\"\\\"\\\"|'''|\\\"|')\",\"beginCaptures\":{\"1\":{\"name\":\"constant.character.escape.gdscript\"}},\"end\":\"\\\\2\",\"name\":\"string.quoted.gdscript\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.gdscript\"},{\"include\":\"#string_percent_placeholders\"},{\"include\":\"#string_bracket_placeholders\"}]},\"variable_declaration\":{\"begin\":\"\\\\b(?:(var)|(const))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.var.gdscript\"},\"2\":{\"name\":\"keyword.language.gdscript storage.type.const.gdscript\"}},\"end\":\"$|;\",\"name\":\"meta.variable.declaration.gdscript\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.annotation.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"},\"3\":{\"name\":\"entity.name.function.gdscript\"}},\"match\":\"(:)?\\\\s*(set|get)\\\\s+=\\\\s+([a-zA-Z_]\\\\w*)\"},{\"match\":\":=|=(?!=)\",\"name\":\"keyword.operator.assignment.gdscript\"},{\"captures\":{\"1\":{\"name\":\"punctuation.separator.annotation.gdscript\"},\"2\":{\"name\":\"entity.name.type.class.gdscript\"}},\"match\":\"(:)\\\\s*([a-zA-Z_]\\\\w*)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.language.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"},\"3\":{\"name\":\"entity.name.function.gdscript\"}},\"match\":\"(setget)\\\\s+([a-zA-Z_]\\\\w*)(?:[,]\\\\s*([a-zA-Z_]\\\\w*))?\"},{\"include\":\"#expression\"},{\"include\":\"#letter\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"},{\"include\":\"#keywords\"}]},\"wordlike_operator\":{\"match\":\"\\\\b(and|or|not)\\\\b\",\"name\":\"keyword.operator.wordlike.gdscript\"}},\"scopeName\":\"source.gdscript\"}"))
|
|
1
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"GDScript\",\"fileTypes\":[\"gd\"],\"name\":\"gdscript\",\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#expression\"}],\"repository\":{\"annotated_parameter\":{\"begin\":\"\\\\s*([a-zA-Z_]\\\\w*)\\\\s*(:)\\\\s*([a-zA-Z_]\\\\w*)?\",\"beginCaptures\":{\"1\":{\"name\":\"variable.parameter.function.language.gdscript\"},\"2\":{\"name\":\"punctuation.separator.annotation.gdscript\"},\"3\":{\"name\":\"entity.name.type.class.gdscript\"}},\"end\":\"(,)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.parameters.gdscript\"}},\"patterns\":[{\"include\":\"#expression\"},{\"match\":\"=(?!=)\",\"name\":\"keyword.operator.assignment.gdscript\"}]},\"annotations\":{\"captures\":{\"1\":{\"name\":\"entity.name.function.decorator.gdscript\"},\"2\":{\"name\":\"entity.name.function.decorator.gdscript\"}},\"match\":\"(@)(export|export_group|export_color_no_alpha|export_custom|export_dir|export_enum|export_exp_easing|export_file|export_flags|export_flags_2d_navigation|export_flags_2d_physics|export_flags_2d_render|export_flags_3d_navigation|export_flags_3d_physics|export_flags_3d_render|export_global_dir|export_global_file|export_multiline|export_node_path|export_placeholder|export_range|export_storage|icon|onready|rpc|tool|warning_ignore|static_unload)\\\\b\"},\"any_method\":{\"match\":\"\\\\b([A-Za-z_]\\\\w*)\\\\b(?=\\\\s*\\\\()\",\"name\":\"entity.name.function.other.gdscript\"},\"any_property\":{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.gdscript\"},\"2\":{\"name\":\"constant.language.gdscript\"},\"3\":{\"name\":\"variable.other.property.gdscript\"}},\"match\":\"\\\\b(\\\\.)\\\\s*(?<![@$#%])(?:([A-Z_][A-Z_0-9]*)|([A-Za-z_]\\\\w*))\\\\b(?!\\\\()\"},\"any_variable\":{\"match\":\"\\\\b(?<![@$#%])([A-Za-z_]\\\\w*)\\\\b(?!\\\\()\",\"name\":\"variable.other.gdscript\"},\"arithmetic_operator\":{\"match\":\"->|\\\\+=|-=|\\\\*\\\\*=|\\\\*=|\\\\^=|/=|%=|&=|~=|\\\\|=|\\\\*\\\\*|[*/%+\\\\-]\",\"name\":\"keyword.operator.arithmetic.gdscript\"},\"assignment_operator\":{\"match\":\"=\",\"name\":\"keyword.operator.assignment.gdscript\"},\"base_expression\":{\"patterns\":[{\"include\":\"#builtin_get_node_shorthand\"},{\"include\":\"#nodepath_object\"},{\"include\":\"#nodepath_function\"},{\"include\":\"#strings\"},{\"include\":\"#builtin_classes\"},{\"include\":\"#const_vars\"},{\"include\":\"#keywords\"},{\"include\":\"#operators\"},{\"include\":\"#lambda_declaration\"},{\"include\":\"#class_declaration\"},{\"include\":\"#variable_declaration\"},{\"include\":\"#signal_declaration_bare\"},{\"include\":\"#signal_declaration\"},{\"include\":\"#function_declaration\"},{\"include\":\"#statement_keyword\"},{\"include\":\"#assignment_operator\"},{\"include\":\"#in_keyword\"},{\"include\":\"#control_flow\"},{\"include\":\"#match_keyword\"},{\"include\":\"#curly_braces\"},{\"include\":\"#square_braces\"},{\"include\":\"#round_braces\"},{\"include\":\"#function_call\"},{\"include\":\"#region\"},{\"include\":\"#comment\"},{\"include\":\"#self\"},{\"include\":\"#func\"},{\"include\":\"#letter\"},{\"include\":\"#numbers\"},{\"include\":\"#pascal_case_class\"},{\"include\":\"#line_continuation\"}]},\"bitwise_operator\":{\"match\":\"[\\\\&|]|<<=|>>=|<<|>>|[\\\\^~]\",\"name\":\"keyword.operator.bitwise.gdscript\"},\"boolean_operator\":{\"match\":\"(&&|\\\\|\\\\|)\",\"name\":\"keyword.operator.boolean.gdscript\"},\"builtin_classes\":{\"match\":\"(?<![^.]\\\\.|:)\\\\b(Vector2|Vector2i|Vector3|Vector3i|Vector4|Vector4i|Color|Rect2|Rect2i|Array|Basis|Dictionary|Plane|Quat|RID|Rect3|Transform|Transform2D|Transform3D|AABB|String|Color|NodePath|PoolByteArray|PoolIntArray|PoolRealArray|PoolStringArray|PoolVector2Array|PoolVector3Array|PoolColorArray|bool|int|float|Signal|Callable|StringName|Quaternion|Projection|PackedByteArray|PackedInt32Array|PackedInt64Array|PackedFloat32Array|PackedFloat64Array|PackedStringArray|PackedVector2Array|PackedVector2iArray|PackedVector3Array|PackedVector3iArray|PackedVector4Array|PackedColorArray|JSON|UPNP|OS|IP|JSONRPC|XRVRS)\\\\b\",\"name\":\"entity.name.type.class.builtin.gdscript\"},\"builtin_get_node_shorthand\":{\"patterns\":[{\"include\":\"#builtin_get_node_shorthand_quoted\"},{\"include\":\"#builtin_get_node_shorthand_bare\"},{\"include\":\"#builtin_get_node_shorthand_bare_multi\"}]},\"builtin_get_node_shorthand_bare\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"},\"2\":{\"name\":\"constant.character.escape.gdscript\"},\"3\":{\"name\":\"constant.character.escape.gdscript\"},\"4\":{\"name\":\"constant.character.escape.gdscript\"}},\"match\":\"(?<!/\\\\s*)(\\\\$\\\\s*|%|\\\\$%\\\\s*)(/\\\\s*)?([a-zA-Z_]\\\\w*)\\\\b(?!\\\\s*/)\",\"name\":\"meta.literal.nodepath.bare.gdscript\"},\"builtin_get_node_shorthand_bare_multi\":{\"begin\":\"(\\\\$\\\\s*|%|\\\\$%\\\\s*)(/\\\\s*)?([a-zA-Z_]\\\\w*)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"},\"2\":{\"name\":\"constant.character.escape.gdscript\"},\"3\":{\"name\":\"constant.character.escape.gdscript\"}},\"end\":\"(?!\\\\s*/\\\\s*%?\\\\s*[a-zA-Z_]\\\\w*)\",\"name\":\"meta.literal.nodepath.bare.gdscript\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.character.escape.gdscript\"},\"2\":{\"name\":\"keyword.control.flow.gdscript\"},\"3\":{\"name\":\"constant.character.escape.gdscript\"}},\"match\":\"(/)\\\\s*(%)?\\\\s*([a-zA-Z_]\\\\w*)\\\\s*\"}]},\"builtin_get_node_shorthand_quoted\":{\"begin\":\"(?:([$%])|([\\\\&\\\\^@]))([\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"},\"2\":{\"name\":\"variable.other.enummember.gdscript\"}},\"end\":\"(\\\\3)\",\"name\":\"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape.gdscript\",\"patterns\":[{\"match\":\"%\",\"name\":\"keyword.control.flow\"}]},\"class_declaration\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"class.other.gdscript\"}},\"match\":\"(?<=^class)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=:)\"},\"class_enum\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"variable.other.enummember.gdscript\"}},\"match\":\"\\\\b([A-Z][a-zA-Z_0-9]*)\\\\.([A-Z_0-9]+)\"},\"class_is\":{\"captures\":{\"1\":{\"name\":\"storage.type.is.gdscript\"},\"2\":{\"name\":\"entity.name.type.class.gdscript\"}},\"match\":\"\\\\s+(is)\\\\s+([a-zA-Z_]\\\\w*)\"},\"class_name\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"class.other.gdscript\"}},\"match\":\"(?<=class_name)\\\\s+([a-zA-Z_]\\\\w*(\\\\.([a-zA-Z_]\\\\w*))?)\"},\"class_new\":{\"captures\":{\"1\":{\"name\":\"entity.name.type.class.gdscript\"},\"2\":{\"name\":\"storage.type.new.gdscript\"},\"3\":{\"name\":\"punctuation.parenthesis.begin.gdscript\"}},\"match\":\"\\\\b([a-zA-Z_]\\\\w*).(new)\\\\(\"},\"comment\":{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.number-sign.gdscript\"}},\"match\":\"(#(?:#|)).*$\\\\n?\",\"name\":\"comment.line.number-sign.gdscript\"},\"compare_operator\":{\"match\":\"<=|>=|==|[<>]|!=|!\",\"name\":\"keyword.operator.comparison.gdscript\"},\"const_vars\":{\"match\":\"\\\\b([A-Z_][A-Z_0-9]*)\\\\b\",\"name\":\"variable.other.constant.gdscript\"},\"control_flow\":{\"match\":\"\\\\b(?:if|elif|else|while|break|continue|pass|return|when|yield|await)\\\\b\",\"name\":\"keyword.control.gdscript\"},\"curly_braces\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.dict.begin.gdscript\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.dict.end.gdscript\"}},\"patterns\":[{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"}]},\"expression\":{\"patterns\":[{\"include\":\"#getter_setter_godot4\"},{\"include\":\"#base_expression\"},{\"include\":\"#assignment_operator\"},{\"include\":\"#annotations\"},{\"include\":\"#class_name\"},{\"include\":\"#builtin_classes\"},{\"include\":\"#class_new\"},{\"include\":\"#class_is\"},{\"include\":\"#class_enum\"},{\"include\":\"#any_method\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"}]},\"extends_statement\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gdscript\"},\"2\":{\"name\":\"entity.other.inherited-class.gdscript\"}},\"match\":\"(extends)\\\\s+([a-zA-Z_]\\\\w*\\\\.[a-zA-Z_]\\\\w*)?\"},\"func\":{\"match\":\"\\\\bfunc\\\\b\",\"name\":\"keyword.language.gdscript\"},\"function_arguments\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.begin.gdscript\"}},\"contentName\":\"meta.function.parameters.gdscript\",\"end\":\"(?=\\\\))(?!\\\\)\\\\s*\\\\()\",\"patterns\":[{\"match\":\"(,)\",\"name\":\"punctuation.separator.arguments.gdscript\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function-call.gdscript\"},\"2\":{\"name\":\"keyword.operator.assignment.gdscript\"}},\"match\":\"\\\\b([a-zA-Z_]\\\\w*)\\\\s*(=)(?!=)\"},{\"match\":\"=(?!=)\",\"name\":\"keyword.operator.assignment.gdscript\"},{\"include\":\"#base_expression\"},{\"captures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.gdscript\"},\"2\":{\"name\":\"punctuation.definition.arguments.begin.gdscript\"}},\"match\":\"\\\\s*(\\\\))\\\\s*(\\\\()\"},{\"include\":\"#letter\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"},{\"include\":\"#keywords\"}]},\"function_call\":{\"begin\":\"(?=\\\\b[a-zA-Z_]\\\\w*\\\\b\\\\()\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.arguments.end.gdscript\"}},\"name\":\"meta.function-call.gdscript\",\"patterns\":[{\"include\":\"#function_name\"},{\"include\":\"#function_arguments\"}]},\"function_declaration\":{\"begin\":\"\\\\s*(func)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"end\":\"(:)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.section.function.begin.gdscript\"}},\"name\":\"meta.function.gdscript\",\"patterns\":[{\"include\":\"#parameters\"},{\"include\":\"#line_continuation\"},{\"include\":\"#base_expression\"}]},\"function_name\":{\"patterns\":[{\"include\":\"#builtin_classes\"},{\"match\":\"\\\\b(preload)\\\\b\",\"name\":\"keyword.language.gdscript\"},{\"match\":\"\\\\b([a-zA-Z_]\\\\w*)\\\\b\",\"name\":\"entity.name.function.gdscript\"}]},\"getter_setter_godot4\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.function.gdscript\"},\"2\":{\"name\":\"punctuation.separator.annotation.gdscript\"}},\"match\":\"(get)\\\\s*(:)\",\"name\":\"meta.variable.declaration.getter.gdscript\"},{\"captures\":{\"1\":{\"name\":\"entity.name.function.gdscript\"},\"2\":{\"name\":\"punctuation.definition.arguments.begin.gdscript\"},\"3\":{\"name\":\"variable.other.gdscript\"},\"4\":{\"name\":\"punctuation.definition.arguments.end.gdscript\"},\"5\":{\"name\":\"punctuation.separator.annotation.gdscript\"}},\"match\":\"(set)\\\\s*(\\\\()\\\\s*([A-Za-z_]\\\\w*)\\\\s*(\\\\))\\\\s*(:)\",\"name\":\"meta.variable.declaration.setter.gdscript\"}]},\"in_keyword\":{\"patterns\":[{\"begin\":\"\\\\b(for)\\\\b\",\"captures\":{\"1\":{\"name\":\"keyword.control.gdscript\"}},\"end\":\":\",\"patterns\":[{\"match\":\"\\\\bin\\\\b\",\"name\":\"keyword.control.gdscript\"},{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"}]},{\"match\":\"\\\\bin\\\\b\",\"name\":\"keyword.operator.wordlike.gdscript\"}]},\"keywords\":{\"match\":\"\\\\b(?:class|class_name|abstract|is|onready|tool|static|export|as|void|enum|assert|breakpoint|sync|remote|master|puppet|slave|remotesync|mastersync|puppetsync|trait|namespace|super)\\\\b\",\"name\":\"keyword.language.gdscript\"},\"lambda_declaration\":{\"begin\":\"(func)\\\\s?(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"end\":\"(:|(?=[#'\\\"\\\\n]))\",\"end2\":\"(\\\\s*(\\\\-\\\\>)\\\\s*(void\\\\w*)|([a-zA-Z_]\\\\w*)\\\\s*\\\\:)\",\"endCaptures2\":{\"1\":{\"name\":\"punctuation.separator.annotation.result.gdscript\"},\"2\":{\"name\":\"keyword.language.void.gdscript\"},\"3\":{\"name\":\"entity.name.type.class.gdscript markup.italic\"}},\"name\":\"meta.function.gdscript\",\"patterns\":[{\"include\":\"#parameters\"},{\"include\":\"#line_continuation\"},{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"}]},\"letter\":{\"match\":\"\\\\b(?:true|false|null)\\\\b\",\"name\":\"constant.language.gdscript\"},\"line_continuation\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.continuation.line.gdscript\"},\"2\":{\"name\":\"invalid.illegal.line.continuation.gdscript\"}},\"match\":\"(\\\\\\\\)\\\\s*(\\\\S.*$\\\\n?)\"},{\"begin\":\"(\\\\\\\\)\\\\s*$\\\\n?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.continuation.line.gdscript\"}},\"end\":\"(?=^\\\\s*$)|(?!(\\\\s*[rR]?('''|\\\"\\\"\\\"|['\\\"]))|(\\\\G$))\",\"patterns\":[{\"include\":\"#base_expression\"}]}]},\"loose_default\":{\"begin\":\"(=)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.gdscript\"}},\"end\":\"(,)|(?=\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.parameters.gdscript\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"match_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.control.gdscript\"}},\"match\":\"^\\\\n\\\\s*(match)\"},\"nodepath_function\":{\"begin\":\"(get_node_or_null|has_node|has_node_and_resource|find_node|get_node)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.gdscript\"},\"2\":{\"name\":\"punctuation.definition.parameters.begin.gdscript\"}},\"contentName\":\"meta.function.parameters.gdscript\",\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.end.gdscript\"}},\"name\":\"meta.function.gdscript\",\"patterns\":[{\"begin\":\"([\\\"'])\",\"end\":\"\\\\1\",\"name\":\"string.quoted.gdscript meta.literal.nodepath.gdscript constant.character.escape\",\"patterns\":[{\"match\":\"%\",\"name\":\"keyword.control.flow\"}]},{\"include\":\"#expression\"}]},\"nodepath_object\":{\"begin\":\"(NodePath)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"support.class.library.gdscript\"}},\"end\":\"\\\\)\",\"name\":\"meta.literal.nodepath.gdscript\",\"patterns\":[{\"begin\":\"([\\\"'])\",\"end\":\"\\\\1\",\"name\":\"string.quoted.gdscript constant.character.escape.gdscript\",\"patterns\":[{\"match\":\"%\",\"name\":\"keyword.control.flow.gdscript\"}]}]},\"numbers\":{\"patterns\":[{\"match\":\"0b[01_]+\",\"name\":\"constant.numeric.integer.binary.gdscript\"},{\"match\":\"0x[_\\\\h]+\",\"name\":\"constant.numeric.integer.hexadecimal.gdscript\"},{\"match\":\"\\\\.[0-9][0-9_]*([eE][+\\\\-]?[0-9_]+)?\",\"name\":\"constant.numeric.float.gdscript\"},{\"match\":\"([0-9][0-9_]*)\\\\.[0-9_]*([eE][+\\\\-]?[0-9_]+)?\",\"name\":\"constant.numeric.float.gdscript\"},{\"match\":\"([0-9][0-9_]*)?\\\\.[0-9_]*([eE][+\\\\-]?[0-9_]+)\",\"name\":\"constant.numeric.float.gdscript\"},{\"match\":\"[0-9][0-9_]*[eE][+\\\\-]?[0-9_]+\",\"name\":\"constant.numeric.float.gdscript\"},{\"match\":\"-?[0-9][0-9_]*\",\"name\":\"constant.numeric.integer.gdscript\"}]},\"operators\":{\"patterns\":[{\"include\":\"#wordlike_operator\"},{\"include\":\"#boolean_operator\"},{\"include\":\"#arithmetic_operator\"},{\"include\":\"#bitwise_operator\"},{\"include\":\"#compare_operator\"}]},\"parameters\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.begin.gdscript\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.parameters.end.gdscript\"}},\"name\":\"meta.function.parameters.gdscript\",\"patterns\":[{\"include\":\"#annotated_parameter\"},{\"captures\":{\"1\":{\"name\":\"variable.parameter.function.language.gdscript\"},\"2\":{\"name\":\"punctuation.separator.parameters.gdscript\"}},\"match\":\"([a-zA-Z_]\\\\w*)\\\\s*(?:(,)|(?=[)#\\\\n=]))\"},{\"include\":\"#comment\"},{\"include\":\"#loose_default\"}]},\"pascal_case_class\":{\"match\":\"\\\\b([A-Z]+[a-z_0-9]*([A-Z]?[a-z_0-9]+)*[A-Z]?)\\\\b\",\"name\":\"entity.name.type.class.gdscript\"},\"region\":{\"match\":\"#(end)?region.*$\\\\n?\",\"name\":\"keyword.language.region.gdscript\"},\"round_braces\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.begin.gdscript\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.end.gdscript\"}},\"patterns\":[{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"}]},\"self\":{\"match\":\"\\\\bself\\\\b\",\"name\":\"variable.language.gdscript\"},\"signal_declaration\":{\"begin\":\"\\\\s*(signal)\\\\s+([a-zA-Z_]\\\\w*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"end\":\"((?=[#'\\\"\\\\n]))\",\"name\":\"meta.signal.gdscript\",\"patterns\":[{\"include\":\"#parameters\"},{\"include\":\"#line_continuation\"}]},\"signal_declaration_bare\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.function.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"}},\"match\":\"\\\\s*(signal)\\\\s+([a-zA-Z_]\\\\w*)(?=[\\\\n\\\\s])\",\"name\":\"meta.signal.gdscript\"},\"square_braces\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.begin.gdscript\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.list.end.gdscript\"}},\"patterns\":[{\"include\":\"#base_expression\"},{\"include\":\"#any_variable\"}]},\"statement\":{\"patterns\":[{\"include\":\"#extends_statement\"}]},\"statement_keyword\":{\"patterns\":[{\"match\":\"\\\\b(?<!\\\\.)(continue|assert|break|elif|else|if|pass|return|while)\\\\b\",\"name\":\"keyword.control.flow.gdscript\"},{\"match\":\"\\\\b(?<!\\\\.)(class)\\\\b\",\"name\":\"storage.type.class.gdscript\"},{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.gdscript\"}},\"match\":\"^\\\\s*(case|match)(?=\\\\s*([\\\\-+\\\\w\\\\d(\\\\[{'\\\":#]|$))\\\\b\"}]},\"string_bracket_placeholders\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.gdscript\"},\"3\":{\"name\":\"storage.type.format.gdscript\"},\"4\":{\"name\":\"storage.type.format.gdscript\"}},\"match\":\"(\\\\{\\\\{|}}|\\\\{\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\\"]+])*(![rsa])?(:\\\\w?[<>=\\\\^]?[\\\\-+ ]?#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)?})\",\"name\":\"meta.format.brace.gdscript\"},{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.gdscript\"},\"3\":{\"name\":\"storage.type.format.gdscript\"},\"4\":{\"name\":\"storage.type.format.gdscript\"}},\"match\":\"(\\\\{\\\\w*(\\\\.[[:alpha:]_]\\\\w*|\\\\[[^\\\\]'\\\"]+])*(![rsa])?(:)[^'\\\"{}\\\\n]*(?:\\\\{[^'\\\"}\\\\n]*?}[^'\\\"{}\\\\n]*)*})\",\"name\":\"meta.format.brace.gdscript\"}]},\"string_percent_placeholders\":{\"captures\":{\"1\":{\"name\":\"constant.character.format.placeholder.other.gdscript\"}},\"match\":\"(%(\\\\([\\\\w\\\\s]*\\\\))?[\\\\-+#0 ]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])\",\"name\":\"meta.format.percent.gdscript\"},\"strings\":{\"begin\":\"(r)?(\\\"\\\"\\\"|'''|[\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"constant.character.escape.gdscript\"}},\"end\":\"\\\\2\",\"name\":\"string.quoted.gdscript\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.gdscript\"},{\"include\":\"#string_percent_placeholders\"},{\"include\":\"#string_bracket_placeholders\"}]},\"variable_declaration\":{\"begin\":\"\\\\b(?:(var)|(const))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.language.gdscript storage.type.var.gdscript\"},\"2\":{\"name\":\"keyword.language.gdscript storage.type.const.gdscript\"}},\"end\":\"$|;\",\"name\":\"meta.variable.declaration.gdscript\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.separator.annotation.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"},\"3\":{\"name\":\"entity.name.function.gdscript\"}},\"match\":\"(:)?\\\\s*(set|get)\\\\s+=\\\\s+([a-zA-Z_]\\\\w*)\"},{\"match\":\":=|=(?!=)\",\"name\":\"keyword.operator.assignment.gdscript\"},{\"captures\":{\"1\":{\"name\":\"punctuation.separator.annotation.gdscript\"},\"2\":{\"name\":\"entity.name.type.class.gdscript\"}},\"match\":\"(:)\\\\s*([a-zA-Z_]\\\\w*)?\"},{\"captures\":{\"1\":{\"name\":\"keyword.language.gdscript\"},\"2\":{\"name\":\"entity.name.function.gdscript\"},\"3\":{\"name\":\"entity.name.function.gdscript\"}},\"match\":\"(setget)\\\\s+([a-zA-Z_]\\\\w*)(?:,\\\\s*([a-zA-Z_]\\\\w*))?\"},{\"include\":\"#expression\"},{\"include\":\"#letter\"},{\"include\":\"#any_variable\"},{\"include\":\"#any_property\"},{\"include\":\"#keywords\"}]},\"wordlike_operator\":{\"match\":\"\\\\b(and|or|not)\\\\b\",\"name\":\"keyword.operator.wordlike.gdscript\"}},\"scopeName\":\"source.gdscript\"}"))
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
package/dist/gdshader.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"GDShader\",\"fileTypes\":[\"gdshader\"],\"name\":\"gdshader\",\"patterns\":[{\"include\":\"#any\"}],\"repository\":{\"any\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#enclosed\"},{\"include\":\"#classifier\"},{\"include\":\"#definition\"},{\"include\":\"#keyword\"},{\"include\":\"#element\"},{\"include\":\"#separator\"},{\"include\":\"#operator\"}]},\"arraySize\":{\"begin\":\"\\\\[\",\"captures\":{\"0\":{\"name\":\"punctuation.bracket.gdshader\"}},\"end\":\"
|
|
1
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"GDShader\",\"fileTypes\":[\"gdshader\"],\"name\":\"gdshader\",\"patterns\":[{\"include\":\"#any\"}],\"repository\":{\"any\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#enclosed\"},{\"include\":\"#classifier\"},{\"include\":\"#definition\"},{\"include\":\"#keyword\"},{\"include\":\"#element\"},{\"include\":\"#separator\"},{\"include\":\"#operator\"}]},\"arraySize\":{\"begin\":\"\\\\[\",\"captures\":{\"0\":{\"name\":\"punctuation.bracket.gdshader\"}},\"end\":\"]\",\"name\":\"meta.array-size.gdshader\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#keyword\"},{\"include\":\"#element\"},{\"include\":\"#separator\"}]},\"classifier\":{\"begin\":\"(?=\\\\b(?:shader_type|render_mode)\\\\b)\",\"end\":\"(?<=;)\",\"name\":\"meta.classifier.gdshader\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#keyword\"},{\"include\":\"#identifierClassification\"},{\"include\":\"#separator\"}]},\"classifierKeyword\":{\"match\":\"\\\\b(?:shader_type|render_mode)\\\\b\",\"name\":\"keyword.language.classifier.gdshader\"},\"comment\":{\"patterns\":[{\"include\":\"#commentLine\"},{\"include\":\"#commentBlock\"}]},\"commentBlock\":{\"begin\":\"/\\\\*\",\"end\":\"\\\\*/\",\"name\":\"comment.block.gdshader\"},\"commentLine\":{\"begin\":\"//\",\"end\":\"$\",\"name\":\"comment.line.double-slash.gdshader\"},\"constantFloat\":{\"match\":\"\\\\b(?:E|PI|TAU)\\\\b\",\"name\":\"constant.language.float.gdshader\"},\"constructor\":{\"match\":\"\\\\b(?:[a-zA-Z_]\\\\w*(?=\\\\s*\\\\[\\\\s*\\\\w*\\\\s*]\\\\s*\\\\()|[A-Z]\\\\w*(?=\\\\s*\\\\())\",\"name\":\"entity.name.type.constructor.gdshader\"},\"controlKeyword\":{\"match\":\"\\\\b(?:if|else|do|while|for|continue|break|switch|case|default|return|discard)\\\\b\",\"name\":\"keyword.control.gdshader\"},\"definition\":{\"patterns\":[{\"include\":\"#structDefinition\"}]},\"element\":{\"patterns\":[{\"include\":\"#literalFloat\"},{\"include\":\"#literalInt\"},{\"include\":\"#literalBool\"},{\"include\":\"#identifierType\"},{\"include\":\"#constructor\"},{\"include\":\"#processorFunction\"},{\"include\":\"#identifierFunction\"},{\"include\":\"#swizzling\"},{\"include\":\"#identifierField\"},{\"include\":\"#constantFloat\"},{\"include\":\"#languageVariable\"},{\"include\":\"#identifierVariable\"}]},\"enclosed\":{\"begin\":\"\\\\(\",\"captures\":{\"0\":{\"name\":\"punctuation.parenthesis.gdshader\"}},\"end\":\"\\\\)\",\"name\":\"meta.parenthesis.gdshader\",\"patterns\":[{\"include\":\"#any\"}]},\"fieldDefinition\":{\"begin\":\"\\\\b[a-zA-Z_]\\\\w*\\\\b\",\"beginCaptures\":{\"0\":{\"patterns\":[{\"include\":\"#typeKeyword\"},{\"match\":\".+\",\"name\":\"entity.name.type.gdshader\"}]}},\"end\":\"(?<=;)\",\"name\":\"meta.definition.field.gdshader\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#keyword\"},{\"include\":\"#arraySize\"},{\"include\":\"#fieldName\"},{\"include\":\"#any\"}]},\"fieldName\":{\"match\":\"\\\\b[a-zA-Z_]\\\\w*\\\\b\",\"name\":\"entity.name.variable.field.gdshader\"},\"hintKeyword\":{\"match\":\"\\\\b(?:source_color|hint_(?:color|range|(?:black_)?albedo|normal|(?:default_)?(?:white|black)|aniso|anisotropy|roughness_(?:[rgba]|normal|gray))|filter_(?:nearest|linear)(?:_mipmap(?:_anisotropic)?)?|repeat_(?:en|dis)able)\\\\b\",\"name\":\"support.type.annotation.gdshader\"},\"identifierClassification\":{\"match\":\"\\\\b[a-z_]+\\\\b\",\"name\":\"entity.other.inherited-class.gdshader\"},\"identifierField\":{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.gdshader\"},\"2\":{\"name\":\"entity.name.variable.field.gdshader\"}},\"match\":\"(\\\\.)\\\\s*([a-zA-Z_]\\\\w*)\\\\b(?!\\\\s*\\\\()\"},\"identifierFunction\":{\"match\":\"\\\\b[a-zA-Z_]\\\\w*(?=(?:\\\\s|/\\\\*(?:\\\\*(?!/)|[^*])*\\\\*/)*\\\\()\",\"name\":\"entity.name.function.gdshader\"},\"identifierType\":{\"match\":\"\\\\b[a-zA-Z_]\\\\w*(?=(?:\\\\s*\\\\[\\\\s*\\\\w*\\\\s*])?\\\\s+[a-zA-Z_]\\\\w*\\\\b)\",\"name\":\"entity.name.type.gdshader\"},\"identifierVariable\":{\"match\":\"\\\\b[a-zA-Z_]\\\\w*\\\\b\",\"name\":\"variable.name.gdshader\"},\"keyword\":{\"patterns\":[{\"include\":\"#classifierKeyword\"},{\"include\":\"#structKeyword\"},{\"include\":\"#controlKeyword\"},{\"include\":\"#modifierKeyword\"},{\"include\":\"#precisionKeyword\"},{\"include\":\"#typeKeyword\"},{\"include\":\"#hintKeyword\"}]},\"languageVariable\":{\"match\":\"\\\\b[A-Z][A-Z_0-9]*\\\\b\",\"name\":\"variable.language.gdshader\"},\"literalBool\":{\"match\":\"\\\\b(?:false|true)\\\\b\",\"name\":\"constant.language.boolean.gdshader\"},\"literalFloat\":{\"match\":\"\\\\b(?:\\\\d+[eE][\\\\-+]?\\\\d+|(?:\\\\d*\\\\.\\\\d+|\\\\d+\\\\.)(?:[eE][\\\\-+]?\\\\d+)?)[fF]?\",\"name\":\"constant.numeric.float.gdshader\"},\"literalInt\":{\"match\":\"\\\\b(?:0[xX]\\\\h+|\\\\d+[uU]?)\\\\b\",\"name\":\"constant.numeric.integer.gdshader\"},\"modifierKeyword\":{\"match\":\"\\\\b(?:const|global|instance|uniform|varying|in|out|inout|flat|smooth)\\\\b\",\"name\":\"storage.modifier.gdshader\"},\"operator\":{\"match\":\"<<=?|>>=?|[\\\\-+*/\\\\&|<>=!]=|&&|\\\\|\\\\||[\\\\-+~!*/%<>\\\\&\\\\^|=]\",\"name\":\"keyword.operator.gdshader\"},\"precisionKeyword\":{\"match\":\"\\\\b(?:low|medium|high)p\\\\b\",\"name\":\"storage.type.built-in.primitive.precision.gdshader\"},\"processorFunction\":{\"match\":\"\\\\b(?:vertex|fragment|light|start|process|sky|fog)(?=(?:\\\\s|/\\\\*(?:\\\\*(?!/)|[^*])*\\\\*/)*\\\\()\",\"name\":\"support.function.gdshader\"},\"separator\":{\"patterns\":[{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.gdshader\"},{\"include\":\"#separatorComma\"},{\"match\":\";\",\"name\":\"punctuation.terminator.statement.gdshader\"},{\"match\":\":\",\"name\":\"keyword.operator.type.annotation.gdshader\"}]},\"separatorComma\":{\"match\":\",\",\"name\":\"punctuation.separator.comma.gdshader\"},\"structDefinition\":{\"begin\":\"(?=\\\\bstruct\\\\b)\",\"end\":\"(?<=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#keyword\"},{\"include\":\"#structName\"},{\"include\":\"#structDefinitionBlock\"},{\"include\":\"#separator\"}]},\"structDefinitionBlock\":{\"begin\":\"\\\\{\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.block.struct.gdshader\"}},\"end\":\"}\",\"name\":\"meta.definition.block.struct.gdshader\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#precisionKeyword\"},{\"include\":\"#fieldDefinition\"},{\"include\":\"#keyword\"},{\"include\":\"#any\"}]},\"structKeyword\":{\"match\":\"\\\\bstruct\\\\b\",\"name\":\"keyword.other.struct.gdshader\"},\"structName\":{\"match\":\"\\\\b[a-zA-Z_]\\\\w*\\\\b\",\"name\":\"entity.name.type.struct.gdshader\"},\"swizzling\":{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.gdshader\"},\"2\":{\"name\":\"variable.other.property.gdshader\"}},\"match\":\"(\\\\.)\\\\s*([xyzw]{2,4}|[rgba]{2,4}|[stpq]{2,4})\\\\b\"},\"typeKeyword\":{\"match\":\"\\\\b(?:void|bool|[biu]?vec[234]|u?int|float|mat[234]|[iu]?sampler(?:3D|2D(?:Array)?)|samplerCube)\\\\b\",\"name\":\"support.type.gdshader\"}},\"scopeName\":\"source.gdshader\"}"))
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
package/dist/genie.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Genie\",\"fileTypes\":[\"gs\"],\"name\":\"genie\",\"patterns\":[{\"include\":\"#code\"}],\"repository\":{\"code\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#keywords\"},{\"include\":\"#types\"},{\"include\":\"#functions\"},{\"include\":\"#variables\"}]},\"comments\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.vala\"}},\"match\":\"/\\\\*\\\\*/\",\"name\":\"comment.block.empty.vala\"},{\"include\":\"text.html.javadoc\"},{\"include\":\"#comments-inline\"}]},\"comments-inline\":{\"patterns\":[{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.vala\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.vala\"},{\"captures\":{\"1\":{\"name\":\"comment.line.double-slash.vala\"},\"2\":{\"name\":\"punctuation.definition.comment.vala\"}},\"match\":\"\\\\s*((//).*$\\\\n?)\"}]},\"constants\":{\"patterns\":[{\"match\":\"\\\\b((0(
|
|
1
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Genie\",\"fileTypes\":[\"gs\"],\"name\":\"genie\",\"patterns\":[{\"include\":\"#code\"}],\"repository\":{\"code\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#constants\"},{\"include\":\"#strings\"},{\"include\":\"#keywords\"},{\"include\":\"#types\"},{\"include\":\"#functions\"},{\"include\":\"#variables\"}]},\"comments\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.vala\"}},\"match\":\"/\\\\*\\\\*/\",\"name\":\"comment.block.empty.vala\"},{\"include\":\"text.html.javadoc\"},{\"include\":\"#comments-inline\"}]},\"comments-inline\":{\"patterns\":[{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.vala\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.vala\"},{\"captures\":{\"1\":{\"name\":\"comment.line.double-slash.vala\"},\"2\":{\"name\":\"punctuation.definition.comment.vala\"}},\"match\":\"\\\\s*((//).*$\\\\n?)\"}]},\"constants\":{\"patterns\":[{\"match\":\"\\\\b((0([xX])\\\\h*)|(([0-9]+\\\\.?[0-9]*)|(\\\\.[0-9]+))(([eE])([+\\\\-])?[0-9]+)?)([LlFfUuDd]|UL|ul)?\\\\b\",\"name\":\"constant.numeric.vala\"},{\"match\":\"\\\\b([A-Z][A-Z0-9_]+)\\\\b\",\"name\":\"variable.other.constant.vala\"}]},\"functions\":{\"patterns\":[{\"match\":\"(\\\\w+)(?=\\\\s*(<[\\\\s\\\\w.]+>\\\\s*)?\\\\()\",\"name\":\"entity.name.function.vala\"}]},\"keywords\":{\"patterns\":[{\"match\":\"(?<=^|[^@\\\\w.])(as|do|if|in|is|of|or|to|and|def|for|get|isa|new|not|out|ref|set|try|var|case|dict|else|enum|init|list|lock|null|pass|prop|self|true|uses|void|weak|when|array|async|break|class|const|event|false|final|owned|print|super|raise|while|yield|assert|delete|downto|except|extern|inline|params|public|raises|return|sealed|sizeof|static|struct|typeof|default|dynamic|ensures|finally|private|unowned|virtual|abstract|continue|delegate|internal|override|readonly|requires|volatile|construct|errordomain|interface|namespace|protected|implements)\\\\b\",\"name\":\"keyword.vala\"},{\"match\":\"(?<=^|[^@\\\\w.])(bool|double|float|unichar|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\\\b\",\"name\":\"keyword.vala\"},{\"match\":\"(#(?:if|elif|else|endif))\",\"name\":\"keyword.vala\"}]},\"strings\":{\"patterns\":[{\"begin\":\"\\\"\\\"\\\"\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"string.quoted.triple.vala\"},{\"begin\":\"@\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.interpolated.vala\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.vala\"},{\"match\":\"\\\\$\\\\w+\",\"name\":\"constant.character.escape.vala\"},{\"match\":\"\\\\$\\\\(([^)(]|\\\\(([^)(]|\\\\([^)]*\\\\))*\\\\))*\\\\)\",\"name\":\"constant.character.escape.vala\"}]},{\"begin\":\"\\\"\",\"end\":\"\\\"\",\"name\":\"string.quoted.double.vala\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.vala\"}]},{\"begin\":\"'\",\"end\":\"'\",\"name\":\"string.quoted.single.vala\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.vala\"}]},{\"match\":\"/((\\\\\\\\/)|([^/]))*/(?=\\\\s*[,;).\\\\n])\",\"name\":\"string.regexp.vala\"}]},\"types\":{\"patterns\":[{\"match\":\"(?<=^|[^@\\\\w.])(bool|double|float|unichar|char|uchar|int|uint|long|ulong|short|ushort|size_t|ssize_t|string|void|signal|int8|int16|int32|int64|uint8|uint16|uint32|uint64)\\\\b\",\"name\":\"storage.type.primitive.vala\"},{\"match\":\"\\\\b([A-Z]+\\\\w*)\\\\b\",\"name\":\"entity.name.type.vala\"}]},\"variables\":{\"patterns\":[{\"match\":\"\\\\b([_a-z]+\\\\w*)\\\\b\",\"name\":\"variable.other.vala\"}]}},\"scopeName\":\"source.genie\"}"))
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
package/dist/gherkin.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Gherkin\",\"fileTypes\":[\"feature\"],\"firstLineMatch\":\"기능|機能|功能|フィーチャ|خاصية|תכונה|Функціонал|Функционалност|Функционал|Особина|Функция|Функциональность|Свойство|Могућност|Özellik|Właściwość|Tính năng|Savybė|Požiadavka|Požadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogućnost|Mogucnost|Jellemző|Fīča|Funzionalità|Funktionalität|Funkcionalnost|Funkcionalitāte|Funcționalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalité|Fitur|Ability|Business Need|Feature|Egenskap|Egenskab|Crikey|Característica|Arwedd(.*)\",\"foldingStartMarker\":\"^\\\\s*\\\\b(예|시나리오 개요|시나리오|배경|背景|場景大綱|場景|场景大纲|场景|劇本大綱|劇本|例子|例|テンプレ|シナリオテンプレート|シナリオテンプレ|シナリオアウトライン|シナリオ|サンプル|سيناريو مخطط|سيناريو|امثلة|الخلفية|תרחיש|תבנית תרחיש|רקע|דוגמאות|Тарих|Сценарій|Сценарији|Сценарио|Сценарий структураси|Сценарий|Структура сценарію|Структура сценарија|Структура сценария|Скица|Рамка на сценарий|Примери|Пример|Приклади|Предыстория|Предистория|Позадина|Передумова|Основа|Мисоллар|Концепт|Контекст|Значения|Örnekler|Założenia|Wharrimean is|Voorbeelden|Variantai|Tình huống|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situācija|Senaryo taslağı|Senaryo|Scénář|Scénario|Schema dello scenario|Scenārijs pēc parauga|Scenārijs|Scenár|Scenariusz|Scenariul de şablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus šablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|Příklady|Példák|Príklady|Przykłady|Primjeri|Primeri|Primer|Pozadí|Pozadina|Pozadie|Plan du scénario|Plan du Scénario|Piemēri|Pavyzdžiai|Paraugs|Osnova scénáře|Osnova|Náčrt Scénáře|Náčrt Scenáru|Mate|MISHUN SRSLY|MISHUN|Kịch bản|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung tình huống|Khung kịch bản|Juhtumid|Háttér|Grundlage|Geçmiş|Forgatókönyv vázlat|Forgatókönyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cenário|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|Dữ liệu|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condiţii|Conditii|Cobber|Cenário|Cenario|Cefndir|Bối cảnh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|Règle|Regel|Regra)\",\"foldingStopMarker\":\"^\\\\s*$\",\"name\":\"gherkin\",\"patterns\":[{\"include\":\"#feature_element_keyword\"},{\"include\":\"#feature_keyword\"},{\"include\":\"#step_keyword\"},{\"include\":\"#strings_triple_quote\"},{\"include\":\"#strings_single_quote\"},{\"include\":\"#strings_double_quote\"},{\"include\":\"#comments\"},{\"include\":\"#tags\"},{\"include\":\"#scenario_outline_variable\"},{\"include\":\"#table\"}],\"repository\":{\"comments\":{\"captures\":{\"0\":{\"name\":\"comment.line.number-sign\"}},\"match\":\"^\\\\s*(#.*)\"},\"feature_element_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gherkin.feature.scenario\"},\"2\":{\"name\":\"string.language.gherkin.scenario.title.title\"}},\"match\":\"^\\\\s*(예|시나리오 개요|시나리오|배경|背景|場景大綱|場景|场景大纲|场景|劇本大綱|劇本|例子|例|テンプレ|シナリオテンプレート|シナリオテンプレ|シナリオアウトライン|シナリオ|サンプル|سيناريو مخطط|سيناريو|امثلة|الخلفية|תרחיש|תבנית תרחיש|רקע|דוגמאות|Тарих|Сценарій|Сценарији|Сценарио|Сценарий структураси|Сценарий|Структура сценарію|Структура сценарија|Структура сценария|Скица|Рамка на сценарий|Примери|Пример|Приклади|Предыстория|Предистория|Позадина|Передумова|Основа|Мисоллар|Концепт|Контекст|Значения|Örnekler|Założenia|Wharrimean is|Voorbeelden|Variantai|Tình huống|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situācija|Senaryo taslağı|Senaryo|Scénář|Scénario|Schema dello scenario|Scenārijs pēc parauga|Scenārijs|Scenár|Scenariusz|Scenariul de şablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus šablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|Příklady|Példák|Príklady|Przykłady|Primjeri|Primeri|Primer|Pozadí|Pozadina|Pozadie|Plan du scénario|Plan du Scénario|Piemēri|Pavyzdžiai|Paraugs|Osnova scénáře|Osnova|Náčrt Scénáře|Náčrt Scenáru|Mate|MISHUN SRSLY|MISHUN|Kịch bản|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung tình huống|Khung kịch bản|Juhtumid|Háttér|Grundlage|Geçmiş|Forgatókönyv vázlat|Forgatókönyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cenário|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|Dữ liệu|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condiţii|Conditii|Cobber|Cenário|Cenario|Cefndir|Bối cảnh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|Règle|Regel|Regra):(.*)\"},\"feature_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gherkin.feature\"},\"2\":{\"name\":\"string.language.gherkin.feature.title\"}},\"match\":\"^\\\\s*(기능|機能|功能|フィーチャ|خاصية|תכונה|Функціонал|Функционалност|Функционал|Особина|Функция|Функциональность|Свойство|Могућност|Özellik|Właściwość|Tính năng|Savybė|Požiadavka|Požadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogućnost|Mogucnost|Jellemző|Fīča|Funzionalità|Funktionalität|Funkcionalnost|Funkcionalitāte|Funcționalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalité|Fitur|Ability|Business Need|Feature|Ability|Egenskap|Egenskab|Crikey|Característica|Arwedd):(.*)\\\\b\"},\"scenario_outline_variable\":{\"match\":\"<[a-zA-Z0-9 _-]*>\",\"name\":\"variable.other\"},\"step_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gherkin.feature.step\"}},\"match\":\"^\\\\s*(En |و |Y |E |Եվ |Ya |Too right |Və |Həm |A |И |而且 |并且 |同时 |並且 |同時 |Ak |Epi |A také |Og |😂 |And |Kaj |Ja |Et que |Et qu' |Et |და |Und |Και |અને |וגם |और |तथा |És |Dan |Agus |かつ |Lan |ಮತ್ತು |'ej |latlh |그리고 |AN |Un |Ir |an |a |Мөн |Тэгээд |Ond |7 |ਅਤੇ |Aye |Oraz |Si |Și |Şi |К тому же |Также |An |A tiež |A taktiež |A zároveň |In |Ter |Och |மேலும் |மற்றும் |Һәм |Вә |మరియు |และ |Ve |І |А також |Та |اور |Ва |Và |Maar |لكن |Pero |Բայց |Peru |Yeah nah |Amma |Ancaq |Ali |Но |Però |但是 |Men |Ale |😔 |But |Sed |Kuid |Mutta |Mais que |Mais qu' |Mais |მაგრამ |Aber |Αλλά |પણ |אבל |पर |परन्तु |किन्तु |De |En |Tapi |Ach |Ma |しかし |但し |ただし |Nanging |Ananging |ಆದರೆ |'ach |'a |하지만 |단 |BUT |Bet |awer |mä |No |Tetapi |Гэхдээ |Харин |Ac |ਪਰ |اما |Avast! |Mas |Dar |А |Иначе |Buh |Али |Toda |Ampak |Vendar |ஆனால் |Ләкин |Әмма |కాని |แต่ |Fakat |Ama |Але |لیکن |Лекин |Бирок |Аммо |Nhưng |Ond |Dan |اذاً |ثم |Alavez |Allora |Antonces |Ապա |Entós |But at the end of the day I reckon |O halda |Zatim |То |Aleshores |Cal |那么 |那麼 |Lè sa a |Le sa a |Onda |Pak |Så |🙏 |Then |Do |Siis |Niin |Alors |Entón |Logo |მაშინ |Dann |Τότε |પછી |אז |אזי |तब |तदा |Akkor |Þá |Maka |Ansin |ならば |Njuk |Banjur |ನಂತರ |vaj |그러면 |DEN |Tad |Tada |dann |Тогаш |Togash |Kemudian |Тэгэхэд |Үүний дараа |Tha |Þa |Ða |Tha the |Þa þe |Ða ðe |ਤਦ |آنگاه |Let go and haul |Wtedy |Então |Entao |Atunci |Затем |Тогда |Dun |Den youse gotta |Онда |Tak |Potom |Nato |Potem |Takrat |Entonces |அப்பொழுது |Нәтиҗәдә |అప్పుడు |ดังนั้น |O zaman |Тоді |پھر |تب |Унда |Thì |Yna |Wanneer |متى |عندما |Cuan |Եթե |Երբ |Cuando |It's just unbelievable |Əgər |Nə vaxt ki |Kada |Когато |Quan |当 |當 |Lè |Le |Kad |Když |Når |Als |🎬 |When |Se |Kui |Kun |Quand |Lorsque |Lorsqu' |Cando |როდესაც |Wenn |Όταν |ક્યારે |כאשר |जब |कदा |Majd |Ha |Amikor |Þegar |Ketika |Nuair a |Nuair nach |Nuair ba |Nuair nár |Quando |もし |Manawa |Menawa |ಸ್ಥಿತಿಯನ್ನು |qaSDI' |만일 |만약 |WEN |Ja |Kai |wann |Кога |Koga |Apabila |Хэрэв |Tha |Þa |Ða |ਜਦੋਂ |هنگامی |Blimey! |Jeżeli |Jeśli |Gdy |Kiedy |Cand |Când |Когда |Если |Wun |Youse know like when |Када |Кад |Keď |Ak |Ko |Ce |Če |Kadar |När |எப்போது |Әгәр |ఈ పరిస్థితిలో |เมื่อ |Eğer ki |Якщо |Коли |جب |Агар |Khi |Pryd |Gegewe |بفرض |Dau |Dada |Daus |Dadas |Դիցուք |Dáu |Daos |Daes |Y'know |Tutaq ki |Verilir |Dato |Дадено |Donat |Donada |Atès |Atesa |假如 |假设 |假定 |假設 |Sipoze |Sipoze ke |Sipoze Ke |Zadan |Zadani |Zadano |Pokud |Za předpokladu |Givet |Gegeven |Stel |😐 |Given |Donitaĵo |Komence |Eeldades |Oletetaan |Soit |Etant donné que |Etant donné qu' |Etant donné |Etant donnée |Etant donnés |Etant données |Étant donné que |Étant donné qu' |Étant donné |Étant donnée |Étant donnés |Étant données |Dado |Dados |მოცემული |Angenommen |Gegeben sei |Gegeben seien |Δεδομένου |આપેલ છે |בהינתן |अगर |यदि |चूंकि |Amennyiben |Adott |Ef |Dengan |Cuir i gcás go |Cuir i gcás nach |Cuir i gcás gur |Cuir i gcás nár |Data |Dati |Date |前提 |Nalika |Nalikaning |ನೀಡಿದ |ghu' noblu' |DaH ghu' bejlu' |조건 |먼저 |I CAN HAZ |Kad |Duota |ugeholl |Дадена |Dadeno |Dadena |Diberi |Bagi |Өгөгдсөн нь |Анх |Gitt |Thurh |Þurh |Ðurh |ਜੇਕਰ |ਜਿਵੇਂ ਕਿ |با فرض |Gangway! |Zakładając |Mając |Zakładając, że |Date fiind |Dat fiind |Dată fiind |Dati fiind |Dați fiind |Daţi fiind |Допустим |Дано |Пусть |Givun |Youse know when youse got |За дато |За дате |За дати |Za dato |Za date |Za dati |Pokiaľ |Za predpokladu |Dano |Podano |Zaradi |Privzeto |கொடுக்கப்பட்ட |Әйтик |చెప్పబడినది |กำหนดให้ |Diyelim ki |Припустимо |Припустимо, що |Нехай |اگر |بالفرض |فرض کیا |Агар |Biết |Cho |Anrhegedig a |\\\\* )\"},\"strings_double_quote\":{\"begin\":\"(?<![a-zA-Z0-9'])\\\"\",\"end\":\"\\\"(?![a-zA-Z0-9'])\",\"name\":\"string.quoted.double\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.untitled\"}]},\"strings_single_quote\":{\"begin\":\"(?<![a-zA-Z0-9\\\"])'\",\"end\":\"'(?![a-zA-Z0-9\\\"])\",\"name\":\"string.quoted.single\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape\"}]},\"strings_triple_quote\":{\"begin\":\"\\\"\\\"\\\".*\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"string.quoted.single\"},\"table\":{\"begin\":\"^\\\\s*\\\\|\",\"end\":\"\\\\|\\\\s*$\",\"name\":\"keyword.control.cucumber.table\",\"patterns\":[{\"match\":\"\\\\w\",\"name\":\"source\"}]},\"tags\":{\"captures\":{\"0\":{\"name\":\"entity.name.type.class.tsx\"}},\"match\":\"(@[^@\\\\r\\\\n\\\\t ]+)\"}},\"scopeName\":\"text.gherkin.feature\"}"))
|
|
1
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Gherkin\",\"fileTypes\":[\"feature\"],\"firstLineMatch\":\"기능|機能|功能|フィーチャ|خاصية|תכונה|Функціонал|Функционалност|Функционал|Особина|Функция|Функциональность|Свойство|Могућност|Özellik|Właściwość|Tính năng|Savybė|Požiadavka|Požadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogućnost|Mogucnost|Jellemző|Fīča|Funzionalità|Funktionalität|Funkcionalnost|Funkcionalitāte|Funcționalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalité|Fitur|Ability|Business Need|Feature|Egenskap|Egenskab|Crikey|Característica|Arwedd(.*)\",\"foldingStartMarker\":\"^\\\\s*\\\\b(예|시나리오 개요|시나리오|배경|背景|場景大綱|場景|场景大纲|场景|劇本大綱|劇本|例子|例|テンプレ|シナリオテンプレート|シナリオテンプレ|シナリオアウトライン|シナリオ|サンプル|سيناريو مخطط|سيناريو|امثلة|الخلفية|תרחיש|תבנית תרחיש|רקע|דוגמאות|Тарих|Сценарій|Сценарији|Сценарио|Сценарий структураси|Сценарий|Структура сценарію|Структура сценарија|Структура сценария|Скица|Рамка на сценарий|Примери|Пример|Приклади|Предыстория|Предистория|Позадина|Передумова|Основа|Мисоллар|Концепт|Контекст|Значения|Örnekler|Założenia|Wharrimean is|Voorbeelden|Variantai|Tình huống|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situācija|Senaryo taslağı|Senaryo|Scénář|Scénario|Schema dello scenario|Scenārijs pēc parauga|Scenārijs|Scenár|Scenariusz|Scenariul de şablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus šablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|Příklady|Példák|Príklady|Przykłady|Primjeri|Primeri|Primer|Pozadí|Pozadina|Pozadie|Plan du scénario|Plan du Scénario|Piemēri|Pavyzdžiai|Paraugs|Osnova scénáře|Osnova|Náčrt Scénáře|Náčrt Scenáru|Mate|MISHUN SRSLY|MISHUN|Kịch bản|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung tình huống|Khung kịch bản|Juhtumid|Háttér|Grundlage|Geçmiş|Forgatókönyv vázlat|Forgatókönyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cenário|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|Dữ liệu|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condiţii|Conditii|Cobber|Cenário|Cenario|Cefndir|Bối cảnh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|Règle|Regel|Regra)\",\"foldingStopMarker\":\"^\\\\s*$\",\"name\":\"gherkin\",\"patterns\":[{\"include\":\"#feature_element_keyword\"},{\"include\":\"#feature_keyword\"},{\"include\":\"#step_keyword\"},{\"include\":\"#strings_triple_quote\"},{\"include\":\"#strings_single_quote\"},{\"include\":\"#strings_double_quote\"},{\"include\":\"#comments\"},{\"include\":\"#tags\"},{\"include\":\"#scenario_outline_variable\"},{\"include\":\"#table\"}],\"repository\":{\"comments\":{\"captures\":{\"0\":{\"name\":\"comment.line.number-sign\"}},\"match\":\"^\\\\s*(#.*)\"},\"feature_element_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gherkin.feature.scenario\"},\"2\":{\"name\":\"string.language.gherkin.scenario.title.title\"}},\"match\":\"^\\\\s*(예|시나리오 개요|시나리오|배경|背景|場景大綱|場景|场景大纲|场景|劇本大綱|劇本|例子|例|テンプレ|シナリオテンプレート|シナリオテンプレ|シナリオアウトライン|シナリオ|サンプル|سيناريو مخطط|سيناريو|امثلة|الخلفية|תרחיש|תבנית תרחיש|רקע|דוגמאות|Тарих|Сценарій|Сценарији|Сценарио|Сценарий структураси|Сценарий|Структура сценарію|Структура сценарија|Структура сценария|Скица|Рамка на сценарий|Примери|Пример|Приклади|Предыстория|Предистория|Позадина|Передумова|Основа|Мисоллар|Концепт|Контекст|Значения|Örnekler|Założenia|Wharrimean is|Voorbeelden|Variantai|Tình huống|The thing of it is|Tausta|Taust|Tapausaihio|Tapaus|Tapaukset|Szenariogrundriss|Szenario|Szablon scenariusza|Stsenaarium|Struktura scenarija|Skica|Skenario konsep|Skenario|Situācija|Senaryo taslağı|Senaryo|Scénář|Scénario|Schema dello scenario|Scenārijs pēc parauga|Scenārijs|Scenár|Scenariusz|Scenariul de şablon|Scenariul de sablon|Scenariu|Scenarios|Scenario Outline|Scenario Amlinellol|Scenario|Example|Scenarijus|Scenariji|Scenarijaus šablonas|Scenarijai|Scenarij|Scenarie|Rerefons|Raamstsenaarium|Příklady|Példák|Príklady|Przykłady|Primjeri|Primeri|Primer|Pozadí|Pozadina|Pozadie|Plan du scénario|Plan du Scénario|Piemēri|Pavyzdžiai|Paraugs|Osnova scénáře|Osnova|Náčrt Scénáře|Náčrt Scenáru|Mate|MISHUN SRSLY|MISHUN|Kịch bản|Kontext|Konteksts|Kontekstas|Kontekst|Koncept|Khung tình huống|Khung kịch bản|Juhtumid|Háttér|Grundlage|Geçmiş|Forgatókönyv vázlat|Forgatókönyv|Exemplos|Exemples|Exemplele|Exempel|Examples|Esquema do Cenário|Esquema do Cenario|Esquema del escenario|Esquema de l'escenari|Esempi|Escenario|Escenari|Enghreifftiau|Eksempler|Ejemplos|EXAMPLZ|Dữ liệu|Dis is what went down|Dasar|Contoh|Contexto|Contexte|Contesto|Condiţii|Conditii|Cobber|Cenário|Cenario|Cefndir|Bối cảnh|Blokes|Beispiele|Bakgrunn|Bakgrund|Baggrund|Background|B4|Antecedents|Antecedentes|All y'all|Achtergrond|Abstrakt Scenario|Abstract Scenario|Rule|Regla|Règle|Regel|Regra):(.*)\"},\"feature_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gherkin.feature\"},\"2\":{\"name\":\"string.language.gherkin.feature.title\"}},\"match\":\"^\\\\s*(기능|機能|功能|フィーチャ|خاصية|תכונה|Функціонал|Функционалност|Функционал|Особина|Функция|Функциональность|Свойство|Могућност|Özellik|Właściwość|Tính năng|Savybė|Požiadavka|Požadavek|Osobina|Ominaisuus|Omadus|OH HAI|Mogućnost|Mogucnost|Jellemző|Fīča|Funzionalità|Funktionalität|Funkcionalnost|Funkcionalitāte|Funcționalitate|Functionaliteit|Functionalitate|Funcionalitat|Funcionalidade|Fonctionnalité|Fitur|Ability|Business Need|Feature|Ability|Egenskap|Egenskab|Crikey|Característica|Arwedd):(.*)\\\\b\"},\"scenario_outline_variable\":{\"match\":\"<[a-zA-Z0-9 _\\\\-]*>\",\"name\":\"variable.other\"},\"step_keyword\":{\"captures\":{\"1\":{\"name\":\"keyword.language.gherkin.feature.step\"}},\"match\":\"^\\\\s*(En |و |Y |E |Եվ |Ya |Too right |Və |Həm |A |И |而且 |并且 |同时 |並且 |同時 |Ak |Epi |A také |Og |😂 |And |Kaj |Ja |Et que |Et qu' |Et |და |Und |Και |અને |וגם |और |तथा |És |Dan |Agus |かつ |Lan |ಮತ್ತು |'ej |latlh |그리고 |AN |Un |Ir |an |a |Мөн |Тэгээд |Ond |7 |ਅਤੇ |Aye |Oraz |Si |Și |Şi |К тому же |Также |An |A tiež |A taktiež |A zároveň |In |Ter |Och |மேலும் |மற்றும் |Һәм |Вә |మరియు |และ |Ve |І |А також |Та |اور |Ва |Và |Maar |لكن |Pero |Բայց |Peru |Yeah nah |Amma |Ancaq |Ali |Но |Però |但是 |Men |Ale |😔 |But |Sed |Kuid |Mutta |Mais que |Mais qu' |Mais |მაგრამ |Aber |Αλλά |પણ |אבל |पर |परन्तु |किन्तु |De |En |Tapi |Ach |Ma |しかし |但し |ただし |Nanging |Ananging |ಆದರೆ |'ach |'a |하지만 |단 |BUT |Bet |awer |mä |No |Tetapi |Гэхдээ |Харин |Ac |ਪਰ |اما |Avast! |Mas |Dar |А |Иначе |Buh |Али |Toda |Ampak |Vendar |ஆனால் |Ләкин |Әмма |కాని |แต่ |Fakat |Ama |Але |لیکن |Лекин |Бирок |Аммо |Nhưng |Ond |Dan |اذاً |ثم |Alavez |Allora |Antonces |Ապա |Entós |But at the end of the day I reckon |O halda |Zatim |То |Aleshores |Cal |那么 |那麼 |Lè sa a |Le sa a |Onda |Pak |Så |🙏 |Then |Do |Siis |Niin |Alors |Entón |Logo |მაშინ |Dann |Τότε |પછી |אז |אזי |तब |तदा |Akkor |Þá |Maka |Ansin |ならば |Njuk |Banjur |ನಂತರ |vaj |그러면 |DEN |Tad |Tada |dann |Тогаш |Togash |Kemudian |Тэгэхэд |Үүний дараа |Tha |Þa |Ða |Tha the |Þa þe |Ða ðe |ਤਦ |آنگاه |Let go and haul |Wtedy |Então |Entao |Atunci |Затем |Тогда |Dun |Den youse gotta |Онда |Tak |Potom |Nato |Potem |Takrat |Entonces |அப்பொழுது |Нәтиҗәдә |అప్పుడు |ดังนั้น |O zaman |Тоді |پھر |تب |Унда |Thì |Yna |Wanneer |متى |عندما |Cuan |Եթե |Երբ |Cuando |It's just unbelievable |Əgər |Nə vaxt ki |Kada |Когато |Quan |当 |當 |Lè |Le |Kad |Když |Når |Als |🎬 |When |Se |Kui |Kun |Quand |Lorsque |Lorsqu' |Cando |როდესაც |Wenn |Όταν |ક્યારે |כאשר |जब |कदा |Majd |Ha |Amikor |Þegar |Ketika |Nuair a |Nuair nach |Nuair ba |Nuair nár |Quando |もし |Manawa |Menawa |ಸ್ಥಿತಿಯನ್ನು |qaSDI' |만일 |만약 |WEN |Ja |Kai |wann |Кога |Koga |Apabila |Хэрэв |Tha |Þa |Ða |ਜਦੋਂ |هنگامی |Blimey! |Jeżeli |Jeśli |Gdy |Kiedy |Cand |Când |Когда |Если |Wun |Youse know like when |Када |Кад |Keď |Ak |Ko |Ce |Če |Kadar |När |எப்போது |Әгәр |ఈ పరిస్థితిలో |เมื่อ |Eğer ki |Якщо |Коли |جب |Агар |Khi |Pryd |Gegewe |بفرض |Dau |Dada |Daus |Dadas |Դիցուք |Dáu |Daos |Daes |Y'know |Tutaq ki |Verilir |Dato |Дадено |Donat |Donada |Atès |Atesa |假如 |假设 |假定 |假設 |Sipoze |Sipoze ke |Sipoze Ke |Zadan |Zadani |Zadano |Pokud |Za předpokladu |Givet |Gegeven |Stel |😐 |Given |Donitaĵo |Komence |Eeldades |Oletetaan |Soit |Etant donné que |Etant donné qu' |Etant donné |Etant donnée |Etant donnés |Etant données |Étant donné que |Étant donné qu' |Étant donné |Étant donnée |Étant donnés |Étant données |Dado |Dados |მოცემული |Angenommen |Gegeben sei |Gegeben seien |Δεδομένου |આપેલ છે |בהינתן |अगर |यदि |चूंकि |Amennyiben |Adott |Ef |Dengan |Cuir i gcás go |Cuir i gcás nach |Cuir i gcás gur |Cuir i gcás nár |Data |Dati |Date |前提 |Nalika |Nalikaning |ನೀಡಿದ |ghu' noblu' |DaH ghu' bejlu' |조건 |먼저 |I CAN HAZ |Kad |Duota |ugeholl |Дадена |Dadeno |Dadena |Diberi |Bagi |Өгөгдсөн нь |Анх |Gitt |Thurh |Þurh |Ðurh |ਜੇਕਰ |ਜਿਵੇਂ ਕਿ |با فرض |Gangway! |Zakładając |Mając |Zakładając, że |Date fiind |Dat fiind |Dată fiind |Dati fiind |Dați fiind |Daţi fiind |Допустим |Дано |Пусть |Givun |Youse know when youse got |За дато |За дате |За дати |Za dato |Za date |Za dati |Pokiaľ |Za predpokladu |Dano |Podano |Zaradi |Privzeto |கொடுக்கப்பட்ட |Әйтик |చెప్పబడినది |กำหนดให้ |Diyelim ki |Припустимо |Припустимо, що |Нехай |اگر |بالفرض |فرض کیا |Агар |Biết |Cho |Anrhegedig a |\\\\* )\"},\"strings_double_quote\":{\"begin\":\"(?<![a-zA-Z0-9'])\\\"\",\"end\":\"\\\"(?![a-zA-Z0-9'])\",\"name\":\"string.quoted.double\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape.untitled\"}]},\"strings_single_quote\":{\"begin\":\"(?<![a-zA-Z0-9\\\"])'\",\"end\":\"'(?![a-zA-Z0-9\\\"])\",\"name\":\"string.quoted.single\",\"patterns\":[{\"match\":\"\\\\\\\\.\",\"name\":\"constant.character.escape\"}]},\"strings_triple_quote\":{\"begin\":\"\\\"\\\"\\\".*\",\"end\":\"\\\"\\\"\\\"\",\"name\":\"string.quoted.single\"},\"table\":{\"begin\":\"^\\\\s*\\\\|\",\"end\":\"\\\\|\\\\s*$\",\"name\":\"keyword.control.cucumber.table\",\"patterns\":[{\"match\":\"\\\\w\",\"name\":\"source\"}]},\"tags\":{\"captures\":{\"0\":{\"name\":\"entity.name.type.class.tsx\"}},\"match\":\"(@[^@\\\\r\\\\n\\\\t ]+)\"}},\"scopeName\":\"text.gherkin.feature\"}"))
|
|
2
2
|
|
|
3
3
|
export default [
|
|
4
4
|
lang
|
package/dist/git-commit.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import diff from './diff.mjs'
|
|
2
2
|
|
|
3
|
-
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Git Commit Message\",\"name\":\"git-commit\",\"patterns\":[{\"begin\":\"(?=^diff
|
|
3
|
+
const lang = Object.freeze(JSON.parse("{\"displayName\":\"Git Commit Message\",\"name\":\"git-commit\",\"patterns\":[{\"begin\":\"(?=^diff --git)\",\"contentName\":\"source.diff\",\"end\":\"\\\\z\",\"name\":\"meta.embedded.diff.git-commit\",\"patterns\":[{\"include\":\"source.diff\"}]},{\"begin\":\"^(?!#)\",\"end\":\"^(?=#)\",\"name\":\"meta.scope.message.git-commit\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"invalid.deprecated.line-too-long.git-commit\"},\"2\":{\"name\":\"invalid.illegal.line-too-long.git-commit\"}},\"match\":\"\\\\G.{0,50}(.{0,22}(.*))$\",\"name\":\"meta.scope.subject.git-commit\"}]},{\"begin\":\"^(?=#)\",\"contentName\":\"comment.line.number-sign.git-commit\",\"end\":\"^(?!#)\",\"name\":\"meta.scope.metadata.git-commit\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"markup.changed.git-commit\"}},\"match\":\"^#\\\\t((modified|renamed):.*)$\"},{\"captures\":{\"1\":{\"name\":\"markup.inserted.git-commit\"}},\"match\":\"^#\\\\t(new file:.*)$\"},{\"captures\":{\"1\":{\"name\":\"markup.deleted.git-commit\"}},\"match\":\"^#\\\\t(deleted.*)$\"},{\"captures\":{\"1\":{\"name\":\"keyword.other.file-type.git-commit\"},\"2\":{\"name\":\"string.unquoted.filename.git-commit\"}},\"match\":\"^#\\\\t([^:]+): *(.*)$\"}]}],\"scopeName\":\"text.git-commit\",\"embeddedLangs\":[\"diff\"]}"))
|
|
4
4
|
|
|
5
5
|
export default [
|
|
6
6
|
...diff,
|