@codingame/monaco-editor-wrapper 3.9.3 → 4.0.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/C2Hs-configuration.json.js +3 -0
- package/dist/C2Hs.json.js +3 -0
- package/dist/COBOL.tmLanguage.json.js +3 -0
- package/dist/Erlang.plist.js +2 -1751
- package/dist/Hsc2Hs-configuration.json.js +3 -0
- package/dist/Hsc2Hs.json.js +3 -0
- package/dist/JavaProperties.tmLanguage.json.js +3 -0
- package/dist/Kotlin.tmLanguage.js +2 -723
- package/dist/META.json.js +3 -0
- package/dist/META.json2.js +3 -0
- package/dist/Markdown Redcarpet.json.js +3 -0
- package/dist/RMarkdown.json.js +3 -0
- package/dist/Rcpp.json.js +3 -0
- package/dist/Rd (R Documentation).json.js +3 -0
- package/dist/Scala.tmLanguage.json.js +3 -0
- package/dist/_commonjsHelpers.js +35 -0
- package/dist/_rollupPluginBabelHelpers.js +1 -1
- package/dist/add.svg.js +3 -0
- package/dist/add.svg2.js +3 -0
- package/dist/adddep-dark.svg.js +3 -0
- package/dist/adddep-light.svg.js +3 -0
- package/dist/alex.json.js +3 -0
- package/dist/angular-directives.json.js +3 -0
- package/dist/angular-interpolations.json.js +3 -0
- package/dist/angular-template-language-configuration.json.js +3 -0
- package/dist/arrow-circle-up-dark.svg.js +3 -0
- package/dist/arrow-circle-up-light.svg.js +3 -0
- package/dist/aspnetcorerazor.tmLanguage.json.js +3 -0
- package/dist/atd.json.js +3 -0
- package/dist/book-dark.svg.js +3 -0
- package/dist/book-light.svg.js +3 -0
- package/dist/book-open-dark.svg.js +3 -0
- package/dist/book-open-light.svg.js +3 -0
- package/dist/buildtarget.json.js +3 -0
- package/dist/cabal-configuration.json.js +3 -0
- package/dist/cabal.json.js +3 -0
- package/dist/codeblock-cabal.json.js +3 -0
- package/dist/codeblock-haskell.json.js +3 -0
- package/dist/codeblock-literate-haskell.json.js +3 -0
- package/dist/codeblock.json.js +3 -0
- package/dist/codeblock.json2.js +3 -0
- package/dist/configuration/index.d.ts +0 -1
- package/dist/cram.json.js +3 -0
- package/dist/csharp.json.js +3 -0
- package/dist/css.worker.js +1 -1
- package/dist/d.json.js +3 -0
- package/dist/d.json2.js +3 -0
- package/dist/dart-language-configuration.json.js +3 -0
- package/dist/dart.json.js +3 -0
- package/dist/dcf-configuration.json.js +3 -0
- package/dist/dcf.json.js +3 -0
- package/dist/diet.json.js +3 -0
- package/dist/diet.json2.js +3 -0
- package/dist/diet.json3.js +3 -0
- package/dist/django-html.tmLanguage.json.js +3 -0
- package/dist/django-txt.tmLanguage.json.js +3 -0
- package/dist/dml.json.js +3 -0
- package/dist/document-search-dark.svg.js +3 -0
- package/dist/document-search-light.svg.js +3 -0
- package/dist/documentation-inverse.svg.js +3 -0
- package/dist/documentation.svg.js +3 -0
- package/dist/dub-convert-inverse.svg.js +3 -0
- package/dist/dub-convert.svg.js +3 -0
- package/dist/dune-project.json.js +3 -0
- package/dist/dune-project.json2.js +3 -0
- package/dist/dune-workspace.json.js +3 -0
- package/dist/dune.json.js +3 -0
- package/dist/dune.json2.js +3 -0
- package/dist/dune.json3.js +3 -0
- package/dist/edit-dub-inverse.svg.js +3 -0
- package/dist/edit-dub.svg.js +3 -0
- package/dist/edit-source-inverse.svg.js +3 -0
- package/dist/edit-source.svg.js +3 -0
- package/dist/eex-language-configuration.json.js +3 -0
- package/dist/eex.json.js +3 -0
- package/dist/elixir-language-configuration.json.js +3 -0
- package/dist/elixir.json.js +3 -0
- package/dist/erlang.configuration.json.js +3 -0
- package/dist/erlang.json.js +3 -0
- package/dist/expression.json.js +3 -0
- package/dist/extension-web.js.js +3 -0
- package/dist/extension-web.js2.js +3 -0
- package/dist/extension.browser.js.js +3 -0
- package/dist/extensions.d.ts +35 -0
- package/dist/features/htmlContribution.js +0 -1
- package/dist/features/jsonContribution.d.ts +2 -4
- package/dist/features/jsonContribution.js +10 -29
- package/dist/features/typescriptContribution.js +2 -2
- package/dist/file_type_java.svg.js +3 -0
- package/dist/file_type_scala.svg.js +3 -0
- package/dist/filters.json.js +3 -0
- package/dist/focus-dark.svg.js +3 -0
- package/dist/focus-light.svg.js +3 -0
- package/dist/general.json.js +3 -0
- package/dist/get-inverse.svg.js +3 -0
- package/dist/get.svg.js +3 -0
- package/dist/go.json.js +3 -0
- package/dist/go.mod.language-configuration.json.js +3 -0
- package/dist/go.mod.tmGrammar.json.js +3 -0
- package/dist/go.sum.tmGrammar.json.js +3 -0
- package/dist/govulncheck.tmGrammar.json.js +3 -0
- package/dist/happy.json.js +3 -0
- package/dist/haskell-configuration.json.js +3 -0
- package/dist/haskell.json.js +3 -0
- package/dist/hot-reload-tb.png.js +3 -0
- package/dist/hot-reload.svg.js +3 -0
- package/dist/html-eex.json.js +3 -0
- package/dist/html.worker.js +1 -1
- package/dist/index.d.ts +2 -3
- package/dist/index.js +9 -6
- package/dist/index2.js +2 -1351
- package/dist/inline-styles.json.js +3 -0
- package/dist/inline-template.json.js +3 -0
- package/dist/inspector.svg.js +3 -0
- package/dist/java-properties-configuration.json.js +3 -0
- package/dist/java.json.js +3 -0
- package/dist/javascript.json.js +3 -0
- package/dist/json.worker.js +1 -1
- package/dist/jvm-bytecode-verbose.json.js +3 -0
- package/dist/jvm-bytecode.json.js +3 -0
- package/dist/kotlin.configuration.json.js +3 -0
- package/dist/kotlin.json.js +3 -0
- package/dist/lang-config.json.js +3 -0
- package/dist/language-configuration.json.js +3 -0
- package/dist/language-configuration.json2.js +3 -0
- package/dist/language-configuration.json3.js +3 -0
- package/dist/language-configuration.json4.js +3 -0
- package/dist/language-configuration.json5.js +3 -0
- package/dist/language-configuration.json6.js +3 -0
- package/dist/language-configuration.json7.js +3 -0
- package/dist/language-configuration.json8.js +3 -0
- package/dist/languages/index.d.ts +0 -2
- package/dist/literate-haskell-configuration.json.js +3 -0
- package/dist/literateHaskell.json.js +3 -0
- package/dist/main.js +839 -3115
- package/dist/markdown-svelte-css.json.js +3 -0
- package/dist/markdown-svelte-js.json.js +3 -0
- package/dist/markdown-svelte.json.js +3 -0
- package/dist/menhir-action.json.js +3 -0
- package/dist/menhir.json.js +3 -0
- package/dist/menhir.json2.js +3 -0
- package/dist/merlin.json.js +3 -0
- package/dist/monaco.d.ts +6 -9
- package/dist/oasis.json.js +3 -0
- package/dist/oasis.json2.js +3 -0
- package/dist/ocaml-markdown-codeblock.json.js +3 -0
- package/dist/ocaml.interface.json.js +3 -0
- package/dist/ocaml.json.js +3 -0
- package/dist/ocaml.json2.js +3 -0
- package/dist/ocaml.json3.js +3 -0
- package/dist/ocamlbuild.json.js +3 -0
- package/dist/ocamlbuild.json2.js +3 -0
- package/dist/ocamldoc.json.js +3 -0
- package/dist/ocamlformat.json.js +3 -0
- package/dist/ocamlformat.json2.js +3 -0
- package/dist/ocamllex.json.js +3 -0
- package/dist/ocamllex.json2.js +3 -0
- package/dist/ocamllex.json3.js +3 -0
- package/dist/opam-install.json.js +3 -0
- package/dist/opam-install.json2.js +3 -0
- package/dist/opam.json.js +3 -0
- package/dist/opam.json2.js +3 -0
- package/dist/outdated-inverse.svg.js +3 -0
- package/dist/outdated.svg.js +3 -0
- package/dist/pascal.configuration.json.js +3 -0
- package/dist/pascal.json.js +3 -0
- package/dist/pascal.tmLanguage.js +2 -168
- package/dist/performance.svg.js +3 -0
- package/dist/pgsql.tmLanguage.js +2 -283
- package/dist/pip-requirements.json.js +3 -0
- package/dist/pip-requirements.tmLanguage.json.js +3 -0
- package/dist/plus-dark.svg.js +3 -0
- package/dist/plus-light.svg.js +3 -0
- package/dist/postcss.json.js +3 -0
- package/dist/preview-right-dark.svg.js +3 -0
- package/dist/preview-right-light.svg.js +3 -0
- package/dist/pug-svelte-dotblock.json.js +3 -0
- package/dist/pug-svelte-tags.json.js +3 -0
- package/dist/pug-svelte.json.js +3 -0
- package/dist/r-configuration.json.js +3 -0
- package/dist/r-snippets.json.js +3 -0
- package/dist/r.json.js +3 -0
- package/dist/rbuildignore-configuration.json.js +3 -0
- package/dist/rbuildignore.json.js +3 -0
- package/dist/rd-configuration.json.js +3 -0
- package/dist/reason-markdown-codeblock.json.js +3 -0
- package/dist/reason.json.js +3 -0
- package/dist/reason.json2.js +3 -0
- package/dist/ref-group-by-type-dark.svg.js +3 -0
- package/dist/ref-group-by-type-light.svg.js +3 -0
- package/dist/ref-ungroup-by-type-dark.svg.js +3 -0
- package/dist/ref-ungroup-by-type-light.svg.js +3 -0
- package/dist/refresh-dark.svg.js +3 -0
- package/dist/refresh-dark.svg2.js +3 -0
- package/dist/refresh-light.svg.js +3 -0
- package/dist/refresh-light.svg2.js +3 -0
- package/dist/repl.svg.js +3 -0
- package/dist/repl.svg2.js +3 -0
- package/dist/rmarkdown.json2.js +3 -0
- package/dist/rmd-configuration.json.js +3 -0
- package/dist/rnamespace-configuration.json.js +3 -0
- package/dist/rnamespace.json.js +3 -0
- package/dist/save.svg.js +3 -0
- package/dist/save.svg2.js +3 -0
- package/dist/scalameta-logo.png.js +3 -0
- package/dist/sdl.json.js +3 -0
- package/dist/semanticdb.json.js +3 -0
- package/dist/services.d.ts +4 -0
- package/dist/solidity.configuration.json.js +3 -0
- package/dist/solidity.json.js +3 -0
- package/dist/solidity.json2.js +3 -0
- package/dist/svelte.json.js +3 -0
- package/dist/svelte.tmLanguage.json.js +3 -0
- package/dist/switch-impl-intf.dark.svg.js +3 -0
- package/dist/switch-impl-intf.light.svg.js +3 -0
- package/dist/systemverilog.json.js +3 -0
- package/dist/systemverilog.tmLanguage.json.js +3 -0
- package/dist/tags.json.js +3 -0
- package/dist/tasty.json.js +3 -0
- package/dist/tcl.json.js +3 -0
- package/dist/tcl.json2.js +3 -0
- package/dist/template.json.js +3 -0
- package/dist/theme/index.d.ts +1 -4
- package/dist/tools/EditorOpenHandlerRegistry.d.ts +3 -2
- package/dist/ts.worker.js +1 -1
- package/dist/typescript.json.js +3 -0
- package/dist/upgrade-inverse.svg.js +3 -0
- package/dist/upgrade.svg.js +3 -0
- package/dist/vim.js +37 -36
- package/dist/vs2019_dark.json.js +3 -0
- package/dist/vs2019_light.json.js +3 -0
- package/dist/worker.js +14 -2
- package/dist/x-dark.svg.js +3 -0
- package/dist/x-light.svg.js +3 -0
- package/package.json +40 -42
- package/stats.html +90 -1429
- package/dist/COBOL.tmLanguage.js +0 -172
- package/dist/HTML (Eex)2.js +0 -100
- package/dist/JSON.tmLanguage.js +0 -221
- package/dist/JSONC.tmLanguage.js +0 -221
- package/dist/JavaProperties.tmLanguage.js +0 -116
- package/dist/JavaScript.tmLanguage.js +0 -5929
- package/dist/JavaScriptReact.tmLanguage.js +0 -5929
- package/dist/META.js +0 -100
- package/dist/MagicPython.tmLanguage.js +0 -4221
- package/dist/MagicRegExp.tmLanguage.js +0 -505
- package/dist/Markdown Redcarpet.js +0 -221
- package/dist/RMarkdown.js +0 -25
- package/dist/Rcpp.js +0 -50
- package/dist/Rd (R Documentation).js +0 -131
- package/dist/Regular Expressions (JavaScript).tmLanguage.js +0 -166
- package/dist/Scala.tmLanguage.js +0 -1324
- package/dist/TypeScript.tmLanguage.js +0 -5680
- package/dist/TypeScriptReact.tmLanguage.js +0 -5929
- package/dist/angular.js +0 -62
- package/dist/asp-vb-net.tmlanguage.js +0 -247
- package/dist/aspnetcorerazor.js +0 -72
- package/dist/aspnetcorerazor.tmLanguage.js +0 -1825
- package/dist/atd.js +0 -110
- package/dist/atd2.js +0 -114
- package/dist/buildignore.r.js +0 -5
- package/dist/buildtarget.js +0 -53
- package/dist/c.js +0 -101
- package/dist/c.tmLanguage.js +0 -3565
- package/dist/cabal.js +0 -10
- package/dist/cabal.tmLanguage.js +0 -66
- package/dist/clojure.js +0 -68
- package/dist/clojure.tmLanguage.js +0 -439
- package/dist/cobol.js +0 -6
- package/dist/cobol2.js +0 -341
- package/dist/codeblock-cabal.js +0 -42
- package/dist/codeblock-haskell.js +0 -42
- package/dist/codeblock-literate-haskell.js +0 -42
- package/dist/codeblock.js +0 -59
- package/dist/codeblock2.js +0 -36
- package/dist/codeblock3.js +0 -95
- package/dist/coffeescript-coffeescript.code-snippets.js +0 -18
- package/dist/coffeescript.js +0 -91
- package/dist/coffeescript.tmLanguage.js +0 -1324
- package/dist/configuration/files.d.ts +0 -6
- package/dist/cpp-c.code-snippets.js +0 -18
- package/dist/cpp-cpp.code-snippets.js +0 -18
- package/dist/cpp.js +0 -101
- package/dist/cpp.tmLanguage.js +0 -16648
- package/dist/cpptools.js +0 -2631
- package/dist/cram.js +0 -257
- package/dist/csharp.js +0 -92
- package/dist/csharp.tmLanguage.js +0 -4992
- package/dist/css.js +0 -106
- package/dist/css.tmLanguage.js +0 -1873
- package/dist/cuda-cpp.js +0 -101
- package/dist/cuda-cpp.tmLanguage.js +0 -19993
- package/dist/d-diet.js +0 -92
- package/dist/d.js +0 -3212
- package/dist/d2.js +0 -97
- package/dist/d3.js +0 -609
- package/dist/dart.js +0 -543
- package/dist/dart2.js +0 -103
- package/dist/dart3.js +0 -1130
- package/dist/dcf.js +0 -93
- package/dist/debian-control.r.js +0 -69
- package/dist/diet.js +0 -758
- package/dist/diet2.js +0 -100
- package/dist/django-html.js +0 -155
- package/dist/django-html.tmLanguage.js +0 -715
- package/dist/django-txt.js +0 -155
- package/dist/django-txt.tmLanguage.js +0 -269
- package/dist/dml.js +0 -169
- package/dist/dml2.js +0 -90
- package/dist/dockercompose.js +0 -82
- package/dist/dpp.js +0 -97
- package/dist/dscript.js +0 -90
- package/dist/dune-project.js +0 -481
- package/dist/dune-project2.js +0 -65
- package/dist/dune-workspace.js +0 -298
- package/dist/dune-workspace2.js +0 -65
- package/dist/dune.js +0 -2962
- package/dist/dune2.js +0 -65
- package/dist/eex.js +0 -55
- package/dist/elixir-snippets.js +0 -184
- package/dist/elixir.js +0 -2341
- package/dist/elixir2.js +0 -69
- package/dist/elixir3.js +0 -40
- package/dist/erlang-erlang.js +0 -195
- package/dist/erlang.js +0 -81
- package/dist/erlang2.js +0 -86
- package/dist/expression.js +0 -846
- package/dist/features/extensionConfigurations.d.ts +0 -1
- package/dist/features/extensionConfigurations.js +0 -44
- package/dist/fsharp-fsharp.code-snippets.js +0 -18
- package/dist/fsharp.js +0 -80
- package/dist/fsharp.tmLanguage.js +0 -1844
- package/dist/go.js +0 -103
- package/dist/go.mod.js +0 -8
- package/dist/go.mod.tmGrammar.js +0 -182
- package/dist/go.sum.tmGrammar.js +0 -55
- package/dist/go.tmLanguage.js +0 -1025
- package/dist/go.work.js +0 -8
- package/dist/govulncheck.tmGrammar.js +0 -138
- package/dist/groovy-groovy.code-snippets.js +0 -229
- package/dist/groovy.js +0 -79
- package/dist/groovy.tmLanguage.js +0 -1391
- package/dist/haskell.js +0 -88
- package/dist/haskell.tmLanguage.js +0 -629
- package/dist/haskell2.js +0 -16
- package/dist/html (eex).js +0 -31
- package/dist/html-derivative.tmLanguage.js +0 -57
- package/dist/html-html.code-snippets.js +0 -20
- package/dist/html.js +0 -11
- package/dist/html.tmLanguage.js +0 -2652
- package/dist/html.tmLanguage2.js +0 -107
- package/dist/inline-styles.js +0 -104
- package/dist/inline-template.js +0 -88
- package/dist/jade.js +0 -11
- package/dist/java-java.js +0 -125
- package/dist/java-properties.js +0 -73
- package/dist/java.js +0 -98
- package/dist/java.tmLanguage.js +0 -1863
- package/dist/java2.js +0 -917
- package/dist/javascript-javascript.code-snippets.js +0 -205
- package/dist/javascript.js +0 -197
- package/dist/javascriptreact.js +0 -197
- package/dist/jsdoc.js.injection.tmLanguage.js +0 -32
- package/dist/jsdoc.ts.injection.tmLanguage.js +0 -32
- package/dist/json.js +0 -75
- package/dist/jsonc.js +0 -75
- package/dist/jsx-tags.js +0 -158
- package/dist/julia.js +0 -89
- package/dist/julia.tmLanguage.js +0 -954
- package/dist/jvm-bytecode-verbose.js +0 -1231
- package/dist/jvm-bytecode.js +0 -565
- package/dist/kotlin-kotlin.js +0 -117
- package/dist/kotlin.js +0 -103
- package/dist/kotlinscript.js +0 -103
- package/dist/languages/extensions/extensionConfigurationLoader.d.ts +0 -3
- package/dist/languages/extensions/grammarLoader.d.ts +0 -2
- package/dist/languages/extensions/languageConfigurationLoader.d.ts +0 -2
- package/dist/languages/extensions/snippetLoader.d.ts +0 -2
- package/dist/languages/extensions/themeLoader.d.ts +0 -2
- package/dist/languages/snippets/index.d.ts +0 -1
- package/dist/languages/textMate/index.d.ts +0 -1
- package/dist/languages/textMate/semanticTokens.d.ts +0 -1
- package/dist/literate haskell.js +0 -88
- package/dist/literateHaskell.tmLanguage.js +0 -70
- package/dist/lua.js +0 -84
- package/dist/lua.tmLanguage.js +0 -914
- package/dist/lua2.js +0 -2853
- package/dist/markdown-basics-markdown.code-snippets.js +0 -121
- package/dist/markdown-svelte-css.js +0 -37
- package/dist/markdown-svelte-js.js +0 -37
- package/dist/markdown-svelte.js +0 -59
- package/dist/markdown-vue.js +0 -54
- package/dist/markdown.js +0 -49
- package/dist/markdown.tmLanguage.js +0 -3042
- package/dist/menhir-action.js +0 -51
- package/dist/menhir.js +0 -597
- package/dist/merlin.js +0 -111
- package/dist/namespace.r.js +0 -88
- package/dist/oasis.js +0 -99
- package/dist/objective-c.js +0 -79
- package/dist/objective-c.tmLanguage.js +0 -3763
- package/dist/objective-cpp.js +0 -79
- package/dist/ocaml-dune-project.js +0 -38
- package/dist/ocaml-dune.js +0 -53
- package/dist/ocaml-markdown-codeblock.js +0 -42
- package/dist/ocaml-ocaml.js +0 -88
- package/dist/ocaml-ocamllex.js +0 -12
- package/dist/ocaml.META.js +0 -29
- package/dist/ocaml.interface.js +0 -292
- package/dist/ocaml.interface2.js +0 -114
- package/dist/ocaml.js +0 -903
- package/dist/ocaml.menhir.js +0 -81
- package/dist/ocaml.oasis.js +0 -18
- package/dist/ocaml.ocamlbuild.js +0 -45
- package/dist/ocaml.ocamlformat.js +0 -8
- package/dist/ocaml.ocamllex.js +0 -60
- package/dist/ocaml.opam-install.js +0 -49
- package/dist/ocaml.opam.js +0 -69
- package/dist/ocaml2.js +0 -114
- package/dist/ocaml3.js +0 -136
- package/dist/ocamlbuild.js +0 -189
- package/dist/ocamldoc.js +0 -54
- package/dist/ocamlformat.js +0 -206
- package/dist/ocamllex.js +0 -133
- package/dist/omnisharp-csharp.js +0 -508
- package/dist/omnisharp.js +0 -594
- package/dist/opam-install.js +0 -40
- package/dist/opam.js +0 -140
- package/dist/pascal-pascal.js +0 -382
- package/dist/pascal.js +0 -80
- package/dist/pascal2.js +0 -26
- package/dist/perl.js +0 -93
- package/dist/perl.tmLanguage.js +0 -2986
- package/dist/perl6.js +0 -86
- package/dist/perl6.tmLanguage.js +0 -323
- package/dist/php-php.code-snippets.js +0 -267
- package/dist/php.js +0 -154
- package/dist/php.tmLanguage.js +0 -4036
- package/dist/pip-requirements.js +0 -8
- package/dist/pip-requirements.tmLanguage.js +0 -89
- package/dist/plaintext.js +0 -11
- package/dist/platform.tmLanguage.js +0 -1135
- package/dist/postcss.src.yaml.js +0 -393
- package/dist/postgres.js +0 -80
- package/dist/postgresql.js +0 -75
- package/dist/powershell.js +0 -107
- package/dist/powershell.tmLanguage.js +0 -1037
- package/dist/pug-svelte-dotblock.js +0 -69
- package/dist/pug-svelte-tags.js +0 -215
- package/dist/pug-svelte.js +0 -307
- package/dist/python.js +0 -236
- package/dist/r.js +0 -664
- package/dist/r2.js +0 -88
- package/dist/rbuildignore.js +0 -39
- package/dist/rd.js +0 -81
- package/dist/reason-markdown-codeblock.js +0 -42
- package/dist/reason.js +0 -79
- package/dist/rmd.js +0 -84
- package/dist/rnamespace.js +0 -283
- package/dist/ruby.js +0 -95
- package/dist/ruby.tmLanguage.js +0 -2784
- package/dist/rust.js +0 -84
- package/dist/rust.tmLanguage.js +0 -1178
- package/dist/sassdoc.tmLanguage.js +0 -362
- package/dist/scala.js +0 -85
- package/dist/scalameta.js +0 -224
- package/dist/scss.js +0 -117
- package/dist/scss.tmLanguage.js +0 -1887
- package/dist/sdl.js +0 -162
- package/dist/sdl2.js +0 -90
- package/dist/semanticdb.js +0 -62
- package/dist/shell-unix-bash.tmLanguage.js +0 -2038
- package/dist/shellscript.js +0 -93
- package/dist/solargraph.js +0 -192
- package/dist/solidity-solidity.js +0 -213
- package/dist/solidity.js +0 -1224
- package/dist/solidity2.js +0 -71
- package/dist/solidity3.js +0 -143
- package/dist/sql.js +0 -99
- package/dist/sql.tmLanguage.js +0 -636
- package/dist/svelte.js +0 -120
- package/dist/svelte.svelte-vscode-javascript.js +0 -45
- package/dist/svelte.svelte-vscode-svelte.js +0 -46
- package/dist/svelte.svelte-vscode-typescript.js +0 -43
- package/dist/svelte.svelte-vscode.js +0 -383
- package/dist/svelte.tmLanguage.src.yaml.js +0 -1099
- package/dist/svlangserver-systemverilog.js +0 -395
- package/dist/svlangserver.js +0 -85
- package/dist/swift-swift.code-snippets.js +0 -183
- package/dist/swift.js +0 -90
- package/dist/swift.tmLanguage.js +0 -3312
- package/dist/systemverilog.js +0 -187
- package/dist/systemverilog.tmLanguage.js +0 -1259
- package/dist/tasty.js +0 -72
- package/dist/tcl-tcl.js +0 -151
- package/dist/tcl.js +0 -78
- package/dist/tcl.tmlanguage.yaml.js +0 -5490
- package/dist/template.js +0 -207
- package/dist/theme-defaults~dark_plus.js +0 -210
- package/dist/theme-defaults~dark_plus_experimental.js +0 -145
- package/dist/theme-defaults~dark_vs.js +0 -412
- package/dist/theme-defaults~hc_black.js +0 -471
- package/dist/theme-defaults~hc_light.js +0 -595
- package/dist/theme-defaults~light_plus.js +0 -212
- package/dist/theme-defaults~light_plus_experimental.js +0 -158
- package/dist/theme-defaults~light_vs.js +0 -441
- package/dist/typescript-basics-typescript.code-snippets.js +0 -313
- package/dist/typescript-language-features.js +0 -1103
- package/dist/typescript.js +0 -216
- package/dist/typescriptreact.js +0 -216
- package/dist/vb-vb.code-snippets.js +0 -88
- package/dist/vb.js +0 -79
- package/dist/verilog.js +0 -187
- package/dist/volar-vue.js +0 -289
- package/dist/vscode-R-r-snippets.js +0 -534
- package/dist/vscode-R-rmarkdown.js +0 -461
- package/dist/vscode-R.js +0 -660
- package/dist/vscode-django-filters.js +0 -340
- package/dist/vscode-django.js +0 -37
- package/dist/vscode-go-go.js +0 -276
- package/dist/vscode-go.js +0 -1610
- package/dist/vscode-groovy.js +0 -28
- package/dist/vscode-python.js +0 -706
- package/dist/vue-directives.js +0 -25
- package/dist/vue-interpolations.js +0 -25
- package/dist/vue-sfc-style-variable-injection.js +0 -63
- package/dist/vue.js +0 -151
- package/dist/vue.tmLanguage.js +0 -1218
- package/dist/xml.js +0 -116
- package/dist/xml.tmLanguage.js +0 -395
- package/dist/xsl.js +0 -39
- package/dist/xsl.tmLanguage.js +0 -102
- package/dist/yaml.js +0 -82
- package/dist/yaml.tmLanguage.js +0 -629
- /package/dist/{extensions → editor}/autofold.d.ts +0 -0
- /package/dist/{extensions → editor}/cobol.d.ts +0 -0
- /package/dist/{extensions → editor}/index.d.ts +0 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var filters_json = "{\"_comment\":\"This section is autocomplete for django template filters\",\"join\":{\"description\":\"Filter |join:', '\",\"prefix\":\"join\",\"body\":\"join:${1:', '}$0\"},\"addslashes\":{\"description\":\"Filter |addslashes\",\"prefix\":\"addslashes\",\"body\":\"addslashes\"},\"capfirst\":{\"description\":\"Filter |capfirst\",\"prefix\":\"capfirst\",\"body\":\"capfirst\"},\"escapejs\":{\"description\":\"Filter |escapejs\",\"prefix\":\"escapejs\",\"body\":\"escapejs\"},\"floatformat\":{\"description\":\"Filter |floatformat\",\"prefix\":\"floatformat\",\"body\":\"floatformat\"},\"iriencode\":{\"description\":\"Filter |iriencode\",\"prefix\":\"iriencode\",\"body\":\"iriencode\"},\"linenumbers\":{\"description\":\"Filter |linenumbers\",\"prefix\":\"linenumbers\",\"body\":\"linenumbers\"},\"lower\":{\"description\":\"Filter |lower\",\"prefix\":\"lower\",\"body\":\"lower\"},\"make_list\":{\"description\":\"Filter |make_list\",\"prefix\":\"make_list\",\"body\":\"make_list\"},\"slugify\":{\"description\":\"Filter |slugify\",\"prefix\":\"slugify\",\"body\":\"slugify\"},\"stringformat\":{\"description\":\"Filter |stringformat\",\"prefix\":\"stringformat\",\"body\":\"stringformat\"},\"title\":{\"description\":\"Filter |title\",\"prefix\":\"title\",\"body\":\"title\"},\"truncatechars\":{\"description\":\"Filter |truncatechars\",\"prefix\":\"truncatechars\",\"body\":\"truncatechars\"},\"truncatechars_html\":{\"description\":\"Filter |stuff:', truncatechars_html\",\"prefix\":\"truncatechars_html\",\"body\":\"truncatechars_html\"},\"truncatewords\":{\"description\":\"Filter |truncatewords\",\"prefix\":\"truncatewords\",\"body\":\"truncatewords\"},\"truncatewords_html\":{\"description\":\"Filter |stuff:', truncatewords_html\",\"prefix\":\"truncatewords_html\",\"body\":\"truncatewords_html\"},\"upper\":{\"description\":\"Filter |upper\",\"prefix\":\"upper\",\"body\":\"upper\"},\"urlencode\":{\"description\":\"Filter |urlencode\",\"prefix\":\"urlencode\",\"body\":\"urlencode\"},\"urlize\":{\"description\":\"Filter |urlize\",\"prefix\":\"urlize\",\"body\":\"urlize\"},\"urlizetrunc\":{\"description\":\"Filter |urlizetrunc\",\"prefix\":\"urlizetrunc\",\"body\":\"urlizetrunc\"},\"wordcount\":{\"description\":\"Filter |wordcount\",\"prefix\":\"wordcount\",\"body\":\"wordcount\"},\"wordwrap\":{\"description\":\"Filter |wordwrap\",\"prefix\":\"wordwrap\",\"body\":\"wordwrap\"},\"ljust\":{\"description\":\"Filter |ljust\",\"prefix\":\"ljust\",\"body\":\"ljust\"},\"rjust\":{\"description\":\"Filter |rjust\",\"prefix\":\"rjust\",\"body\":\"rjust\"},\"center\":{\"description\":\"Filter |center\",\"prefix\":\"center\",\"body\":\"center\"},\"cut\":{\"description\":\"Filter |cut\",\"prefix\":\"cut\",\"body\":\"cut\"},\"escape\":{\"description\":\"Filter |escape\",\"prefix\":\"escape\",\"body\":\"escape\"},\"force_escape\":{\"description\":\"Filter |force_escape\",\"prefix\":\"force_escape\",\"body\":\"force_escape\"},\"linebreaks\":{\"description\":\"Filter |linebreaks\",\"prefix\":\"linebreaks\",\"body\":\"linebreaks\"},\"linebreaksbr\":{\"description\":\"Filter |linebreaksbr\",\"prefix\":\"linebreaksbr\",\"body\":\"linebreaksbr\"},\"safe\":{\"description\":\"Filter |safe\",\"prefix\":\"safe\",\"body\":\"safe\"},\"safeseq\":{\"description\":\"Filter |safeseq\",\"prefix\":\"safeseq\",\"body\":\"safeseq\"},\"striptags\":{\"description\":\"Filter |striptags\",\"prefix\":\"striptags\",\"body\":\"striptags\"},\"dictsort\":{\"description\":\"Filter |dictsort\",\"prefix\":\"dictsort\",\"body\":\"dictsort\"},\"dictsortreversed\":{\"description\":\"Filter |stuff:dictsortreversed\",\"prefix\":\"dictsortreversed\",\"body\":\"dictsortreversed\"},\"first\":{\"description\":\"Filter |first\",\"prefix\":\"first\",\"body\":\"first\"},\"last\":{\"description\":\"Filter |last\",\"prefix\":\"last\",\"body\":\"last\"},\"length\":{\"description\":\"Filter |length\",\"prefix\":\"length\",\"body\":\"length\"},\"length_is\":{\"description\":\"Filter |length_is\",\"prefix\":\"length_is\",\"body\":\"length_is\"},\"random\":{\"description\":\"Filter |random\",\"prefix\":\"random\",\"body\":\"random\"},\"slice\":{\"description\":\"Filter |slice\",\"prefix\":\"slice\",\"body\":\"slice\"},\"unordered_list\":{\"description\":\"Filter |unordered_list\",\"prefix\":\"unordered_list\",\"body\":\"unordered_list\"},\"add\":{\"description\":\"Filter |add\",\"prefix\":\"add\",\"body\":\"add\"},\"get_digit\":{\"description\":\"Filter |get_digit\",\"prefix\":\"get_digit\",\"body\":\"get_digit\"},\"date\":{\"description\":\"Filter |date\",\"prefix\":\"date\",\"body\":\"date\"},\"time\":{\"description\":\"Filter |time\",\"prefix\":\"time\",\"body\":\"time\"},\"timesince\":{\"description\":\"Filter |timesince\",\"prefix\":\"timesince\",\"body\":\"timesince\"},\"timeuntil\":{\"description\":\"Filter |timeuntil\",\"prefix\":\"timeuntil\",\"body\":\"timeuntil\"},\"default\":{\"description\":\"Filter |default\",\"prefix\":\"default\",\"body\":\"default\"},\"default_if_none\":{\"description\":\"Filter |stuff:default_if_none\",\"prefix\":\"default_if_none\",\"body\":\"default_if_none\"},\"divisibleby\":{\"description\":\"Filter |divisibleby\",\"prefix\":\"divisibleby\",\"body\":\"divisibleby\"},\"yesno\":{\"description\":\"Filter |yesno\",\"prefix\":\"yesno\",\"body\":\"yesno\"},\"filesizeformat\":{\"description\":\"Filter |filesizeformat\",\"prefix\":\"filesizeformat\",\"body\":\"filesizeformat\"},\"pluralize\":{\"description\":\"Filter |pluralize\",\"prefix\":\"pluralize\",\"body\":\"pluralize\"},\"phone2numeric\":{\"description\":\"Filter |phone2numeric\",\"prefix\":\"phone2numeric\",\"body\":\"phone2numeric\"},\"pprint\":{\"description\":\"Filter |pprint\",\"prefix\":\"pprint\",\"body\":\"pprint\"}}";
|
|
2
|
+
|
|
3
|
+
export { filters_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var focusDark_svg = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 640 640\" width=\"640\" height=\"640\"><defs><path d=\"M133.82 400L260 320L133.82 240L133.82 290.72L0 290.72L0 349.41L133.82 349.42L133.82 400Z\" id=\"lRbrYsgWC\"></path><path d=\"M506.18 240L380 320L506.18 400L506.18 349.28L640 349.28L640 290.59L506.18 290.58L506.18 240Z\" id=\"az89dfV5o\"></path><path d=\"M237.36 133.82L317.36 260L397.36 133.82L346.64 133.82L346.64 0L287.94 0L287.94 133.82L237.36 133.82Z\" id=\"d8LbeXVSO\"></path><path d=\"M400 506.18L320 380L240 506.18L290.72 506.18L290.72 640L349.41 640L349.42 506.18L400 506.18Z\" id=\"b3XRaElBW\"></path></defs><g><g><g><use xlink:href=\"#lRbrYsgWC\" opacity=\"1\" fill=\"#eeeeee\" fill-opacity=\"1\"></use></g><g><use xlink:href=\"#az89dfV5o\" opacity=\"1\" fill=\"#eeeeee\" fill-opacity=\"1\"></use></g><g><use xlink:href=\"#d8LbeXVSO\" opacity=\"1\" fill=\"#eeeeee\" fill-opacity=\"1\"></use></g><g><use xlink:href=\"#b3XRaElBW\" opacity=\"1\" fill=\"#eeeeee\" fill-opacity=\"1\"></use></g></g></g></svg>";
|
|
2
|
+
|
|
3
|
+
export { focusDark_svg as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var focusLight_svg = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" preserveAspectRatio=\"xMidYMid meet\" viewBox=\"0 0 640 640\" width=\"640\" height=\"640\"><defs><path d=\"M133.82 400L260 320L133.82 240L133.82 290.72L0 290.72L0 349.41L133.82 349.42L133.82 400Z\" id=\"g1Wj9SKdzf\"></path><path d=\"M506.18 240L380 320L506.18 400L506.18 349.28L640 349.28L640 290.59L506.18 290.58L506.18 240Z\" id=\"ieFdDl\"></path><path d=\"M237.36 133.82L317.36 260L397.36 133.82L346.64 133.82L346.64 0L287.94 0L287.94 133.82L237.36 133.82Z\" id=\"bNmR2oU9a\"></path><path d=\"M400 506.18L320 380L240 506.18L290.72 506.18L290.72 640L349.41 640L349.42 506.18L400 506.18Z\" id=\"aZi42LQty\"></path></defs><g><g><g><use xlink:href=\"#g1Wj9SKdzf\" opacity=\"1\" fill=\"#222222\" fill-opacity=\"1\"></use></g><g><use xlink:href=\"#ieFdDl\" opacity=\"1\" fill=\"#222222\" fill-opacity=\"1\"></use></g><g><use xlink:href=\"#bNmR2oU9a\" opacity=\"1\" fill=\"#222222\" fill-opacity=\"1\"></use></g><g><use xlink:href=\"#aZi42LQty\" opacity=\"1\" fill=\"#222222\" fill-opacity=\"1\"></use></g></g></g></svg>";
|
|
2
|
+
|
|
3
|
+
export { focusLight_svg as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var general_json = "{\"comments\":{\"blockComment\":[\"/*\",\"*/\"],\"lineComment\":\"//\"},\"brackets\":[[\"(\",\")\"],[\"{\",\"}\"],[\"[\",\"]\"]],\"autoClosingPairs\":[[\"{\",\"}\"],[\"[\",\"]\"],[\"(\",\")\"],{\"open\":\"`\",\"close\":\"`\",\"notIn\":[\"string\"]},{\"open\":\"\\\"\",\"close\":\"\\\"\",\"notIn\":[\"string\"]},{\"open\":\"'\",\"close\":\"'\",\"notIn\":[\"string\"]}],\"surroundingPairs\":[[\"{\",\"}\"],[\"[\",\"]\"],[\"(\",\")\"],[\"'\",\"'\"],[\"\\\"\",\"\\\"\"],[\"`\",\"`\"]]}";
|
|
2
|
+
|
|
3
|
+
export { general_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var getInverse_svg = "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 0 24 24\" width=\"24\"><path fill=\"#C5C5C5\" d=\"M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z\"/><path d=\"M0 0h24v24H0z\" fill=\"none\"/></svg>\n";
|
|
2
|
+
|
|
3
|
+
export { getInverse_svg as default };
|
package/dist/get.svg.js
ADDED
package/dist/go.json.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var go_json = "{\".source.go\":{\"single import\":{\"prefix\":\"im\",\"body\":\"import \\\"${1:package}\\\"\",\"description\":\"Snippet for import statement\"},\"multiple imports\":{\"prefix\":\"ims\",\"body\":\"import (\\n\\t\\\"${1:package}\\\"\\n)\",\"description\":\"Snippet for a import block\"},\"single constant\":{\"prefix\":\"co\",\"body\":\"const ${1:name} = ${2:value}\",\"description\":\"Snippet for a constant\"},\"multiple constants\":{\"prefix\":\"cos\",\"body\":\"const (\\n\\t${1:name} = ${2:value}\\n)\",\"description\":\"Snippet for a constant block\"},\"type function declaration\":{\"prefix\":\"tyf\",\"body\":\"type ${1:name} func($3) $4\",\"description\":\"Snippet for a type function declaration\"},\"type interface declaration\":{\"prefix\":\"tyi\",\"body\":\"type ${1:name} interface {\\n\\t$0\\n}\",\"description\":\"Snippet for a type interface\"},\"type struct declaration\":{\"prefix\":\"tys\",\"body\":\"type ${1:name} struct {\\n\\t$0\\n}\",\"description\":\"Snippet for a struct declaration\"},\"package main and main function\":{\"prefix\":\"pkgm\",\"body\":\"package main\\n\\nfunc main() {\\n\\t$0\\n}\",\"description\":\"Snippet for main package & function\"},\"function declaration\":{\"prefix\":\"func\",\"body\":\"func $1($2) $3 {\\n\\t$0\\n}\",\"description\":\"Snippet for function declaration\"},\"single variable\":{\"prefix\":\"var\",\"body\":\"var ${1:name} ${2:type}\",\"description\":\"Snippet for a variable\"},\"multiple variables\":{\"prefix\":\"vars\",\"body\":\"var (\\n\\t${1:name} ${2:type}\\n)\",\"description\":\"Snippet for variable block\"},\"switch statement\":{\"prefix\":\"switch\",\"body\":\"switch ${1:expression} {\\ncase ${2:condition}:\\n\\t$0\\n}\",\"description\":\"Snippet for switch statement\"},\"select statement\":{\"prefix\":\"sel\",\"body\":\"select {\\ncase ${1:condition}:\\n\\t$0\\n}\",\"description\":\"Snippet for select statement\"},\"case clause\":{\"prefix\":\"cs\",\"body\":\"case ${1:condition}:$0\",\"description\":\"Snippet for case clause\"},\"for statement\":{\"prefix\":\"for\",\"body\":\"for ${1:i} := ${2:0}; $1 < ${3:count}; $1${4:++} {\\n\\t$0\\n}\",\"description\":\"Snippet for a for loop\"},\"for range statement\":{\"prefix\":\"forr\",\"body\":\"for ${1:_, }${2:v} := range ${3:v} {\\n\\t$0\\n}\",\"description\":\"Snippet for a for range loop\"},\"channel declaration\":{\"prefix\":\"ch\",\"body\":\"chan ${1:type}\",\"description\":\"Snippet for a channel\"},\"map declaration\":{\"prefix\":\"map\",\"body\":\"map[${1:type}]${2:type}\",\"description\":\"Snippet for a map\"},\"empty interface\":{\"prefix\":\"in\",\"body\":\"interface{}\",\"description\":\"Snippet for empty interface\"},\"if statement\":{\"prefix\":\"if\",\"body\":\"if ${1:condition} {\\n\\t$0\\n}\",\"description\":\"Snippet for if statement\"},\"else branch\":{\"prefix\":\"el\",\"body\":\"else {\\n\\t$0\\n}\",\"description\":\"Snippet for else branch\"},\"if else statement\":{\"prefix\":\"ie\",\"body\":\"if ${1:condition} {\\n\\t$2\\n} else {\\n\\t$0\\n}\",\"description\":\"Snippet for if else\"},\"if err != nil\":{\"prefix\":\"iferr\",\"body\":\"if err != nil {\\n\\t${1:return ${2:nil, }${3:err}}\\n}\",\"description\":\"Snippet for if err != nil\"},\"fmt.Println\":{\"prefix\":\"fp\",\"body\":\"fmt.Println(\\\"$1\\\")\",\"description\":\"Snippet for fmt.Println()\"},\"fmt.Printf\":{\"prefix\":\"ff\",\"body\":\"fmt.Printf(\\\"$1\\\", ${2:var})\",\"description\":\"Snippet for fmt.Printf()\"},\"log.Println\":{\"prefix\":\"lp\",\"body\":\"log.Println(\\\"$1\\\")\",\"description\":\"Snippet for log.Println()\"},\"log.Printf\":{\"prefix\":\"lf\",\"body\":\"log.Printf(\\\"$1\\\", ${2:var})\",\"description\":\"Snippet for log.Printf()\"},\"log variable content\":{\"prefix\":\"lv\",\"body\":\"log.Printf(\\\"${1:var}: %#+v\\\\\\\\n\\\", ${1:var})\",\"description\":\"Snippet for log.Printf() with variable content\"},\"t.Log\":{\"prefix\":\"tl\",\"body\":\"t.Log(\\\"$1\\\")\",\"description\":\"Snippet for t.Log()\"},\"t.Logf\":{\"prefix\":\"tlf\",\"body\":\"t.Logf(\\\"$1\\\", ${2:var})\",\"description\":\"Snippet for t.Logf()\"},\"t.Logf variable content\":{\"prefix\":\"tlv\",\"body\":\"t.Logf(\\\"${1:var}: %#+v\\\\\\\\n\\\", ${1:var})\",\"description\":\"Snippet for t.Logf() with variable content\"},\"make(...)\":{\"prefix\":\"make\",\"body\":\"make(${1:type}, ${2:0})\",\"description\":\"Snippet for make statement\"},\"new(...)\":{\"prefix\":\"new\",\"body\":\"new(${1:type})\",\"description\":\"Snippet for new statement\"},\"panic(...)\":{\"prefix\":\"pn\",\"body\":\"panic(\\\"$0\\\")\",\"description\":\"Snippet for panic\"},\"http ResponseWriter *Request\":{\"prefix\":\"wr\",\"body\":\"${1:w} http.ResponseWriter, ${2:r} *http.Request\",\"description\":\"Snippet for http Response\"},\"http.HandleFunc\":{\"prefix\":\"hf\",\"body\":\"${1:http}.HandleFunc(\\\"${2:/}\\\", ${3:handler})\",\"description\":\"Snippet for http.HandleFunc()\"},\"http handler declaration\":{\"prefix\":\"hand\",\"body\":\"func $1(${2:w} http.ResponseWriter, ${3:r} *http.Request) {\\n\\t$0\\n}\",\"description\":\"Snippet for http handler declaration\"},\"http.Redirect\":{\"prefix\":\"rd\",\"body\":\"http.Redirect(${1:w}, ${2:r}, \\\"${3:/}\\\", ${4:http.StatusFound})\",\"description\":\"Snippet for http.Redirect()\"},\"http.Error\":{\"prefix\":\"herr\",\"body\":\"http.Error(${1:w}, ${2:err}.Error(), ${3:http.StatusInternalServerError})\",\"description\":\"Snippet for http.Error()\"},\"http.ListenAndServe\":{\"prefix\":\"las\",\"body\":\"http.ListenAndServe(\\\"${1::8080}\\\", ${2:nil})\",\"description\":\"Snippet for http.ListenAndServe\"},\"http.Serve\":{\"prefix\":\"sv\",\"body\":\"http.Serve(\\\"${1::8080}\\\", ${2:nil})\",\"description\":\"Snippet for http.Serve\"},\"goroutine anonymous function\":{\"prefix\":\"go\",\"body\":\"go func($1) {\\n\\t$0\\n}($2)\",\"description\":\"Snippet for anonymous goroutine declaration\"},\"goroutine function\":{\"prefix\":\"gf\",\"body\":\"go ${1:func}($0)\",\"description\":\"Snippet for goroutine declaration\"},\"defer statement\":{\"prefix\":\"df\",\"body\":\"defer ${1:func}($0)\",\"description\":\"Snippet for defer statement\"},\"test function\":{\"prefix\":\"tf\",\"body\":\"func Test$1(t *testing.T) {\\n\\t$0\\n}\",\"description\":\"Snippet for Test function\"},\"test main\":{\"prefix\":\"tm\",\"body\":\"func TestMain(m *testing.M) {\\n\\t$1\\n\\n\\tos.Exit(m.Run())\\n}\",\"description\":\"Snippet for TestMain function\"},\"benchmark function\":{\"prefix\":\"bf\",\"body\":\"func Benchmark$1(b *testing.B) {\\n\\tfor ${2:i} := 0; ${2:i} < b.N; ${2:i}++ {\\n\\t\\t$0\\n\\t}\\n}\",\"description\":\"Snippet for Benchmark function\"},\"example function\":{\"prefix\":\"ef\",\"body\":\"func Example$1() {\\n\\t$2\\n\\t//Output:\\n\\t$3\\n}\",\"description\":\"Snippet for Example function\"},\"table driven test\":{\"prefix\":\"tdt\",\"body\":\"func Test$1(t *testing.T) {\\n\\ttestCases := []struct {\\n\\t\\tdesc\\tstring\\n\\t\\t$2\\n\\t}{\\n\\t\\t{\\n\\t\\t\\tdesc: \\\"$3\\\",\\n\\t\\t\\t$4\\n\\t\\t},\\n\\t}\\n\\tfor _, tC := range testCases {\\n\\t\\tt.Run(tC.desc, func(t *testing.T) {\\n\\t\\t\\t$0\\n\\t\\t})\\n\\t}\\n}\",\"description\":\"Snippet for table driven test\"},\"init function\":{\"prefix\":\"finit\",\"body\":\"func init() {\\n\\t$1\\n}\",\"description\":\"Snippet for init function\"},\"main function\":{\"prefix\":\"fmain\",\"body\":\"func main() {\\n\\t$1\\n}\",\"description\":\"Snippet for main function\"},\"method declaration\":{\"prefix\":\"meth\",\"body\":\"func (${1:receiver} ${2:type}) ${3:method}($4) $5 {\\n\\t$0\\n}\",\"description\":\"Snippet for method declaration\"},\"hello world web app\":{\"prefix\":\"helloweb\",\"body\":\"package main\\n\\nimport (\\n\\t\\\"fmt\\\"\\n\\t\\\"net/http\\\"\\n\\t\\\"time\\\"\\n)\\n\\nfunc greet(w http.ResponseWriter, r *http.Request) {\\n\\tfmt.Fprintf(w, \\\"Hello World! %s\\\", time.Now())\\n}\\n\\nfunc main() {\\n\\thttp.HandleFunc(\\\"/\\\", greet)\\n\\thttp.ListenAndServe(\\\":8080\\\", nil)\\n}\",\"description\":\"Snippet for sample hello world webapp\"},\"sort implementation\":{\"prefix\":\"sort\",\"body\":\"type ${1:SortBy} []${2:Type}\\n\\nfunc (a $1) Len() int { return len(a) }\\nfunc (a $1) Swap(i, j int) { a[i], a[j] = a[j], a[i] }\\nfunc (a $1) Less(i, j int) bool { ${3:return a[i] < a[j]} }\",\"description\":\"Snippet for a custom sort.Sort interface implementation, for a given slice type.\"}}}";
|
|
2
|
+
|
|
3
|
+
export { go_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var go_mod_tmGrammar_json = "{\"scopeName\":\"go.mod\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#directive\"},{\"include\":\"#invalid\"}],\"repository\":{\"directive\":{\"patterns\":[{\"comment\":\"Multi-Line directive\",\"begin\":\"(\\\\w+)\\\\s*\\\\(\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.go.mod\"}},\"end\":\"\\\\)\",\"patterns\":[{\"include\":\"#arguments\"}]},{\"comment\":\"Single-Line directive\",\"match\":\"(\\\\w+)\\\\s*(.*)\",\"captures\":{\"1\":{\"name\":\"keyword.go.mod\"},\"2\":{\"patterns\":[{\"include\":\"#arguments\"}]}}}]},\"arguments\":{\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#double_quoted_string\"},{\"include\":\"#raw_quoted_string\"},{\"include\":\"#operator\"},{\"include\":\"#semver\"},{\"include\":\"#unquoted_string\"}]},\"comments\":{\"patterns\":[{\"begin\":\"//\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.go.mod\"}},\"end\":\"$\",\"name\":\"comment.line.double-slash.go.mod\"}]},\"operator\":{\"match\":\"(=>)\",\"name\":\"operator.go.mod\"},\"unquoted_string\":{\"comment\":\"Unquoted string\",\"match\":\"([^\\\\s/]|/(?!/))+\",\"name\":\"string.unquoted.go.mod\"},\"double_quoted_string\":{\"comment\":\"Interpreted string literals\",\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go.mod\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go.mod\"}},\"name\":\"string.quoted.double\",\"patterns\":[{\"include\":\"#string_escaped_char\"},{\"include\":\"#string_placeholder\"}]},\"raw_quoted_string\":{\"comment\":\"Raw string literals\",\"begin\":\"`\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.go.mod\"}},\"end\":\"`\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.go.mod\"}},\"name\":\"string.quoted.raw\",\"patterns\":[{\"include\":\"#string_placeholder\"}]},\"semver\":{\"comment\":\"Semver version strings (v1.2.3)\",\"match\":\"v(?:0|[1-9]\\\\d*)\\\\.(?:0|[1-9]\\\\d*)\\\\.(?:0|[1-9]\\\\d*)(?:-[\\\\da-z-]+(?:\\\\.[\\\\da-z-]+)*)?(?:\\\\+[\\\\da-z-]+(?:\\\\.[\\\\da-z-]+)*)?\",\"name\":\"constant.language.go.mod\"},\"string_escaped_char\":{\"patterns\":[{\"match\":\"\\\\\\\\([0-7]{3}|[abfnrtv\\\\\\\\'\\\"]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|U[0-9a-fA-F]{8})\",\"name\":\"constant.character.escape.go.mod\"},{\"match\":\"\\\\\\\\[^0-7xuUabfnrtv\\\\'\\\"]\",\"name\":\"invalid.illegal.unknown-escape.go.mod\"}]},\"string_placeholder\":{\"patterns\":[{\"match\":\"%(\\\\[\\\\d+\\\\])?([\\\\+#\\\\-0\\\\x20]{,2}((\\\\d+|\\\\*)?(\\\\.?(\\\\d+|\\\\*|(\\\\[\\\\d+\\\\])\\\\*?)?(\\\\[\\\\d+\\\\])?)?))?[vT%tbcdoqxXUbeEfFgGsp]\",\"name\":\"constant.other.placeholder.go.mod\"}]},\"invalid\":{\"comment\":\"invalid\",\"match\":\".*\",\"name\":\"invalid.illegal.unknown.go.mod\"}}}";
|
|
2
|
+
|
|
3
|
+
export { go_mod_tmGrammar_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var go_sum_tmGrammar_json = "{\"scopeName\":\"go.sum\",\"patterns\":[{\"include\":\"#checksum\"},{\"include\":\"#semver\"},{\"include\":\"#unquoted_string\"}],\"repository\":{\"checksum\":{\"comment\":\"Checksum\",\"match\":\"h1:([^\\\\s]+)=\",\"captures\":{\"1\":{\"patterns\":[{\"match\":\"[a-zA-Z\\\\d+\\\\/]{43}\",\"name\":\"string.unquoted.go.sum\"},{\"match\":\".*\",\"name\":\"invalid.illegal.unknown-hash.go.sum\"}]}}},\"semver\":{\"comment\":\"Semver version strings (v1.2.3)\",\"match\":\"v(?:0|[1-9]\\\\d*)\\\\.(?:0|[1-9]\\\\d*)\\\\.(?:0|[1-9]\\\\d*)(?:-[\\\\da-z-]+(?:\\\\.[\\\\da-z-]+)*)?(?:\\\\+[\\\\da-z-]+(?:\\\\.[\\\\da-z-]+)*)?\",\"name\":\"constant.language.go.sum\"},\"unquoted_string\":{\"comment\":\"Unquoted string\",\"match\":\"[^\\\\s]+\",\"name\":\"string.unquoted.go.sum\"}}}";
|
|
2
|
+
|
|
3
|
+
export { go_sum_tmGrammar_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var govulncheck_tmGrammar_json = "{\"scopeName\":\"govulncheck\",\"patterns\":[{\"include\":\"#log\"},{\"include\":\"#info\"},{\"include\":\"#affecting\"},{\"include\":\"#unaffecting\"},{\"include\":\"#callstack\"},{\"include\":\"#callstacklong\"},{\"include\":\"#frame\"},{\"include\":\"#framePosition\"}],\"repository\":{\"log\":{\"comment\":\"log\",\"match\":\"^\\\\d{2}:\\\\d{2}:\\\\d{2} \\\\S.*$\",\"name\":\"comment.govulncheck\"},\"info\":{\"comment\":\"info\",\"match\":\"^# .*\",\"name\":\"comment.govulncheck\"},\"affecting\":{\"comment\":\"vulnerability heading\",\"match\":\"^(⚠) (\\\\S+) \\\\((https://[^)]+)\\\\)\",\"name\":\"markup.heading.1.govulncheck\",\"captures\":{\"1\":{\"name\":\"token.error-token.severity.govulncheck\"},\"2\":{\"name\":\"token.error-token.vulnid.govulncheck\"},\"3\":{\"name\":\"entity.link.govulncheck\"}}},\"unaffecting\":{\"comment\":\"vulnerability heading\",\"match\":\"^(ⓘ) (\\\\S+) \\\\((https://[^)]+)\\\\)\",\"captures\":{\"1\":{\"name\":\"token.info-token.severity.govulncheck\"},\"2\":{\"name\":\"token.info-token.vulnid.govulncheck\"},\"3\":{\"name\":\"entity.link.govulncheck\"}}},\"callstacklong\":{\"comment\":\"callstack\",\"match\":\"^\\\\- (\\\\S+) (\\\\S+) calls ([^,]+), which eventually calls (\\\\S+)\",\"name\":\"markup.list.unnumbered.callstack.summary.govulncheck\",\"captures\":{\"1\":{\"name\":\"markup.link.callstack.position.govulncheck\"},\"2\":{\"name\":\"markup.italic.raw.callstack.symbol.govulncheck\"},\"3\":{\"name\":\"markup.italic.callstack.symbol.govulncheck\"},\"4\":{\"name\":\"markup.italic.callstack.symbol.govulncheck\"}}},\"callstack\":{\"comment\":\"callstack\",\"match\":\"^\\\\- (\\\\S+) (\\\\S+) calls ([^,]+)$\",\"name\":\"markup.list.unnumbered.callstack.summary.govulncheck\",\"captures\":{\"1\":{\"name\":\"markup.link.callstack.position.govulncheck\"},\"2\":{\"name\":\"markup.italic.raw.callstack.symbol.govulncheck\"},\"3\":{\"name\":\"markup.italic.callstack.symbol.govulncheck\"}}},\"frame\":{\"comment\":\"frame\",\"match\":\"^\\\\t(\\\\S+)\",\"name\":\"markup.list.unnumbered.fram.govulncheck\",\"captures\":{\"1\":{\"name\":\"markup.italic.raw.callstack.symbol.govulncheck\"}}},\"framePosition\":{\"comment\":\"frame position info\",\"match\":\"^\\\\t\\\\t(\\\\([^)]+\\\\))\",\"name\":\"markup.list.unnumbered.frame.govulncheck\",\"captures\":{\"1\":{\"name\":\"comment.govulncheck\"}}}}}";
|
|
2
|
+
|
|
3
|
+
export { govulncheck_tmGrammar_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var happy_json = "{\"fileTypes\":[\"y\"],\"name\":\"Haskell Happy\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#blocks\"},{\"include\":\"#syntax\"},{\"include\":\"#strings\"}],\"repository\":{\"block_comment\":{\"applyEndPatternLast\":1,\"begin\":\"{-\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.happy\"}},\"end\":\"-}\",\"name\":\"comment.block.happy\",\"patterns\":[{\"include\":\"#block_comment\"}]},\"comments\":{\"patterns\":[{\"name\":\"comment.line.happy\",\"match\":\"\\\\-\\\\-.*$\"},{\"include\":\"#block_comment\"}]},\"blocks\":{\"patterns\":[{\"name\":\"meta.embedded.block.monad.haskell\",\"begin\":\"{%[%^]?\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.block.monad.begin.happy\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.block.end.happy\"}},\"patterns\":[{\"include\":\"source.haskell\"}]},{\"name\":\"meta.embedded.block.haskell\",\"begin\":\"{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.block.begin.happy\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.block.end.happy\"}},\"patterns\":[{\"name\":\"variable.parameter.happy\",\"match\":\"\\\\$\\\\d+\"},{\"name\":\"variable.parameter.field.happy\",\"match\":\"\\\\$\\\\$\"},{\"include\":\"source.haskell\"}]}]},\"syntax\":{\"patterns\":[{\"name\":\"entity.name.directive.happy\",\"match\":\"\\\\%([\\\\p{Ll}\\\\p{Lu}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\.']*)\"},{\"name\":\"constant.character.escape.hex.happy\",\"match\":\"\\\\\\\\x[\\\\da-fA-F]+\"},{\"name\":\"constant.character.escape.oct.happy\",\"match\":\"\\\\\\\\o[0-7]+\"},{\"name\":\"constant.character.escape.dec.happy\",\"match\":\"\\\\\\\\\\\\d+\"},{\"name\":\"constant.character.escape.happy\",\"match\":\"\\\\\\\\.\"},{\"name\":\"punctuation.bracket.happy\",\"match\":\"[\\\\[\\\\]]\"},{\"name\":\"keyword.operator.happy\",\"match\":\"[-^=\\\\.*]\"},{\"name\":\"keyword.operator.type.happy\",\"match\":\"::\"},{\"name\":\"keyword.operator.rule.happy\",\"match\":\":\"},{\"name\":\"keyword.operator.alt.happy\",\"match\":\"\\\\|\"},{\"name\":\"keyword.operator.separator.happy\",\"match\":\"\\\\%\\\\%\"}]},\"strings\":{\"patterns\":[{\"name\":\"string.quoted.double.happy\",\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.quote.double.happy\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.quote.double.happy\"}},\"patterns\":[{\"name\":\"constant.character.escape.happy\",\"match\":\"\\\\\\\\.\"}]},{\"name\":\"string.quoted.single.happy\",\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.quote.single.happy\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.quote.single.happy\"}},\"patterns\":[{\"name\":\"constant.character.escape.happy\",\"match\":\"\\\\\\\\.\"}]}]}},\"scopeName\":\"source.haskell.happy\"}";
|
|
2
|
+
|
|
3
|
+
export { happy_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var haskellConfiguration_json = "{\"comments\":{\"lineComment\":\"--\",\"blockComment\":[\"{-\",\"-}\"]},\"brackets\":[[\"{\",\"}\"],[\"[\",\"]\"],[\"(\",\")\"]],\"autoClosingPairs\":[{\"open\":\"{\",\"close\":\"}\"},{\"open\":\"[\",\"close\":\"]\"},{\"open\":\"(\",\"close\":\")\"},{\"open\":\"\\\"\",\"close\":\"\\\"\",\"notIn\":[\"string\"]},{\"open\":\"`\",\"close\":\"`\",\"notIn\":[\"string\",\"comment\"]}],\"surroundingPairs\":[[\"{\",\"}\"],[\"[\",\"]\"],[\"(\",\")\"],[\"'\",\"'\"],[\"\\\"\",\"\\\"\"],[\"`\",\"`\"]],\"folding\":{\"offSide\":true}}";
|
|
2
|
+
|
|
3
|
+
export { haskellConfiguration_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var haskell_json = "{\"fileTypes\":[\"hs\",\"hs-boot\",\"hsig\"],\"keyEquivalent\":\"^~H\",\"name\":\"Haskell\",\"patterns\":[{\"include\":\"#liquid_haskell\"},{\"include\":\"#comment_like\"},{\"include\":\"#numeric_literals\"},{\"include\":\"#string_literal\"},{\"include\":\"#char_literal\"},{\"match\":\"(?<!@|#)-\\\\}\",\"name\":\"invalid\"},{\"match\":\"(\\\\()\\\\s*(\\\\))\",\"name\":\"constant.language.unit.haskell\",\"captures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"}}},{\"match\":\"(\\\\()(#)\\\\s*(#)(\\\\))\",\"name\":\"constant.language.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\":\"(\\\\()\\\\s*,[\\\\s,]*(\\\\))\",\"name\":\"support.constant.tuple.haskell\",\"captures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"}}},{\"match\":\"(\\\\()(#)\\\\s*,[\\\\s,]*(#)(\\\\))\",\"name\":\"support.constant.tuple.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\":\"(\\\\[)\\\\s*(\\\\])\",\"name\":\"constant.language.empty-list.haskell\",\"captures\":{\"1\":{\"name\":\"punctuation.bracket.haskell\"},\"2\":{\"name\":\"punctuation.bracket.haskell\"}}},{\"begin\":\"(\\\\b(?<!')(module)|^(signature))(\\\\b(?!'))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.module.haskell\"},\"3\":{\"name\":\"keyword.other.signature.haskell\"}},\"end\":\"(?=\\\\b(?<!')where\\\\b(?!'))\",\"name\":\"meta.declaration.module.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#module_name\"},{\"include\":\"#module_exports\"},{\"match\":\"[a-z]+\",\"name\":\"invalid\"}]},{\"include\":\"#ffi\"},{\"begin\":\"^(\\\\s*)(class)(\\\\b(?!'))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.class.haskell\"}},\"end\":\"(?x) # Detect end of class declaration:\\n # 'where' keyword\\n (?=(?<!')\\\\bwhere\\\\b(?!')) \\n # Decreasing indentation\\n |(?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\",\"name\":\"meta.declaration.class.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#where\"},{\"include\":\"#type_signature\"}]},{\"begin\":\"(?x)\\n ^(\\\\s*)(data|newtype)(?:\\\\s+(instance))?\\\\s+\\n # Keep consuming characters until:\\n ((?:(?!\\n # the equals symbol or the start of a single-line comment, or\\n (?: \\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n (?:=|--+)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n )\\n # the \\\"where\\\" or \\\"deriving\\\" keywords, or\\n | (?:\\\\b(?<!')(?:where|deriving)\\\\b(?!'))\\n # the start of a block comment.\\n | {-\\n #\\n ).)*)\\n (?=\\\\b(?<!'')where\\\\b(?!''))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.$2.haskell\"},\"3\":{\"name\":\"keyword.other.instance.haskell\"},\"4\":{\"patterns\":[{\"include\":\"#type_signature\"}]}},\"name\":\"meta.declaration.$2.generalized.haskell\",\"end\":\"(?x) # Detect end of data declaration:\\n # Deriving clause\\n (?=(?<!')\\\\bderiving\\\\b(?!')) \\n # Decreasing indentation\\n |(?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"patterns\":[{\"include\":\"#comment_like\"},{\"begin\":\"(?x)\\n (?<!')\\\\b(where)\\n \\\\s*(\\\\{)(?!-)\",\"end\":\"\\\\}\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.where.haskell\"},\"2\":{\"name\":\"punctuation.brace.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.brace.haskell\"}},\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#gadt_constructor\"},{\"match\":\";\",\"name\":\"punctuation.semicolon.haskell\"}]},{\"match\":\"\\\\b(?<!')(where)\\\\b(?!')\",\"name\":\"keyword.other.where.haskell\"},{\"include\":\"#deriving\"},{\"include\":\"#gadt_constructor\"}]},{\"include\":\"#role_annotation\"},{\"name\":\"meta.declaration.pattern.type.haskell\",\"begin\":\"^(\\\\s*)(pattern)\\\\s+(.*?)\\\\s+(::|∷)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.pattern.haskell\"},\"3\":{\"patterns\":[{\"include\":\"#comma\"},{\"include\":\"#data_constructor\"}]},\"4\":{\"name\":\"keyword.operator.double-colon.haskell\"}},\"end\":\"(?x) # Detect end of pattern type definition by decreasing indentation:\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"patterns\":[{\"include\":\"#type_signature\"}]},{\"name\":\"meta.declaration.pattern.haskell\",\"begin\":\"^\\\\s*(pattern)\\\\b(?!')\",\"captures\":{\"1\":{\"name\":\"keyword.other.pattern.haskell\"}},\"end\":\"(?x) # Detect end of pattern type definition by decreasing indentation:\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(?x)\\n # Data declaration\\n ^(\\\\s*)(data|newtype)(?:\\\\s+(family|instance))?\\\\s+\\n # Keep consuming characters until:\\n (((?!\\n # the equals symbol or the start of a single-line comment, or\\n (?: \\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n (?:=|--+)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n )\\n # the \\\"where\\\" or \\\"deriving\\\" keywords, or\\n | (?:\\\\b(?<!')(?:where|deriving)\\\\b(?!'))\\n # the start of a block comment.\\n | {-\\n #\\n ).)*)\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.$2.haskell\"},\"3\":{\"name\":\"keyword.other.$3.haskell\"},\"4\":{\"patterns\":[{\"include\":\"#type_signature\"}]}},\"name\":\"meta.declaration.$2.algebraic.haskell\",\"end\":\"(?x) # Detect end of data declaration: \\n # Decreasing indentation\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#deriving\"},{\"include\":\"#forall\"},{\"include\":\"#adt_constructor\"},{\"include\":\"#data_context\"},{\"include\":\"#record_decl\"},{\"include\":\"#type_signature\"}]},{\"name\":\"meta.declaration.type.family.haskell\",\"begin\":\"(?x)\\n # Type family\\n ^(\\\\s*)(type)\\\\s+(family)\\\\b(?!')\\n # Keep consuming characters until:\\n (((?!\\n # the equals symbol or the start of a single-line comment, or\\n (?: \\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n (?:=|--+)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n )\\n # the \\\"where\\\" keyword, or\\n | \\\\b(?<!')where\\\\b(?!')\\n # the start of a block comment.\\n | {-\\n #\\n ).)*)\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.type.haskell\"},\"3\":{\"name\":\"keyword.other.family.haskell\"},\"4\":{\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#where\"},{\"include\":\"#type_signature\"}]}},\"end\":\"(?x) # Detect end of type family by decreasing indentation:\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#where\"},{\"include\":\"#type_signature\"}]},{\"name\":\"meta.declaration.type.haskell\",\"begin\":\"(?x)\\n # Type declaration\\n ^(\\\\s*)(type)(?:\\\\s+(instance))?\\\\s+\\n # Keep consuming characters until:\\n (((?!\\n # the equals symbol, the start of a single-line comment, or a type signature\\n (?: \\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n (?:=|--+|::|∷)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n )\\n # the start of a block comment.\\n | {-\\n #\\n ).)*)\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.type.haskell\"},\"3\":{\"name\":\"keyword.other.instance.haskell\"},\"4\":{\"patterns\":[{\"include\":\"#type_signature\"}]}},\"end\":\"(?x) # Detect end of type definition by decreasing indentation:\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"patterns\":[{\"include\":\"#type_signature\"}]},{\"begin\":\"^(\\\\s*)(instance)(\\\\b(?!'))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.instance.haskell\"}},\"end\":\"(?x) # Detect end of instance declaration:\\n # 'where' keyword\\n (?=\\\\b(?<!')(where)\\\\b(?!'))\\n # Decreasing indentation\\n |(?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"name\":\"meta.declaration.instance.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#where\"},{\"include\":\"#type_signature\"}]},{\"begin\":\"^(\\\\s*)(import)(\\\\b(?!'))\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.import.haskell\"}},\"end\":\"(?x) # Detect end of import\\n # 'where' keyword\\n (?=\\\\b(?<!')(where)\\\\b(?!'))\\n # Decreasing indentation\\n |(?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"name\":\"meta.import.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#where\"},{\"match\":\"(qualified|as|hiding)\",\"captures\":{\"1\":{\"name\":\"keyword.other.$1.haskell\"}}},{\"include\":\"#module_name\"},{\"include\":\"#module_exports\"}]},{\"include\":\"#deriving\"},{\"include\":\"#layout_herald\"},{\"include\":\"#keyword\"},{\"match\":\"^\\\\s*(infix[lr]?)\\\\s+(.*)\",\"captures\":{\"1\":{\"name\":\"keyword.other.fixity.$1.haskell\"},\"2\":{\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#integer_literals\"},{\"match\":\":[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*\",\"name\":\"constant.other.operator.infix.haskell\"},{\"include\":\"#infix_op\"}]}},\"name\":\"meta.fixity-declaration.haskell\"},{\"include\":\"#start_type_signature\"},{\"include\":\"#overloaded_label\"},{\"include\":\"#type_application\"},{\"include\":\"#reserved_symbol\"},{\"include\":\"#fun_decl\"},{\"include\":\"#qualifier\"},{\"match\":\":[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*\",\"name\":\"constant.other.operator.infix.haskell\"},{\"include\":\"#data_constructor\"},{\"include\":\"#prefix_op\"},{\"include\":\"#infix_op\"},{\"begin\":\"(\\\\()(#)\\\\s\",\"end\":\"(#)(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"},\"2\":{\"name\":\"keyword.operator.hash.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.hash.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"}},\"patterns\":[{\"include\":\"#comma\"},{\"include\":\"$self\"}]},{\"begin\":\"(\\\\()\",\"end\":\"(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"}},\"patterns\":[{\"include\":\"#comma\"},{\"include\":\"$self\"}]},{\"include\":\"#quasi_quote\"},{\"begin\":\"(\\\\[)\",\"end\":\"(\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.bracket.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.bracket.haskell\"}},\"patterns\":[{\"include\":\"#comma\"},{\"include\":\"$self\"}]},{\"include\":\"#record\"}],\"repository\":{\"block_comment\":{\"applyEndPatternLast\":1,\"begin\":\"\\\\{-\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.haskell\"}},\"end\":\"-\\\\}\",\"name\":\"comment.block.haskell\",\"patterns\":[{\"include\":\"#block_comment\"}]},\"comments\":{\"patterns\":[{\"begin\":\"^(\\\\s*)(--\\\\s[\\\\|\\\\$])\",\"beginCaptures\":{\"2\":{\"name\":\"punctuation.whitespace.comment.leading.haskell\"}},\"end\":\"(?=^(?!\\\\1--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])))\",\"name\":\"comment.block.documentation.haskell\"},{\"begin\":\"(^[ \\\\t]+)?(--\\\\s[\\\\^\\\\*])\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.haskell\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.documentation.haskell\"},{\"applyEndPatternLast\":1,\"begin\":\"\\\\{-\\\\s?[\\\\|\\\\$\\\\*\\\\^]\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.haskell\"}},\"end\":\"-\\\\}\",\"name\":\"comment.block.documentation.haskell\",\"patterns\":[{\"include\":\"#block_comment\"}]},{\"begin\":\"(^[ \\\\t]+)?(?=--+(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]))\",\"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\":\"(?!\\\\G)\",\"patterns\":[{\"begin\":\"--\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.haskell\"}},\"end\":\"\\\\n\",\"name\":\"comment.line.double-dash.haskell\"}]},{\"include\":\"#block_comment\"}]},\"comment_like\":{\"patterns\":[{\"include\":\"#cpp\"},{\"include\":\"#pragma\"},{\"include\":\"#comments\"}]},\"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\":\"^(#).*$\",\"name\":\"meta.preprocessor.c\"},\"where\":{\"patterns\":[{\"begin\":\"(?x)\\n (?<!')\\\\b(where)\\n \\\\s*(\\\\{)(?!-)\",\"end\":\"(\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.where.haskell\"},\"2\":{\"name\":\"punctuation.brace.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.brace.haskell\"}},\"patterns\":[{\"include\":\"$self\"},{\"match\":\";\",\"name\":\"punctuation.semicolon.haskell\"}]},{\"match\":\"\\\\b(?<!')(where)\\\\b(?!')\",\"name\":\"keyword.other.where.haskell\"}]},\"layout_herald\":{\"begin\":\"(?x)\\n (?:(?<!')\\\\b(?:(where|let|m?do)|(of))|(\\\\\\\\\\\\s*case))\\n \\\\s*(\\\\{)(?!-)\",\"end\":\"(\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.$1.haskell\"},\"2\":{\"name\":\"keyword.control.of.haskell\"},\"3\":{\"name\":\"keyword.control.lambda-case.haskell\"},\"4\":{\"name\":\"punctuation.brace.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.brace.haskell\"}},\"patterns\":[{\"include\":\"$self\"},{\"match\":\";\",\"name\":\"punctuation.semicolon.haskell\"}]},\"keyword\":{\"match\":\"\\\\b(?<!')(?:(where|let|in|default)|(m?do|if|then|else|case|of|proc|rec))\\\\b(?!')\",\"captures\":{\"1\":{\"name\":\"keyword.other.$1.haskell\"},\"2\":{\"name\":\"keyword.control.$2.haskell\"}}},\"deriving\":{\"patterns\":[{\"begin\":\"^(\\\\s*)(deriving)\\\\s+(?:(via|stock|newtype|anyclass)\\\\s+)?\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.deriving.haskell\"},\"3\":{\"name\":\"keyword.other.deriving.strategy.$3.haskell\"}},\"end\":\"(?x) # Detect end of deriving statement\\n # Decreasing indentation\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\",\"patterns\":[{\"include\":\"#comment_like\"},{\"match\":\"(?<!')\\\\b(instance)\\\\b(?!')\",\"name\":\"keyword.other.instance.haskell\"},{\"match\":\"(?<!')\\\\b(via|stock|newtype|anyclass)\\\\b(?!')\",\"captures\":{\"1\":{\"name\":\"keyword.other.deriving.strategy.$1.haskell\"}}},{\"include\":\"#type_signature\"}],\"name\":\"meta.deriving.haskell\"},{\"begin\":\"(deriving)(?:\\\\s+(stock|newtype|anyclass))?\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.deriving.haskell\"},\"2\":{\"name\":\"keyword.other.deriving.strategy.$2.haskell\"},\"3\":{\"name\":\"punctuation.paren.haskell\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"}},\"name\":\"meta.deriving.haskell\",\"patterns\":[{\"include\":\"#type_signature\"}]},{\"match\":\"(?x)\\n (deriving)(?:\\\\s+(stock|newtype|anyclass))?\\\\s+\\n ([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\n (\\\\s+(via)\\\\s+(.*)$)?\\n\",\"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\"}]}},\"name\":\"meta.deriving.haskell\"},{\"match\":\"(?<!')\\\\b(via)\\\\b(?!')\",\"name\":\"keyword.other.deriving.strategy.via.haskell\"}]},\"prefix_op\":{\"patterns\":[{\"comment\":\"An operator cannot be composed entirely of '-' characters; instead, it should be matched as a comment.\\n\",\"match\":\"(?x)\\n (\\\\()\\\\s*(?!(?:--+|\\\\.\\\\.)\\\\))(\\\\#+|[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+(?<!\\\\#))\\\\s*(\\\\))\",\"captures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"},\"2\":{\"name\":\"entity.name.function.infix.haskell\"},\"3\":{\"name\":\"punctuation.paren.haskell\"}}}]},\"infix_op\":{\"patterns\":[{\"match\":\"(?x)\\n ((?:(?<!'')('')?[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'']*\\\\.)*)\\n (\\\\#+|[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+(?<!\\\\#))\",\"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\",\"captures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"entity.name.namespace.haskell\"},\"3\":{\"name\":\"keyword.operator.infix.haskell\"}}},{\"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}'']*)(`)\",\"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\",\"name\":\"keyword.operator.function.infix.haskell\"}]},\"module_exports\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.paren.haskell\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.paren.haskell\"}},\"applyEndPatternLast\":1,\"name\":\"meta.declaration.exports.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"match\":\"\\\\b(?<!')(module)\\\\b(?!')\",\"captures\":{\"1\":{\"name\":\"keyword.other.module.haskell\"}}},{\"include\":\"#comma\"},{\"include\":\"#export_constructs\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.paren.haskell\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.paren.haskell\"}},\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#record_wildcard\"},{\"match\":\"(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*)\\\\s*(\\\\))\",\"name\":\"constant.other.operator.prefix.haskell\"},{\"include\":\"#export_constructs\"},{\"include\":\"#comma\"}]}]},\"export_constructs\":{\"patterns\":[{\"include\":\"#comment_like\"},{\"begin\":\"\\\\b(?<!')(pattern)\\\\b(?!')\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.pattern.haskell\"}},\"end\":\"(?x)\\n # Data constructor\\n ([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\n # Prefix form of symbolic constructor\\n | (\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+)\\\\s*(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"constant.other.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"},\"3\":{\"name\":\"constant.other.operator.prefix.haskell\"},\"4\":{\"name\":\"punctuation.paren.haskell\"}},\"patterns\":[{\"include\":\"#comment_like\"}]},{\"begin\":\"\\\\b(?<!')(type)\\\\b(?!')\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.type.haskell\"}},\"end\":\"(?x)\\n # Type name\\n ([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\n # Prefix form of type operator\\n | (\\\\()\\\\s*([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+)\\\\s*(\\\\))\",\"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\"}]},{\"include\":\"#record_wildcard\"},{\"include\":\"#reserved_symbol\"},{\"match\":\"(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*)\\\\s*(\\\\))\",\"name\":\"storage.type.operator.haskell\"},{\"match\":\"(?<!')\\\\b[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\",\"name\":\"entity.name.function.haskell\"},{\"match\":\"(?<!')\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\",\"name\":\"storage.type.haskell\"},{\"include\":\"#prefix_op\"}]},\"comma\":{\"match\":\",\",\"name\":\"punctuation.separator.comma.haskell\"},\"module_name\":{\"match\":\"(?<conid>[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(\\\\.\\\\g<conid>)?)\",\"name\":\"entity.name.namespace.haskell\"},\"pragma\":{\"begin\":\"\\\\{-#\",\"end\":\"#-\\\\}\",\"name\":\"meta.preprocessor.haskell\",\"patterns\":[{\"include\":\"#comments\"},{\"begin\":\"(?xi) \\\\b(?<!')(LANGUAGE)\\\\b(?!')\",\"end\":\"(?=#-\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.preprocessor.pragma.haskell\"}},\"patterns\":[{\"include\":\"#comments\"},{\"match\":\"(?x)\\n \\\\b(?<!')\\n (?:No)?\\n (?:AutoDeriveTypeable|DatatypeContexts|DoRec|IncoherentInstances|MonadFailDesugaring|MonoPatBinds|NullaryTypeClasses|OverlappingInstances|PatternSignatures|RecordPuns|RelaxedPolyRec)\\n \\\\b(?!')\",\"name\":\"invalid.deprecated\"},{\"match\":\"(?x)\\n \\\\b(?<!')\\n (\\n (?:No)?\\n (?:AllowAmbiguousTypes|AlternativeLayoutRuleTransitional|AlternativeLayoutRule|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|LexicalNegation|LiberalTypeSynonyms|LinearTypes|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|QualifiedDo|QuantifiedConstraints|PostfixOperators|QuasiQuotes|Rank2Types|RankNTypes|RebindableSyntax|RecordWildCards|RecursiveDo|RelaxedLayout|RoleAnnotations|ScopedTypeVariables|StandaloneDeriving|StarIsType|StaticPointers|StrictData|Strict|TemplateHaskellQuotes|TemplateHaskell|StandaloneKindSignatures|TraditionalRecordSyntax|TransformListComp|TupleSections|TypeApplications|TypeInType|TypeFamilies|TypeOperators|TypeSynonymInstances|UnboxedTuples|UnboxedSums|UndecidableInstances|UndecidableSuperClasses|UnicodeSyntax|UnliftedFFITypes|UnliftedNewtypes|ViewPatterns|UnliftedDatatypes|OverloadedRecordDot|OverloadedRecordUpdate|FieldSelectors)\\n )\\n \\\\b(?!')\",\"captures\":{\"1\":{\"name\":\"keyword.other.preprocessor.extension.haskell\"}}},{\"include\":\"#comma\"}]},{\"begin\":\"(?xi)\\n \\\\b(?<!')(SPECIALI(?:S|Z)E)\\n (?:\\n \\\\s*( \\\\[ [^\\\\[\\\\]]* \\\\])?\\\\s*\\n |\\\\s+\\n )\\n (instance)\\\\b(?!')\",\"end\":\"(?=#-\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.preprocessor.pragma.haskell\"},\"2\":{\"patterns\":[{\"include\":\"#inline_phase\"}]},\"3\":{\"name\":\"keyword.other.instance.haskell\"}},\"patterns\":[{\"include\":\"#type_signature\"}]},{\"begin\":\"(?xi)\\n \\\\b(?<!')(SPECIALI(?:S|Z)E)\\\\b(?!')\\n (?:\\\\s+(INLINE)\\\\b(?!'))?\\n (?:\\\\s*(\\\\[ [^\\\\[\\\\]]* \\\\])?)\\n \\\\s*\",\"end\":\"(?=#-\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.preprocessor.pragma.haskell\"},\"2\":{\"name\":\"keyword.other.preprocessor.pragma.haskell\"},\"3\":{\"patterns\":[{\"include\":\"#inline_phase\"}]}},\"patterns\":[{\"include\":\"$self\"}]},{\"match\":\"(?xi) \\\\b(?<!')\\n (LANGUAGE|OPTIONS_GHC|OPTIONS_HADDOCK|OPTIONS|INCLUDE\\n |MINIMAL|UNPACK|OVERLAPS|INCOHERENT\\n |NOUNPACK|SOURCE|OVERLAPPING|OVERLAPPABLE|INLINE\\n |NOINLINE|INLINE?ABLE|CONLIKE|LINE|COLUMN|RULES\\n |COMPLETE)\\\\b(?!')\",\"name\":\"keyword.other.preprocessor.haskell\"},{\"begin\":\"(?i)\\\\b(DEPRECATED|WARNING)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.preprocessor.pragma.haskell\"}},\"end\":\"(?=#-\\\\})\",\"patterns\":[{\"include\":\"#comments\"},{\"include\":\"#string_literal\"}]}]},\"liquid_haskell\":{\"name\":\"block.liquidhaskell.haskell\",\"begin\":\"\\\\{-@\",\"end\":\"@-\\\\}\",\"patterns\":[{\"include\":\"$self\"}]},\"data_context\":{\"match\":\"(?x)\\n (.*)\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\n (=>|⇒)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\n\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#forall\"},{\"begin\":\"(?='?\\\\()\",\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#type_signature\"}]},{\"begin\":\"(?='?\\\\[)\",\"end\":\"(?=\\\\])\",\"patterns\":[{\"include\":\"#type_signature\"}]},{\"match\":\"(?x)\\n (\\\\S*)\\\\s*\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\n (::|∷|=)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#forall\"},{\"include\":\"#record_decl_field\"}]},\"2\":{\"patterns\":[{\"include\":\"#reserved_symbol\"}]},\"3\":{\"patterns\":[{\"include\":\"#type_signature\"}]}}},{\"include\":\"#type_signature\"}]},\"2\":{\"name\":\"keyword.operator.big-arrow.haskell\"}}},\"data_constructor\":{\"patterns\":[{\"match\":\"\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*(?![\\\\.'\\\\w])\",\"name\":\"constant.other.haskell\"},{\"match\":\"(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*)\\\\s*(\\\\))\",\"name\":\"constant.other.operator.haskell\"}]},\"qualifier\":{\"match\":\"\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.\",\"name\":\"entity.name.namespace.haskell\"},\"record_decl\":{\"begin\":\"({)(?!-)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.brace.haskell\"}},\"end\":\"(?<!-)(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.brace.haskell\"}},\"name\":\"meta.record.definition.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#record_decl_field\"}]},\"record\":{\"begin\":\"({)(?!-)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.brace.haskell\"}},\"end\":\"(?<!-)(})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.brace.haskell\"}},\"name\":\"meta.record.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#record_field\"}]},\"record_decl_field\":{\"begin\":\"(?x)\\n (?:([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\n |(\\\\()\\\\s*([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+)\\\\s*(\\\\))\\n )\\n\",\"end\":\"(,)|(?=})\",\"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\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.comma.haskell\"}},\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#comma\"},{\"include\":\"#double_colon\"},{\"include\":\"#type_signature\"},{\"include\":\"#record_decl_field\"}]},\"record_wildcard\":{\"match\":\"(?x)\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\n (\\\\.\\\\.)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\",\"captures\":{\"1\":{\"name\":\"variable.other.member.wildcard.haskell\"}}},\"record_field\":{\"patterns\":[{\"begin\":\"(?x)\\n (?:([\\\\p{Ll}\\\\p{Lu}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\.']*)\\n |(\\\\()\\\\s*([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+)\\\\s*(\\\\))\\n )\\n\",\"end\":\"(,)|(?=})\",\"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\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.comma.haskell\"}},\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#comma\"},{\"include\":\"$self\"}]},{\"include\":\"#record_wildcard\"}]},\"role_annotation\":{\"patterns\":[{\"begin\":\"^(\\\\s*)(type)\\\\s+(role)\\\\b(?!')\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.type.haskell\"},\"3\":{\"name\":\"keyword.other.role.haskell\"}},\"end\":\"(?x) # Detect end of block by decreasing indentation:\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\",\"name\":\"meta.role-annotation.haskell\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#type_constructor\"},{\"match\":\"\\\\b(?<!')(nominal|representational|phantom)\\\\b(?!')\",\"captures\":{\"1\":{\"name\":\"keyword.other.role.$1.haskell\"}}}]}]},\"fun_decl\":{\"begin\":\"(?x)^(\\\\s*)\\n (?<fn>\\n (?:\\n [\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\#*\\n | \\\\(\\\\s*\\n (?!--+\\\\))\\n [\\\\p{S}\\\\p{P}&&[^(),:;\\\\[\\\\]`{}_\\\"']]\\n [\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*\\n \\\\s*\\\\)\\n )\\n (?:\\\\s*,\\\\s*\\\\g<fn>)?\\n )\\n \\\\s*(?<![\\\\p{S}\\\\p{P}&&[^\\\\),;\\\\]`}_\\\"']])(::|∷)(?![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[`{_\\\"']])\\n\",\"beginCaptures\":{\"2\":{\"name\":\"entity.name.function.haskell\",\"patterns\":[{\"include\":\"#reserved_symbol\"},{\"include\":\"#prefix_op\"}]},\"3\":{\"name\":\"keyword.operator.double-colon.haskell\"}},\"name\":\"meta.function.type-declaration.haskell\",\"patterns\":[{\"include\":\"#type_signature\"}],\"end\":\"(?x)\\n # End of type annotation:\\n # To the left of a reserved symbolic keyword such as = or <-\\n (?= \\n # non-symbolic character\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\n # symbolic keyword except (->)\\n ((<-|←)|(=)|(-<|↢)|(-<<|⤛))\\n # non-symbolic character\\n ([(),;\\\\[\\\\]`{}_\\\"']|[^\\\\p{S}\\\\p{P}])\\n )\\n # Decreasing indentation:\\n |(?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\"},\"adt_constructor\":{\"patterns\":[{\"include\":\"#comment_like\"},{\"begin\":\"(?x)\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n (?:(=)|(\\\\|))\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.eq.haskell\"},\"2\":{\"name\":\"keyword.operator.pipe.haskell\"}},\"end\":\"(?x)\\n (?: # Infix data constructor\\n # First argument\\n (?:\\n # Simple type\\n (?<!')\\\\b((?:[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'\\\\.])+)\\n # Type inside balanced parentheses\\n | ('? # Optional promotion tick\\n (?<paren>\\n \\\\( # Opening parenthesis\\n (?:\\n [^\\\\(\\\\)]* # Match non-parentheses\\n | \\\\g<paren> # or recurse into further depth\\n )*\\n \\\\) # Closing parenthesis\\n )\\n )\\n # Type inside balanced brackets\\n | ('? # Optional promotion tick\\n (?<brac>\\n \\\\[ # Opening bracket\\n (?:\\n [^\\\\[\\\\]]* # Match non-brackets\\n | \\\\g<brac> # or recurse into further depth\\n )*\\n \\\\] # Closing bracket\\n )\\n )\\n )\\n # Then either\\n \\\\s*\\n # - a symbolic infix constructor, or\\n (?:(?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*)\\n # - an alphabetic infix constructor\\n | (`)([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)(`)\\n )\\n ) # Otherwise, prefix data constructor, either:\\n | # - an alphabetic data constructor e.g. \\\"Cons_123\\\"\\n (?:(?<!')\\\\b([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*))\\n | # - a symbolic (prefix) data constructor\\n (\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*)\\\\s*(\\\\))\\n | # Otherwise, try to fail early to avoid excessive backtracking (https://github.com/JustusAdam/language-haskell/issues/161)\\n # Fail when detecting a lowercase identifier and then something not starting with a tick or colon\\n (?=\\\\b(?<!')(?!(?:forall|deriving)\\\\s)[\\\\p{Ll}_]\\\\S+\\\\s+[^`:])\\n # Fail when seeing another equal signs or pipe symbol\\n |(?=\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n (?:=|\\\\|)\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]) # non-symbol\\n )\",\"endCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type_signature\"}]},\"2\":{\"patterns\":[{\"include\":\"#type_signature\"}]},\"4\":{\"patterns\":[{\"include\":\"#type_signature\"}]},\"6\":{\"name\":\"constant.other.operator.infix.haskell\"},\"7\":{\"name\":\"punctuation.backtick.haskell\"},\"8\":{\"name\":\"constant.other.infix.haskell\"},\"9\":{\"name\":\"punctuation.backtick.haskell\"},\"10\":{\"name\":\"constant.other.haskell\"},\"11\":{\"name\":\"punctuation.paren.haskell\"},\"12\":{\"name\":\"constant.other.operator.prefix.haskell\"},\"13\":{\"name\":\"punctuation.paren.haskell\"}},\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#deriving\"},{\"include\":\"#record_decl\"},{\"include\":\"#forall\"},{\"include\":\"#data_context\"},{\"include\":\"#type_signature\"}]}]},\"gadt_constructor\":{\"patterns\":[{\"begin\":\"(?x)\\n ^(\\\\s*)\\n (?:\\n (\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\n |(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*)\\\\s*(\\\\))\\n )\",\"beginCaptures\":{\"2\":{\"name\":\"constant.other.haskell\"},\"3\":{\"name\":\"punctuation.paren.haskell\"},\"4\":{\"name\":\"constant.other.operator.prefix.haskell\"},\"5\":{\"name\":\"punctuation.paren.haskell\"}},\"end\":\"(?x)\\n # GADT constructor ends\\n (?=\\\\b(?<!'')deriving\\\\b(?!')) \\n # Decreasing indentation\\n |(?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#deriving\"},{\"include\":\"#double_colon\"},{\"include\":\"#record_decl\"},{\"include\":\"#type_signature\"}]},{\"begin\":\"(?x)\\n (\\\\b(?<!')[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}]*) # named constructor\\n |(\\\\()\\\\s*(:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]*)\\\\s*(\\\\)) # prefix operator\",\"beginCaptures\":{\"1\":{\"name\":\"constant.other.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"},\"3\":{\"name\":\"constant.other.operator.prefix.haskell\"},\"4\":{\"name\":\"punctuation.paren.haskell\"}},\"end\":\"(?=;|\\\\}|$)\",\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#deriving\"},{\"include\":\"#double_colon\"},{\"include\":\"#record_decl\"},{\"include\":\"#type_signature\"}]}]},\"type_application\":{\"patterns\":[{\"begin\":\"(?<=[\\\\s,;\\\\[\\\\]{}\\\"])(@)(')?(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.prefix.at.haskell\"},\"2\":{\"name\":\"keyword.operator.promotion.haskell\"},\"3\":{\"name\":\"punctuation.paren.haskell\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.paren.haskell\"}},\"name\":\"meta.type-application.haskell\",\"patterns\":[{\"include\":\"#type_signature\"}]},{\"begin\":\"(?<=[\\\\s,;\\\\[\\\\]{}\\\"])(@)(')?(\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.prefix.at.haskell\"},\"2\":{\"name\":\"keyword.operator.promotion.haskell\"},\"3\":{\"name\":\"punctuation.bracket.haskell\"}},\"end\":\"\\\\]\",\"name\":\"meta.type-application.haskell\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.bracket.haskell\"}},\"patterns\":[{\"include\":\"#type_signature\"}]},{\"begin\":\"(?<=[\\\\s,;\\\\[\\\\]{}\\\"])(@)(?=\\\\\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.prefix.at.haskell\"}},\"end\":\"(?<=\\\\\\\")\",\"name\":\"meta.type-application.haskell\",\"patterns\":[{\"include\":\"#string_literal\"}]},{\"begin\":\"(?<=[\\\\s,;\\\\[\\\\]{}\\\"])(@)(?=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.prefix.at.haskell\"}},\"end\":\"(?![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'])\",\"name\":\"meta.type-application.haskell\",\"patterns\":[{\"include\":\"#type_signature\"}]}]},\"type_signature\":{\"patterns\":[{\"include\":\"#comment_like\"},{\"match\":\"(')?(\\\\()\\\\s*(\\\\))\",\"captures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"},\"3\":{\"name\":\"punctuation.paren.haskell\"}},\"name\":\"support.constant.unit.haskell\"},{\"match\":\"(\\\\()(#)\\\\s*(#)(\\\\))\",\"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\":\"(')?(\\\\()\\\\s*,[\\\\s,]*(\\\\))\",\"captures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"},\"3\":{\"name\":\"punctuation.paren.haskell\"}},\"name\":\"support.constant.tuple.haskell\"},{\"match\":\"(\\\\()(#)\\\\s*(#)(\\\\))\",\"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\":\"(\\\\()(#)\\\\s*,[\\\\s,]*(#)(\\\\))\",\"captures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"},\"2\":{\"name\":\"keyword.operator.hash.haskell\"},\"3\":{\"name\":\"keyword.operator.hash.haskell\"},\"4\":{\"name\":\"punctuation.paren.haskell\"}},\"name\":\"support.constant.tuple.unboxed.haskell\"},{\"match\":\"(')?(\\\\[)\\\\s*(\\\\])\",\"captures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"punctuation.bracket.haskell\"},\"3\":{\"name\":\"punctuation.bracket.haskell\"}},\"name\":\"support.constant.empty-list.haskell\"},{\"include\":\"#integer_literals\"},{\"match\":\"(::|∷)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\",\"name\":\"keyword.operator.double-colon.haskell\"},{\"include\":\"#forall\"},{\"match\":\"=>|⇒\",\"name\":\"keyword.operator.big-arrow.haskell\"},{\"include\":\"#string_literal\"},{\"match\":\"'[^']'\",\"name\":\"invalid\"},{\"include\":\"#type_application\"},{\"include\":\"#reserved_symbol\"},{\"include\":\"#type_operator\"},{\"include\":\"#type_constructor\"},{\"begin\":\"(\\\\()(#)\",\"end\":\"(#)(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"},\"2\":{\"name\":\"keyword.operator.hash.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.hash.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"}},\"patterns\":[{\"include\":\"#comma\"},{\"include\":\"#type_signature\"}]},{\"begin\":\"(')?(\\\\()\",\"end\":\"(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.paren.haskell\"}},\"patterns\":[{\"include\":\"#comma\"},{\"include\":\"#type_signature\"}]},{\"begin\":\"(')?(\\\\[)\",\"end\":\"(\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"punctuation.bracket.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"punctuation.bracket.haskell\"}},\"patterns\":[{\"include\":\"#comma\"},{\"include\":\"#type_signature\"}]},{\"include\":\"#type_variable\"}]},\"double_colon\":{\"match\":\"\\\\s*(::|∷)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\\\s*\",\"captures\":{\"1\":{\"name\":\"keyword.operator.double-colon.haskell\"}}},\"start_type_signature\":{\"patterns\":[{\"begin\":\"^(\\\\s*)(::|∷)(?![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[`{_\\\"']])\\\\s*\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.operator.double-colon.haskell\"}},\"end\":\"(?x)\\n # End type annotation when seeing one of:\\n (?=\\n \\\\#?\\\\) # closing parenthesis\\n |\\\\] # closing bracket\\n |, # comma\\n |(?<!')\\\\b(in|then|else|of)\\\\b(?!') # keyword\\n | # symbolic keyword except (->)\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\n (?:\\n (\\\\\\\\|λ)\\n |(<-|←)\\n |(=)\\n |(-<|↢)\\n |(-<<|⤛)\\n )\\n ([(),;\\\\[\\\\]`{}_\\\"']|[^\\\\p{S}\\\\p{P}])\\n |(\\\\#|@)-\\\\} # End of annotation block (LiquidHaskell or pragma)\\n # Decreasing indentation:\\n | (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s*\\\\S # - equally indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n )\",\"patterns\":[{\"include\":\"#type_signature\"}],\"name\":\"meta.type-declaration.haskell\"},{\"begin\":\"(?<![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[`{_\\\"']])(::|∷)(?![\\\\p{S}\\\\p{P}&&[^\\\\(,;\\\\[`{_\\\"']])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.double-colon.haskell\"}},\"end\":\"(?x)\\n # End type annotation when seeing one of:\\n (?=\\n \\\\#?\\\\) # closing parenthesis\\n |\\\\] # closing bracket\\n |, # comma\\n |\\\\b(?<!')(in|then|else|of)\\\\b(?!') # keyword\\n |(\\\\#|@)-\\\\} # End of annotation block (LiquidHaskell or pragma)\\n | # symbolic keyword except (->)\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']])\\n (?:\\n (\\\\\\\\|λ)\\n |(<-|←)\\n |(=)\\n |(-<|↢)\\n |(-<<|⤛)\\n )\\n ([(),;\\\\[\\\\]`{}_\\\"']|[^\\\\p{S}\\\\p{P}])\\n # Indentation \\n |(?=\\\\}|;) # Explicit indentation\\n |$ # End of line\\n )\",\"patterns\":[{\"include\":\"#type_signature\"}]}]},\"type_variable\":{\"match\":\"\\\\b(?<!')(?!(?:forall|deriving)\\\\b(?!'))[\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\",\"name\":\"variable.other.generic-type.haskell\"},\"type_constructor\":{\"patterns\":[{\"match\":\"(?x)\\n # Optional promotion tick\\n (')?\\n # Optional qualified name\\n ((?:\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)\\n # Type constructor proper\\n (\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\",\"captures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"entity.name.namespace.haskell\"},\"3\":{\"name\":\"storage.type.haskell\"}}},{\"match\":\"(?x)\\n # Optional promotion tick\\n (')?\\n # Opening parenthesis\\n (\\\\()\\\\s*\\n # Optional qualified name\\n ((?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)\\n # Type operator proper\\n ([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+)\\n # Closing parenthesis\\n \\\\s*(\\\\))\",\"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\"}}}]},\"overloaded_label\":{\"patterns\":[{\"match\":\"(?x) \\n (?<![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^(,;\\\\[`{]]) # Disallow closing characters\\n (\\\\#)\\n (?:\\n # String\\n (\\\"(?:\\\\\\\\\\\"|[^\\\"])*\\\")\\n # Sequence of allowed label identifiers\\n |[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'\\\\.]+\\n )\",\"captures\":{\"1\":{\"name\":\"keyword.operator.prefix.hash.haskell\"},\"2\":{\"patterns\":[{\"include\":\"#string_literal\"}]}},\"name\":\"entity.name.label.haskell\"}]},\"reserved_symbol\":{\"patterns\":[{\"match\":\"(?x)\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"'']])\\n (?:\\n (\\\\.\\\\.)\\n |(:)\\n |(=)\\n |(\\\\\\\\) # λ not reserved as it is a letter\\n |(\\\\|)\\n |(<-|←)\\n |(->|→)\\n |(-<|↢)\\n |(-<<|⤛)\\n |(>-|⤚)\\n |(>>-|⤜)\\n )\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"'']])\",\"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\"}}},{\"match\":\"(?x)\\n (?<=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^\\\\#,;\\\\[`{]]) # Require closing characters\\n (\\\\#+)\\n (?![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^),;\\\\]`}]]) # Disallow opening character\",\"captures\":{\"1\":{\"name\":\"keyword.operator.postfix.hash.haskell\"}}},{\"match\":\"(?x)\\n (?<=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'\\\\)\\\\}\\\\]]) # Require closing characters\\n (@)\\n (?=[\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'\\\\(\\\\[\\\\{]) # Require opening character\",\"captures\":{\"1\":{\"name\":\"keyword.operator.infix.tight.at.haskell\"}}},{\"match\":\"(?x)\\n (?<![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\p{S}\\\\p{P}&&[^(,;\\\\[`{]]) # Disallow closing characters\\n (?:(~)|(!)|(-)|(\\\\$\\\\$)|(\\\\$)|(%))\\n (?=[\\\\p{Ll}_'\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}\\\\(\\\\{\\\\[]) # Require opening character (non operator symbol)\",\"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.double-dollar.haskell\"},\"5\":{\"name\":\"keyword.operator.prefix.dollar.haskell\"},\"6\":{\"name\":\"keyword.operator.prefix.modifier.haskell\"}}}]},\"type_operator\":{\"patterns\":[{\"match\":\"(?x)\\n # Optional promotion tick\\n (?:(?<!')('))?\\n # Optional qualified name\\n ((?:\\\\b[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)\\n # Type operator proper\\n (?![#@]?-})(\\\\#+|[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+(?<!\\\\#))\\n #((?:[\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']&&[^#@]]|[@#](?!-}))+)\",\"captures\":{\"1\":{\"name\":\"keyword.operator.promotion.haskell\"},\"2\":{\"name\":\"entity.name.namespace.haskell\"},\"3\":{\"name\":\"storage.type.operator.infix.haskell\"}}},{\"match\":\"(?x)\\n # Optional promotion tick\\n (')?\\n # Opening backtick\\n (\\\\`)\\n # Optional qualified name\\n ((?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*)\\n # Type constructor proper\\n ([\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\n # Closing backtick\\n (`)\",\"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\"}}}]},\"forall\":{\"begin\":\"(?x)\\n # Alphabetic forall\\n (?:\\n \\\\b(?<!')\\n (forall)\\n \\\\b(?!')\\n )\\n |\\n # Symbolic forall\\n (?:\\n # Not preceded by a symbol except reserved symbols\\n (?<![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"'']])\\n (∀)\\n # Not followed by a symbol except reserved symbols\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"'']])\\n )\",\"end\":\"(\\\\.)|(->|→)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.forall.haskell\"},\"2\":{\"name\":\"keyword.other.forall.haskell\"}},\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.period.haskell\"},\"2\":{\"name\":\"keyword.operator.arrow.haskell\"}},\"patterns\":[{\"include\":\"#comment_like\"},{\"include\":\"#type_variable\"},{\"include\":\"#type_signature\"}]},\"string_literal\":{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.haskell\"}},\"end\":\"\\\"\",\"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\\\\\\\\\\\\\\\"'\\\\&])\",\"name\":\"constant.character.escape.haskell\"},{\"match\":\"\\\\\\\\o[0-7]+|\\\\\\\\x[0-9A-Fa-f]+|\\\\\\\\[0-9]+\",\"name\":\"constant.character.escape.octal.haskell\"},{\"match\":\"\\\\\\\\\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]\",\"name\":\"constant.character.escape.control.haskell\"},{\"begin\":\"\\\\\\\\\\\\s\",\"beginCaptures\":{\"0\":{\"name\":\"constant.character.escape.begin.haskell\"}},\"end\":\"\\\\\\\\\",\"endCaptures\":{\"0\":{\"name\":\"constant.character.escape.end.haskell\"}},\"patterns\":[{\"match\":\"\\\\S+\",\"name\":\"invalid.illegal.character-not-allowed-here.haskell\"}]}]},\"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\":\"(?x)\\n (?<![\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}'])\\n (')\\n (?:\\n [\\\\ -\\\\[\\\\]-~] # Basic Char\\n | (\\\\\\\\(?:NUL|SOH|STX|ETX|EOT|ENQ|ACK|BEL|BS|HT|LF|VT|FF|CR|SO|SI|DLE\\n |DC1|DC2|DC3|DC4|NAK|SYN|ETB|CAN|EM|SUB|ESC|FS|GS|RS\\n |US|SP|DEL|[abfnrtv\\\\\\\\\\\\\\\"'\\\\\\\\&])) # Escapes\\n | (\\\\\\\\o[0-7]+) # Octal Escapes\\n | (\\\\\\\\x[0-9A-Fa-f]+) # Hexadecimal Escapes\\n | (\\\\\\\\\\\\^[A-Z@\\\\[\\\\]\\\\\\\\\\\\^_]) # Control Chars\\n )\\n (')\\n\",\"name\":\"string.quoted.single.haskell\"},\"float_literals\":{\"comment\":\"Floats are decimal or hexadecimal\",\"match\":\"(?x)\\n \\\\b(?<!')\\n (?: # Decimal\\n ([0-9][_0-9]*\\\\.[0-9][_0-9]*(?:[eE][-+]?[0-9][_0-9]*)?\\n |[0-9][_0-9]*[eE][-+]?[0-9][_0-9]*\\n )\\n | # Hexadecimal\\n (0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*\\\\.[0-9a-fA-F][_0-9a-fA-F]*(?:[pP][-+]?[0-9][_0-9]*)?\\n |0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*[pP][-+]?[0-9][_0-9]*\\n )\\n )\\\\b(?!')\",\"captures\":{\"1\":{\"name\":\"constant.numeric.floating.decimal.haskell\"},\"2\":{\"name\":\"constant.numeric.floating.hexadecimal.haskell\"}}},\"integer_literals\":{\"match\":\"(?x)\\n \\\\b(?<!')\\n (?:\\n ([0-9][_0-9]*) # Decimal integer\\n | (0[xX]_*[0-9a-fA-F][_0-9a-fA-F]*) # Hexadecimal integer\\n | (0[oO]_*[0-7][_0-7]*) # Octal integer\\n | (0[bB]_*[01][_01]*) # Binary integer\\n )\\n \\\\b(?!')\",\"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\"}}},\"numeric_literals\":{\"patterns\":[{\"include\":\"#float_literals\"},{\"include\":\"#integer_literals\"}]},\"ffi\":{\"begin\":\"^(\\\\s*)(foreign)\\\\s+(import|export)\\\\s+\",\"beginCaptures\":{\"2\":{\"name\":\"keyword.other.foreign.haskell\"},\"3\":{\"name\":\"keyword.other.$3.haskell\"}},\"name\":\"meta.$3.foreign.haskell\",\"end\":\"(?x) # Detect end of FFI block by decreasing indentation:\\n (?=\\\\}|;) # Explicit indentation\\n |^(?! # Implicit indentation: end match on newline *unless* the new line is either:\\n \\\\1\\\\s+\\\\S # - more indented, or\\n | \\\\s* # - starts with whitespace, followed by:\\n (?: $ # - the end of the line (i.e. empty line), or\\n |\\\\{-[^@] # - the start of a block comment, or\\n |--+ # - the start of a single-line comment.\\n (?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]{}`_\\\"']]).*$) # non-symbol\\n # The double dash may not be followed by other operator characters\\n # (then it would be an operator, not a comment)\\n )\\n\",\"patterns\":[{\"include\":\"#comment_like\"},{\"match\":\"\\\\b(?<!')(ccall|cplusplus|dotnet|jvm|stdcall|prim|capi)\\\\s+\",\"captures\":{\"1\":{\"name\":\"keyword.other.calling-convention.$1.haskell\"}}},{\"begin\":\"(?=\\\")|(?=\\\\b(?<!')([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\b(?!'))\",\"end\":\"(?=(::|∷)(?![\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]))\",\"patterns\":[{\"include\":\"#comment_like\"},{\"match\":\"(?x)\\n \\\\b(?<!')(safe|unsafe|interruptible)\\\\b(?!')\\n \\\\s*\\n (\\\"(?:\\\\\\\\\\\"|[^\\\"])*\\\")?\\n \\\\s*\\n (?:\\n (?:\\\\b(?<!'')([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\b(?!'))\\n |(?:\\\\(\\\\s*(?!--+\\\\))([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+)\\\\s*\\\\))\\n )\\n\",\"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\":\"(?x)\\n \\\\b(?<!')(safe|unsafe|interruptible)\\\\b(?!')\\n \\\\s*\\n (\\\"(?:\\\\\\\\\\\"|[^\\\"])*\\\")?\\n \\\\s*$\\n\",\"captures\":{\"1\":{\"name\":\"keyword.other.safety.$1.haskell\"},\"2\":{\"name\":\"entity.name.foreign.haskell\",\"patterns\":[{\"include\":\"#string_literal\"}]}}},{\"match\":\"(?x)\\n \\\"(?:\\\\\\\\\\\"|[^\\\"])*\\\"\",\"captures\":{\"0\":{\"name\":\"entity.name.foreign.haskell\",\"patterns\":[{\"include\":\"#string_literal\"}]}}},{\"match\":\"(?x)\\n (?:\\\\b(?<!'')([\\\\p{Ll}_][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*)\\\\b(?!'))\\n |(?:(\\\\()\\\\s*(?!--+\\\\))([\\\\p{S}\\\\p{P}&&[^(),;\\\\[\\\\]`{}_\\\"']]+)\\\\s*(\\\\)))\\n\",\"captures\":{\"1\":{\"name\":\"entity.name.function.haskell\"},\"2\":{\"name\":\"punctuation.paren.haskell\"},\"3\":{\"name\":\"entity.name.function.infix.haskell\"},\"4\":{\"name\":\"punctuation.paren.haskell\"}}}]},{\"include\":\"#double_colon\"},{\"include\":\"#type_signature\"}]},\"inline_phase\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.bracket.haskell\"}},\"end\":\"\\\\]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.bracket.haskell\"}},\"name\":\"meta.inlining-phase.haskell\",\"patterns\":[{\"match\":\"~\",\"name\":\"punctuation.tilde.haskell\"},{\"include\":\"#integer_literals\"},{\"match\":\"\\\\w*\",\"name\":\"invalid\"}]},\"quasi_quote\":{\"patterns\":[{\"begin\":\"(?x)\\n (\\\\[)\\n (e|d|p)?\\n (\\\\|(?:\\\\|(?!\\\\]))?)\",\"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\\\\]\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.quasi-quotation.end.haskell\"}},\"name\":\"meta.quasi-quotation.haskell\",\"patterns\":[{\"include\":\"$self\"}]},{\"begin\":\"(?x)\\n (\\\\[)\\n (t)\\n (\\\\|(?:\\\\|(?!\\\\]))?)\",\"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\\\\]\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.quasi-quotation.end.haskell\"}},\"name\":\"meta.quasi-quotation.haskell\",\"patterns\":[{\"include\":\"#type_signature\"}]},{\"begin\":\"(?x)\\n (\\\\[)\\n (?:(\\\\$\\\\$)|(\\\\$))?\\n (?!'\\\\|') # Don't parse ['|'...] as a quasi quotation\\n ((?:[\\\\p{Lu}\\\\p{Lt}][\\\\p{Ll}_\\\\p{Lu}\\\\p{Lt}\\\\p{Nd}']*\\\\.)*) # Optional qualifier\\n ((?:[^\\\\s\\\\p{S}\\\\p{P}]|['_])*) # Quasi-quoter\\n (\\\\|)\",\"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.namespace.haskell\"},\"5\":{\"name\":\"entity.name.quasi-quoter.haskell\"},\"6\":{\"name\":\"keyword.operator.quasi-quotation.begin.haskell\"}},\"end\":\"\\\\|\\\\]\",\"endCaptures\":{\"0\":{\"name\":\"keyword.operator.quasi-quotation.end.haskell\"}},\"name\":\"meta.quasi-quotation.haskell meta.embedded.block.$5\"}]}},\"scopeName\":\"source.haskell\",\"uuid\":\"5C034675-1F6D-497E-8073-369D37E2FD7D\"}";
|
|
2
|
+
|
|
3
|
+
export { haskell_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var hotReloadTb_png = Uint8Array.from(window.atob("iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAABmJLR0QA/wD/AP+gvaeTAAABqElEQVRoge3ZP0tbcRTG8eeIDpZiJnWyIHRQCDjXVbrq7OgghQ4FX0QpqFsGJwcROlbcHOwovoAWcSrd2s1iCCjEfB0UbGnExJuckz/ns4Z7n/NwLtzwu1JKKaWUUkr9CXgZmT8SkPk+IDMG8Ar4FjmD94Y3JI05Z8YAJoEacB45h+eGP0h64ZgXBygBf7gzFBt+J6nklBULGAd+82DgN7wmadohJx4wCvzgXwO94VVJs13O6A3ACHDG/wZ2w8uS5rt4/2exbt0YOJG02OSnqqSjJy6vSlo3s0bHB+sGYKnJo9yOj9Ed2gIcFyhbA6aiO7QMeFNwu5XoDm0BDgqUvQZmoju0DCgDjQKF96I7tAXYL1D2BpiL7tAy4DVQL1D4i8ecHXsPA2U1f+/+bUGPH+Itmtlpp+bpCcDKI9s99poh4pi2mU9eQb1Q+NTMvnqF9ULhTc+w6MLfJR16BkYX3jIzPAMjC/+U9Nk7NLLwtpnVvUOjCv+StBsRHFW4YmZXQdl+7v9pXQATUTNEbHjHzC4Dcv0Bb+mn45uigOH4GJ5SSimllNIAugUOSIWhTH9glAAAAABJRU5ErkJggg=="), v => v.charCodeAt(0));
|
|
2
|
+
|
|
3
|
+
export { hotReloadTb_png as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var hotReload_svg = "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n\t<path fill=\"#f1a522\" d=\"\n\t\tM 15,0\n\t\tL 6,19\n\t\tL 14,19\n\t\tL 14,31\n\t\tL 23,12\n\t\tL 15,12\n\t\tZ\n\t\"/>\n</svg>\n";
|
|
2
|
+
|
|
3
|
+
export { hotReload_svg as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var htmlEex_json = "{\"fileTypes\":[\"html.eex\",\"html.leex\"],\"foldingStartMarker\":\"(?x)\\n\\t\\t(<(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|form|dl)\\\\b.*?>\\n\\t\\t|<!--(?!.*-->)\\n\\t\\t|\\\\{\\\\s*($|\\\\?>\\\\s*$|//|/\\\\*(.*\\\\*/\\\\s*$|(?!.*?\\\\*/)))\\n\\t\\t)\",\"foldingStopMarker\":\"(?x)\\n\\t\\t(</(?i:head|body|table|thead|tbody|tfoot|tr|div|select|fieldset|style|script|ul|ol|form|dl)>\\n\\t\\t|^\\\\s*-->\\n\\t\\t|(^|\\\\s)\\\\}\\n\\t\\t)\",\"injections\":{\"R:text.html.elixir meta.tag meta.attribute string.quoted\":{\"comment\":\"Uses R: to ensure this matches after any other injections.\",\"patterns\":[{\"include\":\"text.elixir\"}]}},\"name\":\"HTML (Embedded Elixir)\",\"patterns\":[{\"include\":\"text.elixir\"},{\"include\":\"text.html.basic\"}],\"scopeName\":\"text.html.elixir\"}";
|
|
2
|
+
|
|
3
|
+
export { htmlEex_json as default };
|