@shikijs/langs-precompiled 1.26.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/LICENSE +22 -0
- package/README.md +15 -0
- package/dist/1c-query.d.mts +3 -0
- package/dist/1c-query.mjs +2 -0
- package/dist/1c.d.mts +3 -0
- package/dist/1c.mjs +2 -0
- package/dist/abap.d.mts +3 -0
- package/dist/abap.mjs +5 -0
- package/dist/actionscript-3.d.mts +3 -0
- package/dist/actionscript-3.mjs +5 -0
- package/dist/ada.d.mts +3 -0
- package/dist/ada.mjs +5 -0
- package/dist/adoc.d.mts +3 -0
- package/dist/adoc.mjs +2 -0
- package/dist/angular-expression.d.mts +3 -0
- package/dist/angular-expression.mjs +5 -0
- package/dist/angular-html.d.mts +3 -0
- package/dist/angular-html.mjs +16 -0
- package/dist/angular-inline-style.d.mts +3 -0
- package/dist/angular-inline-style.mjs +8 -0
- package/dist/angular-inline-template.d.mts +3 -0
- package/dist/angular-inline-template.mjs +10 -0
- package/dist/angular-let-declaration.d.mts +3 -0
- package/dist/angular-let-declaration.mjs +8 -0
- package/dist/angular-template-blocks.d.mts +3 -0
- package/dist/angular-template-blocks.mjs +10 -0
- package/dist/angular-template.d.mts +3 -0
- package/dist/angular-template.mjs +8 -0
- package/dist/angular-ts.d.mts +3 -0
- package/dist/angular-ts.mjs +19 -0
- package/dist/apache.d.mts +3 -0
- package/dist/apache.mjs +5 -0
- package/dist/apex.d.mts +3 -0
- package/dist/apex.mjs +7 -0
- package/dist/apl.d.mts +3 -0
- package/dist/apl.mjs +17 -0
- package/dist/applescript.d.mts +3 -0
- package/dist/applescript.mjs +7 -0
- package/dist/ara.d.mts +3 -0
- package/dist/ara.mjs +7 -0
- package/dist/asciidoc.d.mts +3 -0
- package/dist/asciidoc.mjs +7 -0
- package/dist/asm.d.mts +3 -0
- package/dist/asm.mjs +7 -0
- package/dist/astro.d.mts +3 -0
- package/dist/astro.mjs +17 -0
- package/dist/awk.d.mts +3 -0
- package/dist/awk.mjs +5 -0
- package/dist/ballerina.d.mts +3 -0
- package/dist/ballerina.mjs +5 -0
- package/dist/bash.d.mts +3 -0
- package/dist/bash.mjs +2 -0
- package/dist/bat.d.mts +3 -0
- package/dist/bat.mjs +5 -0
- package/dist/batch.d.mts +3 -0
- package/dist/batch.mjs +2 -0
- package/dist/be.d.mts +3 -0
- package/dist/be.mjs +2 -0
- package/dist/beancount.d.mts +3 -0
- package/dist/beancount.mjs +5 -0
- package/dist/berry.d.mts +3 -0
- package/dist/berry.mjs +5 -0
- package/dist/bibtex.d.mts +3 -0
- package/dist/bibtex.mjs +5 -0
- package/dist/bicep.d.mts +3 -0
- package/dist/bicep.mjs +5 -0
- package/dist/blade.d.mts +3 -0
- package/dist/blade.mjs +19 -0
- package/dist/bsl.d.mts +3 -0
- package/dist/bsl.mjs +8 -0
- package/dist/c.d.mts +3 -0
- package/dist/c.mjs +7 -0
- package/dist/cadence.d.mts +3 -0
- package/dist/cadence.mjs +7 -0
- package/dist/cairo.d.mts +3 -0
- package/dist/cairo.mjs +8 -0
- package/dist/cdc.d.mts +3 -0
- package/dist/cdc.mjs +2 -0
- package/dist/clarity.d.mts +3 -0
- package/dist/clarity.mjs +5 -0
- package/dist/clj.d.mts +3 -0
- package/dist/clj.mjs +2 -0
- package/dist/clojure.d.mts +3 -0
- package/dist/clojure.mjs +5 -0
- package/dist/closure-templates.d.mts +3 -0
- package/dist/closure-templates.mjs +2 -0
- package/dist/cmake.d.mts +3 -0
- package/dist/cmake.mjs +5 -0
- package/dist/cmd.d.mts +3 -0
- package/dist/cmd.mjs +2 -0
- package/dist/cobol.d.mts +3 -0
- package/dist/cobol.mjs +10 -0
- package/dist/codeowners.d.mts +3 -0
- package/dist/codeowners.mjs +5 -0
- package/dist/codeql.d.mts +3 -0
- package/dist/codeql.mjs +7 -0
- package/dist/coffee.d.mts +3 -0
- package/dist/coffee.mjs +8 -0
- package/dist/coffeescript.d.mts +3 -0
- package/dist/coffeescript.mjs +2 -0
- package/dist/common-lisp.d.mts +3 -0
- package/dist/common-lisp.mjs +7 -0
- package/dist/console.d.mts +3 -0
- package/dist/console.mjs +2 -0
- package/dist/coq.d.mts +3 -0
- package/dist/coq.mjs +5 -0
- package/dist/cpp-macro.d.mts +3 -0
- package/dist/cpp-macro.mjs +13 -0
- package/dist/cpp.d.mts +3 -0
- package/dist/cpp.mjs +15 -0
- package/dist/cql.d.mts +3 -0
- package/dist/cql.mjs +2 -0
- package/dist/crystal.d.mts +3 -0
- package/dist/crystal.mjs +19 -0
- package/dist/cs.d.mts +3 -0
- package/dist/cs.mjs +2 -0
- package/dist/csharp.d.mts +3 -0
- package/dist/csharp.mjs +3 -0
- package/dist/css.d.mts +3 -0
- package/dist/css.mjs +7 -0
- package/dist/csv.d.mts +3 -0
- package/dist/csv.mjs +5 -0
- package/dist/cue.d.mts +3 -0
- package/dist/cue.mjs +5 -0
- package/dist/cypher.d.mts +3 -0
- package/dist/cypher.mjs +5 -0
- package/dist/d.d.mts +3 -0
- package/dist/d.mjs +5 -0
- package/dist/dart.d.mts +3 -0
- package/dist/dart.mjs +5 -0
- package/dist/dax.d.mts +3 -0
- package/dist/dax.mjs +5 -0
- package/dist/desktop.d.mts +3 -0
- package/dist/desktop.mjs +5 -0
- package/dist/diff.d.mts +3 -0
- package/dist/diff.mjs +5 -0
- package/dist/docker.d.mts +3 -0
- package/dist/docker.mjs +5 -0
- package/dist/dockerfile.d.mts +3 -0
- package/dist/dockerfile.mjs +2 -0
- package/dist/dotenv.d.mts +3 -0
- package/dist/dotenv.mjs +5 -0
- package/dist/dream-maker.d.mts +3 -0
- package/dist/dream-maker.mjs +7 -0
- package/dist/edge.d.mts +3 -0
- package/dist/edge.mjs +12 -0
- package/dist/elisp.d.mts +3 -0
- package/dist/elisp.mjs +2 -0
- package/dist/elixir.d.mts +3 -0
- package/dist/elixir.mjs +9 -0
- package/dist/elm.d.mts +3 -0
- package/dist/elm.mjs +8 -0
- package/dist/emacs-lisp.d.mts +3 -0
- package/dist/emacs-lisp.mjs +7 -0
- package/dist/erb.d.mts +3 -0
- package/dist/erb.mjs +10 -0
- package/dist/erl.d.mts +3 -0
- package/dist/erl.mjs +2 -0
- package/dist/erlang.d.mts +3 -0
- package/dist/erlang.mjs +7 -0
- package/dist/es-tag-css.d.mts +3 -0
- package/dist/es-tag-css.mjs +12 -0
- package/dist/es-tag-glsl.d.mts +3 -0
- package/dist/es-tag-glsl.mjs +12 -0
- package/dist/es-tag-html.d.mts +3 -0
- package/dist/es-tag-html.mjs +12 -0
- package/dist/es-tag-sql.d.mts +3 -0
- package/dist/es-tag-sql.mjs +10 -0
- package/dist/es-tag-xml.d.mts +3 -0
- package/dist/es-tag-xml.mjs +8 -0
- package/dist/f.d.mts +3 -0
- package/dist/f.mjs +2 -0
- package/dist/f03.d.mts +3 -0
- package/dist/f03.mjs +2 -0
- package/dist/f08.d.mts +3 -0
- package/dist/f08.mjs +2 -0
- package/dist/f18.d.mts +3 -0
- package/dist/f18.mjs +2 -0
- package/dist/f77.d.mts +3 -0
- package/dist/f77.mjs +2 -0
- package/dist/f90.d.mts +3 -0
- package/dist/f90.mjs +2 -0
- package/dist/f95.d.mts +3 -0
- package/dist/f95.mjs +2 -0
- package/dist/fennel.d.mts +3 -0
- package/dist/fennel.mjs +5 -0
- package/dist/fish.d.mts +3 -0
- package/dist/fish.mjs +5 -0
- package/dist/fluent.d.mts +3 -0
- package/dist/fluent.mjs +5 -0
- package/dist/for.d.mts +3 -0
- package/dist/for.mjs +2 -0
- package/dist/fortran-fixed-form.d.mts +3 -0
- package/dist/fortran-fixed-form.mjs +8 -0
- package/dist/fortran-free-form.d.mts +3 -0
- package/dist/fortran-free-form.mjs +7 -0
- package/dist/fs.d.mts +3 -0
- package/dist/fs.mjs +2 -0
- package/dist/fsharp.d.mts +3 -0
- package/dist/fsharp.mjs +8 -0
- package/dist/fsl.d.mts +3 -0
- package/dist/fsl.mjs +2 -0
- package/dist/ftl.d.mts +3 -0
- package/dist/ftl.mjs +2 -0
- package/dist/gdresource.d.mts +3 -0
- package/dist/gdresource.mjs +10 -0
- package/dist/gdscript.d.mts +3 -0
- package/dist/gdscript.mjs +5 -0
- package/dist/gdshader.d.mts +3 -0
- package/dist/gdshader.mjs +5 -0
- package/dist/genie.d.mts +3 -0
- package/dist/genie.mjs +5 -0
- package/dist/gherkin.d.mts +3 -0
- package/dist/gherkin.mjs +5 -0
- package/dist/git-commit.d.mts +3 -0
- package/dist/git-commit.mjs +8 -0
- package/dist/git-rebase.d.mts +3 -0
- package/dist/git-rebase.mjs +8 -0
- package/dist/gjs.d.mts +3 -0
- package/dist/gjs.mjs +2 -0
- package/dist/gleam.d.mts +3 -0
- package/dist/gleam.mjs +5 -0
- package/dist/glimmer-js.d.mts +3 -0
- package/dist/glimmer-js.mjs +15 -0
- package/dist/glimmer-ts.d.mts +3 -0
- package/dist/glimmer-ts.mjs +15 -0
- package/dist/glsl.d.mts +3 -0
- package/dist/glsl.mjs +8 -0
- package/dist/gnuplot.d.mts +3 -0
- package/dist/gnuplot.mjs +5 -0
- package/dist/go.d.mts +3 -0
- package/dist/go.mjs +7 -0
- package/dist/gql.d.mts +3 -0
- package/dist/gql.mjs +2 -0
- package/dist/graphql.d.mts +3 -0
- package/dist/graphql.mjs +15 -0
- package/dist/groovy.d.mts +3 -0
- package/dist/groovy.mjs +5 -0
- package/dist/gts.d.mts +3 -0
- package/dist/gts.mjs +2 -0
- package/dist/hack.d.mts +3 -0
- package/dist/hack.mjs +3 -0
- package/dist/haml.d.mts +3 -0
- package/dist/haml.mjs +11 -0
- package/dist/handlebars.d.mts +3 -0
- package/dist/handlebars.mjs +14 -0
- package/dist/haskell.d.mts +3 -0
- package/dist/haskell.mjs +7 -0
- package/dist/haxe.d.mts +3 -0
- package/dist/haxe.mjs +5 -0
- package/dist/hbs.d.mts +3 -0
- package/dist/hbs.mjs +2 -0
- package/dist/hcl.d.mts +3 -0
- package/dist/hcl.mjs +5 -0
- package/dist/hjson.d.mts +3 -0
- package/dist/hjson.mjs +5 -0
- package/dist/hlsl.d.mts +3 -0
- package/dist/hlsl.mjs +5 -0
- package/dist/hs.d.mts +3 -0
- package/dist/hs.mjs +2 -0
- package/dist/html-derivative.d.mts +3 -0
- package/dist/html-derivative.mjs +8 -0
- package/dist/html.d.mts +3 -0
- package/dist/html.mjs +11 -0
- package/dist/http.d.mts +3 -0
- package/dist/http.mjs +14 -0
- package/dist/hxml.d.mts +3 -0
- package/dist/hxml.mjs +8 -0
- package/dist/hy.d.mts +3 -0
- package/dist/hy.mjs +5 -0
- package/dist/imba.d.mts +3 -0
- package/dist/imba.mjs +9 -0
- package/dist/index.d.mts +1 -0
- package/dist/index.mjs +239 -0
- package/dist/ini.d.mts +3 -0
- package/dist/ini.mjs +7 -0
- package/dist/jade.d.mts +3 -0
- package/dist/jade.mjs +2 -0
- package/dist/java.d.mts +3 -0
- package/dist/java.mjs +7 -0
- package/dist/javascript.d.mts +3 -0
- package/dist/javascript.mjs +7 -0
- package/dist/jinja-html.d.mts +3 -0
- package/dist/jinja-html.mjs +8 -0
- package/dist/jinja.d.mts +3 -0
- package/dist/jinja.mjs +8 -0
- package/dist/jison.d.mts +3 -0
- package/dist/jison.mjs +8 -0
- package/dist/jl.d.mts +3 -0
- package/dist/jl.mjs +2 -0
- package/dist/js.d.mts +3 -0
- package/dist/js.mjs +2 -0
- package/dist/json.d.mts +3 -0
- package/dist/json.mjs +5 -0
- package/dist/json5.d.mts +3 -0
- package/dist/json5.mjs +5 -0
- package/dist/jsonc.d.mts +3 -0
- package/dist/jsonc.mjs +5 -0
- package/dist/jsonl.d.mts +3 -0
- package/dist/jsonl.mjs +5 -0
- package/dist/jsonnet.d.mts +3 -0
- package/dist/jsonnet.mjs +5 -0
- package/dist/jssm.d.mts +3 -0
- package/dist/jssm.mjs +5 -0
- package/dist/jsx.d.mts +3 -0
- package/dist/jsx.mjs +7 -0
- package/dist/julia.d.mts +3 -0
- package/dist/julia.mjs +17 -0
- package/dist/kotlin.d.mts +3 -0
- package/dist/kotlin.mjs +7 -0
- package/dist/kql.d.mts +3 -0
- package/dist/kql.mjs +2 -0
- package/dist/kt.d.mts +3 -0
- package/dist/kt.mjs +2 -0
- package/dist/kts.d.mts +3 -0
- package/dist/kts.mjs +2 -0
- package/dist/kusto.d.mts +3 -0
- package/dist/kusto.mjs +7 -0
- package/dist/latex.d.mts +3 -0
- package/dist/latex.mjs +8 -0
- package/dist/lean.d.mts +3 -0
- package/dist/lean.mjs +5 -0
- package/dist/lean4.d.mts +3 -0
- package/dist/lean4.mjs +2 -0
- package/dist/less.d.mts +3 -0
- package/dist/less.mjs +5 -0
- package/dist/liquid.d.mts +3 -0
- package/dist/liquid.mjs +14 -0
- package/dist/lisp.d.mts +3 -0
- package/dist/lisp.mjs +2 -0
- package/dist/lit.d.mts +3 -0
- package/dist/lit.mjs +2 -0
- package/dist/log.d.mts +3 -0
- package/dist/log.mjs +5 -0
- package/dist/logo.d.mts +3 -0
- package/dist/logo.mjs +7 -0
- package/dist/lua.d.mts +3 -0
- package/dist/lua.mjs +9 -0
- package/dist/luau.d.mts +3 -0
- package/dist/luau.mjs +5 -0
- package/dist/make.d.mts +3 -0
- package/dist/make.mjs +7 -0
- package/dist/makefile.d.mts +3 -0
- package/dist/makefile.mjs +2 -0
- package/dist/markdown-vue.d.mts +3 -0
- package/dist/markdown-vue.mjs +7 -0
- package/dist/markdown.d.mts +3 -0
- package/dist/markdown.mjs +7 -0
- package/dist/marko.d.mts +3 -0
- package/dist/marko.mjs +14 -0
- package/dist/matlab.d.mts +3 -0
- package/dist/matlab.mjs +7 -0
- package/dist/md.d.mts +3 -0
- package/dist/md.mjs +2 -0
- package/dist/mdc.d.mts +3 -0
- package/dist/mdc.mjs +13 -0
- package/dist/mdx.d.mts +3 -0
- package/dist/mdx.mjs +7 -0
- package/dist/mediawiki.d.mts +3 -0
- package/dist/mediawiki.mjs +2 -0
- package/dist/mermaid.d.mts +3 -0
- package/dist/mermaid.mjs +7 -0
- package/dist/mips.d.mts +3 -0
- package/dist/mips.mjs +2 -0
- package/dist/mipsasm.d.mts +3 -0
- package/dist/mipsasm.mjs +7 -0
- package/dist/mmd.d.mts +3 -0
- package/dist/mmd.mjs +2 -0
- package/dist/mojo.d.mts +3 -0
- package/dist/mojo.mjs +7 -0
- package/dist/move.d.mts +3 -0
- package/dist/move.mjs +5 -0
- package/dist/nar.d.mts +3 -0
- package/dist/nar.mjs +2 -0
- package/dist/narrat.d.mts +3 -0
- package/dist/narrat.mjs +5 -0
- package/dist/nextflow.d.mts +3 -0
- package/dist/nextflow.mjs +5 -0
- package/dist/nf.d.mts +3 -0
- package/dist/nf.mjs +2 -0
- package/dist/nginx.d.mts +3 -0
- package/dist/nginx.mjs +8 -0
- package/dist/nim.d.mts +3 -0
- package/dist/nim.mjs +21 -0
- package/dist/nix.d.mts +3 -0
- package/dist/nix.mjs +5 -0
- package/dist/nu.d.mts +3 -0
- package/dist/nu.mjs +2 -0
- package/dist/nushell.d.mts +3 -0
- package/dist/nushell.mjs +7 -0
- package/dist/objc.d.mts +3 -0
- package/dist/objc.mjs +2 -0
- package/dist/objective-c.d.mts +3 -0
- package/dist/objective-c.mjs +7 -0
- package/dist/objective-cpp.d.mts +3 -0
- package/dist/objective-cpp.mjs +7 -0
- package/dist/ocaml.d.mts +3 -0
- package/dist/ocaml.mjs +5 -0
- package/dist/pascal.d.mts +3 -0
- package/dist/pascal.mjs +7 -0
- package/dist/perl.d.mts +3 -0
- package/dist/perl.mjs +17 -0
- package/dist/perl6.d.mts +3 -0
- package/dist/perl6.mjs +2 -0
- package/dist/php.d.mts +3 -0
- package/dist/php.mjs +19 -0
- package/dist/plsql.d.mts +3 -0
- package/dist/plsql.mjs +5 -0
- package/dist/po.d.mts +3 -0
- package/dist/po.mjs +7 -0
- package/dist/polar.d.mts +3 -0
- package/dist/polar.mjs +7 -0
- package/dist/postcss.d.mts +3 -0
- package/dist/postcss.mjs +5 -0
- package/dist/pot.d.mts +3 -0
- package/dist/pot.mjs +2 -0
- package/dist/potx.d.mts +3 -0
- package/dist/potx.mjs +2 -0
- package/dist/powerquery.d.mts +3 -0
- package/dist/powerquery.mjs +5 -0
- package/dist/powershell.d.mts +3 -0
- package/dist/powershell.mjs +7 -0
- package/dist/prisma.d.mts +3 -0
- package/dist/prisma.mjs +5 -0
- package/dist/prolog.d.mts +3 -0
- package/dist/prolog.mjs +5 -0
- package/dist/properties.d.mts +3 -0
- package/dist/properties.mjs +2 -0
- package/dist/proto.d.mts +3 -0
- package/dist/proto.mjs +5 -0
- package/dist/protobuf.d.mts +3 -0
- package/dist/protobuf.mjs +2 -0
- package/dist/ps.d.mts +3 -0
- package/dist/ps.mjs +2 -0
- package/dist/ps1.d.mts +3 -0
- package/dist/ps1.mjs +2 -0
- package/dist/pug.d.mts +3 -0
- package/dist/pug.mjs +12 -0
- package/dist/puppet.d.mts +3 -0
- package/dist/puppet.mjs +5 -0
- package/dist/purescript.d.mts +3 -0
- package/dist/purescript.mjs +3 -0
- package/dist/py.d.mts +3 -0
- package/dist/py.mjs +2 -0
- package/dist/python.d.mts +3 -0
- package/dist/python.mjs +7 -0
- package/dist/ql.d.mts +3 -0
- package/dist/ql.mjs +2 -0
- package/dist/qml.d.mts +3 -0
- package/dist/qml.mjs +8 -0
- package/dist/qmldir.d.mts +3 -0
- package/dist/qmldir.mjs +5 -0
- package/dist/qss.d.mts +3 -0
- package/dist/qss.mjs +5 -0
- package/dist/r.d.mts +3 -0
- package/dist/r.mjs +7 -0
- package/dist/racket.d.mts +3 -0
- package/dist/racket.mjs +5 -0
- package/dist/raku.d.mts +3 -0
- package/dist/raku.mjs +7 -0
- package/dist/razor.d.mts +3 -0
- package/dist/razor.mjs +3 -0
- package/dist/rb.d.mts +3 -0
- package/dist/rb.mjs +2 -0
- package/dist/reg.d.mts +3 -0
- package/dist/reg.mjs +5 -0
- package/dist/regex.d.mts +3 -0
- package/dist/regex.mjs +2 -0
- package/dist/regexp.d.mts +3 -0
- package/dist/regexp.mjs +5 -0
- package/dist/rel.d.mts +3 -0
- package/dist/rel.mjs +5 -0
- package/dist/riscv.d.mts +3 -0
- package/dist/riscv.mjs +7 -0
- package/dist/rs.d.mts +3 -0
- package/dist/rs.mjs +2 -0
- package/dist/rst.d.mts +3 -0
- package/dist/rst.mjs +22 -0
- package/dist/ruby.d.mts +3 -0
- package/dist/ruby.mjs +31 -0
- package/dist/rust.d.mts +3 -0
- package/dist/rust.mjs +5 -0
- package/dist/sas.d.mts +3 -0
- package/dist/sas.mjs +8 -0
- package/dist/sass.d.mts +3 -0
- package/dist/sass.mjs +5 -0
- package/dist/scala.d.mts +3 -0
- package/dist/scala.mjs +7 -0
- package/dist/scheme.d.mts +3 -0
- package/dist/scheme.mjs +7 -0
- package/dist/scss.d.mts +3 -0
- package/dist/scss.mjs +9 -0
- package/dist/sdbl.d.mts +3 -0
- package/dist/sdbl.mjs +5 -0
- package/dist/sh.d.mts +3 -0
- package/dist/sh.mjs +2 -0
- package/dist/shader.d.mts +3 -0
- package/dist/shader.mjs +2 -0
- package/dist/shaderlab.d.mts +3 -0
- package/dist/shaderlab.mjs +8 -0
- package/dist/shell.d.mts +3 -0
- package/dist/shell.mjs +2 -0
- package/dist/shellscript.d.mts +3 -0
- package/dist/shellscript.mjs +7 -0
- package/dist/shellsession.d.mts +3 -0
- package/dist/shellsession.mjs +8 -0
- package/dist/smalltalk.d.mts +3 -0
- package/dist/smalltalk.mjs +7 -0
- package/dist/solidity.d.mts +3 -0
- package/dist/solidity.mjs +5 -0
- package/dist/soy.d.mts +3 -0
- package/dist/soy.mjs +8 -0
- package/dist/sparql.d.mts +3 -0
- package/dist/sparql.mjs +8 -0
- package/dist/spl.d.mts +3 -0
- package/dist/spl.mjs +2 -0
- package/dist/splunk.d.mts +3 -0
- package/dist/splunk.mjs +5 -0
- package/dist/sql.d.mts +3 -0
- package/dist/sql.mjs +7 -0
- package/dist/ssh-config.d.mts +3 -0
- package/dist/ssh-config.mjs +7 -0
- package/dist/stata.d.mts +3 -0
- package/dist/stata.mjs +8 -0
- package/dist/styl.d.mts +3 -0
- package/dist/styl.mjs +2 -0
- package/dist/stylus.d.mts +3 -0
- package/dist/stylus.mjs +7 -0
- package/dist/svelte.d.mts +3 -0
- package/dist/svelte.mjs +15 -0
- package/dist/swift.d.mts +3 -0
- package/dist/swift.mjs +3 -0
- package/dist/system-verilog.d.mts +3 -0
- package/dist/system-verilog.mjs +5 -0
- package/dist/systemd.d.mts +3 -0
- package/dist/systemd.mjs +5 -0
- package/dist/talon.d.mts +3 -0
- package/dist/talon.mjs +2 -0
- package/dist/talonscript.d.mts +3 -0
- package/dist/talonscript.mjs +5 -0
- package/dist/tasl.d.mts +3 -0
- package/dist/tasl.mjs +5 -0
- package/dist/tcl.d.mts +3 -0
- package/dist/tcl.mjs +5 -0
- package/dist/templ.d.mts +3 -0
- package/dist/templ.mjs +13 -0
- package/dist/terraform.d.mts +3 -0
- package/dist/terraform.mjs +5 -0
- package/dist/tex.d.mts +3 -0
- package/dist/tex.mjs +9 -0
- package/dist/tf.d.mts +3 -0
- package/dist/tf.mjs +2 -0
- package/dist/tfvars.d.mts +3 -0
- package/dist/tfvars.mjs +2 -0
- package/dist/toml.d.mts +3 -0
- package/dist/toml.mjs +7 -0
- package/dist/ts-tags.d.mts +3 -0
- package/dist/ts-tags.mjs +18 -0
- package/dist/ts.d.mts +3 -0
- package/dist/ts.mjs +2 -0
- package/dist/tsp.d.mts +3 -0
- package/dist/tsp.mjs +2 -0
- package/dist/tsv.d.mts +3 -0
- package/dist/tsv.mjs +5 -0
- package/dist/tsx.d.mts +3 -0
- package/dist/tsx.mjs +7 -0
- package/dist/turtle.d.mts +3 -0
- package/dist/turtle.mjs +5 -0
- package/dist/twig.d.mts +3 -0
- package/dist/twig.mjs +19 -0
- package/dist/typ.d.mts +3 -0
- package/dist/typ.mjs +2 -0
- package/dist/typescript.d.mts +3 -0
- package/dist/typescript.mjs +7 -0
- package/dist/typespec.d.mts +3 -0
- package/dist/typespec.mjs +5 -0
- package/dist/typst.d.mts +3 -0
- package/dist/typst.mjs +5 -0
- package/dist/v.d.mts +3 -0
- package/dist/v.mjs +7 -0
- package/dist/vala.d.mts +3 -0
- package/dist/vala.mjs +5 -0
- package/dist/vb.d.mts +3 -0
- package/dist/vb.mjs +7 -0
- package/dist/verilog.d.mts +3 -0
- package/dist/verilog.mjs +7 -0
- package/dist/vhdl.d.mts +3 -0
- package/dist/vhdl.mjs +5 -0
- package/dist/vim.d.mts +3 -0
- package/dist/vim.mjs +2 -0
- package/dist/viml.d.mts +3 -0
- package/dist/viml.mjs +5 -0
- package/dist/vimscript.d.mts +3 -0
- package/dist/vimscript.mjs +2 -0
- package/dist/vue-directives.d.mts +3 -0
- package/dist/vue-directives.mjs +5 -0
- package/dist/vue-html.d.mts +3 -0
- package/dist/vue-html.mjs +11 -0
- package/dist/vue-interpolations.d.mts +3 -0
- package/dist/vue-interpolations.mjs +5 -0
- package/dist/vue-sfc-style-variable-injection.d.mts +3 -0
- package/dist/vue-sfc-style-variable-injection.mjs +8 -0
- package/dist/vue.d.mts +3 -0
- package/dist/vue.mjs +27 -0
- package/dist/vy.d.mts +3 -0
- package/dist/vy.mjs +2 -0
- package/dist/vyper.d.mts +3 -0
- package/dist/vyper.mjs +7 -0
- package/dist/wasm.d.mts +3 -0
- package/dist/wasm.mjs +5 -0
- package/dist/wenyan.d.mts +3 -0
- package/dist/wenyan.mjs +5 -0
- package/dist/wgsl.d.mts +3 -0
- package/dist/wgsl.mjs +5 -0
- package/dist/wiki.d.mts +3 -0
- package/dist/wiki.mjs +2 -0
- package/dist/wikitext.d.mts +3 -0
- package/dist/wikitext.mjs +7 -0
- package/dist/wl.d.mts +3 -0
- package/dist/wl.mjs +2 -0
- package/dist/wolfram.d.mts +3 -0
- package/dist/wolfram.mjs +7 -0
- package/dist/xml.d.mts +3 -0
- package/dist/xml.mjs +8 -0
- package/dist/xsl.d.mts +3 -0
- package/dist/xsl.mjs +8 -0
- package/dist/yaml.d.mts +3 -0
- package/dist/yaml.mjs +7 -0
- package/dist/yml.d.mts +3 -0
- package/dist/yml.mjs +2 -0
- package/dist/zenscript.d.mts +3 -0
- package/dist/zenscript.mjs +5 -0
- package/dist/zig.d.mts +3 -0
- package/dist/zig.mjs +5 -0
- package/dist/zsh.d.mts +3 -0
- package/dist/zsh.mjs +2 -0
- package/package.json +358 -0
package/dist/groovy.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const lang = Object.freeze({displayName:"Groovy",name:"groovy",patterns:[{captures:{"1":{name:"punctuation.definition.comment.groovy"}},match:/(?<=^|\n(?!$))(#!)[^\n]+(?=$|\n)\n/dgv,name:"comment.line.hashbang.groovy"},{captures:{"1":{name:"keyword.other.package.groovy"},"2":{name:"storage.modifier.package.groovy"},"3":{name:"punctuation.terminator.groovy"}},match:/(?<=^|\n(?!$))\p{space}*(package)\b(?:\p{space}*([^ \;\$]+)\p{space}*(;)?)?/dgv,name:"meta.package.groovy"},{begin:/(import static)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.other.import.static.groovy"}},captures:{"1":{name:"keyword.other.import.groovy"},"2":{name:"storage.modifier.import.groovy"},"3":{name:"punctuation.terminator.groovy"}},contentName:"storage.modifier.import.groovy",end:/\p{space}*(?:(?=$|\n)|(?=%>)(;))/dgv,endCaptures:{"1":{name:"punctuation.terminator.groovy"}},name:"meta.import.groovy",patterns:[{match:/\./dgv,name:"punctuation.separator.groovy"},{match:/\p{space}/dgv,name:"invalid.illegal.character_not_allowed_here.groovy"}]},{begin:/(import)\b\p{space}*/dgv,beginCaptures:{"1":{name:"keyword.other.import.groovy"}},captures:{"1":{name:"keyword.other.import.groovy"},"2":{name:"storage.modifier.import.groovy"},"3":{name:"punctuation.terminator.groovy"}},contentName:"storage.modifier.import.groovy",end:/\p{space}*(?:(?=$|\n)|(?=%>)|(;))/dgv,endCaptures:{"1":{name:"punctuation.terminator.groovy"}},name:"meta.import.groovy",patterns:[{match:/\./dgv,name:"punctuation.separator.groovy"},{match:/\p{space}/dgv,name:"invalid.illegal.character_not_allowed_here.groovy"}]},{captures:{"1":{name:"keyword.other.import.groovy"},"2":{name:"keyword.other.import.static.groovy"},"3":{name:"storage.modifier.import.groovy"},"4":{name:"punctuation.terminator.groovy"}},match:/(?<=^|\n(?!$))\p{space}*(import)\p{space}+(static)\p{space}+\b(?:\p{space}*([^ \;\$]+)\p{space}*(;)?)?/dgv,name:"meta.import.groovy"},{include:"#groovy"}],repository:{annotations:{patterns:[{begin:/(?<!\.)(@[^ \(]+)(\()/dgv,beginCaptures:{"1":{name:"storage.type.annotation.groovy"},"2":{name:"punctuation.definition.annotation-arguments.begin.groovy"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.annotation-arguments.end.groovy"}},name:"meta.declaration.annotation.groovy",patterns:[{captures:{"1":{name:"constant.other.key.groovy"},"2":{name:"keyword.operator.assignment.groovy"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}*(=)/dgv},{include:"#values"},{match:/,/dgv,name:"punctuation.definition.seperator.groovy"}]},{match:/(?<!\.)@\P{space}+/dgv,name:"storage.type.annotation.groovy"}]},"anonymous-classes-and-new":{begin:/\bnew\b/dgv,beginCaptures:{"0":{name:"keyword.control.new.groovy"}},end:/(?<=\)|\])(?!\p{space}*\{)|(?<=\})|(?=[\;])|(?=$|\n)/dgv,patterns:[{begin:/([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(?=\[)/dgv,beginCaptures:{"1":{name:"storage.type.groovy"}},end:/\}|(?=\p{space}*(?:,|;|\)))|(?=$|\n)/dgv,patterns:[{begin:/\[/dgv,end:/\]/dgv,patterns:[{include:"#groovy"}]},{begin:/\{/dgv,end:/(?=\})/dgv,patterns:[{include:"#groovy"}]}]},{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}][^\n]*\(?)/dgv,end:/(?<=\))|(?=$|\n)/dgv,patterns:[{include:"#object-types"},{begin:/\(/dgv,beginCaptures:{"1":{name:"storage.type.groovy"}},end:/\)/dgv,patterns:[{include:"#groovy"}]}]},{begin:/\{/dgv,end:/\}/dgv,name:"meta.inner-class.groovy",patterns:[{include:"#class-body"}]}]},braces:{begin:/\{/dgv,end:/\}/dgv,patterns:[{include:"#groovy-code"}]},class:{begin:/(?=[\p{L}\p{M}\p{N}\p{Pc}]?[\p{L}\p{M}\p{N}\p{Pc}\p{space}]*(?:class|(?:@)?interface|enum)\p{space}+[\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.class.end.groovy"}},name:"meta.definition.class.groovy",patterns:[{include:"#storage-modifiers"},{include:"#comments"},{captures:{"1":{name:"storage.modifier.groovy"},"2":{name:"entity.name.type.class.groovy"}},match:/(class|(?:@)?interface|enum)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}]+)/dgv,name:"meta.class.identifier.groovy"},{begin:/extends/dgv,beginCaptures:{"0":{name:"storage.modifier.extends.groovy"}},end:/(?=\{|implements)/dgv,name:"meta.definition.class.inherited.classes.groovy",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/(implements)\p{space}/dgv,beginCaptures:{"1":{name:"storage.modifier.implements.groovy"}},end:/(?=\p{space}*extends|\{)/dgv,name:"meta.definition.class.implemented.interfaces.groovy",patterns:[{include:"#object-types-inherited"},{include:"#comments"}]},{begin:/\{/dgv,end:/(?=\})/dgv,name:"meta.class.body.groovy",patterns:[{include:"#class-body"}]}]},"class-body":{patterns:[{include:"#enum-values"},{include:"#constructors"},{include:"#groovy"}]},closures:{begin:/\{(?=[^\n]*?->)/dgv,end:/\}/dgv,patterns:[{begin:/(?<=\{)(?=[^\}]*?->)/dgv,end:/->/dgv,endCaptures:{"0":{name:"keyword.operator.groovy"}},patterns:[{begin:/(?!->)/dgv,end:/(?=->)/dgv,name:"meta.closure.parameters.groovy",patterns:[{begin:/(?!,|->)/dgv,end:/(?=,|->)/dgv,name:"meta.closure.parameter.groovy",patterns:[{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.groovy"}},end:/(?=,|->)/dgv,name:"meta.parameter.default.groovy",patterns:[{include:"#groovy-code"}]},{include:"#parameters"}]}]}]},{begin:/(?=[^\}])/dgv,end:/(?=\})/dgv,patterns:[{include:"#groovy-code"}]}]},"comment-block":{begin:/\/\*/dgv,captures:{"0":{name:"punctuation.definition.comment.groovy"}},end:/\*\//dgv,name:"comment.block.groovy"},comments:{patterns:[{captures:{"0":{name:"punctuation.definition.comment.groovy"}},match:/\/\*\*\//dgv,name:"comment.block.empty.groovy"},{include:"text.html.javadoc"},{include:"#comment-block"},{captures:{"1":{name:"punctuation.definition.comment.groovy"}},match:/(\/\/)[^\n]*(?=$|\n)\n?/dgv,name:"comment.line.double-slash.groovy"}]},constants:{patterns:[{match:/\b([A-Z][A-Z0-9_]+)\b/dgv,name:"constant.other.groovy"},{match:/\b(true|false|null)\b/dgv,name:"constant.language.groovy"}]},constructors:{applyEndPatternLast:1,begin:/(?<=;|(?<=^|\n(?!$)))(?=\p{space}*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)\p{space}+)*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*\()/dgv,end:/\}/dgv,patterns:[{include:"#method-content"}]},"enum-values":{patterns:[{begin:/(?<=;|(?<=^|\n(?!$)))\p{space}*\b([A-Z0-9_]+)(?=\p{space}*(?:,|;|\}|\(|(?=$|\n)))/dgv,beginCaptures:{"1":{name:"constant.enum.name.groovy"}},end:/,|;|(?=\})|(?<=^|\n(?!$))(?!\p{space}*[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*(?:,|(?=$|\n)))/dgv,patterns:[{begin:/\(/dgv,end:/\)/dgv,name:"meta.enum.value.groovy",patterns:[{match:/,/dgv,name:"punctuation.definition.seperator.parameter.groovy"},{include:"#groovy-code"}]}]}]},groovy:{patterns:[{include:"#comments"},{include:"#class"},{include:"#variables"},{include:"#methods"},{include:"#annotations"},{include:"#groovy-code"}]},"groovy-code":{patterns:[{include:"#groovy-code-minus-map-keys"},{include:"#map-keys"}]},"groovy-code-minus-map-keys":{comment:"In some situations, maps can't be declared without enclosing []'s, \n\t\t\t\ttherefore we create a collection of everything but that",patterns:[{include:"#comments"},{include:"#annotations"},{include:"#support-functions"},{include:"#keyword-language"},{include:"#values"},{include:"#anonymous-classes-and-new"},{include:"#keyword-operator"},{include:"#types"},{include:"#storage-modifiers"},{include:"#parens"},{include:"#closures"},{include:"#braces"}]},keyword:{patterns:[{include:"#keyword-operator"},{include:"#keyword-language"}]},"keyword-language":{patterns:[{match:/\b(try|catch|finally|throw)\b/dgv,name:"keyword.control.exception.groovy"},{match:/\b((?<!\.)(?:return|break|continue|default|do|while|for|switch|if|else))\b/dgv,name:"keyword.control.groovy"},{begin:/\bcase\b/dgv,beginCaptures:{"0":{name:"keyword.control.groovy"}},end:/:/dgv,endCaptures:{"0":{name:"punctuation.definition.case-terminator.groovy"}},name:"meta.case.groovy",patterns:[{include:"#groovy-code-minus-map-keys"}]},{begin:/\b(assert)\p{space}/dgv,beginCaptures:{"1":{name:"keyword.control.assert.groovy"}},end:/(?=$|\n)|;|\}/dgv,name:"meta.declaration.assertion.groovy",patterns:[{match:/:/dgv,name:"keyword.operator.assert.expression-seperator.groovy"},{include:"#groovy-code-minus-map-keys"}]},{match:/\b(throws)\b/dgv,name:"keyword.other.throws.groovy"}]},"keyword-operator":{patterns:[{match:/\b(as)\b/dgv,name:"keyword.operator.as.groovy"},{match:/\b(in)\b/dgv,name:"keyword.operator.in.groovy"},{match:/\?:/dgv,name:"keyword.operator.elvis.groovy"},{match:/\*:/dgv,name:"keyword.operator.spreadmap.groovy"},{match:/\.\./dgv,name:"keyword.operator.range.groovy"},{match:/->/dgv,name:"keyword.operator.arrow.groovy"},{match:/<</dgv,name:"keyword.operator.leftshift.groovy"},{match:/(?<=\P{space})\.(?=\P{space})/dgv,name:"keyword.operator.navigation.groovy"},{match:/(?<=\P{space})\?\.(?=\P{space})/dgv,name:"keyword.operator.safe-navigation.groovy"},{begin:/\?/dgv,beginCaptures:{"0":{name:"keyword.operator.ternary.groovy"}},end:/(?=(?=$|\n)|\)|\}|\])/dgv,name:"meta.evaluation.ternary.groovy",patterns:[{match:/:/dgv,name:"keyword.operator.ternary.expression-seperator.groovy"},{include:"#groovy-code-minus-map-keys"}]},{match:/==~/dgv,name:"keyword.operator.match.groovy"},{match:/=~/dgv,name:"keyword.operator.find.groovy"},{match:/\b(instanceof)\b/dgv,name:"keyword.operator.instanceof.groovy"},{match:/(===|==|!=|<=|>=|<=>|<>|<|>|<<)/dgv,name:"keyword.operator.comparison.groovy"},{match:/=/dgv,name:"keyword.operator.assignment.groovy"},{match:/(--|\+\+)/dgv,name:"keyword.operator.increment-decrement.groovy"},{match:/(-|\+|\*|\/|%)/dgv,name:"keyword.operator.arithmetic.groovy"},{match:/(!|&&|\|\|)/dgv,name:"keyword.operator.logical.groovy"}]},"language-variables":{patterns:[{match:/\b(this|super)\b/dgv,name:"variable.language.groovy"}]},"map-keys":{patterns:[{captures:{"1":{name:"constant.other.key.groovy"},"2":{name:"punctuation.definition.seperator.key-value.groovy"}},match:/([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(:)/dgv}]},"method-call":{begin:/([\p{L}\p{M}\p{N}\p{Pc}\$]+)(\()/dgv,beginCaptures:{"1":{name:"meta.method.groovy"},"2":{name:"punctuation.definition.method-parameters.begin.groovy"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.method-parameters.end.groovy"}},name:"meta.method-call.groovy",patterns:[{match:/,/dgv,name:"punctuation.definition.seperator.parameter.groovy"},{include:"#groovy-code"}]},"method-content":{patterns:[{match:/\p{space}/dgv},{include:"#annotations"},{begin:/(?=(?:[\p{L}\p{M}\p{N}\p{Pc}]|<)[^\(]*\p{space}+(?:[\p{L}\p{M}\p{N}\p{Pc}\$]|<)+\p{space}*\()/dgv,end:/(?=[\p{L}\p{M}\p{N}\p{Pc}\$]+\p{space}*\()/dgv,name:"meta.method.return-type.java",patterns:[{include:"#storage-modifiers"},{include:"#types"}]},{begin:/([\p{L}\p{M}\p{N}\p{Pc}\$]+)\p{space}*\(/dgv,beginCaptures:{"1":{name:"entity.name.function.java"}},end:/\)/dgv,name:"meta.definition.method.signature.java",patterns:[{begin:/(?=[^\)])/dgv,end:/(?=\))/dgv,name:"meta.method.parameters.groovy",patterns:[{begin:/(?=[^\,\)])/dgv,end:/(?=,|\))/dgv,name:"meta.method.parameter.groovy",patterns:[{match:/,/dgv,name:"punctuation.definition.separator.groovy"},{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.groovy"}},end:/(?=,|\))/dgv,name:"meta.parameter.default.groovy",patterns:[{include:"#groovy-code"}]},{include:"#parameters"}]}]}]},{begin:/(?=<)/dgv,end:/(?=\p{space})/dgv,name:"meta.method.paramerised-type.groovy",patterns:[{begin:/</dgv,end:/>/dgv,name:"storage.type.parameters.groovy",patterns:[{include:"#types"},{match:/,/dgv,name:"punctuation.definition.seperator.groovy"}]}]},{begin:/throws/dgv,beginCaptures:{"0":{name:"storage.modifier.groovy"}},end:/(?=\{|;)|(?<=^|\n(?!$))(?=\p{space}*(?:[^\{\p{space}]|(?=$|\n)))/dgv,name:"meta.throwables.groovy",patterns:[{include:"#object-types"}]},{begin:/\{/dgv,end:/(?=\})/dgv,name:"meta.method.body.java",patterns:[{include:"#groovy-code"}]}]},methods:{applyEndPatternLast:1,begin:/(?<=;|(?<=^|\n(?!$))|\{)(?=\p{space}*(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|def|(?:(?:void|boolean|byte|char|short|int|float|long|double)|@?(?:[a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*[A-Z]+[\p{L}\p{M}\p{N}\p{Pc}]*)[\[\]]*(?:<[^\n]*>)?)\p{space}+([^\=]+\p{space}+)?[\p{L}\p{M}\p{N}\p{Pc}]+\p{space}*\()/dgv,end:/\}|(?=[^\{])/dgv,name:"meta.definition.method.groovy",patterns:[{include:"#method-content"}]},nest_curly:{begin:/\{/dgv,captures:{"0":{name:"punctuation.section.scope.groovy"}},end:/\}/dgv,patterns:[{include:"#nest_curly"}]},numbers:{patterns:[{match:/((0(x|X)[0-9a-fA-F]*)|(\+|-)?\b((\p{Nd}+\.?\p{Nd}*)|(\.\p{Nd}+))((e|E)(\+|-)?\p{Nd}+)?)([LlFfUuDdg]|UL|ul)?\b/dgv,name:"constant.numeric.groovy"}]},"object-types":{patterns:[{begin:/\b((?:[a-z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*(?:[A-Z]+[\p{L}\p{M}\p{N}\p{Pc}]*[a-z]+[\p{L}\p{M}\p{N}\p{Pc}]*|UR[LI]))</dgv,end:/>|[^\p{L}\p{M}\p{N}\p{Pc}\p{space}\,\?\<\[\]]/dgv,name:"storage.type.generic.groovy",patterns:[{include:"#object-types"},{begin:/</dgv,comment:"This is just to support <>'s with no actual type prefix",end:/>|[^\p{L}\p{M}\p{N}\p{Pc}\p{space}\,\[\]\<]/dgv,name:"storage.type.generic.groovy"}]},{begin:/\b((?:[a-z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*[A-Z]+[\p{L}\p{M}\p{N}\p{Pc}]*[a-z]+[\p{L}\p{M}\p{N}\p{Pc}]*)(?=\[)/dgv,end:/(?=[^\]\p{space}])/dgv,name:"storage.type.object.array.groovy",patterns:[{begin:/\[/dgv,end:/\]/dgv,patterns:[{include:"#groovy"}]}]},{match:/\b(?:[a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*(?:[A-Z]+[\p{L}\p{M}\p{N}\p{Pc}]*[a-z]+[\p{L}\p{M}\p{N}\p{Pc}]*|UR[LI])\b/dgv,name:"storage.type.groovy"}]},"object-types-inherited":{patterns:[{begin:/\b((?:[a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*[A-Z]+[\p{L}\p{M}\p{N}\p{Pc}]*[a-z]+[\p{L}\p{M}\p{N}\p{Pc}]*)</dgv,end:/>|[^\p{L}\p{M}\p{N}\p{Pc}\p{space}\,\?\<\[\]]/dgv,name:"entity.other.inherited-class.groovy",patterns:[{include:"#object-types-inherited"},{begin:/</dgv,comment:"This is just to support <>'s with no actual type prefix",end:/>|[^\p{L}\p{M}\p{N}\p{Pc}\p{space}\,\[\]\<]/dgv,name:"storage.type.generic.groovy"}]},{captures:{"1":{name:"keyword.operator.dereference.groovy"}},match:/\b(?:[a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*(\.))*[A-Z]+[\p{L}\p{M}\p{N}\p{Pc}]*[a-z]+[\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.other.inherited-class.groovy"}]},parameters:{patterns:[{include:"#annotations"},{include:"#storage-modifiers"},{include:"#types"},{match:/[\p{L}\p{M}\p{N}\p{Pc}]+/dgv,name:"variable.parameter.method.groovy"}]},parens:{begin:/\(/dgv,end:/\)/dgv,patterns:[{include:"#groovy-code"}]},"primitive-arrays":{patterns:[{match:/\b(?:void|boolean|byte|char|short|int|float|long|double)(\[\])*\b/dgv,name:"storage.type.primitive.array.groovy"}]},"primitive-types":{patterns:[{match:/\b(?:void|boolean|byte|char|short|int|float|long|double)\b/dgv,name:"storage.type.primitive.groovy"}]},regexp:{patterns:[{begin:/\/(?=[^\/]+\/([^\>]|(?=$|\n)))/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.regexp.begin.groovy"}},end:/\//dgv,endCaptures:{"0":{name:"punctuation.definition.string.regexp.end.groovy"}},name:"string.regexp.groovy",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.groovy"}]},{begin:/~"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.regexp.begin.groovy"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.regexp.end.groovy"}},name:"string.regexp.compiled.groovy",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.groovy"}]}]},"storage-modifiers":{patterns:[{match:/\b(private|protected|public)\b/dgv,name:"storage.modifier.access-control.groovy"},{match:/\b(static)\b/dgv,name:"storage.modifier.static.groovy"},{match:/\b(final)\b/dgv,name:"storage.modifier.final.groovy"},{match:/\b(native|synchronized|abstract|threadsafe|transient)\b/dgv,name:"storage.modifier.other.groovy"}]},"string-quoted-double":{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.groovy"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.groovy"}},name:"string.quoted.double.groovy",patterns:[{include:"#string-quoted-double-contents"}]},"string-quoted-double-contents":{patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.groovy"},{applyEndPatternLast:1,begin:/\$[\p{L}\p{M}\p{N}\p{Pc}]/dgv,end:/(?=[^\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"variable.other.interpolated.groovy",patterns:[{match:/[\p{L}\p{M}\p{N}\p{Pc}]/dgv,name:"variable.other.interpolated.groovy"},{match:/\./dgv,name:"keyword.other.dereference.groovy"}]},{begin:/\$\{/dgv,captures:{"0":{name:"punctuation.section.embedded.groovy"}},end:/\}/dgv,name:"source.groovy.embedded.source",patterns:[{include:"#nest_curly"}]}]},"string-quoted-double-multiline":{begin:/"""/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.groovy"}},end:/"""/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.groovy"}},name:"string.quoted.double.multiline.groovy",patterns:[{include:"#string-quoted-double-contents"}]},"string-quoted-single":{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.groovy"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.groovy"}},name:"string.quoted.single.groovy",patterns:[{include:"#string-quoted-single-contents"}]},"string-quoted-single-contents":{patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.groovy"}]},"string-quoted-single-multiline":{begin:/'''/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.groovy"}},end:/'''/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.groovy"}},name:"string.quoted.single.multiline.groovy",patterns:[{include:"#string-quoted-single-contents"}]},strings:{patterns:[{include:"#string-quoted-double-multiline"},{include:"#string-quoted-single-multiline"},{include:"#string-quoted-double"},{include:"#string-quoted-single"},{include:"#regexp"}]},structures:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.structure.begin.groovy"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.structure.end.groovy"}},name:"meta.structure.groovy",patterns:[{include:"#groovy-code"},{match:/,/dgv,name:"punctuation.definition.separator.groovy"}]},"support-functions":{patterns:[{match:/\b(?:sprintf|print(?:f|ln)?)\b/dgv,name:"support.function.print.groovy"},{match:/\b(?:shouldFail|fail(?:NotEquals)?|ass(?:ume|ert(?:S(?:cript|ame)|N(?:ot(?:Same|Null)|ull)|Contains|T(?:hat|oString|rue)|Inspect|Equals|False|Length|ArrayEquals)))\b/dgv,name:"support.function.testing.groovy"}]},types:{patterns:[{match:/\b(def)\b/dgv,name:"storage.type.def.groovy"},{include:"#primitive-types"},{include:"#primitive-arrays"},{include:"#object-types"}]},values:{patterns:[{include:"#language-variables"},{include:"#strings"},{include:"#numbers"},{include:"#constants"},{include:"#types"},{include:"#structures"},{include:"#method-call"}]},variables:{applyEndPatternLast:1,patterns:[{begin:/(?=(?:(?:private|protected|public|native|synchronized|abstract|threadsafe|transient|static|final)|def|(?:void|boolean|byte|char|short|int|float|long|double)|(?:[a-z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*[A-Z]+[\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}+[\p{L}\p{M}\p{N}\p{Pc}\p{Nd}_\<\>\[\]\,\p{space}]+(?:=|(?=$|\n)))/dgv,end:/;|(?=$|\n)/dgv,name:"meta.definition.variable.groovy",patterns:[{match:/\p{space}/dgv},{captures:{"1":{name:"constant.variable.groovy"}},match:/([A-Z_0-9]+)\p{space}+(?==)/dgv},{captures:{"1":{name:"meta.definition.variable.name.groovy"}},match:/([\p{L}\p{M}\p{N}\p{Pc}][^\p{space}\,]*)\p{space}+(?==)/dgv},{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.groovy"}},end:/(?=$|\n)/dgv,patterns:[{include:"#groovy-code"}]},{captures:{"1":{name:"meta.definition.variable.name.groovy"}},match:/([\p{L}\p{M}\p{N}\p{Pc}][^\p{space}\=]*)(?=\p{space}*((?=$|\n)|;))/dgv},{include:"#groovy-code"}]}]}},scopeName:"source.groovy",embeddedLangs:undefined,aliases:undefined})
|
|
2
|
+
|
|
3
|
+
export default [
|
|
4
|
+
lang
|
|
5
|
+
]
|
package/dist/gts.d.mts
ADDED
package/dist/gts.mjs
ADDED
package/dist/hack.d.mts
ADDED
package/dist/hack.mjs
ADDED
package/dist/haml.d.mts
ADDED
package/dist/haml.mjs
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EmulatedRegExp } from 'oniguruma-to-es'
|
|
2
|
+
import javascript from './javascript.mjs'
|
|
3
|
+
import css from './css.mjs'
|
|
4
|
+
|
|
5
|
+
const lang = Object.freeze({displayName:"Ruby Haml",fileTypes:["haml","html.haml"],foldingStartMarker:/(?<=^|\n(?!$))\p{space}*([\-\%\#\:\.\p{L}\p{M}\p{N}\p{Pc}\=][^\n]*)\p{space}(?=$|\n)/dgv,foldingStopMarker:/(?<=^|\n(?!$))\p{space}*(?=$|\n)/dgv,name:"haml",patterns:[{begin:/(?<=^|\n(?!$))(\p{space}*)==/dgv,contentName:"string.quoted.double.ruby",end:/(?=$|\n)\n*/dgv,patterns:[{include:"#interpolated_ruby"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):ruby/dgv,end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.ruby.embedded.filter.haml",patterns:[{include:"source.ruby"}]},{captures:{"1":{name:"punctuation.definition.prolog.haml"}},match:/(?<=^|\n(?!$))(!!!)((?=$|\n)|\p{space}[^\n]*)/dgv,name:"meta.prolog.haml"},{begin:/(?<=^|\n(?!$))(\p{space}*):javascript/dgv,end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"js.haml",patterns:[{include:"source.js"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)%script/dgv,end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"js.inline.haml",patterns:[{include:"source.js"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):ruby(?=$|\n)/dgv,end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.ruby.embedded.filter.haml",patterns:[{include:"source.ruby"}]},{captures:{"1":{name:"punctuation.section.comment.haml"}},match:/(?<=^|\n(?!$))(\p{space}*)(\/\[[^\]][^\n]*?(?=$|\n)\n?)/dgv,name:"comment.line.slash.haml"},{begin:/(?<=^|\n(?!$))(\p{space}*)(-#|\/|-\p{space}*\/\*+)/dgv,beginCaptures:{"2":{name:"punctuation.section.comment.haml"}},end:/(?<=^|\n(?!$))(?!\1\p{space}+|\n)()/dgv,name:"comment.block.haml",patterns:[{include:"text.haml"}]},{begin:/(?<=^|\n(?!$))\p{space}*(?:((%)([\-\p{L}\p{M}\p{N}\p{Pc}\:]+))|(?=\.|#))/dgv,captures:{"1":{name:"meta.tag.haml"},"2":{name:"punctuation.definition.tag.haml"},"3":{name:"entity.name.tag.haml"}},end:/(?=$|\n)|(?!\.|#|\{|\(|\[|&|=|-|~|!=|&=|\/)/dgv,patterns:[{begin:/==/dgv,contentName:"string.quoted.double.ruby",end:/(?=$|\n)\n?/dgv,patterns:[{include:"#interpolated_ruby"}]},{captures:{"1":{name:"entity.other.attribute-name.class"}},match:/(\.[\p{L}\p{M}\p{N}\p{Pc}\-\:]+)/dgv,name:"meta.selector.css"},{captures:{"1":{name:"entity.other.attribute-name.id"}},match:/(#[\p{L}\p{M}\p{N}\p{Pc}\-]+)/dgv,name:"meta.selector.css"},{begin:new EmulatedRegExp("(?<!#)\\{(?=[^\\n]*(,|(do)|\\{|\\}|\\||(#[^\\n]*)|(?:(?=($E$\\r\\n?|[\\n\\v\\f\\x85\\u2028\\u2029]))\\4))\\p{space}*)","dgv",{"useEmulationGroups":true}),end:/\p{space}*\}(?!\p{space}*,)(?!\p{space}*\|)(?!#\{[^\n]*\})/dgv,name:"meta.section.attributes.haml",patterns:[{include:"source.ruby"},{include:"#continuation"},{include:"#rubyline"}]},{begin:/\(/dgv,end:/\)/dgv,name:"meta.section.attributes.plain.haml",patterns:[{match:/([\p{L}\p{M}\p{N}\p{Pc}\-]+)/dgv,name:"constant.other.symbol.ruby"},{match:/=/dgv,name:"punctuation"},{include:"#variables"},{begin:/"/dgv,end:/"/dgv,name:"string.quoted.double.ruby",patterns:[{match:/\\(x\p{AHex}{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|[^\n])/dgv,name:"constant.character.escape.ruby"},{include:"#interpolated_ruby"}]},{include:"#interpolated_ruby"}]},{begin:/\[(?=[^\n]+(,|\[|\]|\||(#[^\n]*))\p{space}*)/dgv,end:/\p{space}*\](?![^\n]*(?!#\[)\])/dgv,name:"meta.section.object.haml",patterns:[{include:"source.ruby"},{include:"#continuation"},{include:"#rubyline"}]},{include:"#interpolated_ruby_line"},{include:"#rubyline"},{match:/\//dgv,name:"punctuation.terminator.tag.haml"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):(ruby|opal)(?=$|\n)/dgv,end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.ruby.embedded.filter.haml",patterns:[{include:"source.ruby"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):ruby(?=$|\n)/dgv,end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.ruby.embedded.filter.haml",patterns:[{include:"source.ruby"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):(style|sass)(?=$|\n)/dgv,end:/(?<=^|\n(?!$))(?=\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.sass.embedded.filter.haml",patterns:[{include:"source.sass"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):coffee(script)?/dgv,end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.coffee.embedded.filter.haml",patterns:[{include:"source.coffee"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):plain(?=$|\n)/dgv,end:/(?<=^|\n(?!$))(?=\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"text.plain.embedded.filter.haml",patterns:[{include:"text.plain"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(:ruby)/dgv,beginCaptures:{"2":{name:"keyword.control.filter.haml"}},end:/(?<=\n)(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.ruby.embedded.filter.haml",patterns:[{include:"source.ruby"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(:sass)/dgv,beginCaptures:{"2":{name:"keyword.control.filter.haml"}},end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.embedded.filter.sass",patterns:[{include:"source.sass"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):(styles|sass)(?=$|\n)/dgv,end:/(?<=^|\n(?!$))(?=\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"source.sass.embedded.filter.haml",patterns:[{include:"source.sass"}]},{begin:/(?<=^|\n(?!$))(\p{space}*):plain(?=$|\n)/dgv,end:/(?<=^|\n(?!$))(?=\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"text.plain.embedded.filter.haml",patterns:[{include:"text.plain"}]},{captures:{"1":{name:"meta.escape.haml"}},match:/(?<=^|\n(?!$))\p{space}*(\.)/dgv},{begin:/(?<=^|\n(?!$))\p{space}*(?==|-|~|!=|&=)/dgv,end:/(?=$|\n)/dgv,patterns:[{include:"#interpolated_ruby_line"},{include:"#rubyline"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(:php)/dgv,captures:{"2":{name:"entity.name.tag.haml"}},end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"meta.embedded.php",patterns:[{include:"text.html.php#language"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(:markdown)/dgv,captures:{"2":{name:"entity.name.tag.haml"}},end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"meta.embedded.markdown",patterns:[{include:"text.html.markdown"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(:(css|styles?))(?=$|\n)/dgv,captures:{"2":{name:"entity.name.tag.haml"}},end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"meta.embedded.css",patterns:[{include:"source.css"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(:sass)(?=$|\n)/dgv,captures:{"2":{name:"entity.name.tag.haml"}},end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"meta.embedded.sass",patterns:[{include:"source.sass"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(:scss)(?=$|\n)/dgv,captures:{"2":{name:"entity.name.tag.haml"}},end:/(?<=^|\n(?!$))(?!\1\p{space}+|(?=$|\n)\n*)()/dgv,name:"meta.embedded.scss",patterns:[{include:"source.scss"}]}],repository:{continuation:{captures:{"1":{name:"punctuation.separator.continuation.haml"}},match:/(\|)\p{space}*\n/dgv},interpolated_ruby:{patterns:[{captures:{"0":{name:"punctuation.section.embedded.ruby"},"1":{name:"source.ruby.embedded.source.empty"}},match:/#\{(\})/dgv,name:"source.ruby.embedded.source"},{begin:/#\{/dgv,captures:{"0":{name:"punctuation.section.embedded.ruby"}},end:/(\})/dgv,name:"source.ruby.embedded.source",patterns:[{include:"#nest_curly_and_self"},{include:"source.ruby"}]},{include:"#variables"}]},interpolated_ruby_line:{begin:/!?==/dgv,contentName:"string.source.ruby.embedded.haml",end:/(?=$|\n)/dgv,name:"meta.line.ruby.interpolated.haml",patterns:[{include:"#interpolated_ruby"},{include:"source.ruby#escaped_char"}]},nest_curly_and_self:{patterns:[{begin:/\{/dgv,captures:{"0":{name:"punctuation.section.scope.ruby"}},end:/\}/dgv,patterns:[{include:"#nest_curly_and_self"},{include:"source.ruby"}]}]},rubyline:{begin:/(&|!)?(=|-|~)/dgv,contentName:"source.ruby.embedded.haml",end:/((do|\{)( \|[\.\*]+\|)?)(?=$|\n)|(?=$|\n)|(?<=^|\n(?!$))(?![^\n]*\|\p{space}*)(?=$|\n)\n?/dgv,endCaptures:{"1":{name:"source.ruby.embedded.html"},"2":{name:"keyword.control.ruby.start-block"}},name:"meta.line.ruby.haml",patterns:[{captures:{"1":{name:"keyword.control.php"}},match:/\p{space}+((elseif|foreach|switch|declare|default|use))(?=\p{space}|\()/dgv},{captures:{"1":{name:"keyword.control.import.include.php"}},match:/\p{space}+(require_once|include_once)(?=\p{space}|\()/dgv},{match:/\p{space}+(catch|try|throw|exception|finally|die)(?=\p{space}|\(|\n*)/dgv,name:"keyword.control.exception.php"},{captures:{"1":{name:"storage.type.function.php"}},match:/\p{space}+(function\p{space}*)((?=\())/dgv},{captures:{"1":{name:"keyword.control.php"}},match:/\p{space}+(use\p{space}*)((?=\())/dgv},{match:/(\||,|<|do|\{)\p{space}*(#[^\n]*)?(?=$|\n)\n*/dgv,name:"source.ruby",patterns:[{include:"#rubyline"}]},{comment:"Hack to let ruby comments work in this context properly",match:/#[^\n]*(?=$|\n)/dgv,name:"comment.line.number-sign.ruby"},{include:"source.ruby"},{include:"#continuation"}]},variables:{patterns:[{captures:{"1":{name:"punctuation.definition.variable.ruby"}},match:/(#@)[a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"variable.other.readwrite.instance.ruby"},{captures:{"1":{name:"punctuation.definition.variable.ruby"}},match:/(#@@)[a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"variable.other.readwrite.class.ruby"},{captures:{"1":{name:"punctuation.definition.variable.ruby"}},match:/(#\$)[a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"variable.other.readwrite.global.ruby"}]}},scopeName:"text.haml",embeddedLangs:["javascript","css"],aliases:undefined,embeddedLangsLazy:["ruby","sass","coffee","markdown"]})
|
|
6
|
+
|
|
7
|
+
export default [
|
|
8
|
+
...javascript,
|
|
9
|
+
...css,
|
|
10
|
+
lang
|
|
11
|
+
]
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import html from './html.mjs'
|
|
2
|
+
import css from './css.mjs'
|
|
3
|
+
import javascript from './javascript.mjs'
|
|
4
|
+
import yaml from './yaml.mjs'
|
|
5
|
+
|
|
6
|
+
const lang = Object.freeze({displayName:"Handlebars",name:"handlebars",patterns:[{include:"#yfm"},{include:"#extends"},{include:"#block_comments"},{include:"#comments"},{include:"#block_helper"},{include:"#end_block"},{include:"#else_token"},{include:"#partial_and_var"},{include:"#inline_script"},{include:"#html_tags"},{include:"text.html.basic"}],repository:{block_comments:{patterns:[{begin:/\{\{!--/dgv,end:/--\}\}/dgv,name:"comment.block.handlebars",patterns:[{match:/@[\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"keyword.annotation.handlebars"},{include:"#comments"}]},{begin:/<!--/dgv,captures:{"0":{name:"punctuation.definition.comment.html"}},end:/-{2,3}\p{space}*>/dgv,name:"comment.block.html",patterns:[{match:/--/dgv,name:"invalid.illegal.bad-comments-or-CDATA.html"}]}]},block_helper:{begin:/(\{\{)(~?#)([\-a-zA-Z0-9_\.\/\>]+)\p{space}?(@?[\-a-zA-Z0-9_\.\/]+)*\p{space}?(@?[\-a-zA-Z0-9_\.\/]+)*\p{space}?(@?[\-a-zA-Z0-9_\.\/]+)*/dgv,beginCaptures:{"1":{name:"support.constant.handlebars"},"2":{name:"support.constant.handlebars keyword.control"},"3":{name:"support.constant.handlebars keyword.control"},"4":{name:"variable.parameter.handlebars"},"5":{name:"support.constant.handlebars"},"6":{name:"variable.parameter.handlebars"},"7":{name:"support.constant.handlebars"}},end:/(~?\}\})/dgv,endCaptures:{"1":{name:"support.constant.handlebars"}},name:"meta.function.block.start.handlebars",patterns:[{include:"#string"},{include:"#handlebars_attribute"}]},comments:{patterns:[{begin:/\{\{!/dgv,end:/\}\}/dgv,name:"comment.block.handlebars",patterns:[{match:/@[\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"keyword.annotation.handlebars"},{include:"#comments"}]},{begin:/<!--/dgv,captures:{"0":{name:"punctuation.definition.comment.html"}},end:/-{2,3}\p{space}*>/dgv,name:"comment.block.html",patterns:[{match:/--/dgv,name:"invalid.illegal.bad-comments-or-CDATA.html"}]}]},else_token:{begin:/(\{\{)(~?else)(@?\p{space}(if)\p{space}([\-a-zA-Z0-9_\.\(\p{space}\)\/]+))?/dgv,beginCaptures:{"1":{name:"support.constant.handlebars"},"2":{name:"support.constant.handlebars keyword.control"},"3":{name:"support.constant.handlebars"},"4":{name:"variable.parameter.handlebars"}},end:/(~?\}\}\}*)/dgv,endCaptures:{"1":{name:"support.constant.handlebars"}},name:"meta.function.inline.else.handlebars"},end_block:{begin:/(\{\{)(~?\/)([a-zA-Z0-9\/_\.\-]+)\p{space}*/dgv,beginCaptures:{"1":{name:"support.constant.handlebars"},"2":{name:"support.constant.handlebars keyword.control"},"3":{name:"support.constant.handlebars keyword.control"}},end:/(~?\}\})/dgv,endCaptures:{"1":{name:"support.constant.handlebars"}},name:"meta.function.block.end.handlebars",patterns:[]},entities:{patterns:[{captures:{"1":{name:"punctuation.definition.entity.html"},"3":{name:"punctuation.definition.entity.html"}},match:/(&)([a-zA-Z0-9]+|#\p{Nd}+|#x[0-9a-fA-F]+)(;)/dgv,name:"constant.character.entity.html"},{match:/&/dgv,name:"invalid.illegal.bad-ampersand.html"}]},"escaped-double-quote":{match:/\\"/dgv,name:"constant.character.escape.js"},"escaped-single-quote":{match:/\\'/dgv,name:"constant.character.escape.js"},extends:{patterns:[{begin:/(\{\{!<)\p{space}([\-a-zA-Z0-9_\.\/]+)/dgv,beginCaptures:{"1":{name:"support.function.handlebars"},"2":{name:"support.class.handlebars"}},end:/(\}\})/dgv,endCaptures:{"1":{name:"support.function.handlebars"}},name:"meta.preprocessor.handlebars"}]},handlebars_attribute:{patterns:[{include:"#handlebars_attribute_name"},{include:"#handlebars_attribute_value"}]},handlebars_attribute_name:{begin:/\b([\-a-zA-Z0-9_\.]+)\b=/dgv,captures:{"1":{name:"variable.parameter.handlebars"}},end:/(?='|"|)/dgv,name:"entity.other.attribute-name.handlebars"},handlebars_attribute_value:{begin:/([\-a-zA-Z0-9_\.\/]+)\b/dgv,captures:{"1":{name:"variable.parameter.handlebars"}},end:/('|"|)/dgv,name:"entity.other.attribute-value.handlebars",patterns:[{include:"#string"}]},html_tags:{patterns:[{begin:/(<)([a-zA-Z0-9\:\-]+)(?=[^\>]*><\/\2>)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.html"}},end:/(>(<)\/)(\2)(>)/dgv,endCaptures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"meta.scope.between-tag-pair.html"},"3":{name:"entity.name.tag.html"},"4":{name:"punctuation.definition.tag.html"}},name:"meta.tag.any.html",patterns:[{include:"#tag-stuff"}]},{begin:/(<\?)(xml)/dgv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.xml.html"}},end:/(\?>)/dgv,name:"meta.tag.preprocessor.xml.html",patterns:[{include:"#tag_generic_attribute"},{include:"#string"}]},{begin:/<!--/dgv,captures:{"0":{name:"punctuation.definition.comment.html"}},end:/--\p{space}*>/dgv,name:"comment.block.html",patterns:[{match:/--/dgv,name:"invalid.illegal.bad-comments-or-CDATA.html"}]},{begin:/<!/dgv,captures:{"0":{name:"punctuation.definition.tag.html"}},end:/>/dgv,name:"meta.tag.sgml.html",patterns:[{begin:/(DOCTYPE|doctype)/dgv,captures:{"1":{name:"entity.name.tag.doctype.html"}},end:/(?=>)/dgv,name:"meta.tag.sgml.doctype.html",patterns:[{match:/"[^"\>]*"/dgv,name:"string.quoted.double.doctype.identifiers-and-DTDs.html"}]},{begin:/\[CDATA\[/dgv,end:/\]\](?=>)/dgv,name:"constant.other.inline-data.html"},{match:/(\p{space}*)(?!--|>)\P{space}(\p{space}*)/dgv,name:"invalid.illegal.bad-comments-or-CDATA.html"}]},{begin:/(?:(?<=^|\n(?!$))\p{space}+)?(<)(style)\b(?![^\>]*\/>)/dgiv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.style.html"},"3":{name:"punctuation.definition.tag.html"}},end:/(<\/)(style)(>)(?:\p{space}*\n)?/dgiv,name:"source.css.embedded.html",patterns:[{include:"#tag-stuff"},{begin:/(>)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.html"}},end:/(?=<\/style)/dgiv,patterns:[{include:"source.css"}]}]},{begin:/(?:(?<=^|\n(?!$))\p{space}+)?(<)(script)\b(?![^\>]*\/>)/dgiv,beginCaptures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.script.html"}},end:/(?<=<\/(script|SCRIPT))(>)(?:\p{space}*\n)?/dgv,endCaptures:{"2":{name:"punctuation.definition.tag.html"}},name:"source.js.embedded.html",patterns:[{include:"#tag-stuff"},{begin:/(?<!<\/(?:script|SCRIPT))(>)/dgv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.script.html"}},end:/(<\/)(script)/dgiv,patterns:[{captures:{"1":{name:"punctuation.definition.comment.js"}},match:/(\/\/)[^\n]*?((?=<\/script)|(?=$|\n)\n?)/dgv,name:"comment.line.double-slash.js"},{begin:/\/\*/dgv,captures:{"0":{name:"punctuation.definition.comment.js"}},end:/\*\/|(?=<\/script)/dgv,name:"comment.block.js"},{include:"source.js"}]}]},{begin:/(<\/?)((?:body|head|html)\b)/dgiv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.structure.any.html"}},end:/(>)/dgv,name:"meta.tag.structure.any.html",patterns:[{include:"#tag-stuff"}]},{begin:/(<\/?)((?:address|blockquote|dd|div|header|section|footer|aside|nav|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\b)/dgiv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.block.any.html"}},end:/(>)/dgv,name:"meta.tag.block.any.html",patterns:[{include:"#tag-stuff"}]},{begin:/(<\/?)((?:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\b)/dgiv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.inline.any.html"}},end:/((?: ?\/)?>)/dgv,name:"meta.tag.inline.any.html",patterns:[{include:"#tag-stuff"}]},{begin:/(<\/?)([a-zA-Z0-9\:\-]+)/dgv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.other.html"}},end:/(>)/dgv,name:"meta.tag.other.html",patterns:[{include:"#tag-stuff"}]},{begin:/(<\/?)([a-zA-Z0-9\{\}\:\-]+)/dgv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.tokenised.html"}},end:/(>)/dgv,name:"meta.tag.tokenised.html",patterns:[{include:"#tag-stuff"}]},{include:"#entities"},{match:/<>/dgv,name:"invalid.illegal.incomplete.html"},{match:/</dgv,name:"invalid.illegal.bad-angle-bracket.html"}]},inline_script:{begin:/(?:(?<=^|\n(?!$))\p{space}+)?(<)([Ssſ][Cc][Rr][Ii][Pp][Tt])\b[^\n]*(type)=(["'](?:text\/x-handlebars-template|text\/x-handlebars|text\/template|x-tmpl-handlebars)["'])(?![^\>]*\/>)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.script.html"},"3":{name:"entity.other.attribute-name.html"},"4":{name:"string.quoted.double.html"}},end:/(?<=<\/(script|SCRIPT))(>)(?:\p{space}*\n)?/dgv,endCaptures:{"2":{name:"punctuation.definition.tag.html"}},name:"source.handlebars.embedded.html",patterns:[{include:"#tag-stuff"},{begin:/(?<!<\/(?:script|SCRIPT))(>)/dgv,captures:{"1":{name:"punctuation.definition.tag.html"},"2":{name:"entity.name.tag.script.html"}},end:/(<\/)(script)/dgiv,patterns:[{include:"#block_comments"},{include:"#comments"},{include:"#block_helper"},{include:"#end_block"},{include:"#else_token"},{include:"#partial_and_var"},{include:"#html_tags"},{include:"text.html.basic"}]}]},partial_and_var:{begin:/(\{\{~?\{*(>|!<)*)\p{space}*(@?[\-a-zA-Z0-9\$_\.\/]+)*/dgv,beginCaptures:{"1":{name:"support.constant.handlebars"},"3":{name:"variable.parameter.handlebars"}},end:/(~?\}\}\}*)/dgv,endCaptures:{"1":{name:"support.constant.handlebars"}},name:"meta.function.inline.other.handlebars",patterns:[{include:"#string"},{include:"#handlebars_attribute"}]},string:{patterns:[{include:"#string-single-quoted"},{include:"#string-double-quoted"}]},"string-double-quoted":{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.html"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.html"}},name:"string.quoted.double.handlebars",patterns:[{include:"#escaped-double-quote"},{include:"#block_comments"},{include:"#comments"},{include:"#block_helper"},{include:"#else_token"},{include:"#end_block"},{include:"#partial_and_var"}]},"string-single-quoted":{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.html"}},end:/'/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.html"}},name:"string.quoted.single.handlebars",patterns:[{include:"#escaped-single-quote"},{include:"#block_comments"},{include:"#comments"},{include:"#block_helper"},{include:"#else_token"},{include:"#end_block"},{include:"#partial_and_var"}]},"tag-stuff":{patterns:[{include:"#tag_id_attribute"},{include:"#tag_generic_attribute"},{include:"#string"},{include:"#block_comments"},{include:"#comments"},{include:"#block_helper"},{include:"#end_block"},{include:"#else_token"},{include:"#partial_and_var"}]},tag_generic_attribute:{begin:/\b([a-zA-Z0-9_\-]+)\b\p{space}*(=)/dgv,captures:{"1":{name:"entity.other.attribute-name.generic.html"},"2":{name:"punctuation.separator.key-value.html"}},end:/(?<='|"|)/dgv,name:"entity.other.attribute-name.html",patterns:[{include:"#string"}]},tag_id_attribute:{begin:/\b(id)\b\p{space}*(=)/dgv,captures:{"1":{name:"entity.other.attribute-name.id.html"},"2":{name:"punctuation.separator.key-value.html"}},end:/(?<='|"|)/dgv,name:"meta.attribute-with-value.id.html",patterns:[{include:"#string"}]},yfm:{patterns:[{begin:/(?<!\p{space})---\n(?=$|\n)/dgv,end:/(?<=^|\n(?!$))---\p{space}/dgv,name:"markup.raw.yaml.front-matter",patterns:[{include:"source.yaml"}]}]}},scopeName:"text.html.handlebars",embeddedLangs:["html","css","javascript","yaml"],aliases:["hbs"]})
|
|
7
|
+
|
|
8
|
+
export default [
|
|
9
|
+
...html,
|
|
10
|
+
...css,
|
|
11
|
+
...javascript,
|
|
12
|
+
...yaml,
|
|
13
|
+
lang
|
|
14
|
+
]
|
package/dist/haskell.mjs
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { EmulatedRegExp } from 'oniguruma-to-es'
|
|
2
|
+
|
|
3
|
+
const lang = Object.freeze({displayName:"Haskell",fileTypes:["hs","hs-boot","hsig"],name:"haskell",patterns:[{include:"#liquid_haskell"},{include:"#comment_like"},{include:"#numeric_literals"},{include:"#string_literal"},{include:"#char_literal"},{match:/(?<!@|#)-\}/dgv,name:"invalid"},{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"punctuation.paren.haskell"}},match:/(\()\p{space}*(\))/dgv,name:"constant.language.unit.haskell"},{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"keyword.operator.hash.haskell"},"3":{name:"keyword.operator.hash.haskell"},"4":{name:"punctuation.paren.haskell"}},match:/(\()(#)\p{space}*(#)(\))/dgv,name:"constant.language.unit.unboxed.haskell"},{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"punctuation.paren.haskell"}},match:/(\()\p{space}*,[\p{space}\,]*(\))/dgv,name:"support.constant.tuple.haskell"},{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"keyword.operator.hash.haskell"},"3":{name:"keyword.operator.hash.haskell"},"4":{name:"punctuation.paren.haskell"}},match:/(\()(#)\p{space}*,[\p{space}\,]*(#)(\))/dgv,name:"support.constant.tuple.unboxed.haskell"},{captures:{"1":{name:"punctuation.bracket.haskell"},"2":{name:"punctuation.bracket.haskell"}},match:/(\[)\p{space}*(\])/dgv,name:"constant.language.empty-list.haskell"},{begin:/(\b(?<!')(module)|(?<=^|\n(?!$))(signature))(\b(?!'))/dgv,beginCaptures:{"2":{name:"keyword.other.module.haskell"},"3":{name:"keyword.other.signature.haskell"}},end:/(?=\b(?<!')where\b(?!'))/dgv,name:"meta.declaration.module.haskell",patterns:[{include:"#comment_like"},{include:"#module_name"},{include:"#module_exports"},{match:/[a-z]+/dgv,name:"invalid"}]},{include:"#ffi"},{begin:/(?<=^|\n(?!$))(\p{space}*)(class)(\b(?!'))/dgv,beginCaptures:{"2":{name:"keyword.other.class.haskell"}},end:/(?=(?<!')\bwhere\b(?!'))|(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.declaration.class.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(data|newtype)(?:\p{space}+(instance))?\p{space}+((?:(?!(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(?:=|--+)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])|\b(?<!')(?:where|deriving)\b(?!')|\{-)[^\n])*)(?=\b(?<!'')where\b(?!''))/dgv,beginCaptures:{"2":{name:"keyword.other.$2.haskell"},"3":{name:"keyword.other.instance.haskell"},"4":{patterns:[{include:"#type_signature"}]}},end:/(?=(?<!')\bderiving\b(?!'))|(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.declaration.$2.generalized.haskell",patterns:[{include:"#comment_like"},{begin:/(?<!')\b(where)\p{space}*(\{)(?!-)/dgv,beginCaptures:{"1":{name:"keyword.other.where.haskell"},"2":{name:"punctuation.brace.haskell"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.brace.haskell"}},patterns:[{include:"#comment_like"},{include:"#gadt_constructor"},{match:/;/dgv,name:"punctuation.semicolon.haskell"}]},{match:/\b(?<!')(where)\b(?!')/dgv,name:"keyword.other.where.haskell"},{include:"#deriving"},{include:"#gadt_constructor"}]},{include:"#role_annotation"},{begin:/(?<=^|\n(?!$))(\p{space}*)(pattern)\p{space}+([^\n]*?)\p{space}+(::|∷)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])/dgv,beginCaptures:{"2":{name:"keyword.other.pattern.haskell"},"3":{patterns:[{include:"#comma"},{include:"#data_constructor"}]},"4":{name:"keyword.operator.double-colon.haskell"}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.declaration.pattern.type.haskell",patterns:[{include:"#type_signature"}]},{begin:/(?<=^|\n(?!$))\p{space}*(pattern)\b(?!')/dgv,captures:{"1":{name:"keyword.other.pattern.haskell"}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.declaration.pattern.haskell",patterns:[{include:"$self"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(data|newtype)(?:\p{space}+(family|instance))?\p{space}+(((?!(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(?:=|--+)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])|\b(?<!')(?:where|deriving)\b(?!')|\{-)[^\n])*)/dgv,beginCaptures:{"2":{name:"keyword.other.$2.haskell"},"3":{name:"keyword.other.$3.haskell"},"4":{patterns:[{include:"#type_signature"}]}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.declaration.$2.algebraic.haskell",patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#forall"},{include:"#adt_constructor"},{include:"#context"},{include:"#record_decl"},{include:"#type_signature"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(type)\p{space}+(family)\b(?!')(((?!(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(?:=|--+)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])|\b(?<!')where\b(?!')|\{-)[^\n])*)/dgv,beginCaptures:{"2":{name:"keyword.other.type.haskell"},"3":{name:"keyword.other.family.haskell"},"4":{patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.declaration.type.family.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(type)(?:\p{space}+(instance))?\p{space}+(((?!(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(?:=|--+|::|∷)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])|\{-)[^\n])*)/dgv,beginCaptures:{"2":{name:"keyword.other.type.haskell"},"3":{name:"keyword.other.instance.haskell"},"4":{patterns:[{include:"#type_signature"}]}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.declaration.type.haskell",patterns:[{include:"#type_signature"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(instance)(\b(?!'))/dgv,beginCaptures:{"2":{name:"keyword.other.instance.haskell"}},end:/(?=\b(?<!')(where)\b(?!'))|(?=\}|;)|(?<=^|\n(?!$))(?!(?!)\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))/dgv,name:"meta.declaration.instance.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{include:"#type_signature"}]},{begin:/(?<=^|\n(?!$))(\p{space}*)(import)(\b(?!'))/dgv,beginCaptures:{"2":{name:"keyword.other.import.haskell"}},end:/(?=\b(?<!')(where)\b(?!'))|(?=\}|;)|(?<=^|\n(?!$))(?!(?!)\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))/dgv,name:"meta.import.haskell",patterns:[{include:"#comment_like"},{include:"#where"},{captures:{"1":{name:"keyword.other.$1.haskell"}},match:/(qualified|as|hiding)/dgv},{include:"#module_name"},{include:"#module_exports"}]},{include:"#deriving"},{include:"#layout_herald"},{include:"#keyword"},{captures:{"1":{name:"keyword.other.$1.haskell"},"2":{patterns:[{include:"#comment_like"},{include:"#integer_literals"},{include:"#infix_op"}]}},match:/(?<=^|\n(?!$))\p{space}*(infix[lr]?)\p{space}+([^\n]*)/dgv,name:"meta.fixity-declaration.haskell"},{include:"#overloaded_label"},{include:"#type_application"},{include:"#reserved_symbol"},{include:"#fun_decl"},{include:"#qualifier"},{include:"#data_constructor"},{include:"#start_type_signature"},{include:"#prefix_op"},{include:"#infix_op"},{begin:/(\()(#)\p{space}/dgv,beginCaptures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"keyword.operator.hash.haskell"}},end:/(#)(\))/dgv,endCaptures:{"1":{name:"keyword.operator.hash.haskell"},"2":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"$self"}]},{begin:/(\()/dgv,beginCaptures:{"1":{name:"punctuation.paren.haskell"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"$self"}]},{include:"#quasi_quote"},{begin:/(\[)/dgv,beginCaptures:{"1":{name:"punctuation.bracket.haskell"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.bracket.haskell"}},patterns:[{include:"#comma"},{include:"$self"}]},{include:"#record"}],repository:{adt_constructor:{patterns:[{include:"#comment_like"},{begin:/(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(?:(=)|(\|))(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])/dgv,beginCaptures:{"1":{name:"keyword.operator.eq.haskell"},"2":{name:"keyword.operator.pipe.haskell"}},end:/(?:|(?<=^|\n(?!$)))\p{space}*(?:(?<!')\b((?:[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'\.])+)|('?(?<paren>\((?:[^\(\)]*|(?:\((?:[^\(\)]*|(?:\((?:[^\(\)]*|(?:\((?:[^\(\)]*|(?:\((?:[^\(\)]*|(?:))*\)))*\)))*\)))*\)))*\)))|('?(?<brac>\((?:[^\[\]]*|(?:\((?:[^\[\]]*|(?:\((?:[^\[\]]*|(?:\((?:[^\[\]]*|(?:\((?:[^\[\]]*|(?:))*\]))*\]))*\]))*\]))*\])))\p{space}*(?:(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(:[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*)|(`)([\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)(`))|(?<!')\b([\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)|(\()\p{space}*(:[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*)\p{space}*(\))/dgv,endCaptures:{"1":{patterns:[{include:"#type_signature"}]},"2":{patterns:[{include:"#type_signature"}]},"4":{patterns:[{include:"#type_signature"}]},"6":{name:"constant.other.operator.haskell"},"7":{name:"punctuation.backtick.haskell"},"8":{name:"constant.other.haskell"},"9":{name:"punctuation.backtick.haskell"},"10":{name:"constant.other.haskell"},"11":{name:"punctuation.paren.haskell"},"12":{name:"constant.other.operator.haskell"},"13":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#record_decl"},{include:"#forall"},{include:"#context"}]}]},block_comment:{applyEndPatternLast:1,begin:/\{-/dgv,captures:{"0":{name:"punctuation.definition.comment.haskell"}},end:/-\}/dgv,name:"comment.block.haskell",patterns:[{include:"#block_comment"}]},char_literal:{captures:{"1":{name:"punctuation.definition.string.begin.haskell"},"2":{name:"constant.character.escape.haskell"},"3":{name:"constant.character.escape.octal.haskell"},"4":{name:"constant.character.escape.hexadecimal.haskell"},"5":{name:"constant.character.escape.control.haskell"},"6":{name:"punctuation.definition.string.end.haskell"}},match:/(?<![\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'])(')(?:[ -\[\]-\~]|(\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\\\&]))|(\\o[0-7]+)|(\\x[0-9A-Fa-f]+)|(\\\^[A-Z\@\[\]\\\^_]))(')/dgv,name:"string.quoted.single.haskell"},comma:{match:/,/dgv,name:"punctuation.separator.comma.haskell"},comment_like:{patterns:[{include:"#cpp"},{include:"#pragma"},{include:"#comments"}]},comments:{patterns:[{begin:/(?<=^|\n(?!$))(\p{space}*)(--\p{space}[\|\$])/dgv,beginCaptures:{"2":{name:"punctuation.whitespace.comment.leading.haskell"}},end:/(?=(?<=^|\n(?!$))(?!\1--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])))()/dgv,name:"comment.block.documentation.haskell"},{begin:/((?<=^|\n(?!$))[ \t]+)?(--\p{space}[\^\*])/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.haskell"}},end:/\n/dgv,name:"comment.line.documentation.haskell"},{applyEndPatternLast:1,begin:/\{-\p{space}?[\|\$\*\^]/dgv,captures:{"0":{name:"punctuation.definition.comment.haskell"}},end:/-\}/dgv,name:"comment.block.documentation.haskell",patterns:[{include:"#block_comment"}]},{begin:/((?<=^|\n(?!$))[ \t]+)?(?=--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]))/dgv,beginCaptures:{"1":{name:"punctuation.whitespace.comment.leading.haskell"}},comment:"Operators may begin with '--' as long as they are not entirely composed of '-' characters. This means comments can't be immediately followed by an allowable operator character.",end:new EmulatedRegExp("","dgv",{"strategy":"not_search_start"}),patterns:[{begin:/--/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.haskell"}},end:/\n/dgv,name:"comment.line.double-dash.haskell"}]},{include:"#block_comment"}]},context:{captures:{"1":{patterns:[{include:"#comment_like"},{include:"#type_signature"}]},"2":{name:"keyword.operator.big-arrow.haskell"}},match:/([^\n]*)(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(=>|⇒)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])/dgv},cpp:{captures:{"1":{name:"punctuation.definition.preprocessor.c"}},comment:"In addition to Haskell's \"native\" syntax, GHC permits the C preprocessor to be run on a source file.",match:/(?<=^|\n(?!$))(#)[^\n]*(?=$|\n)/dgv,name:"meta.preprocessor.c"},data_constructor:{match:/\b(?<!')[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*(?![\.'\p{L}\p{M}\p{N}\p{Pc}])/dgv,name:"constant.other.haskell"},deriving:{patterns:[{begin:/(?<=^|\n(?!$))(\p{space}*)(deriving)\p{space}+(?:(via|stock|newtype|anyclass)\p{space}+)?/dgv,beginCaptures:{"2":{name:"keyword.other.deriving.haskell"},"3":{name:"keyword.other.deriving.strategy.$3.haskell"}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.deriving.haskell",patterns:[{include:"#comment_like"},{match:/(?<!')\b(instance)\b(?!')/dgv,name:"keyword.other.instance.haskell"},{captures:{"1":{name:"keyword.other.deriving.strategy.$1.haskell"}},match:/(?<!')\b(via|stock|newtype|anyclass)\b(?!')/dgv},{include:"#type_signature"}]},{begin:/(deriving)(?:\p{space}+(stock|newtype|anyclass))?\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.other.deriving.haskell"},"2":{name:"keyword.other.deriving.strategy.$2.haskell"},"3":{name:"punctuation.paren.haskell"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.paren.haskell"}},name:"meta.deriving.haskell",patterns:[{include:"#type_signature"}]},{captures:{"1":{name:"keyword.other.deriving.haskell"},"2":{name:"keyword.other.deriving.strategy.$2.haskell"},"3":{patterns:[{include:"#type_signature"}]},"5":{name:"keyword.other.deriving.strategy.via.haskell"},"6":{patterns:[{include:"#type_signature"}]}},match:/(deriving)(?:\p{space}+(stock|newtype|anyclass))?\p{space}+([\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)(\p{space}+(via)\p{space}+([^\n]*)(?=$|\n))?/dgv,name:"meta.deriving.haskell"},{match:/(?<!')\b(via)\b(?!')/dgv,name:"keyword.other.deriving.strategy.via.haskell"}]},double_colon:{captures:{"1":{name:"keyword.operator.double-colon.haskell"}},match:/\p{space}*(::|∷)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])\p{space}*/dgv},export_constructs:{patterns:[{include:"#comment_like"},{begin:/\b(?<!')(pattern)\b(?!')/dgv,beginCaptures:{"1":{name:"keyword.other.pattern.haskell"}},end:/([\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)|(\()\p{space}*(:[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+)\p{space}*(\))/dgv,endCaptures:{"1":{name:"constant.other.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"constant.other.operator.haskell"},"4":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"}]},{begin:/\b(?<!')(type)\b(?!')/dgv,beginCaptures:{"1":{name:"keyword.other.type.haskell"}},end:/([\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)|(\()\p{space}*([[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+)\p{space}*(\))/dgv,endCaptures:{"1":{name:"storage.type.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"storage.type.operator.haskell"},"4":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"}]},{match:/(?<!')\b[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*/dgv,name:"entity.name.function.haskell"},{match:/(?<!')\b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*/dgv,name:"storage.type.haskell"},{include:"#record_wildcard"},{include:"#reserved_symbol"},{include:"#prefix_op"}]},ffi:{begin:/(?<=^|\n(?!$))(\p{space}*)(foreign)\p{space}+(import|export)\p{space}+/dgv,beginCaptures:{"2":{name:"keyword.other.foreign.haskell"},"3":{name:"keyword.other.$3.haskell"}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.$3.foreign.haskell",patterns:[{include:"#comment_like"},{captures:{"1":{name:"keyword.other.calling-convention.$1.haskell"}},match:/\b(?<!')(ccall|cplusplus|dotnet|jvm|stdcall|prim|capi)\p{space}+/dgv},{begin:/(?=")|(?=\b(?<!')([\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)\b(?!'))/dgv,end:/(?=(::|∷)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]))/dgv,patterns:[{include:"#comment_like"},{captures:{"1":{name:"keyword.other.safety.$1.haskell"},"2":{name:"entity.name.foreign.haskell",patterns:[{include:"#string_literal"}]},"3":{name:"entity.name.function.haskell"},"4":{name:"entity.name.function.infix.haskell"}},match:/\b(?<!')(safe|unsafe|interruptible)\b(?!')\p{space}*("(?:\\"|[^"])*")?\p{space}*(?:\b(?<!'')([\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)\b(?!')|\(\p{space}*(?!--+\))([[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+)\p{space}*\))/dgv},{captures:{"1":{name:"keyword.other.safety.$1.haskell"},"2":{name:"entity.name.foreign.haskell",patterns:[{include:"#string_literal"}]}},match:/\b(?<!')(safe|unsafe|interruptible)\b(?!')\p{space}*("(?:\\"|[^"])*")?\p{space}*(?=$|\n)/dgv},{captures:{"0":{name:"entity.name.foreign.haskell",patterns:[{include:"#string_literal"}]}},match:/"(?:\\"|[^"])*"/dgv},{captures:{"1":{name:"entity.name.function.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"entity.name.function.infix.haskell"},"4":{name:"punctuation.paren.haskell"}},match:/\b(?<!'')([\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)\b(?!')|(\()\p{space}*(?!--+\))([[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+)\p{space}*(\))/dgv}]},{include:"#double_colon"},{include:"#type_signature"}]},float_literals:{captures:{"1":{name:"constant.numeric.floating.decimal.haskell"},"2":{name:"constant.numeric.floating.hexadecimal.haskell"}},comment:"Floats are decimal or hexadecimal",match:/\b(?<!')(?:(\p{Nd}[_0-9]*\.\p{Nd}[_0-9]*(?:[eE][\-\+]?\p{Nd}[_0-9]*)?|\p{Nd}[_0-9]*[eE][\-\+]?\p{Nd}[_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*\.[0-9a-fA-F][_0-9a-fA-F]*(?:[pP][\-\+]?\p{Nd}[_0-9]*)?|0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*[pP][\-\+]?\p{Nd}[_0-9]*))\b(?!')/dgv},forall:{begin:/\b(?<!')(forall|∀)\b(?!')/dgv,beginCaptures:{"1":{name:"keyword.other.forall.haskell"}},end:/(\.)|(->|→)/dgv,endCaptures:{"1":{name:"keyword.operator.period.haskell"},"2":{name:"keyword.operator.arrow.haskell"}},patterns:[{include:"#comment_like"},{include:"#type_variable"},{include:"#type_signature"}]},fun_decl:{begin:/(?<=^|\n(?!$))(\p{space}*)(?<fn>(?:[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*#*|\(\p{space}*(?!--+\))[[\p{S}\p{P}]&&[^\(\)\,\:\;\[\]\`\{\}_"']][[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*\p{space}*\))(?:\p{space}*,\p{space}*(?:(?:[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*#*|\(\p{space}*(?!--+\))[[\p{S}\p{P}]&&[^\(\)\,\:\;\[\]\`\{\}_"']][[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*\p{space}*\))(?:\p{space}*,\p{space}*(?:(?:[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*#*|\(\p{space}*(?!--+\))[[\p{S}\p{P}]&&[^\(\)\,\:\;\[\]\`\{\}_"']][[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*\p{space}*\))(?:\p{space}*,\p{space}*(?:(?:[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*#*|\(\p{space}*(?!--+\))[[\p{S}\p{P}]&&[^\(\)\,\:\;\[\]\`\{\}_"']][[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*\p{space}*\))(?:\p{space}*,\p{space}*(?:(?:[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*#*|\(\p{space}*(?!--+\))[[\p{S}\p{P}]&&[^\(\)\,\:\;\[\]\`\{\}_"']][[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*\p{space}*\))(?:\p{space}*,\p{space}*(?:))?))?))?))?))?)\p{space}*(?<![[\p{S}\p{P}]&&[^\)\,\;\]\`\}_"']])(::|∷)(?![[\p{S}\p{P}]&&[^\(\,\;\[\`\{_"']])/dgv,beginCaptures:{"2":{name:"entity.name.function.haskell",patterns:[{include:"#reserved_symbol"},{include:"#prefix_op"}]},"3":{name:"keyword.operator.double-colon.haskell"}},end:/(?=(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])((<-|←)|(=)|(-<|↢)|(-<<|⤛))([\(\)\,\;\[\]\`\{\}_"']|[^\p{S}\p{P}]))|(?=\}|;)|(?<=^|\n(?!$))(?!(?!)\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))/dgv,name:"meta.function.type-declaration.haskell",patterns:[{include:"#type_signature"}]},gadt_constructor:{patterns:[{begin:/(?<=^|\n(?!$))(\p{space}*)(?:(\b(?<!')[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)|(\()\p{space}*(:[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*)\p{space}*(\)))/dgv,beginCaptures:{"2":{name:"constant.other.haskell"},"3":{name:"punctuation.paren.haskell"},"4":{name:"constant.other.operator.haskell"},"5":{name:"punctuation.paren.haskell"}},end:/(?=\b(?<!'')deriving\b(?!'))|(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#double_colon"},{include:"#record_decl"},{include:"#type_signature"}]},{begin:/(\b(?<!')[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}]*)|(\()\p{space}*(:[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]*)\p{space}*(\))/dgv,beginCaptures:{"1":{name:"constant.other.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"constant.other.operator.haskell"},"4":{name:"punctuation.paren.haskell"}},end:/(?=$|\n)/dgv,patterns:[{include:"#comment_like"},{include:"#deriving"},{include:"#double_colon"},{include:"#record_decl"},{include:"#type_signature"}]}]},infix_op:{patterns:[{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"entity.name.namespace.haskell"},"3":{name:"keyword.operator.infix.haskell"}},comment:"In case this regex seems overly general, note that Haskell permits the definition of new operators which can be nearly any string of punctuation characters, such as $%^&*.\n",match:/((?:(?<!'')('')?[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'']*\.)*)(#+|[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+(?<!#))/dgv},{captures:{"1":{name:"punctuation.backtick.haskell"},"2":{name:"entity.name.namespace.haskell"},"3":{patterns:[{include:"#data_constructor"}]},"4":{name:"punctuation.backtick.haskell"}},comment:"In case this regex seems unusual for an infix operator, note that Haskell\nallows any ordinary function application (elem 4 [1..10]) to be rewritten\nas an infix expression (4 `elem` [1..10]).\n",match:/(`)((?:[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'']*\.)*)([\p{Ll}\p{Lu}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'']*)(`)/dgv,name:"keyword.operator.function.infix.haskell"}]},inline_phase:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.bracket.haskell"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.bracket.haskell"}},name:"meta.inlining-phase.haskell",patterns:[{match:/~/dgv,name:"punctuation.tilde.haskell"},{include:"#integer_literals"},{match:/[\p{L}\p{M}\p{N}\p{Pc}]*/dgv,name:"invalid"}]},integer_literals:{captures:{"1":{name:"constant.numeric.integral.decimal.haskell"},"2":{name:"constant.numeric.integral.hexadecimal.haskell"},"3":{name:"constant.numeric.integral.octal.haskell"},"4":{name:"constant.numeric.integral.binary.haskell"}},match:/\b(?<!')(?:(\p{Nd}[_0-9]*)|(0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*)|(0[oO]_*[0-7][_0-7]*)|(0[bB]_*[01][_01]*))\b(?!')/dgv},keyword:{captures:{"1":{name:"keyword.other.$1.haskell"},"2":{name:"keyword.control.$2.haskell"}},match:/\b(?<!')(?:(where|let|in|default)|(m?do|if|then|else|case|of|proc|rec))\b(?!')/dgv},layout_herald:{begin:/(?<!')\b(?:(where|let|m?do)|(of))\p{space}*(\{)(?!-)/dgv,beginCaptures:{"1":{name:"keyword.other.$1.haskell"},"2":{name:"keyword.control.of.haskell"},"3":{name:"punctuation.brace.haskell"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.brace.haskell"}},patterns:[{include:"$self"},{match:/;/dgv,name:"punctuation.semicolon.haskell"}]},liquid_haskell:{begin:/\{-@/dgv,end:/@-\}/dgv,name:"block.liquidhaskell.haskell",patterns:[{include:"$self"}]},module_exports:{applyEndPatternLast:1,begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.paren.haskell"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.paren.haskell"}},name:"meta.declaration.exports.haskell",patterns:[{include:"#comment_like"},{captures:{"1":{name:"keyword.other.module.haskell"}},match:/\b(?<!')(module)\b(?!')/dgv},{include:"#comma"},{include:"#export_constructs"},{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.paren.haskell"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comment_like"},{include:"#record_wildcard"},{include:"#export_constructs"},{include:"#comma"}]}]},module_name:{match:new EmulatedRegExp("(?<conid>[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(\\.(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*($E$\\.(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*($E$\\.(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*($E$\\.(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*($E$\\.(?:))?))?))?))?))?)","dgv",{"useEmulationGroups":true}),name:"entity.name.namespace.haskell"},numeric_literals:{patterns:[{include:"#float_literals"},{include:"#integer_literals"}]},overloaded_label:{patterns:[{captures:{"1":{name:"keyword.operator.prefix.hash.haskell"},"2":{patterns:[{include:"#string_literal"}]}},match:/(?<![[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\p{S}\p{P}]&&[^\(\,\;\[\`\{]])(#)(?:("(?:\\"|[^"])*")|[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'\.]+)/dgv,name:"entity.name.label.haskell"}]},pragma:{begin:/\{-#/dgv,end:/#-\}/dgv,name:"meta.preprocessor.haskell",patterns:[{begin:/\b(?<!')(LANGUAGE)\b(?!')/dgiv,beginCaptures:{"1":{name:"keyword.other.preprocessor.pragma.haskell"}},end:/(?=#-\})/dgv,patterns:[{match:/(?:No)?(?:AutoDeriveTypeable|DatatypeContexts|DoRec|IncoherentInstances|MonadFailDesugaring|MonoPatBinds|NullaryTypeClasses|OverlappingInstances|PatternSignatures|RecordPuns|RelaxedPolyRec)/dgv,name:"invalid.deprecated"},{captures:{"1":{name:"keyword.other.preprocessor.extension.haskell"}},match:/((?:No)?(?:AllowAmbiguousTypes|AlternativeLayoutRule|AlternativeLayoutRuleTransitional|Arrows|BangPatterns|BinaryLiterals|CApiFFI|CPP|CUSKs|ConstrainedClassMethods|ConstraintKinds|DataKinds|DefaultSignatures|DeriveAnyClass|DeriveDataTypeable|DeriveFoldable|DeriveFunctor|DeriveGeneric|DeriveLift|DeriveTraversable|DerivingStrategies|DerivingVia|DisambiguateRecordFields|DoAndIfThenElse|BlockArguments|DuplicateRecordFields|EmptyCase|EmptyDataDecls|EmptyDataDeriving|ExistentialQuantification|ExplicitForAll|ExplicitNamespaces|ExtendedDefaultRules|FlexibleContexts|FlexibleInstances|ForeignFunctionInterface|FunctionalDependencies|GADTSyntax|GADTs|GHCForeignImportPrim|Generali(?:s|z)edNewtypeDeriving|ImplicitParams|ImplicitPrelude|ImportQualifiedPost|ImpredicativeTypes|TypeFamilyDependencies|InstanceSigs|ApplicativeDo|InterruptibleFFI|JavaScriptFFI|KindSignatures|LambdaCase|LiberalTypeSynonyms|MagicHash|MonadComprehensions|MonoLocalBinds|MonomorphismRestriction|MultiParamTypeClasses|MultiWayIf|NumericUnderscores|NPlusKPatterns|NamedFieldPuns|NamedWildCards|NegativeLiterals|HexFloatLiterals|NondecreasingIndentation|NumDecimals|OverloadedLabels|OverloadedLists|OverloadedStrings|PackageImports|ParallelArrays|ParallelListComp|PartialTypeSignatures|PatternGuards|PatternSynonyms|PolyKinds|PolymorphicComponents|QuantifiedConstraints|PostfixOperators|QuasiQuotes|Rank2Types|RankNTypes|RebindableSyntax|RecordWildCards|RecursiveDo|RelaxedLayout|RoleAnnotations|ScopedTypeVariables|StandaloneDeriving|StarIsType|StaticPointers|Strict|StrictData|TemplateHaskell|TemplateHaskellQuotes|StandaloneKindSignatures|TraditionalRecordSyntax|TransformListComp|TupleSections|TypeApplications|TypeInType|TypeFamilies|TypeOperators|TypeSynonymInstances|UnboxedTuples|UnboxedSums|UndecidableInstances|UndecidableSuperClasses|UnicodeSyntax|UnliftedFFITypes|UnliftedNewtypes|ViewPatterns))/dgv},{include:"#comma"}]},{begin:/\b(?<!')(SPECIALI(?:S|Z)E)(?:\p{space}*(\[[^\[\]]*\])?\p{space}*|\p{space}+)(instance)\b(?!')/dgiv,beginCaptures:{"1":{name:"keyword.other.preprocessor.pragma.haskell"},"2":{patterns:[{include:"#inline_phase"}]},"3":{name:"keyword.other.instance.haskell"}},end:/(?=#-\})/dgv,patterns:[{include:"#type_signature"}]},{begin:/\b(?<!')(SPECIALI(?:S|Z)E)\b(?!')(?:\p{space}+(INLINE)\b(?!'))?\p{space}*(\[[^\[\]]*\])?\p{space}*/dgiv,beginCaptures:{"1":{name:"keyword.other.preprocessor.pragma.haskell"},"2":{name:"keyword.other.preprocessor.pragma.haskell"},"3":{patterns:[{include:"#inline_phase"}]}},end:/(?=#-\})/dgv,patterns:[{include:"$self"}]},{match:/\b(?<!')(LANGUAGE|OPTIONS_GHC|INCLUDE|MINIMAL|UNPACK|OVERLAPS|INCOHERENT|NOUNPACK|SOURCE|OVERLAPPING|OVERLAPPABLE|INLINE|NOINLINE|INLINE?ABLE|CONLIKE|LINE|COLUMN|RULES|COMPLETE)\b(?!')/dgiv,name:"keyword.other.preprocessor.haskell"},{begin:/\b(DEPRECATED|WARNING)\b/dgiv,beginCaptures:{"1":{name:"keyword.other.preprocessor.pragma.haskell"}},end:/(?=#-\})/dgv,patterns:[{include:"#string_literal"}]}]},prefix_op:{patterns:[{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"entity.name.function.infix.haskell"},"3":{name:"punctuation.paren.haskell"}},comment:"An operator cannot be composed entirely of '-' characters; instead, it should be matched as a comment.\n",match:/(\()\p{space}*(?!(?:--+|\.\.)\))(#+|[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+(?<!#))\p{space}*(\))/dgv}]},qualifier:{match:/\b(?<!')[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*\./dgv,name:"entity.name.namespace.haskell"},quasi_quote:{patterns:[{begin:/(\[)(e|d|p)?(\|\|?)/dgv,beginCaptures:{"1":{name:"keyword.operator.quasi-quotation.begin.haskell"},"2":{name:"entity.name.quasi-quoter.haskell"},"3":{name:"keyword.operator.quasi-quotation.begin.haskell"}},end:/\3\]()()()/dgv,endCaptures:{"0":{name:"keyword.operator.quasi-quotation.end.haskell"}},name:"meta.quasi-quotation.haskell",patterns:[{include:"$self"}]},{begin:/(\[)(t)(\|\|?)/dgv,beginCaptures:{"1":{name:"keyword.operator.quasi-quotation.begin.haskell"},"2":{name:"entity.name.quasi-quoter.haskell"},"3":{name:"keyword.operator.quasi-quotation.begin.haskell"}},end:/\3\]()()()/dgv,endCaptures:{"0":{name:"keyword.operator.quasi-quotation.end.haskell"}},name:"meta.quasi-quotation.haskell",patterns:[{include:"#type_signature"}]},{begin:/(\[)(?:(\$\$)|(\$))?((?:[^\p{space}\p{S}\p{P}]|[\.'_])*)(\|\|?)/dgv,beginCaptures:{"1":{name:"keyword.operator.quasi-quotation.begin.haskell"},"2":{name:"keyword.operator.prefix.double-dollar.haskell"},"3":{name:"keyword.operator.prefix.dollar.haskell"},"4":{name:"entity.name.quasi-quoter.haskell",patterns:[{include:"#qualifier"}]},"5":{name:"keyword.operator.quasi-quotation.begin.haskell"}},end:/\5\]()()()()()/dgv,endCaptures:{"0":{name:"keyword.operator.quasi-quotation.end.haskell"}},name:"meta.quasi-quotation.haskell"}]},record:{begin:/(\{)(?!-)/dgv,beginCaptures:{"1":{name:"punctuation.brace.haskell"}},end:/(?<!-)(\})/dgv,endCaptures:{"1":{name:"punctuation.brace.haskell"}},name:"meta.record.haskell",patterns:[{include:"#comment_like"},{include:"#record_field"}]},record_decl:{begin:/(\{)(?!-)/dgv,beginCaptures:{"1":{name:"punctuation.brace.haskell"}},end:/(?<!-)(\})/dgv,endCaptures:{"1":{name:"punctuation.brace.haskell"}},name:"meta.record.definition.haskell",patterns:[{include:"#comment_like"},{include:"#record_decl_field"}]},record_decl_field:{begin:/(?:([\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)|(\()\p{space}*([[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+)\p{space}*(\)))/dgv,beginCaptures:{"1":{name:"variable.other.member.definition.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"variable.other.member.definition.haskell"},"4":{name:"punctuation.paren.haskell"}},end:/(,)|(?=\})/dgv,endCaptures:{"1":{name:"punctuation.comma.haskell"}},patterns:[{include:"#comment_like"},{include:"#comma"},{include:"#double_colon"},{include:"#type_signature"},{include:"#record_decl_field"}]},record_field:{patterns:[{begin:/(?:([\p{Ll}\p{Lu}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\.']*)|(\()\p{space}*([[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+)\p{space}*(\)))/dgv,beginCaptures:{"1":{name:"variable.other.member.haskell",patterns:[{include:"#qualifier"}]},"2":{name:"punctuation.paren.haskell"},"3":{name:"variable.other.member.haskell"},"4":{name:"punctuation.paren.haskell"}},end:/(,)|(?=\})/dgv,endCaptures:{"1":{name:"punctuation.comma.haskell"}},patterns:[{include:"#comment_like"},{include:"#comma"},{include:"$self"}]},{include:"#record_wildcard"}]},record_wildcard:{captures:{"1":{name:"variable.other.member.wildcard.haskell"}},match:/(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(\.\.)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])/dgv},reserved_symbol:{patterns:[{captures:{"1":{name:"keyword.operator.double-dot.haskell"},"2":{name:"keyword.operator.colon.haskell"},"3":{name:"keyword.operator.eq.haskell"},"4":{name:"keyword.operator.lambda.haskell"},"5":{name:"keyword.operator.pipe.haskell"},"6":{name:"keyword.operator.arrow.left.haskell"},"7":{name:"keyword.operator.arrow.haskell"},"8":{name:"keyword.operator.arrow.left.tail.haskell"},"9":{name:"keyword.operator.arrow.left.tail.double.haskell"},"10":{name:"keyword.operator.arrow.tail.haskell"},"11":{name:"keyword.operator.arrow.tail.double.haskell"},"12":{name:"keyword.other.forall.haskell"}},match:/(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"'']])(?:(\.\.)|(:)|(=)|(\\)|(\|)|(<-|←)|(->|→)|(-<|↢)|(-<<|⤛)|(>-|⤚)|(>>-|⤜)|(∀))(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"'']])/dgv},{captures:{"1":{name:"keyword.operator.postfix.hash.haskell"}},match:/(?<=[[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\p{S}\p{P}]&&[^\#\,\;\[\`\{]])(#+)(?![[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\p{S}\p{P}]&&[^\)\,\;\]\`\}]])/dgv},{captures:{"1":{name:"keyword.operator.infix.tight.at.haskell"}},match:/(?<=[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\)\}\]])(@)(?=[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\(\[\{])/dgv},{captures:{"1":{name:"keyword.operator.prefix.tilde.haskell"},"2":{name:"keyword.operator.prefix.bang.haskell"},"3":{name:"keyword.operator.prefix.minus.haskell"},"4":{name:"keyword.operator.prefix.dollar.haskell"},"5":{name:"keyword.operator.prefix.double-dollar.haskell"}},match:/(?<![[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\p{S}\p{P}]&&[^\(\,\;\[\`\{]])(?:(~)|(!)|(-)|(\$)|(\$\$))(?=[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}\(\{\[])/dgv}]},role_annotation:{patterns:[{begin:/(?<=^|\n(?!$))(\p{space}*)(type)\p{space}+(role)\b(?!')/dgv,beginCaptures:{"2":{name:"keyword.other.type.haskell"},"3":{name:"keyword.other.role.haskell"}},end:/(?=\}|;)|(?<=^|\n(?!$))(?!\1\p{space}+\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n)))()/dgv,name:"meta.role-annotation.haskell",patterns:[{include:"#comment_like"},{include:"#type_constructor"},{captures:{"1":{name:"keyword.other.role.$1.haskell"}},match:/\b(?<!')(nominal|representational|phantom)\b(?!')/dgv}]}]},start_type_signature:{patterns:[{begin:/(?<=^|\n(?!$))(\p{space}*)(::|∷)(?![[\p{S}\p{P}]&&[^\(\,\;\[\`\{_"']])\p{space}*/dgv,beginCaptures:{"2":{name:"keyword.operator.double-colon.haskell"}},end:/(?=#?\)|\]|,|(?<!')\b(in|then|else|of)\b(?!')|(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(?:(\\|λ)|(<-|←)|(=)|(-<|↢)|(-<<|⤛))([\(\)\,\;\[\]\`\{\}_"']|[^\p{S}\p{P}])|(#|@)-\}|(?=\}|;)|(?<=^|\n(?!$))(?!(?!)\p{space}*\P{space}|\p{space}*(?:(?=$|\n)|\{-[^\@]|--+(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\{\}\`_"']])[^\n]*(?=$|\n))))/dgv,name:"meta.type-declaration.haskell",patterns:[{include:"#type_signature"}]},{begin:/(?<![[\p{S}\p{P}]&&[^\(\,\;\[\`\{_"']])(::|∷)(?![[\p{S}\p{P}]&&[^\(\,\;\[\`\{_"']])/dgv,beginCaptures:{"1":{name:"keyword.operator.double-colon.haskell"}},end:/(?=#?\)|\]|,|\b(?<!')(in|then|else|of)\b(?!')|(#|@)-\}|(?<![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])(?:(\\|λ)|(<-|←)|(=)|(-<|↢)|(-<<|⤛))([\(\)\,\;\[\]\`\{\}_"']|[^\p{S}\p{P}])|(?=\}|;)|(?=$|\n))/dgv,patterns:[{include:"#type_signature"}]}]},string_literal:{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.haskell"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.haskell"}},name:"string.quoted.double.haskell",patterns:[{match:/\\(NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE|DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS|US|SP|DEL|[abfnrtv\\"'\&])/dgv,name:"constant.character.escape.haskell"},{match:/\\o[0-7]+|\\x[0-9A-Fa-f]+|\\\p{Nd}+/dgv,name:"constant.character.escape.octal.haskell"},{match:/\\\^[A-Z\@\[\]\\\^_]/dgv,name:"constant.character.escape.control.haskell"},{begin:/\\\p{space}/dgv,beginCaptures:{"0":{name:"constant.character.escape.begin.haskell"}},end:/\\/dgv,endCaptures:{"0":{name:"constant.character.escape.end.haskell"}},patterns:[{match:/\P{space}+/dgv,name:"invalid.illegal.character-not-allowed-here.haskell"}]}]},type_application:{patterns:[{begin:/(?<=[\p{space}\,\;\[\]\{\}"])(@)(')?(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.prefix.at.haskell"},"2":{name:"keyword.operator.promotion.haskell"},"3":{name:"punctuation.paren.haskell"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.paren.haskell"}},name:"meta.type-application.haskell",patterns:[{include:"#type_signature"}]},{begin:/(?<=[\p{space}\,\;\[\]\{\}"])(@)(')?(\[)/dgv,beginCaptures:{"1":{name:"keyword.operator.prefix.at.haskell"},"2":{name:"keyword.operator.promotion.haskell"},"3":{name:"punctuation.bracket.haskell"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.bracket.haskell"}},name:"meta.type-application.haskell",patterns:[{include:"#type_signature"}]},{begin:/(?<=[\p{space}\,\;\[\]\{\}"])(@)(?=")/dgv,beginCaptures:{"1":{name:"keyword.operator.prefix.at.haskell"}},end:/(?<=")/dgv,name:"meta.type-application.haskell",patterns:[{include:"#string_literal"}]},{begin:/(?<=[\p{space}\,\;\[\]\{\}"])(@)(?=[\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'])/dgv,beginCaptures:{"1":{name:"keyword.operator.prefix.at.haskell"}},end:/(?![\p{Ll}_\p{Lu}\p{Lt}\p{Nd}'])/dgv,name:"meta.type-application.haskell",patterns:[{include:"#type_signature"}]}]},type_constructor:{patterns:[{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"entity.name.namespace.haskell"},"3":{name:"storage.type.haskell"}},match:/(')?((?:\b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*\.)*)(\b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)/dgv},{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"entity.name.namespace.haskell"},"4":{name:"storage.type.operator.haskell"},"5":{name:"punctuation.paren.haskell"}},match:/(')?(\()\p{space}*((?:[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*\.)*)([[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+)\p{space}*(\))/dgv}]},type_operator:{patterns:[{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"entity.name.namespace.haskell"},"3":{name:"storage.type.operator.infix.haskell"}},match:/(?:(?<!')('))?((?:\b[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*\.)*)(?![\#\@]?-\})(#+|[[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']]+(?<!#))/dgv},{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"punctuation.backtick.haskell"},"3":{name:"entity.name.namespace.haskell"},"4":{name:"storage.type.infix.haskell"},"5":{name:"punctuation.backtick.haskell"}},match:/(')?(`)((?:[\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*\.)*)([\p{Lu}\p{Lt}][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*)(`)/dgv}]},type_signature:{patterns:[{include:"#comment_like"},{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"punctuation.paren.haskell"}},match:/(')?(\()\p{space}*(\))/dgv,name:"support.constant.unit.haskell"},{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"keyword.operator.hash.haskell"},"3":{name:"keyword.operator.hash.haskell"},"4":{name:"punctuation.paren.haskell"}},match:/(\()(#)\p{space}*(#)(\))/dgv,name:"support.constant.unit.unboxed.haskell"},{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"punctuation.paren.haskell"},"3":{name:"punctuation.paren.haskell"}},match:/(')?(\()\p{space}*,[\p{space}\,]*(\))/dgv,name:"support.constant.tuple.haskell"},{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"keyword.operator.hash.haskell"},"3":{name:"keyword.operator.hash.haskell"},"4":{name:"punctuation.paren.haskell"}},match:/(\()(#)\p{space}*(#)(\))/dgv,name:"support.constant.unit.unboxed.haskell"},{captures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"keyword.operator.hash.haskell"},"3":{name:"keyword.operator.hash.haskell"},"4":{name:"punctuation.paren.haskell"}},match:/(\()(#)\p{space}*,[\p{space}\,]*(#)(\))/dgv,name:"support.constant.tuple.unboxed.haskell"},{captures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"punctuation.bracket.haskell"},"3":{name:"punctuation.bracket.haskell"}},match:/(')?(\[)\p{space}*(\])/dgv,name:"support.constant.empty-list.haskell"},{include:"#integer_literals"},{match:/(::|∷)(?![[\p{S}\p{P}]&&[^\(\)\,\;\[\]\`\{\}_"']])/dgv,name:"keyword.operator.double-colon.haskell"},{include:"#forall"},{match:/=>|⇒/dgv,name:"keyword.operator.big-arrow.haskell"},{include:"#string_literal"},{match:/'[^']'/dgv,name:"invalid"},{include:"#type_application"},{include:"#reserved_symbol"},{include:"#type_operator"},{include:"#type_constructor"},{begin:/(\()(#)/dgv,beginCaptures:{"1":{name:"punctuation.paren.haskell"},"2":{name:"keyword.operator.hash.haskell"}},end:/(#)(\))/dgv,endCaptures:{"1":{name:"keyword.operator.hash.haskell"},"2":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"#type_signature"}]},{begin:/(')?(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"punctuation.paren.haskell"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.paren.haskell"}},patterns:[{include:"#comma"},{include:"#type_signature"}]},{begin:/(')?(\[)/dgv,beginCaptures:{"1":{name:"keyword.operator.promotion.haskell"},"2":{name:"punctuation.bracket.haskell"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.bracket.haskell"}},patterns:[{include:"#comma"},{include:"#type_signature"}]},{include:"#type_variable"}]},type_variable:{match:/\b(?<!')(?!(?:forall|deriving)\b(?!'))[\p{Ll}_][\p{Ll}_\p{Lu}\p{Lt}\p{Nd}']*/dgv,name:"variable.other.generic-type.haskell"},where:{patterns:[{begin:/(?<!')\b(where)\p{space}*(\{)(?!-)/dgv,beginCaptures:{"1":{name:"keyword.other.where.haskell"},"2":{name:"punctuation.brace.haskell"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.brace.haskell"}},patterns:[{include:"$self"},{match:/;/dgv,name:"punctuation.semicolon.haskell"}]},{match:/\b(?<!')(where)\b(?!')/dgv,name:"keyword.other.where.haskell"}]}},scopeName:"source.haskell",embeddedLangs:undefined,aliases:["hs"]})
|
|
4
|
+
|
|
5
|
+
export default [
|
|
6
|
+
lang
|
|
7
|
+
]
|
package/dist/haxe.d.mts
ADDED
package/dist/haxe.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const lang = Object.freeze({displayName:"Haxe",fileTypes:["hx","dump"],name:"haxe",patterns:[{include:"#all"}],repository:{abstract:{begin:/(?=abstract\p{space}+[A-Z])/dgv,end:/(?<=\})|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},name:"meta.abstract.hx",patterns:[{include:"#abstract-name"},{include:"#abstract-name-post"},{include:"#abstract-block"}]},"abstract-block":{begin:/(?<=\{)/dgv,end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.hx"}},name:"meta.block.hx",patterns:[{include:"#method"},{include:"#modifiers"},{include:"#variable"},{include:"#block"},{include:"#block-contents"}]},"abstract-name":{begin:/\b(abstract)\b/dgv,beginCaptures:{"1":{name:"storage.type.class.hx"}},end:/([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"entity.name.type.class.hx"}},patterns:[{include:"#global"}]},"abstract-name-post":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/([\{\;])/dgv,endCaptures:{"1":{name:"punctuation.definition.block.begin.hx"}},patterns:[{include:"#global"},{match:/\b(from|to)\b/dgv,name:"keyword.other.hx"},{include:"#type"},{match:/[\(\)]/dgv,name:"punctuation.definition.other.hx"}]},"accessor-method":{patterns:[{match:/\b(get|set)_[_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*\b/dgv,name:"entity.name.function.hx"}]},all:{patterns:[{include:"#global"},{include:"#package"},{include:"#import"},{include:"#using"},{match:/\b(final)\b(?=\p{space}+(class|interface|extern|private)\b)/dgv,name:"storage.modifier.hx"},{include:"#abstract"},{include:"#class"},{include:"#enum"},{include:"#interface"},{include:"#typedef"},{include:"#block"},{include:"#block-contents"}]},array:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.array.begin.hx"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.definition.array.end.hx"}},name:"meta.array.literal.hx",patterns:[{include:"#block"},{include:"#block-contents"}]},"arrow-function":{begin:/(\()(?=[^\(]*?\)\p{space}*->)/dgv,beginCaptures:{"1":{name:"punctuation.definition.parameters.begin.hx"}},end:/(\))\p{space}*(->)/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.hx"},"2":{name:"storage.type.function.arrow.hx"}},name:"meta.method.arrow.hx",patterns:[{include:"#arrow-function-parameter"}]},"arrow-function-parameter":{begin:/(?<=\(|,)/dgv,end:/(?=\)|,)/dgv,patterns:[{include:"#parameter-name"},{include:"#arrow-function-parameter-type-hint"},{include:"#parameter-assign"},{include:"#punctuation-comma"},{include:"#global"}]},"arrow-function-parameter-type-hint":{begin:/:/dgv,beginCaptures:{"0":{name:"keyword.operator.type.annotation.hx"}},end:/(?=\)|,|=)/dgv,patterns:[{include:"#type"}]},block:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.begin.hx"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.definition.block.end.hx"}},patterns:[{include:"#block"},{include:"#block-contents"}]},"block-contents":{patterns:[{include:"#global"},{include:"#regex"},{include:"#array"},{include:"#constants"},{include:"#strings"},{include:"#metadata"},{include:"#method"},{include:"#variable"},{include:"#modifiers"},{include:"#new-expr"},{include:"#for-loop"},{include:"#keywords"},{include:"#arrow-function"},{include:"#method-call"},{include:"#enum-constructor-call"},{include:"#punctuation-braces"},{include:"#macro-reification"},{include:"#operators"},{include:"#operator-assignment"},{include:"#punctuation-terminator"},{include:"#punctuation-comma"},{include:"#punctuation-accessor"},{include:"#identifiers"}]},class:{begin:/(?=class)/dgv,end:/(?<=\})|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},name:"meta.class.hx",patterns:[{include:"#class-name"},{include:"#class-name-post"},{include:"#class-block"}]},"class-block":{begin:/(?<=\{)/dgv,end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.hx"}},name:"meta.block.hx",patterns:[{include:"#method"},{include:"#modifiers"},{include:"#variable"},{include:"#block"},{include:"#block-contents"}]},"class-name":{begin:/\b(class)\b/dgv,beginCaptures:{"1":{name:"storage.type.class.hx"}},end:/([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"entity.name.type.class.hx"}},name:"meta.class.identifier.hx",patterns:[{include:"#global"}]},"class-name-post":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/([\{\;])/dgv,endCaptures:{"1":{name:"punctuation.definition.block.begin.hx"}},patterns:[{include:"#modifiers-inheritance"},{include:"#type"}]},comments:{patterns:[{begin:/\/\*\*(?!\/)/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.hx"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.hx"}},name:"comment.block.documentation.hx",patterns:[{include:"#javadoc-tags"}]},{begin:/\/\*/dgv,beginCaptures:{"0":{name:"punctuation.definition.comment.hx"}},end:/\*\//dgv,endCaptures:{"0":{name:"punctuation.definition.comment.hx"}},name:"comment.block.hx",patterns:[{include:"#javadoc-tags"}]},{captures:{"1":{name:"punctuation.definition.comment.hx"}},match:/(\/\/)[^\n]*(?=$|\n)\n?/dgv,name:"comment.line.double-slash.hx"}]},"conditional-compilation":{patterns:[{captures:{"0":{name:"punctuation.definition.tag"}},match:/((#(if|elseif))[\p{space}\!]+([a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*(\.[a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)*)(?=\p{space}|\/\*|\/\/))/dgv},{begin:/((#(if|elseif))[\p{space}\!]*)(?=\()/dgv,beginCaptures:{"0":{name:"punctuation.definition.tag"}},end:/(?<=\)|\n)/dgv,endCaptures:{"0":{name:"punctuation.definition.tag"}},name:"punctuation.definition.tag",patterns:[{include:"#conditional-compilation-parens"}]},{match:/(#(end|else|error|line))/dgv,name:"punctuation.definition.tag"},{match:/(#([\p{L}\p{M}\p{N}\p{Pc}]*))\p{space}/dgv,name:"punctuation.definition.tag"}]},"conditional-compilation-parens":{begin:/\(/dgv,end:/\)/dgv,patterns:[{include:"#conditional-compilation-parens"}]},"constant-name":{match:/\b([_A-Z][_A-Z0-9]*)\b/dgv,name:"variable.other.hx"},constants:{patterns:[{match:/\b(true|false|null)\b/dgv,name:"constant.language.hx"},{captures:{"0":{name:"constant.numeric.hex.hx"},"1":{name:"constant.numeric.suffix.hx"}},match:/\b0[xX][0-9a-fA-F][_0-9a-fA-F]*([iu]\p{Nd}[0-9_]*)?\b/dgv},{captures:{"0":{name:"constant.numeric.bin.hx"},"1":{name:"constant.numeric.suffix.hx"}},match:/\b0[bB][01][_01]*([iu]\p{Nd}[0-9_]*)?\b/dgv},{captures:{"0":{name:"constant.numeric.decimal.hx"},"1":{name:"meta.delimiter.decimal.period.hx"},"2":{name:"constant.numeric.suffix.hx"},"3":{name:"meta.delimiter.decimal.period.hx"},"4":{name:"constant.numeric.suffix.hx"},"5":{name:"meta.delimiter.decimal.period.hx"},"6":{name:"constant.numeric.suffix.hx"},"7":{name:"constant.numeric.suffix.hx"},"8":{name:"meta.delimiter.decimal.period.hx"},"9":{name:"constant.numeric.suffix.hx"},"10":{name:"meta.delimiter.decimal.period.hx"},"11":{name:"constant.numeric.suffix.hx"},"12":{name:"meta.delimiter.decimal.period.hx"},"13":{name:"constant.numeric.suffix.hx"},"14":{name:"constant.numeric.suffix.hx"}},match:/(?<!\$)(?:\b\p{Nd}[0-9_]*(\.)[0-9_]+[eE][\+\-]?[0-9_]+([fiu]\p{Nd}[0-9_]*)?\b|\b\p{Nd}[0-9_]*(\.)[eE][\+\-]?[0-9_]+([fiu]\p{Nd}[0-9_]*)?\b|\B(\.)\p{Nd}[0-9_]*[eE][\+\-]?[0-9_]+([fiu]\p{Nd}[0-9_]*)?\b|\b\p{Nd}[0-9_]*[eE][\+\-]?\p{Nd}[0-9_]*([fiu]\p{Nd}[0-9_]*)?\b|\b\p{Nd}[0-9_]*(\.)[0-9_]+([fiu]\p{Nd}[0-9_]*)?\b|\b\p{Nd}[0-9_]*(\.)(?!\.)(?:\B|([fiu]\p{Nd}[0-9_]*)\b)|\B(\.)\p{Nd}[0-9_]*([fiu]\p{Nd}[0-9_]*)?\b|\b\p{Nd}[0-9_]*([fiu]\p{Nd}[0-9_]*)?\b)(?!\$)/dgv}]},enum:{begin:/(?=enum\p{space}+[A-Z])/dgv,end:/(?<=\})|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},name:"meta.enum.hx",patterns:[{include:"#enum-name"},{include:"#enum-name-post"},{include:"#enum-block"}]},"enum-block":{begin:/(?<=\{)/dgv,end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.hx"}},name:"meta.block.hx",patterns:[{include:"#global"},{include:"#metadata"},{include:"#parameters"},{include:"#identifiers"}]},"enum-constructor-call":{begin:/\b(?<!\.)((_*[a-z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*)(_*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*)(?:(\.)(_*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*[a-z][\p{L}\p{M}\p{N}\p{Pc}]*))*\p{space}*(\()/dgv,beginCaptures:{"1":{name:"support.package.hx"},"3":{name:"entity.name.type.hx"},"4":{name:"support.package.hx"},"5":{name:"entity.name.type.hx"},"6":{name:"meta.brace.round.hx"}},end:/(\))/dgv,endCaptures:{"1":{name:"meta.brace.round.hx"}},patterns:[{include:"#block"},{include:"#block-contents"}]},"enum-name":{begin:/\b(enum)\b/dgv,beginCaptures:{"1":{name:"storage.type.class.hx"}},end:/([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"entity.name.type.class.hx"}},patterns:[{include:"#global"}]},"enum-name-post":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/([\{\;])/dgv,endCaptures:{"1":{name:"punctuation.definition.block.begin.hx"}},patterns:[{include:"#type"}]},"for-loop":{begin:/\b(for)\b\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.control.flow-control.hx"},"2":{name:"meta.brace.round.hx"}},end:/(\))/dgv,endCaptures:{"1":{name:"meta.brace.round.hx"}},patterns:[{match:/\b(in)\b/dgv,name:"keyword.other.in.hx"},{include:"#block"},{include:"#block-contents"}]},"function-type":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.parameters.begin.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.hx"}},patterns:[{include:"#function-type-parameter"}]},"function-type-parameter":{begin:/(?<=\(|,)/dgv,end:/(?=\)|,)/dgv,patterns:[{include:"#global"},{include:"#metadata"},{include:"#operator-optional"},{include:"#punctuation-comma"},{include:"#function-type-parameter-name"},{include:"#function-type-parameter-type-hint"},{include:"#parameter-assign"},{include:"#type"},{include:"#global"}]},"function-type-parameter-name":{captures:{"1":{name:"variable.parameter.hx"}},match:/([_a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*)(?=\p{space}*:)/dgv},"function-type-parameter-type-hint":{begin:/:/dgv,beginCaptures:{"0":{name:"keyword.operator.type.annotation.hx"}},end:/(?=\)|,|=)/dgv,patterns:[{include:"#type"}]},global:{patterns:[{include:"#comments"},{include:"#conditional-compilation"}]},"identifier-name":{match:/\b([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)\b/dgv,name:"variable.other.hx"},identifiers:{patterns:[{include:"#constant-name"},{include:"#type-name"},{include:"#identifier-name"}]},import:{begin:/import\b/dgv,beginCaptures:{"0":{name:"keyword.control.import.hx"}},end:/(?=$|\n)|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},patterns:[{include:"#type-path"},{match:/\b(as)\b/dgv,name:"keyword.control.as.hx"},{match:/\b(in)\b/dgv,name:"keyword.control.in.hx"},{match:/\*/dgv,name:"constant.language.import-all.hx"},{match:/\b([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)\b(?=\p{space}*(as|in|(?=$|\n)|(;)))/dgv,name:"variable.other.hxt"},{include:"#type-path-package-name"}]},interface:{begin:/(?=interface)/dgv,end:/(?<=\})|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},name:"meta.interface.hx",patterns:[{include:"#interface-name"},{include:"#interface-name-post"},{include:"#interface-block"}]},"interface-block":{begin:/(?<=\{)/dgv,end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.hx"}},name:"meta.block.hx",patterns:[{include:"#method"},{include:"#variable"},{include:"#block"},{include:"#block-contents"}]},"interface-name":{begin:/\b(interface)\b/dgv,beginCaptures:{"1":{name:"storage.type.class.hx"}},end:/([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"entity.name.type.class.hx"}},patterns:[{include:"#global"}]},"interface-name-post":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/([\{\;])/dgv,endCaptures:{"1":{name:"punctuation.definition.block.begin.hx"}},patterns:[{include:"#global"},{include:"#modifiers-inheritance"},{include:"#type"}]},"javadoc-tags":{patterns:[{captures:{"1":{name:"storage.type.class.javadoc"},"2":{name:"variable.other.javadoc"}},match:/(@(?:param|exception|throws|event))\p{space}+([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)\p{space}+/dgv},{captures:{"1":{name:"storage.type.class.javadoc"},"2":{name:"constant.numeric.javadoc"}},match:/(@since)\p{space}+([\p{L}\p{M}\p{N}\p{Pc}\.\-]+)\p{space}+/dgv},{captures:{"0":{name:"storage.type.class.javadoc"}},match:/@(param|exception|throws|deprecated|returns?|since|default|see|event)/dgv}]},keywords:{patterns:[{begin:/(?<=trace|(?=$|\n)type|if|while|for|super)\p{space}*(\()/dgv,beginCaptures:{"2":{name:"meta.brace.round.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.hx"}},patterns:[{include:"#block-contents"}]},{begin:/(?<=catch)\p{space}*(\()/dgv,beginCaptures:{"2":{name:"meta.brace.round.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.hx"}},patterns:[{include:"#block-contents"},{include:"#type-check"}]},{begin:/(?<=cast)\p{space}*(\()/dgv,beginCaptures:{"2":{name:"meta.brace.round.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.hx"}},patterns:[{begin:/(?=,)/dgv,end:/(?=\))/dgv,patterns:[{include:"#type"}]},{include:"#block-contents"}]},{match:/\b(try|catch|throw)\b/dgv,name:"keyword.control.catch-exception.hx"},{begin:/\b(case|default)\b/dgv,beginCaptures:{"1":{name:"keyword.control.flow-control.hx"}},end:/:|(?=if)|(?=$|\n)/dgv,patterns:[{include:"#global"},{include:"#metadata"},{captures:{"1":{name:"storage.type.variable.hx"},"2":{name:"variable.other.hx"}},match:/\b(var|final)\b\p{space}*([_a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*)\b/dgv},{include:"#array"},{include:"#constants"},{include:"#strings"},{match:/\(/dgv,name:"meta.brace.round.hx"},{match:/\)/dgv,name:"meta.brace.round.hx"},{include:"#macro-reification"},{match:/=>/dgv,name:"keyword.operator.extractor.hx"},{include:"#operator-assignment"},{include:"#punctuation-comma"},{include:"#keywords"},{include:"#method-call"},{include:"#identifiers"}]},{match:/\b(if|else|return|do|while|for|break|continue|switch|case|default)\b/dgv,name:"keyword.control.flow-control.hx"},{match:/\b(cast|untyped)\b/dgv,name:"keyword.other.untyped.hx"},{match:/\btrace\b/dgv,name:"keyword.other.trace.hx"},{match:/\$type\b/dgv,name:"keyword.other.type.hx"},{match:/__(global|this)__\b/dgv,name:"keyword.other.untyped-property.hx"},{match:/\b(this|super)\b/dgv,name:"variable.language.hx"},{match:/\bnew\b/dgv,name:"keyword.operator.new.hx"},{match:/\b(abstract|class|enum|interface|typedef)\b/dgv,name:"storage.type.hx"},{match:/->/dgv,name:"storage.type.function.arrow.hx"},{include:"#modifiers"},{include:"#modifiers-inheritance"}]},"keywords-accessor":{match:/\b(default|get|set|dynamic|never|null)\b/dgv,name:"storage.type.property.hx"},"macro-reification":{patterns:[{captures:{"1":{name:"punctuation.definition.reification.hx"},"2":{name:"keyword.reification.hx"}},match:/(\$)([eabipv])\{/dgv},{captures:{"2":{name:"punctuation.definition.reification.hx"},"3":{name:"variable.reification.hx"}},match:/((\$)([a-zA-Z]*))/dgv}]},metadata:{patterns:[{begin:/(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs[^\n]assemblyMeta|cs[^\n]assemblyStrict|cs[^\n]using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash[^\n]property|font|forward[^\n]new|forward[^\n]variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java[^\n]native|javaCanonical|jsRequire|jvm[^\n]synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\b)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"punctuation.metadata.hx"},"2":{name:"storage.modifier.metadata.hx"},"3":{name:"meta.brace.round.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.hx"}},patterns:[{include:"#block-contents"}]},{captures:{"2":{name:"punctuation.metadata.hx"},"3":{name:"storage.modifier.metadata.hx"}},match:/((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|cs[^\n]assemblyMeta|cs[^\n]assemblyStrict|cs[^\n]using|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|file|fileXml|final|fixed|flash[^\n]property|font|forward[^\n]new|forward[^\n]variance|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|genericClassPerMethod|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inheritDoc|inline|internal|isVar|java[^\n]native|javaCanonical|jsRequire|jvm[^\n]synthetic|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noClosure|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|nullSafety|objc|objcProtocol|op|optional|overload|persistent|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|transitive|unifyMinDynamic|unreflective|unsafe|using|void|volatile)\b))/dgv},{begin:/(@)(:?[a-zA-Z_]*)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"punctuation.metadata.hx"},"2":{name:"variable.metadata.hx"},"3":{name:"meta.brace.round.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.hx"}},patterns:[{include:"#block-contents"}]},{captures:{"1":{name:"punctuation.metadata.hx"},"2":{name:"variable.metadata.hx"},"3":{name:"variable.metadata.hx"},"4":{name:"punctuation.accessor.hx"},"5":{name:"variable.metadata.hx"}},match:/(@)(:?)([a-zA-Z_]*(\.))*([a-zA-Z_]*)?/dgv}]},method:{begin:/(?=\bfunction\b)/dgv,end:/(?<=[\}\;])/dgv,name:"meta.method.hx",patterns:[{include:"#macro-reification"},{include:"#method-name"},{include:"#method-name-post"},{include:"#method-block"}]},"method-block":{begin:/(?<=\{)/dgv,beginCaptures:{"1":{name:"punctuation.definition.block.begin.hx"}},end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.hx"}},name:"meta.method.block.hx",patterns:[{include:"#block"},{include:"#block-contents"}]},"method-call":{begin:/\b(?:(__(?:addressOf|as|call|checked|cpp|cs|define_feature|delete|feature|field|fixed|foreach|forin|has_next|hkeys|in|int|is|java|js|keys|lock|lua|lua_table|new|php|physeq|prefix|ptr|resources|rethrow|set|setfield|sizeof|type|typeof|unprotect|unsafe|valueOf|var|vector|vmem_get|vmem_set|vmem_sign|instanceof|strict_eq|strict_neq)__)|([_a-z][\p{L}\p{M}\p{N}\p{Pc}]*))\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.other.untyped-function.hx"},"2":{name:"entity.name.function.hx"},"3":{name:"meta.brace.round.hx"}},end:/(\))/dgv,endCaptures:{"1":{name:"meta.brace.round.hx"}},patterns:[{include:"#block"},{include:"#block-contents"}]},"method-name":{begin:/\b(function)\b\p{space}*\b(?:(new)|([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*))?\b/dgv,beginCaptures:{"1":{name:"storage.type.function.hx"},"2":{name:"storage.type.hx"},"3":{name:"entity.name.function.hx"}},end:/(?=(?=$|\n)|\()/dgv,patterns:[{include:"#macro-reification"},{include:"#type-parameters"}]},"method-name-post":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}\p{space}\>])/dgv,end:/(\{)|(;)/dgv,endCaptures:{"1":{name:"punctuation.definition.block.begin.hx"},"2":{name:"punctuation.terminator.hx"}},patterns:[{include:"#parameters"},{include:"#method-return-type-hint"},{include:"#block"},{include:"#block-contents"}]},"method-return-type-hint":{begin:/(?<=\))\p{space}*(:)/dgv,beginCaptures:{"1":{name:"keyword.operator.type.annotation.hx"}},end:/(?=\{|;|[a-z0-9])/dgv,patterns:[{include:"#type"}]},modifiers:{patterns:[{match:/\b(enum)\b/dgv,name:"storage.type.class"},{match:/\b(public|private|static|dynamic|inline|macro|extern|override|overload|abstract)\b/dgv,name:"storage.modifier.hx"},{match:/\b(final)\b(?=\p{space}+(public|private|static|dynamic|inline|macro|extern|override|overload|abstract|function))/dgv,name:"storage.modifier.hx"}]},"modifiers-inheritance":{match:/\b(implements|extends)\b/dgv,name:"storage.modifier.hx"},"new-expr":{begin:/(?<!\.)\b(new)\b/dgv,beginCaptures:{"1":{name:"keyword.operator.new.hx"}},end:/(?=(?=$|\n)|\()/dgv,name:"new.expr.hx",patterns:[{include:"#type"}]},"operator-assignment":{match:/(=)/dgv,name:"keyword.operator.assignment.hx"},"operator-optional":{match:/(\?)(?!\p{space})/dgv,name:"keyword.operator.optional.hx"},"operator-type-hint":{match:/(:)/dgv,name:"keyword.operator.type.annotation.hx"},operators:{patterns:[{match:/(&&|\|\|)/dgv,name:"keyword.operator.logical.hx"},{match:/(~|&|\||\^|>>>|<<|>>)/dgv,name:"keyword.operator.bitwise.hx"},{match:/(==|!=|<=|>=|<|>)/dgv,name:"keyword.operator.comparison.hx"},{match:/(!)/dgv,name:"keyword.operator.logical.hx"},{match:/(--|\+\+)/dgv,name:"keyword.operator.increment-decrement.hx"},{match:/(-|\+|\*|\/|%)/dgv,name:"keyword.operator.arithmetic.hx"},{match:/\.\.\./dgv,name:"keyword.operator.intiterator.hx"},{match:/=>/dgv,name:"keyword.operator.arrow.hx"},{match:/\?\?/dgv,name:"keyword.operator.nullcoalescing.hx"},{match:/\?\./dgv,name:"keyword.operator.safenavigation.hx"},{match:/\bis\b(?!\()/dgv,name:"keyword.other.hx"},{begin:/\?/dgv,beginCaptures:{"0":{name:"keyword.operator.ternary.hx"}},end:/:/dgv,endCaptures:{"0":{name:"keyword.operator.ternary.hx"}},patterns:[{include:"#block-contents"}]}]},package:{begin:/package\b/dgv,beginCaptures:{"0":{name:"keyword.other.package.hx"}},end:/(?=$|\n)|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},patterns:[{include:"#type-path"},{include:"#type-path-package-name"}]},parameter:{begin:/(?<=\(|,)/dgv,end:/(?=\)(?!\p{space}*->)|,)/dgv,patterns:[{include:"#parameter-name"},{include:"#parameter-type-hint"},{include:"#parameter-assign"},{include:"#punctuation-comma"},{include:"#global"}]},"parameter-assign":{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.hx"}},end:/(?=\)|,)/dgv,patterns:[{include:"#block"},{include:"#block-contents"}]},"parameter-name":{begin:/(?<=\(|,)/dgv,end:/([_a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"variable.parameter.hx"}},patterns:[{include:"#global"},{include:"#metadata"},{include:"#operator-optional"}]},"parameter-type-hint":{begin:/:/dgv,beginCaptures:{"0":{name:"keyword.operator.type.annotation.hx"}},end:/(?=\)(?!\p{space}*->)|,|=)/dgv,patterns:[{include:"#type"}]},parameters:{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.parameters.begin.hx"}},end:/\p{space}*(\)(?!\p{space}*->))/dgv,endCaptures:{"1":{name:"punctuation.definition.parameters.end.hx"}},name:"meta.parameters.hx",patterns:[{include:"#parameter"}]},"punctuation-accessor":{match:/\./dgv,name:"punctuation.accessor.hx"},"punctuation-braces":{begin:/\(/dgv,beginCaptures:{"0":{name:"meta.brace.round.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"meta.brace.round.hx"}},patterns:[{include:"#keywords"},{include:"#block"},{include:"#block-contents"},{include:"#type-check"}]},"punctuation-comma":{match:/,/dgv,name:"punctuation.separator.comma.hx"},"punctuation-terminator":{match:/;/dgv,name:"punctuation.terminator.hx"},regex:{begin:/(~\/)/dgv,beginCaptures:{"1":{name:"punctuation.definition.string.begin.hx"}},end:/(\/)([gimsu]*)/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hx"},"2":{name:"keyword.other.hx"}},name:"string.regexp.hx",patterns:[{include:"#regexp"}]},"regex-character-class":{patterns:[{match:/\\[wWsSdDtrnvf]|\./dgv,name:"constant.other.character-class.regexp"},{match:/\\([0-7]{3}|x\p{AHex}\p{AHex}|u\p{AHex}\p{AHex}\p{AHex}\p{AHex})/dgv,name:"constant.character.numeric.regexp"},{match:/\\c[A-Z]/dgv,name:"constant.character.control.regexp"},{match:/\\[^\n]/dgv,name:"constant.character.escape.backslash.regexp"}]},regexp:{patterns:[{match:/\\[bB]|\^|\$/dgv,name:"keyword.control.anchor.regexp"},{match:/\\[1-9]\p{Nd}*/dgv,name:"keyword.other.back-reference.regexp"},{match:/[\?\+\*]|\{(\p{Nd}+,\p{Nd}+|\p{Nd}+,|,\p{Nd}+|\p{Nd}+)\}\??/dgv,name:"keyword.operator.quantifier.regexp"},{match:/\|/dgv,name:"keyword.operator.or.regexp"},{begin:/(\()((\?=)|(\?!))/dgv,beginCaptures:{"1":{name:"punctuation.definition.group.regexp"},"2":{name:"punctuation.definition.group.assertion.regexp"},"3":{name:"meta.assertion.look-ahead.regexp"},"4":{name:"meta.assertion.negative-look-ahead.regexp"}},end:/(\))/dgv,endCaptures:{"1":{name:"punctuation.definition.group.regexp"}},name:"meta.group.assertion.regexp",patterns:[{include:"#regexp"}]},{begin:/\((\?:)?/dgv,beginCaptures:{"0":{name:"punctuation.definition.group.regexp"},"1":{name:"punctuation.definition.group.capture.regexp"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.group.regexp"}},name:"meta.group.regexp",patterns:[{include:"#regexp"}]},{begin:/(\[)(\^)?/dgv,beginCaptures:{"1":{name:"punctuation.definition.character-class.regexp"},"2":{name:"keyword.operator.negation.regexp"}},end:/(\])/dgv,endCaptures:{"1":{name:"punctuation.definition.character-class.regexp"}},name:"constant.other.character-class.set.regexp",patterns:[{captures:{"1":{name:"constant.character.numeric.regexp"},"2":{name:"constant.character.control.regexp"},"3":{name:"constant.character.escape.backslash.regexp"},"4":{name:"constant.character.numeric.regexp"},"5":{name:"constant.character.control.regexp"},"6":{name:"constant.character.escape.backslash.regexp"}},match:/(?:[^\n]|(\\(?:[0-7]{3}|x\p{AHex}\p{AHex}|u\p{AHex}\p{AHex}\p{AHex}\p{AHex}))|(\\c[A-Z])|(\\[^\n]))-(?:[^\]\\]|(\\(?:[0-7]{3}|x\p{AHex}\p{AHex}|u\p{AHex}\p{AHex}\p{AHex}\p{AHex}))|(\\c[A-Z])|(\\[^\n]))/dgv,name:"constant.other.character-class.range.regexp"},{include:"#regex-character-class"}]},{include:"#regex-character-class"}]},"string-escape-sequences":{patterns:[{match:/\\[0-3]\p{Nd}{2}/dgv,name:"constant.character.escape.hx"},{match:/\\x[0-9A-Fa-f]{2}/dgv,name:"constant.character.escape.hx"},{match:/\\u\p{Nd}{4}/dgv,name:"constant.character.escape.hx"},{match:/\\u\{[0-9A-Fa-f]+\}/dgv,name:"constant.character.escape.hx"},{match:/\\[nrt"'\\]/dgv,name:"constant.character.escape.hx"},{match:/\\[^\n]/dgv,name:"invalid.escape.sequence.hx"}]},strings:{patterns:[{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hx"}},end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.hx"}},name:"string.quoted.double.hx",patterns:[{include:"#string-escape-sequences"}]},{begin:/(')/dgv,beginCaptures:{"0":{name:"string.quoted.single.hx"},"1":{name:"punctuation.definition.string.begin.hx"}},end:/(')/dgv,endCaptures:{"0":{name:"string.quoted.single.hx"},"1":{name:"punctuation.definition.string.end.hx"}},patterns:[{begin:/\$(?=\$)/dgv,beginCaptures:{"0":{name:"constant.character.escape.hx"}},end:/\$/dgv,endCaptures:{"0":{name:"constant.character.escape.hx"}},name:"string.quoted.single.hx"},{include:"#string-escape-sequences"},{begin:/(\$\{)/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.begin.hx"}},end:/(\})/dgv,endCaptures:{"0":{name:"punctuation.definition.block.end.hx"}},patterns:[{include:"#block-contents"}]},{captures:{"1":{name:"punctuation.definition.block.begin.hx"},"2":{name:"variable.other.hx"}},match:/(\$)([_a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv},{match:"",name:"constant.character.escape.hx"},{match:/[^\n]/dgv,name:"string.quoted.single.hx"}]}]},type:{patterns:[{include:"#global"},{include:"#macro-reification"},{include:"#type-name"},{include:"#type-parameters"},{match:/->/dgv,name:"keyword.operator.type.function.hx"},{match:/&/dgv,name:"keyword.operator.type.intersection.hx"},{match:/\?(?=\p{space}*[_A-Z])/dgv,name:"keyword.operator.optional"},{match:/\?(?!\p{space}*[_A-Z])/dgv,name:"punctuation.definition.tag"},{begin:/(\{)/dgv,beginCaptures:{"0":{name:"punctuation.definition.block.begin.hx"}},end:/(?<=\})/dgv,patterns:[{include:"#typedef-block"}]},{include:"#function-type"}]},"type-check":{begin:/(?<!macro)(?=:)/dgv,end:/(?=\))/dgv,patterns:[{include:"#operator-type-hint"},{include:"#type"}]},"type-name":{patterns:[{captures:{"1":{name:"support.class.builtin.hx"},"2":{name:"support.package.hx"},"3":{name:"entity.name.type.hx"}},match:/\b(Any|Array|ArrayAccess|Bool|Class|Date|DateTools|Dynamic|Enum|EnumValue|EReg|Float|IMap|Int|IntIterator|Iterable|Iterator|KeyValueIterator|KeyValueIterable|Lambda|List|ListIterator|ListNode|Map|Math|Null|Reflect|Single|Std|String|StringBuf|StringTools|Sys|Type|UInt|UnicodeString|ValueType|Void|Xml|XmlType)(?:(\.)(_*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*[a-z][\p{L}\p{M}\p{N}\p{Pc}]*))*\b/dgv},{captures:{"1":{name:"support.package.hx"},"3":{name:"entity.name.type.hx"},"4":{name:"support.package.hx"},"5":{name:"entity.name.type.hx"}},match:/\b(?<![^\.]\.)((_*[a-z][\p{L}\p{M}\p{N}\p{Pc}]*\.)*)(_*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*)(?:(\.)(_*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*[a-z][\p{L}\p{M}\p{N}\p{Pc}]*))*\b/dgv}]},"type-parameter-constraint-new":{match:/:/dgv,name:"keyword.operator.type.annotation.hxt"},"type-parameter-constraint-old":{begin:/(:)\p{space}*(\()/dgv,beginCaptures:{"1":{name:"keyword.operator.type.annotation.hx"},"2":{name:"punctuation.definition.constraint.begin.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.constraint.end.hx"}},patterns:[{include:"#type"},{include:"#punctuation-comma"}]},"type-parameters":{begin:/(<)/dgv,beginCaptures:{"1":{name:"punctuation.definition.typeparameters.begin.hx"}},end:/(?=(?=$|\n))|(>)/dgv,endCaptures:{"1":{name:"punctuation.definition.typeparameters.end.hx"}},name:"meta.type-parameters.hx",patterns:[{include:"#type"},{include:"#type-parameter-constraint-old"},{include:"#type-parameter-constraint-new"},{include:"#global"},{include:"#regex"},{include:"#array"},{include:"#constants"},{include:"#strings"},{include:"#metadata"},{include:"#punctuation-comma"}]},"type-path":{patterns:[{include:"#global"},{include:"#punctuation-accessor"},{include:"#type-path-type-name"}]},"type-path-package-name":{match:/\b([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)\b/dgv,name:"support.package.hx"},"type-path-type-name":{match:/\b(_*[A-Z][\p{L}\p{M}\p{N}\p{Pc}]*)\b/dgv,name:"entity.name.type.hx"},typedef:{begin:/(?=typedef)/dgv,end:/(?<=\})|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},name:"meta.typedef.hx",patterns:[{include:"#typedef-name"},{include:"#typedef-name-post"},{include:"#typedef-block"}]},"typedef-block":{begin:/(?<=\{)/dgv,end:/(\})/dgv,endCaptures:{"1":{name:"punctuation.definition.block.end.hx"}},name:"meta.block.hx",patterns:[{include:"#global"},{include:"#metadata"},{include:"#method"},{include:"#variable"},{include:"#modifiers"},{include:"#punctuation-comma"},{include:"#operator-optional"},{include:"#typedef-extension"},{include:"#typedef-simple-field-type-hint"},{include:"#identifier-name"},{include:"#strings"}]},"typedef-extension":{begin:/>/dgv,end:/,|(?=$|\n)/dgv,patterns:[{include:"#type"}]},"typedef-name":{begin:/\b(typedef)\b/dgv,beginCaptures:{"1":{name:"storage.type.class.hx"}},end:/([_A-Za-z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"entity.name.type.class.hx"}},patterns:[{include:"#global"}]},"typedef-name-post":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(\{)|(?=;)/dgv,endCaptures:{"1":{name:"punctuation.definition.block.begin.hx"}},patterns:[{include:"#global"},{include:"#punctuation-brackets"},{include:"#punctuation-separator"},{include:"#operator-assignment"},{include:"#type"}]},"typedef-simple-field-type-hint":{begin:/:/dgv,beginCaptures:{"0":{name:"keyword.operator.type.annotation.hx"}},end:/(?=\}|,|;)/dgv,patterns:[{include:"#type"}]},using:{begin:/using\b/dgv,beginCaptures:{"0":{name:"keyword.other.using.hx"}},end:/(?=$|\n)|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},patterns:[{include:"#type-path"},{include:"#type-path-package-name"}]},variable:{begin:/(?=\b(var|final)\b)/dgv,end:/(?=(?=$|\n))|(;)/dgv,endCaptures:{"1":{name:"punctuation.terminator.hx"}},patterns:[{include:"#variable-name"},{include:"#variable-name-next"},{include:"#variable-assign"},{include:"#variable-name-post"}]},"variable-accessors":{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.definition.parameters.begin.hx"}},end:/\)/dgv,endCaptures:{"0":{name:"punctuation.definition.parameters.end.hx"}},name:"meta.parameters.hx",patterns:[{include:"#global"},{include:"#keywords-accessor"},{include:"#accessor-method"},{include:"#punctuation-comma"}]},"variable-assign":{begin:/=/dgv,beginCaptures:{"0":{name:"keyword.operator.assignment.hx"}},end:/(?=;|,)/dgv,patterns:[{include:"#block"},{include:"#block-contents"}]},"variable-name":{begin:/\b(var|final)\b/dgv,beginCaptures:{"1":{name:"storage.type.variable.hx"}},end:/(?=(?=$|\n))|([_a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"variable.other.hx"}},patterns:[{include:"#operator-optional"}]},"variable-name-next":{begin:/,/dgv,beginCaptures:{"0":{name:"punctuation.separator.comma.hx"}},end:/([_a-zA-Z][\p{L}\p{M}\p{N}\p{Pc}]*)/dgv,endCaptures:{"1":{name:"variable.other.hx"}},patterns:[{include:"#global"}]},"variable-name-post":{begin:/(?<=[\p{L}\p{M}\p{N}\p{Pc}])/dgv,end:/(?=;)|(?==)/dgv,patterns:[{include:"#variable-accessors"},{include:"#variable-type-hint"},{include:"#block-contents"}]},"variable-type-hint":{begin:/:/dgv,beginCaptures:{"0":{name:"keyword.operator.type.annotation.hx"}},end:/(?=(?=$|\n)|;|,|=)/dgv,patterns:[{include:"#type"}]}},scopeName:"source.hx",embeddedLangs:undefined,aliases:undefined})
|
|
2
|
+
|
|
3
|
+
export default [
|
|
4
|
+
lang
|
|
5
|
+
]
|
package/dist/hbs.d.mts
ADDED
package/dist/hbs.mjs
ADDED
package/dist/hcl.d.mts
ADDED
package/dist/hcl.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const lang = Object.freeze({displayName:"HashiCorp HCL",fileTypes:["hcl"],name:"hcl",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#block"},{include:"#expressions"}],repository:{attribute_access:{begin:/\.(?!\*)/dgv,beginCaptures:{"0":{name:"keyword.operator.accessor.hcl"}},comment:"Matches traversal attribute access such as .attr",end:/[A-Za-z][\p{L}\p{M}\p{N}\p{Pc}\-]*|\p{Nd}*/dgv,endCaptures:{"0":{patterns:[{comment:"Attribute name",match:/(?!null|false|true)[A-Za-z][\p{L}\p{M}\p{N}\p{Pc}\-]*/dgv,name:"variable.other.member.hcl"},{comment:"Optional attribute index",match:/\p{Nd}+/dgv,name:"constant.numeric.integer.hcl"}]}}},attribute_definition:{captures:{"1":{name:"punctuation.section.parens.begin.hcl"},"2":{name:"variable.other.readwrite.hcl"},"3":{name:"punctuation.section.parens.end.hcl"},"4":{name:"keyword.operator.assignment.hcl"}},comment:"Identifier \"=\" with optional parens",match:/(\()?(\b(?!null\b|false\b|true\b)[A-Za-z][0-9A-Za-z_\-]*)(\))?\p{space}*(=(?!=|>))\p{space}*/dgv,name:"variable.declaration.hcl"},attribute_splat:{begin:/\./dgv,beginCaptures:{"0":{name:"keyword.operator.accessor.hcl"}},comment:"Legacy attribute-only splat",end:/\*/dgv,endCaptures:{"0":{name:"keyword.operator.splat.hcl"}}},block:{begin:/([\p{L}\p{M}\p{N}\p{Pc}][\-\p{L}\p{M}\p{N}\p{Pc}]*)(([^\P{space}\r\n]+([\p{L}\p{M}\p{N}\p{Pc}][\-_\p{L}\p{M}\p{N}\p{Pc}]*|"[^"\r\n]*"))*)[^\P{space}\r\n]*(\{)/dgv,beginCaptures:{"1":{patterns:[{comment:"Block type",match:/\b(?!null|false|true)[A-Za-z][0-9A-Za-z_\-]*\b/dgv,name:"entity.name.type.hcl"}]},"2":{patterns:[{comment:"Block label (String Literal)",match:/"[^"\r\n]*"/dgv,name:"variable.other.enummember.hcl"},{comment:"Block label (Identifier)",match:/[A-Za-z][0-9A-Za-z_\-]*/dgv,name:"variable.other.enummember.hcl"}]},"5":{name:"punctuation.section.block.begin.hcl"}},comment:"This will match HCL blocks like `thing1 \"one\" \"two\" {` or `thing2 {`",end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.block.end.hcl"}},name:"meta.block.hcl",patterns:[{include:"#comments"},{include:"#attribute_definition"},{include:"#expressions"},{include:"#block"}]},block_inline_comments:{begin:/\/\*/dgv,captures:{"0":{name:"punctuation.definition.comment.hcl"}},comment:"Inline comments start with the /* sequence and end with the */ sequence, and may have any characters within except the ending sequence. An inline comment is considered equivalent to a whitespace sequence",end:/\*\//dgv,name:"comment.block.hcl"},brackets:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.section.brackets.begin.hcl"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.section.brackets.end.hcl"}},patterns:[{comment:"Splat operator",match:/\*/dgv,name:"keyword.operator.splat.hcl"},{include:"#comma"},{include:"#comments"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{include:"#expressions"},{include:"#local_identifiers"}]},char_escapes:{comment:"Character Escapes",match:/\\[nrt"\\]|\\u(\p{AHex}{8}|\p{AHex}{4})/dgv,name:"constant.character.escape.hcl"},comma:{comment:"Commas - used in certain expressions",match:/,/dgv,name:"punctuation.separator.hcl"},comments:{patterns:[{include:"#hash_line_comments"},{include:"#double_slash_line_comments"},{include:"#block_inline_comments"}]},double_slash_line_comments:{begin:/\/\//dgv,captures:{"0":{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with // sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:/(?=$|\n)\n?/dgv,name:"comment.line.double-slash.hcl"},expressions:{patterns:[{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#brackets"},{include:"#objects"},{include:"#attribute_access"},{include:"#attribute_splat"},{include:"#functions"},{include:"#parens"}]},for_expression_body:{patterns:[{comment:"in keyword",match:/\bin\b/dgv,name:"keyword.operator.word.hcl"},{comment:"if keyword",match:/\bif\b/dgv,name:"keyword.control.conditional.hcl"},{match:/:/dgv,name:"keyword.operator.hcl"},{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},functions:{begin:/([\:\-\p{L}\p{M}\p{N}\p{Pc}]+)(\()/dgv,beginCaptures:{"1":{patterns:[{match:/\b[A-Za-z][\p{L}\p{M}\p{N}\p{Pc}_\-]*::([A-Za-z][\p{L}\p{M}\p{N}\p{Pc}_\-]*::)?[A-Za-z][\p{L}\p{M}\p{N}\p{Pc}_\-]*\b/dgv,name:"support.function.namespaced.hcl"},{match:/\b[A-Za-z][\p{L}\p{M}\p{N}\p{Pc}_\-]*\b/dgv,name:"support.function.builtin.hcl"}]},"2":{name:"punctuation.section.parens.begin.hcl"}},comment:"Built-in function calls",end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.parens.end.hcl"}},name:"meta.function-call.hcl",patterns:[{include:"#comments"},{include:"#expressions"},{include:"#comma"}]},hash_line_comments:{begin:/#/dgv,captures:{"0":{name:"punctuation.definition.comment.hcl"}},comment:"Line comments start with # sequence and end with the next newline sequence. A line comment is considered equivalent to a newline sequence",end:/(?=$|\n)\n?/dgv,name:"comment.line.number-sign.hcl"},hcl_type_keywords:{comment:"Type keywords known to HCL.",match:/\b(any|string|number|bool|list|set|map|tuple|object)\b/dgv,name:"storage.type.hcl"},heredoc:{begin:/(<<-?)\p{space}*([\p{L}\p{M}\p{N}\p{Pc}]+)\p{space}*(?=$|\n)/dgv,beginCaptures:{"1":{name:"keyword.operator.heredoc.hcl"},"2":{name:"keyword.control.heredoc.hcl"}},comment:"String Heredoc",end:/(?<=^|\n(?!$))\p{space}*\2\p{space}*(?=$|\n)()()/dgv,endCaptures:{"0":{name:"keyword.control.heredoc.hcl"}},name:"string.unquoted.heredoc.hcl",patterns:[{include:"#string_interpolation"}]},inline_for_expression:{captures:{"1":{name:"keyword.control.hcl"},"2":{patterns:[{match:/=>/dgv,name:"storage.type.function.hcl"},{include:"#for_expression_body"}]}},match:/(for)\b([^\n]*)\n/dgv},inline_if_expression:{begin:/(if)\b/dgv,beginCaptures:{"1":{name:"keyword.control.conditional.hcl"}},end:/\n/dgv,patterns:[{include:"#expressions"},{include:"#comments"},{include:"#comma"},{include:"#local_identifiers"}]},language_constants:{comment:"Language Constants",match:/\b(true|false|null)\b/dgv,name:"constant.language.hcl"},literal_values:{patterns:[{include:"#numeric_literals"},{include:"#language_constants"},{include:"#string_literals"},{include:"#heredoc"},{include:"#hcl_type_keywords"}]},local_identifiers:{comment:"Local Identifiers",match:/\b(?!null|false|true)[A-Za-z][0-9A-Za-z_\-]*\b/dgv,name:"variable.other.readwrite.hcl"},numeric_literals:{patterns:[{captures:{"1":{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, no fraction, optional exponent",match:/\b\p{Nd}+([Ee][\+\-]?)\p{Nd}+\b/dgv,name:"constant.numeric.float.hcl"},{captures:{"1":{name:"punctuation.separator.decimal.hcl"},"2":{name:"punctuation.separator.exponent.hcl"}},comment:"Integer, fraction, optional exponent",match:/\b\p{Nd}+(\.)\p{Nd}+(?:([Ee][\+\-]?)\p{Nd}+)?\b/dgv,name:"constant.numeric.float.hcl"},{comment:"Integers",match:/\b\p{Nd}+\b/dgv,name:"constant.numeric.integer.hcl"}]},object_for_expression:{begin:/(\{)\p{space}?(for)\b/dgv,beginCaptures:{"1":{name:"punctuation.section.braces.begin.hcl"},"2":{name:"keyword.control.hcl"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.braces.end.hcl"}},patterns:[{match:/=>/dgv,name:"storage.type.function.hcl"},{include:"#for_expression_body"}]},object_key_values:{patterns:[{include:"#comments"},{include:"#literal_values"},{include:"#operators"},{include:"#tuple_for_expression"},{include:"#object_for_expression"},{include:"#heredoc"},{include:"#functions"}]},objects:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.section.braces.begin.hcl"}},end:/\}/dgv,endCaptures:{"0":{name:"punctuation.section.braces.end.hcl"}},name:"meta.braces.hcl",patterns:[{include:"#comments"},{include:"#objects"},{include:"#inline_for_expression"},{include:"#inline_if_expression"},{captures:{"1":{name:"meta.mapping.key.hcl variable.other.readwrite.hcl"},"2":{name:"keyword.operator.assignment.hcl"}},comment:"Literal, named object key",match:/\b((?!null|false|true)[A-Za-z][0-9A-Za-z_\-]*)\p{space}*(=(?!=))\p{space}*/dgv},{captures:{"1":{name:"meta.mapping.key.hcl string.quoted.double.hcl"},"2":{name:"punctuation.definition.string.begin.hcl"},"3":{name:"punctuation.definition.string.end.hcl"},"4":{name:"keyword.operator.hcl"}},comment:"String object key",match:/(?<=^|\n(?!$))\p{space}*((")[^\n]*("))\p{space}*(=)\p{space}*/dgv},{begin:/(?<=^|\n(?!$))\p{space}*\(/dgv,beginCaptures:{"0":{name:"punctuation.section.parens.begin.hcl"}},comment:"Computed object key (any expression between parens)",end:/(\))\p{space}*(=|:)\p{space}*/dgv,endCaptures:{"1":{name:"punctuation.section.parens.end.hcl"},"2":{name:"keyword.operator.hcl"}},name:"meta.mapping.key.hcl",patterns:[{include:"#attribute_access"},{include:"#attribute_splat"}]},{include:"#object_key_values"}]},operators:{patterns:[{match:/>=/dgv,name:"keyword.operator.hcl"},{match:/<=/dgv,name:"keyword.operator.hcl"},{match:/==/dgv,name:"keyword.operator.hcl"},{match:/!=/dgv,name:"keyword.operator.hcl"},{match:/\+/dgv,name:"keyword.operator.arithmetic.hcl"},{match:/-/dgv,name:"keyword.operator.arithmetic.hcl"},{match:/\*/dgv,name:"keyword.operator.arithmetic.hcl"},{match:/\//dgv,name:"keyword.operator.arithmetic.hcl"},{match:/%/dgv,name:"keyword.operator.arithmetic.hcl"},{match:/&&/dgv,name:"keyword.operator.logical.hcl"},{match:/\|\|/dgv,name:"keyword.operator.logical.hcl"},{match:/!/dgv,name:"keyword.operator.logical.hcl"},{match:/>/dgv,name:"keyword.operator.hcl"},{match:/</dgv,name:"keyword.operator.hcl"},{match:/\?/dgv,name:"keyword.operator.hcl"},{match:/\.\.\./dgv,name:"keyword.operator.hcl"},{match:/:/dgv,name:"keyword.operator.hcl"},{match:/=>/dgv,name:"keyword.operator.hcl"}]},parens:{begin:/\(/dgv,beginCaptures:{"0":{name:"punctuation.section.parens.begin.hcl"}},comment:"Parens - matched *after* function syntax",end:/\)/dgv,endCaptures:{"0":{name:"punctuation.section.parens.end.hcl"}},patterns:[{include:"#comments"},{include:"#expressions"}]},string_interpolation:{begin:/(?<![\%\$])([\%\$]\{)/dgv,beginCaptures:{"1":{name:"keyword.other.interpolation.begin.hcl"}},comment:"String interpolation",end:/\}/dgv,endCaptures:{"0":{name:"keyword.other.interpolation.end.hcl"}},name:"meta.interpolation.hcl",patterns:[{comment:"Trim left whitespace",match:/~\p{space}/dgv,name:"keyword.operator.template.left.trim.hcl"},{comment:"Trim right whitespace",match:/\p{space}~/dgv,name:"keyword.operator.template.right.trim.hcl"},{comment:"if/else/endif and for/in/endfor directives",match:/\b(if|else|endif|for|in|endfor)\b/dgv,name:"keyword.control.hcl"},{include:"#expressions"},{include:"#local_identifiers"}]},string_literals:{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hcl"}},comment:"Strings",end:/"/dgv,endCaptures:{"0":{name:"punctuation.definition.string.end.hcl"}},name:"string.quoted.double.hcl",patterns:[{include:"#string_interpolation"},{include:"#char_escapes"}]},tuple_for_expression:{begin:/(\[)\p{space}?(for)\b/dgv,beginCaptures:{"1":{name:"punctuation.section.brackets.begin.hcl"},"2":{name:"keyword.control.hcl"}},end:/\]/dgv,endCaptures:{"0":{name:"punctuation.section.brackets.end.hcl"}},patterns:[{include:"#for_expression_body"}]}},scopeName:"source.hcl",embeddedLangs:undefined,aliases:undefined})
|
|
2
|
+
|
|
3
|
+
export default [
|
|
4
|
+
lang
|
|
5
|
+
]
|
package/dist/hjson.d.mts
ADDED
package/dist/hjson.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const lang = Object.freeze({displayName:"Hjson",fileTypes:["hjson"],foldingStartMarker:/(?:(?<=^|\n(?!$))\p{space}*[\{\[](?![^\n]*[\}\]],?\p{space}*(?=$|\n))|[\{\[]\p{space}*(?=$|\n))/dgv,foldingStopMarker:/(?<=^|\n(?!$))\p{space}*[\}\]]/dgv,name:"hjson",patterns:[{include:"#comments"},{include:"#value"},{match:/[^\p{space}]/dgv,name:"invalid.illegal.excess-characters.hjson"}],repository:{array:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.array.begin.hjson"}},end:/(\])(?:\p{space}*([^\,\p{space}]+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.array.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"meta.structure.array.hjson",patterns:[{include:"#arrayContent"}]},arrayArray:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.array.begin.hjson"}},end:/(\])(?:\p{space}*([^\,\p{space}\]]+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.array.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"meta.structure.array.hjson",patterns:[{include:"#arrayContent"}]},arrayConstant:{captures:{"1":{name:"constant.language.hjson"},"2":{name:"punctuation.separator.array.after-const.hjson"}},match:/\b(true|false|null)(?:[\t ]*(?=,)|[\t ]*(?:(,)[\t ]*)?(?=(?=$|\n)|#|\/\*|\/\/|\]))/dgv},arrayContent:{name:"meta.structure.array.hjson",patterns:[{include:"#comments"},{include:"#arrayValue"},{begin:/(?<=\[)|,/dgv,beginCaptures:{"1":{name:"punctuation.separator.dictionary.pair.hjson"}},end:/(?=[^\p{space}\,\/\#])|(?=\/[^\/\*])/dgv,patterns:[{include:"#comments"},{match:/,/dgv,name:"invalid.illegal.extra-comma.hjson"}]},{match:/,/dgv,name:"punctuation.separator.array.hjson"},{match:/[^\p{space}\]]/dgv,name:"invalid.illegal.expected-array-separator.hjson"}]},arrayJstring:{patterns:[{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(")(?:\p{space}*((?:[^\,\p{space}\]\#\/]|\/[^\/\*])+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.double.hjson",patterns:[{include:"#jstringDoubleContent"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(')(?:\p{space}*((?:[^\,\p{space}\]\#\/]|\/[^\/\*])+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.single.hjson",patterns:[{include:"#jstringSingleContent"}]}]},arrayMstring:{begin:/'''/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(''')(?:\p{space}*((?:[^\,\p{space}\]\#\/]|\/[^\/\*])+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.multiline.hjson"},arrayNumber:{captures:{"1":{name:"constant.numeric.hjson"},"2":{name:"punctuation.separator.array.after-num.hjson"}},match:/(-?(?:0|[1-9]\p{Nd}*)(?:\.\p{Nd}+)?(?:[eE][\+\-]?\p{Nd}+)?)(?:[\t ]*(?=,)|[\t ]*(?:(,)[\t ]*)?(?=(?=$|\n)|#|\/\*|\/\/|\]))/dgv},arrayObject:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.dictionary.begin.hjson"}},end:/(\}|(?<=\}))(?:\p{space}*([^\,\p{space}\]]+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.dictionary.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"meta.structure.dictionary.hjson",patterns:[{include:"#objectContent"}]},arrayString:{patterns:[{include:"#arrayMstring"},{include:"#arrayJstring"},{include:"#ustring"}]},arrayValue:{patterns:[{include:"#arrayNumber"},{include:"#arrayConstant"},{include:"#arrayString"},{include:"#arrayObject"},{include:"#arrayArray"}]},comments:{patterns:[{captures:{"1":{name:"punctuation.definition.comment.hjson"}},match:/(?<=^|\n(?!$))\p{space}*(#)[^\n]*(?:\n)?/dgv,name:"comment.line.hash"},{captures:{"1":{name:"punctuation.definition.comment.hjson"}},match:/(?<=^|\n(?!$))\p{space}*(\/\/)[^\n]*(?:\n)?/dgv,name:"comment.line.double-slash"},{begin:/(?<=^|\n(?!$))\p{space}*\/\*/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.hjson"}},end:/\*\/(?:\p{space}*\n)?/dgv,endCaptures:{"1":{name:"punctuation.definition.comment.hjson"}},name:"comment.block.double-slash"},{captures:{"1":{name:"punctuation.definition.comment.hjson"}},match:/(#)[^\n]*/dgv,name:"comment.line.hash"},{captures:{"1":{name:"punctuation.definition.comment.hjson"}},match:/(\/\/)[^\n]*/dgv,name:"comment.line.double-slash"},{begin:/\/\*/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.hjson"}},end:/\*\//dgv,endCaptures:{"1":{name:"punctuation.definition.comment.hjson"}},name:"comment.block.double-slash"}]},commentsNewline:{patterns:[{captures:{"1":{name:"punctuation.definition.comment.hjson"}},match:/(#)[^\n]*\n/dgv,name:"comment.line.hash"},{captures:{"1":{name:"punctuation.definition.comment.hjson"}},match:/(\/\/)[^\n]*\n/dgv,name:"comment.line.double-slash"},{begin:/\/\*/dgv,beginCaptures:{"1":{name:"punctuation.definition.comment.hjson"}},end:/\*\/(\p{space}*\n)?/dgv,endCaptures:{"1":{name:"punctuation.definition.comment.hjson"}},name:"comment.block.double-slash"}]},constant:{captures:{"1":{name:"constant.language.hjson"}},match:/\b(true|false|null)[\t ]*(?=(?=$|\n)|#|\/\*|\/\/|\])/dgv},jstring:{patterns:[{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(")(?:\p{space}*((?:[^\p{space}\#\/]|\/[^\/\*])[^\n]*)(?=$|\n))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.double.hjson",patterns:[{include:"#jstringDoubleContent"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(')(?:\p{space}*((?:[^\p{space}\#\/]|\/[^\/\*])[^\n]*)(?=$|\n))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.single.hjson",patterns:[{include:"#jstringSingleContent"}]}]},jstringDoubleContent:{patterns:[{match:/\\(?:["'\\\/bfnrt]|u[0-9a-fA-F]{4})/dgv,name:"constant.character.escape.hjson"},{match:/\\[^\n]/dgv,name:"invalid.illegal.unrecognized-string-escape.hjson"},{match:/[^"]*[^\n\r"\\](?=$|\n)/dgv,name:"invalid.illegal.string.hjson"}]},jstringSingleContent:{patterns:[{match:/\\(?:["'\\\/bfnrt]|u[0-9a-fA-F]{4})/dgv,name:"constant.character.escape.hjson"},{match:/\\[^\n]/dgv,name:"invalid.illegal.unrecognized-string-escape.hjson"},{match:/[^']*[^\n\r'\\](?=$|\n)/dgv,name:"invalid.illegal.string.hjson"}]},key:{begin:/([^\:\,\{\}\[\]\p{space}"'][^\:\,\{\}\[\]\p{space}]*|'(?:[^\\']|(\\(?:["'\\\/bfnrt]|u[0-9a-fA-F]{4}))|(\\[^\n]))*'|"(?:[^\\"]|(\\(?:["'\\\/bfnrt]|u[0-9a-fA-F]{4}))|(\\[^\n]))*")\p{space}*(?!\n)([\,\{\}\[\]]*)/dgv,beginCaptures:{"0":{name:"meta.structure.key-value.begin.hjson"},"1":{name:"support.type.property-name.hjson"},"2":{name:"constant.character.escape.hjson"},"3":{name:"invalid.illegal.unrecognized-string-escape.hjson"},"4":{name:"constant.character.escape.hjson"},"5":{name:"invalid.illegal.unrecognized-string-escape.hjson"},"6":{name:"invalid.illegal.separator.hjson"},"7":{name:"invalid.illegal.property-name.hjson"}},end:/(?<!(?<=^|\n(?!$))|:)\p{space}*\n|(?=\})|(,)/dgv,endCaptures:{"1":{name:"punctuation.separator.dictionary.pair.hjson"}},patterns:[{include:"#commentsNewline"},{include:"#keyValue"},{match:/[^\p{space}]/dgv,name:"invalid.illegal.object-property.hjson"}]},keyValue:{begin:/\p{space}*(:)\p{space}*([\,\}\]]*)/dgv,beginCaptures:{"1":{name:"punctuation.separator.dictionary.key-value.hjson"},"2":{name:"invalid.illegal.object-property.hjson"}},end:/(?<!(?<=^|\n(?!$)))\p{space}*(?=\n)|(?=[\}\,])/dgv,name:"meta.structure.key-value.hjson",patterns:[{include:"#comments"},{match:/(?<=^|\n(?!$))\p{space}+/dgv},{include:"#objectValue"},{captures:{"1":{name:"invalid.illegal.object-property.closing-bracket.hjson"}},match:/(?<=^|\n(?!$))\p{space}*(\})/dgv},{match:/[^\p{space}]/dgv,name:"invalid.illegal.object-property.hjson"}]},mstring:{begin:/'''/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(''')(?:\p{space}*((?:[^\p{space}\#\/]|\/[^\/\*])[^\n]*)(?=$|\n))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.multiline.hjson"},number:{captures:{"1":{name:"constant.numeric.hjson"}},match:/(-?(?:0|[1-9]\p{Nd}*)(?:\.\p{Nd}+)?(?:[eE][\+\-]?\p{Nd}+)?)[\t ]*(?=(?=$|\n)|#|\/\*|\/\/|\])/dgv},object:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.dictionary.begin.hjson"}},end:/(\}|(?<=\}))(?:\p{space}*([^\,\p{space}]+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.dictionary.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"meta.structure.dictionary.hjson",patterns:[{include:"#objectContent"}]},objectArray:{begin:/\[/dgv,beginCaptures:{"0":{name:"punctuation.definition.array.begin.hjson"}},end:/(\])(?:\p{space}*([^\,\p{space}\}]+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.array.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"meta.structure.array.hjson",patterns:[{include:"#arrayContent"}]},objectConstant:{captures:{"1":{name:"constant.language.hjson"},"2":{name:"punctuation.separator.dictionary.pair.after-const.hjson"}},match:/\b(true|false|null)(?:[\t ]*(?=,)|[\t ]*(?:(,)[\t ]*)?(?=(?=$|\n)|#|\/\*|\/\/|\}))/dgv},objectContent:{patterns:[{include:"#comments"},{include:"#key"},{match:/:[\.\|\p{space}]/dgv,name:"invalid.illegal.object-property.hjson"},{begin:/(?<=\{|,)|,/dgv,beginCaptures:{"1":{name:"punctuation.separator.dictionary.pair.hjson"}},end:/(?=[^\p{space}\,\/\#])|(?=\/[^\/\*])/dgv,patterns:[{include:"#comments"},{match:/,/dgv,name:"invalid.illegal.extra-comma.hjson"}]},{match:/[^\p{space}]/dgv,name:"invalid.illegal.object-property.hjson"}]},objectJstring:{patterns:[{begin:/"/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(")(?:\p{space}*((?:[^\,\p{space}\}\#\/]|\/[^\/\*])+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.double.hjson",patterns:[{include:"#jstringDoubleContent"}]},{begin:/'/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(')(?:\p{space}*((?:[^\,\p{space}\}\#\/]|\/[^\/\*])+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.single.hjson",patterns:[{include:"#jstringSingleContent"}]}]},objectMstring:{begin:/'''/dgv,beginCaptures:{"0":{name:"punctuation.definition.string.begin.hjson"}},end:/(''')(?:\p{space}*((?:[^\,\p{space}\}\#\/]|\/[^\/\*])+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.string.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"string.quoted.multiline.hjson"},objectNumber:{captures:{"1":{name:"constant.numeric.hjson"},"2":{name:"punctuation.separator.dictionary.pair.after-num.hjson"}},match:/(-?(?:0|[1-9]\p{Nd}*)(?:\.\p{Nd}+)?(?:[eE][\+\-]?\p{Nd}+)?)(?:[\t ]*(?=,)|[\t ]*(?:(,)[\t ]*)?(?=(?=$|\n)|#|\/\*|\/\/|\}))/dgv},objectObject:{begin:/\{/dgv,beginCaptures:{"0":{name:"punctuation.definition.dictionary.begin.hjson"}},end:/(\}|(?<=\})\}?)(?:\p{space}*([^\,\p{space}\}]+))?/dgv,endCaptures:{"1":{name:"punctuation.definition.dictionary.end.hjson"},"2":{name:"invalid.illegal.value.hjson"}},name:"meta.structure.dictionary.hjson",patterns:[{include:"#objectContent"}]},objectString:{patterns:[{include:"#objectMstring"},{include:"#objectJstring"},{include:"#ustring"}]},objectValue:{patterns:[{include:"#objectNumber"},{include:"#objectConstant"},{include:"#objectString"},{include:"#objectObject"},{include:"#objectArray"}]},string:{patterns:[{include:"#mstring"},{include:"#jstring"},{include:"#ustring"}]},ustring:{match:/([^\:\,\{\[\}\]\p{space}][^\n]*)(?=$|\n)/dgv,name:"string.quoted.none.hjson"},value:{patterns:[{include:"#number"},{include:"#constant"},{include:"#string"},{include:"#object"},{include:"#array"}]}},scopeName:"source.hjson",embeddedLangs:undefined,aliases:undefined})
|
|
2
|
+
|
|
3
|
+
export default [
|
|
4
|
+
lang
|
|
5
|
+
]
|
package/dist/hlsl.d.mts
ADDED
package/dist/hlsl.mjs
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
const lang = Object.freeze({displayName:"HLSL",name:"hlsl",patterns:[{begin:/\/\*/dgv,end:/\*\//dgv,name:"comment.line.block.hlsl"},{begin:/\/\//dgv,end:/(?=$|\n)/dgv,name:"comment.line.double-slash.hlsl"},{match:/\b\p{Nd}+\.\p{Nd}*(F|f)?\b/dgv,name:"constant.numeric.decimal.hlsl"},{match:/(\.(\p{Nd}+)(F|f)?)\b/dgv,name:"constant.numeric.decimal.hlsl"},{match:/\b(\p{Nd}+(F|f)?)\b/dgv,name:"constant.numeric.decimal.hlsl"},{match:/\b(0(x|X)[0-9a-fA-F]+)\b/dgv,name:"constant.numeric.hex.hlsl"},{match:/\b(false|true)\b/dgv,name:"constant.language.hlsl"},{match:/(?<=^|\n(?!$))\p{space}*#\p{space}*(define|elif|else|endif|ifdef|ifndef|if|undef|include|line|error|pragma)/dgv,name:"keyword.preprocessor.hlsl"},{match:/\b(break|case|continue|default|discard|do|else|for|if|return|switch|while)\b/dgv,name:"keyword.control.hlsl"},{match:/\b(compile)\b/dgv,name:"keyword.control.fx.hlsl"},{match:/\b(typedef)\b/dgv,name:"keyword.typealias.hlsl"},{match:/\b(bool([1-4](x[1-4])?)?|double([1-4](x[1-4])?)?|dword|float([1-4](x[1-4])?)?|half([1-4](x[1-4])?)?|int([1-4](x[1-4])?)?|matrix|min10float([1-4](x[1-4])?)?|min12int([1-4](x[1-4])?)?|min16float([1-4](x[1-4])?)?|min16int([1-4](x[1-4])?)?|min16uint([1-4](x[1-4])?)?|unsigned|uint([1-4](x[1-4])?)?|vector|void)\b/dgv,name:"storage.type.basic.hlsl"},{match:/\b([a-zA-Z_][\p{L}\p{M}\p{N}\p{Pc}]*)(?=[\p{space}]*\()/dgv,name:"support.function.hlsl"},{match:/(?<=:\p{space}|:)(?:BINORMAL\p{Nd}*|BLENDINDICES\p{Nd}*|BLENDWEIGHT\p{Nd}*|COLOR\p{Nd}*|NORMAL\p{Nd}*|POSITIONT|POSITION|PSIZE\p{Nd}*|TANGENT\p{Nd}*|TEXCOORD\p{Nd}*|FOG|TESSFACTOR\p{Nd}*|VFACE|VPOS|DEPTH\p{Nd}*)\b/dgiv,name:"support.variable.semantic.hlsl"},{match:/(?<=:\p{space}|:)(?:SV_ClipDistance\p{Nd}*|SV_CullDistance\p{Nd}*|SV_Coverage|SV_Depth|SV_DepthGreaterEqual\p{Nd}*|SV_DepthLessEqual\p{Nd}*|SV_InstanceID|SV_IsFrontFace|SV_Position|SV_RenderTargetArrayIndex|SV_SampleIndex|SV_StencilRef|SV_Target[0-7]?|SV_VertexID|SV_ViewportArrayIndex)\b/dgiv,name:"support.variable.semantic.sm4.hlsl"},{match:/(?<=:\p{space}|:)(?:SV_DispatchThreadID|SV_DomainLocation|SV_GroupID|SV_GroupIndex|SV_GroupThreadID|SV_GSInstanceID|SV_InsideTessFactor|SV_OutputControlPointID|SV_TessFactor)\b/dgiv,name:"support.variable.semantic.sm5.hlsl"},{match:/(?<=:\p{space}|:)(?:SV_InnerCoverage|SV_StencilRef)\b/dgiv,name:"support.variable.semantic.sm5_1.hlsl"},{match:/\b(column_major|const|export|extern|globallycoherent|groupshared|inline|inout|in|out|precise|row_major|shared|static|uniform|volatile)\b/dgv,name:"storage.modifier.hlsl"},{match:/\b(snorm|unorm)\b/dgv,name:"storage.modifier.float.hlsl"},{match:/\b(packoffset|register)\b/dgv,name:"storage.modifier.postfix.hlsl"},{match:/\b(centroid|linear|nointerpolation|noperspective|sample)\b/dgv,name:"storage.modifier.interpolation.hlsl"},{match:/\b(lineadj|line|point|triangle|triangleadj)\b/dgv,name:"storage.modifier.geometryshader.hlsl"},{match:/\b(string)\b/dgv,name:"support.type.other.hlsl"},{match:/\b(AppendStructuredBuffer|Buffer|ByteAddressBuffer|ConstantBuffer|ConsumeStructuredBuffer|InputPatch|OutputPatch)\b/dgv,name:"support.type.object.hlsl"},{match:/\b(RasterizerOrderedBuffer|RasterizerOrderedByteAddressBuffer|RasterizerOrderedStructuredBuffer|RasterizerOrderedTexture1D|RasterizerOrderedTexture1DArray|RasterizerOrderedTexture2D|RasterizerOrderedTexture2DArray|RasterizerOrderedTexture3D)\b/dgv,name:"support.type.object.rasterizerordered.hlsl"},{match:/\b(RWBuffer|RWByteAddressBuffer|RWStructuredBuffer|RWTexture1D|RWTexture1DArray|RWTexture2D|RWTexture2DArray|RWTexture3D)\b/dgv,name:"support.type.object.rw.hlsl"},{match:/\b(LineStream|PointStream|TriangleStream)\b/dgv,name:"support.type.object.geometryshader.hlsl"},{match:/\b(sampler|sampler1D|sampler2D|sampler3D|samplerCUBE|sampler_state)\b/dgv,name:"support.type.sampler.legacy.hlsl"},{match:/\b(SamplerState|SamplerComparisonState)\b/dgv,name:"support.type.sampler.hlsl"},{match:/\b(texture2D|textureCUBE)\b/dgv,name:"support.type.texture.legacy.hlsl"},{match:/\b(Texture1D|Texture1DArray|Texture2D|Texture2DArray|Texture2DMS|Texture2DMSArray|Texture3D|TextureCube|TextureCubeArray)\b/dgv,name:"support.type.texture.hlsl"},{match:/\b(cbuffer|class|interface|namespace|struct|tbuffer)\b/dgv,name:"storage.type.structured.hlsl"},{match:/\b(FALSE|TRUE|NULL)\b/dgv,name:"support.constant.property-value.fx.hlsl"},{match:/\b(BlendState|DepthStencilState|RasterizerState)\b/dgv,name:"support.type.fx.hlsl"},{match:/\b(technique|Technique|technique10|technique11|pass)\b/dgv,name:"storage.type.fx.technique.hlsl"},{match:/\b(AlphaToCoverageEnable|BlendEnable|SrcBlend|DestBlend|BlendOp|SrcBlendAlpha|DestBlendAlpha|BlendOpAlpha|RenderTargetWriteMask)\b/dgv,name:"meta.object-literal.key.fx.blendstate.hlsl"},{match:/\b(DepthEnable|DepthWriteMask|DepthFunc|StencilEnable|StencilReadMask|StencilWriteMask|FrontFaceStencilFail|FrontFaceStencilZFail|FrontFaceStencilPass|FrontFaceStencilFunc|BackFaceStencilFail|BackFaceStencilZFail|BackFaceStencilPass|BackFaceStencilFunc)\b/dgv,name:"meta.object-literal.key.fx.depthstencilstate.hlsl"},{match:/\b(FillMode|CullMode|FrontCounterClockwise|DepthBias|DepthBiasClamp|SlopeScaleDepthBias|ZClipEnable|ScissorEnable|MultiSampleEnable|AntiAliasedLineEnable)\b/dgv,name:"meta.object-literal.key.fx.rasterizerstate.hlsl"},{match:/\b(Filter|AddressU|AddressV|AddressW|MipLODBias|MaxAnisotropy|ComparisonFunc|BorderColor|MinLOD|MaxLOD)\b/dgv,name:"meta.object-literal.key.fx.samplerstate.hlsl"},{match:/\b(?:ZERO|ONE|SRC_COLOR|INV_SRC_COLOR|SRC_ALPHA|INV_SRC_ALPHA|DEST_ALPHA|INV_DEST_ALPHA|DEST_COLOR|INV_DEST_COLOR|SRC_ALPHA_SAT|BLEND_FACTOR|INV_BLEND_FACTOR|SRC1_COLOR|INV_SRC1_COLOR|SRC1_ALPHA|INV_SRC1_ALPHA)\b/dgiv,name:"support.constant.property-value.fx.blend.hlsl"},{match:/\b(?:ADD|SUBTRACT|REV_SUBTRACT|MIN|MAX)\b/dgiv,name:"support.constant.property-value.fx.blendop.hlsl"},{match:/\bALL\b/dgiv,name:"support.constant.property-value.fx.depthwritemask.hlsl"},{match:/\b(?:NEVER|LESS|EQUAL|LESS_EQUAL|GREATER|NOT_EQUAL|GREATER_EQUAL|ALWAYS)\b/dgiv,name:"support.constant.property-value.fx.comparisonfunc.hlsl"},{match:/\b(?:KEEP|REPLACE|INCR_SAT|DECR_SAT|INVERT|INCR|DECR)\b/dgiv,name:"support.constant.property-value.fx.stencilop.hlsl"},{match:/\b(?:WIREFRAME|SOLID)\b/dgiv,name:"support.constant.property-value.fx.fillmode.hlsl"},{match:/\b(?:NONE|FRONT|BACK)\b/dgiv,name:"support.constant.property-value.fx.cullmode.hlsl"},{match:/\b(?:MIN_MAG_MIP_POINT|MIN_MAG_POINT_MIP_LINEAR|MIN_POINT_MAG_LINEAR_MIP_POINT|MIN_POINT_MAG_MIP_LINEAR|MIN_LINEAR_MAG_MIP_POINT|MIN_LINEAR_MAG_POINT_MIP_LINEAR|MIN_MAG_LINEAR_MIP_POINT|MIN_MAG_MIP_LINEAR|ANISOTROPIC|COMPARISON_MIN_MAG_MIP_POINT|COMPARISON_MIN_MAG_POINT_MIP_LINEAR|COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT|COMPARISON_MIN_POINT_MAG_MIP_LINEAR|COMPARISON_MIN_LINEAR_MAG_MIP_POINT|COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR|COMPARISON_MIN_MAG_LINEAR_MIP_POINT|COMPARISON_MIN_MAG_MIP_LINEAR|COMPARISON_ANISOTROPIC|TEXT_1BIT)\b/dgiv,name:"support.constant.property-value.fx.filter.hlsl"},{match:/\b(?:WRAP|MIRROR|CLAMP|BORDER|MIRROR_ONCE)\b/dgiv,name:"support.constant.property-value.fx.textureaddressmode.hlsl"},{begin:/"/dgv,end:/"/dgv,name:"string.quoted.double.hlsl",patterns:[{match:/\\[^\n]/dgv,name:"constant.character.escape.hlsl"}]}],scopeName:"source.hlsl",embeddedLangs:undefined,aliases:undefined})
|
|
2
|
+
|
|
3
|
+
export default [
|
|
4
|
+
lang
|
|
5
|
+
]
|
package/dist/hs.d.mts
ADDED
package/dist/hs.mjs
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import html from './html.mjs'
|
|
2
|
+
|
|
3
|
+
const lang = Object.freeze({displayName:"HTML (Derivative)",injections:{"R:text.html - (comment.block, text.html meta.embedded, meta.tag.*.*.html, meta.tag.*.*.*.html, meta.tag.*.*.*.*.html)":{comment:"Uses R: to ensure this matches after any other injections.",patterns:[{match:"<",name:"invalid.illegal.bad-angle-bracket.html"}]}},name:"html-derivative",patterns:[{include:"text.html.basic#core-minus-invalid"},{begin:/(<\/?)([\p{L}\p{M}\p{N}\p{Pc}][^\p{space}\>]*)(?<!\/)/dgv,beginCaptures:{"1":{name:"punctuation.definition.tag.begin.html"},"2":{name:"entity.name.tag.html"}},end:/((?: ?\/)?>)/dgv,endCaptures:{"1":{name:"punctuation.definition.tag.end.html"}},name:"meta.tag.other.unrecognized.html.derivative",patterns:[{include:"text.html.basic#attribute"}]}],scopeName:"text.html.derivative",embeddedLangs:["html"],aliases:undefined})
|
|
4
|
+
|
|
5
|
+
export default [
|
|
6
|
+
...html,
|
|
7
|
+
lang
|
|
8
|
+
]
|