@codingame/monaco-editor-wrapper 3.9.2 → 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 -3070
- 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 -5922
- package/dist/JavaScriptReact.tmLanguage.js +0 -5922
- 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 -1291
- package/dist/TypeScript.tmLanguage.js +0 -5673
- package/dist/TypeScriptReact.tmLanguage.js +0 -5922
- package/dist/angular.js +0 -74
- package/dist/asp-vb-net.tmlanguage.js +0 -247
- package/dist/aspnetcorerazor.js +0 -72
- package/dist/aspnetcorerazor.tmLanguage.js +0 -1522
- 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 -337
- 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 -16485
- package/dist/cpptools.js +0 -2608
- 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 -3173
- 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 -1124
- 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 -92
- 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 -95
- package/dist/java.tmLanguage.js +0 -1863
- package/dist/java2.js +0 -888
- 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/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 -906
- package/dist/lua2.js +0 -2859
- 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 -3006
- 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 -590
- 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 -4008
- 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 -223
- 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 -2016
- package/dist/shellscript.js +0 -93
- package/dist/solargraph.js +0 -192
- package/dist/solidity-solidity.js +0 -213
- package/dist/solidity.js +0 -1187
- package/dist/solidity2.js +0 -71
- package/dist/solidity3.js +0 -137
- 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 -5484
- package/dist/template.js +0 -207
- package/dist/theme-defaults~dark_plus.js +0 -207
- package/dist/theme-defaults~dark_plus_experimental.js +0 -146
- 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 -209
- package/dist/theme-defaults~light_plus_experimental.js +0 -159
- 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 -1090
- 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 -343
- package/dist/vscode-R-r-snippets.js +0 -534
- package/dist/vscode-R-rmarkdown.js +0 -461
- package/dist/vscode-R.js +0 -648
- 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 -1604
- package/dist/vscode-groovy.js +0 -28
- package/dist/vscode-python.js +0 -686
- 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
package/dist/tcl.json.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var tcl_json = "{\"fileTypes\":[\"tcl\",\"tm\",\"tk\"],\"scopeName\":\"source.tcl\",\"firstLineMatch\":\"^#!/.*\\\\b(tclsh|wish)\\\\b([8-9]|[8-9]\\\\.\\\\d+)?\",\"foldingStartMarker\":\"([{(\\\\[])\",\"foldingEndMarker\":\"([})\\\\]])\",\"name\":\"Tcl\",\"patterns\":[{\"include\":\"#root\"}],\"repository\":{\"root\":{\"patterns\":[{\"include\":\"#invariant\"},{\"include\":\"#brackets\"},{\"include\":\"#proc-call\"}]},\"invariant\":{\"patterns\":[{\"include\":\"#ignore-long-lines\"},{\"include\":\"#no-starting-empty-brackets\"},{\"include\":\"#no-empty-square-brackets\"}]},\"no-starting-empty-brackets\":{\"patterns\":[{\"match\":\"(?<=^)\\\\s*+(\\\\{\\\\}|\\\\[\\\\])\",\"captures\":{\"1\":{\"name\":\"invalid.illegal.termination.tcl\"}}}]},\"no-empty-square-brackets\":{\"patterns\":[{\"match\":\"(\\\\[\\\\])\",\"captures\":{\"1\":{\"name\":\"string.empty.square.brace\"}}}]},\"ignore-long-lines\":{\"comment\":\"long lines are not parsed for performance\",\"patterns\":[{\"match\":\"^.{1000,}\"}]},\"brackets\":{\"patterns\":[{\"include\":\"#invariant\"},{\"include\":\"#special-brackets\"},{\"include\":\"#empty-brackets\"},{\"include\":\"#square-brackets\"},{\"include\":\"#curly-brackets\"}]},\"square-brackets\":{\"patterns\":[{\"begin\":\"\\\\s*+(?<!\\\\\\\\)(\\\\[)\",\"end\":\"(?<!\\\\\\\\)(\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.square.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.brace.square.close.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#invariant\"},{\"include\":\"#proc-call\"}]}]},\"curly-brackets\":{\"patterns\":[{\"begin\":\"\\\\s*+({)\",\"end\":\"(})\",\"name\":\"meta.curly.enclosed\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.curly.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.brace.curly.close.tcl\"}},\"patterns\":[{\"include\":\"#invariant\"},{\"include\":\"#special-brackets\"},{\"include\":\"#curly-brackets\"},{\"include\":\"#proc-call\"}]}]},\"curly-string-brackets\":{\"patterns\":[{\"include\":\"#empty-brackets\"},{\"begin\":\"\\\\s*+({)\",\"end\":\"(})\",\"name\":\"meta.curly.enclosed\",\"contentName\":\"string.quote.bracketed.nosubstitution.tcl\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.curly.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.brace.curly.close.tcl\"},\"2\":{\"name\":\"invalid.illegal.charafterbrace.tcl\"}},\"patterns\":[{\"match\":\"([\\\\[\\\\]])\",\"name\":\"string\"},{\"include\":\"#variable-non-substituting\"},{\"include\":\"#curly-string-brackets\"},{\"include\":\"#quoted-string\"},{\"include\":\"#bare-string\"}]}]},\"empty-brackets\":{\"patterns\":[{\"match\":\"\\\\s*+(?={)({})\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.brackets.tcl\"}}},{\"comment\":\"enclosed brackets\",\"match\":\"\\\\s*+{([{}]*)}\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.string.brackets.tcl\"}}}]},\"special-brackets\":{\"comment\":\"Support for special cases that brackets may be used\",\"patterns\":[{\"comment\":\"Need to handle the case that we have {*}$varname\",\"include\":\"#variable\"},{\"comment\":\"Need to handle the case we spread a command {*}[list one two]\",\"match\":\"\\\\s*({(\\\\*)}?)(?=\\\\[|{|\\\")\",\"captures\":{\"1\":{\"name\":\"entity.function.name.tcl.markup.italic\"},\"2\":{\"name\":\"support.type\"}}}]},\"expression-brackets\":{\"patterns\":[{\"comment\":\"Expressions utilize special syntax highlighting\",\"begin\":\"(\\\\{)\",\"end\":\"(\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"meta.expression.start.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.expression.end.tcl\"}},\"patterns\":[{\"include\":\"#empty-brackets\"},{\"include\":\"#curly-string-brackets\"},{\"include\":\"#square-brackets\"},{\"include\":\"#expressions\"}]}]},\"proc-call\":{\"comment\":\"handles a proc call\",\"patterns\":[{\"include\":\"#invariant\"},{\"include\":\"#comment-blocks\"},{\"include\":\"#variable-object\"},{\"include\":\"#variable\"},{\"include\":\"#quoted-string\"},{\"include\":\"#keywords\"},{\"include\":\"#proc-call-args\"}]},\"proc-call-args\":{\"comment\":\"Arguments given to a proc that is being called\",\"patterns\":[{\"include\":\"#special-brackets\"},{\"include\":\"#brackets\"},{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#quoted-string\"},{\"include\":\"#variable\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#bare-string\"},{\"begin\":\"(?=::)\",\"end\":\"\\\\s|(?=[\\\\]};\\n])\",\"patterns\":[{\"include\":\"#namespace-name\"}]}]},\"keywords\":{\"patterns\":[{\"include\":\"#square-brackets\"},{\"include\":\"#tcl-subst\"},{\"include\":\"#variable\"},{\"include\":\"#tcl-proc\"},{\"include\":\"#tcl-binary\"},{\"include\":\"#tcl-string\"},{\"include\":\"#tcl-throw\"},{\"include\":\"#tcl-switch\"},{\"include\":\"#tcl-info\"},{\"include\":\"#tcl-incr\"},{\"include\":\"#tcl-interp\"},{\"include\":\"#tcl-oo\"},{\"include\":\"#tcl-try-catch\"},{\"include\":\"#tcl-setters\"},{\"include\":\"#tcl-expression-keywords\"},{\"include\":\"#tcl-dict\"},{\"include\":\"#tcl-foreach\"},{\"include\":\"#tcl-namespace\"},{\"include\":\"#tcl-oo-keywords\"},{\"include\":\"#regexp\"},{\"include\":\"#tcl-lassign\"},{\"include\":\"#tcl-array\"},{\"include\":\"#tcl-catch\"},{\"include\":\"#tcl-ns-commands\"},{\"include\":\"#tcl-puts\"},{\"include\":\"#tcl-upvar\"},{\"include\":\"#tcl-global\"},{\"include\":\"#tcl-vwait\"},{\"include\":\"#tcl-entity-commands\"},{\"match\":\"(?<=^|[\\\\[;{])\\\\s*+([^\\\\s]*)\\\\s+\\\\b(destroy|new)\\\\b\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#keywords\"}]},\"2\":{\"name\":\"keyword.control.special.tcl\"}}},{\"include\":\"#tcl-core-commands\"},{\"match\":\"(?:(?<=^|[\\\\[{;])\\\\s*|(?<=::)(?![\\\\s\\\"]))([^\\\\s}\\\\]{\\\\[;\\\\\\\\\\\"]*)(?=$|{}|[\\\\s\\n\\\\]}\\\\[;])\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#namespace-name\"}]}}}]},\"tcl-core-commands\":{\"patterns\":[{\"comment\":\"imports & requires\",\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(package|include|includes)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;}\\\\]]))\",\"captures\":{\"1\":{\"name\":\"support.type.ns.separator\"},\"2\":{\"name\":\"keyword.control.import.package.tcl\"},\"3\":{\"name\":\"support.type.ns.separator\"}},\"patterns\":[{\"begin\":\"(?<=package)\\\\s*(require|provide)\\\\s*(?!$|\\n)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;}\\\\]]))\",\"captures\":{\"1\":{\"name\":\"keyword.control.package.require.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#variable\"},{\"include\":\"#namespace-name\"}]},{\"begin\":\"(?<=include|includes)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;}\\\\]]))\",\"contentName\":\"string\"}]},{\"include\":\"regexp\"},{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(format|scan)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n\\\\]};]))\",\"captures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.format.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#square-brackets\"},{\"include\":\"#variable\"},{\"include\":\"#quoted-string\"},{\"include\":\"#constant-numeric\"},{\"match\":\"(%)([.])?([0-9]*)?([.duioxXcsfegG])\",\"captures\":{\"1\":{\"name\":\"support.type.tcl\"},\"2\":{\"name\":\"meta.class\"},\"3\":{\"name\":\"meta.constant.tcl\"},\"4\":{\"name\":\"entity.function.name.tcl\"}}},{\"match\":\"(?<=\\\\s)\\\\s*(?![%.$])([^\\\\s\\\\]}\\\\[{;\\n]*)\",\"captures\":{\"1\":{\"name\":\"variable\",\"patterns\":[{\"include\":\"#variable-bare-italic\"}]}}},{\"include\":\"#format-brackets\"}]},{\"match\":\"(?:(?<=^|\\\\[|{|;)\\\\s*(::)?|(?<=::))\\\\b(try|apply|exit|flush|chan|lreverse|error|gets|for|lrepeat|lsearch|fconfigure|chan|open|close|next|while|format|lindex|linsert|concat|lsort|glob|tuapi|subst|upvar|uplevel|fileutil|continue|cluster|break|yield|load|split|switch|yieldto|catch|source|cd|file|wget|join|throw|lrange|lset|lmap|lassign|llength|lwhere|list|return|puts|clock|state|variable|after|task|return|interp)\\\\b(::)?\",\"name\":\"keyword.control.tcl\",\"captures\":{\"1\":{\"name\":\"support.type.ns.separator\"},\"2\":{\"name\":\"keyword.control.tcl\"},\"3\":{\"name\":\"support.type.ns.separator\"}}}]},\"format-brackets\":{\"patterns\":[{\"begin\":\"\\\\s*({)\",\"end\":\"(})\",\"contentName\":\"string.format.contents.tcl\",\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"include\":\"#format-brackets\"},{\"include\":\"#empty-brackets\"},{\"match\":\"([#0-9+-])([duioxXcsfegG]?)\",\"captures\":{\"1\":{\"name\":\"meta.constant\"},\"2\":{\"name\":\"support.type\"}}},{\"match\":\"\\\\s*+(%)([.duioxXcsfegG])\",\"captures\":{\"1\":{\"name\":\"support.type.tcl\"},\"2\":{\"name\":\"entity.function.name.tcl\"}}},{\"match\":\"([;])\",\"name\":\"string\"},{\"include\":\"#constant-numeric\"}]}]},\"regular-expression\":{\"patterns\":[{\"match\":\"(?<!\\\\\\\\)(\\\\#.*)(?=\\n|$)\",\"name\":\"comment\"},{\"match\":\"(\\\\.)([?+*])\",\"captures\":{\"1\":{\"name\":\"support.type.re.anychar.tcl\"},\"2\":{\"name\":\"variable.re.modifier.tcl\"}}},{\"match\":\"(?<={|^)\\\\s*(\\\\^)\",\"name\":\"meta.class.re.start.tcl\"},{\"match\":\"(?<!\\\\\\\\)(\\\\$)(?=\\\\s*}|\\n)\",\"name\":\"meta.class.re.end.tcl\"},{\"match\":\"(\\\\\\\\)(?=\\\\s*})\",\"name\":\"invalid.illegal.re.tcl\"},{\"match\":\"(?<!\\\\\\\\)(\\\\|)\",\"name\":\"meta.constant.re.or.tcl\"},{\"comment\":\"the character whose value is 0\",\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)0[^0-9a-fA-F]\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"}}},{\"comment\":\"(where X is any character) the character whose low-order 5 bits are the same as those of X, and whose other bits are all zero\",\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)(c)(.)\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"},\"3\":{\"name\":\"entity.function.name.re.unicode.punctuation.italic.tcl\"}}},{\"comment\":\"(up to four hexadecimal digits) the Unicode character U+wxyz\",\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)(u)([0-9a-fA-F]{1,4})\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"},\"3\":{\"name\":\"entity.function.name.re.unicode.punctuation.italic.tcl\"}}},{\"comment\":\"reserved for a Unicode extension up to 21 bits. The digits are parsed until the first non-hexadecimal character is encountered, the maximun of eight hexadecimal digits are reached, or an overflow would occur in the maximum value of U+10ffff.\",\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)(U)([0-9a-fA-F]{1,8})\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"},\"3\":{\"name\":\"entity.function.name.re.unicode.punctuation.italic.tcl\"}}},{\"comment\":\"(where hh is one or two hexadecimal digits) the character whose hexadecimal value is 0xhh\",\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)(x)([0-9a-fA-F]{1,2})\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"},\"3\":{\"name\":\"entity.function.name.re.unicode.punctuation.italic.tcl\"}}},{\"comment\":\"the character whose octal value is 0xy?z?. The first digit must be in the range 0-3, otherwise the two-digit form is assumed.\",\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)([0-3][0-7]{2}|[0-7]{2})\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"},\"3\":{\"name\":\"entity.function.name.re.unicode.punctuation.italic.tcl\"}}},{\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)([1-9][0-9]?[0-9]?)\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"meta.constant.numeric.tcl\"}}},{\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)([abBefnrtv0dswDSWAmMyYZ])?\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"}}},{\"begin\":\"(?<!\\\\\\\\)(\\\\()(\\\\?[!:=])\",\"end\":\"(?<!\\\\\\\\)(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"meta.constant.re.lookahead.close.punctuation.italic.tcl\"},\"2\":{\"name\":\"meta.class.re.lookahead.type.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.constant.re.lookahead.close.punctuation.italic.tcl\"}},\"patterns\":[{\"include\":\"#regular-expression\"}]},{\"begin\":\"(?<!\\\\\\\\)(\\\\()(\\\\?)(?![!:=\\\\)])\",\"end\":\"(?<!\\\\\\\\)(\\\\))\",\"contentName\":\"entity.function.name.punctuation.italic.underline.re.meta.flags.tcl\",\"beginCaptures\":{\"1\":{\"name\":\"meta.constant.re.lookahead.open.punctuation.italic.tcl\"},\"2\":{\"name\":\"keyword.control.re.meta.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.constant.re.lookahead.close.punctuation.italic.tcl\"}}},{\"begin\":\"(?<!\\\\\\\\)(\\\\[)(\\\\^)?\",\"end\":\"(?<!\\\\\\\\)([\\\\]])([*?+]([?+]?))?\",\"beginCaptures\":{\"1\":{\"name\":\"meta.constant.re.lookahead.close.punctuation.italic.tcl\"},\"2\":{\"name\":\"meta.variable.re.negate.chars.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.constant.re.lookahead.close.punctuation.italic.tcl\"},\"2\":{\"name\":\"variable.re.modifier.tcl\"},\"3\":{\"name\":\"support.type.re.nongreedy.punctuation.italic.tcl\"}},\"contentName\":\"meta.class\",\"patterns\":[{\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)(.)\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"meta.class\"}}},{\"begin\":\"(?<!-)(\\\\[[:=])\",\"end\":\"([:=]\\\\])(?!-)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.re.bracket.expression.open.punctuation.italic.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name.re.bracket.expression.close.punctuation.italic.tcl\"}},\"patterns\":[{\"match\":\"([^:=\\\\]]*)(?=[:=]\\\\])\",\"name\":\"support.type.punctuation.italic.tcl\"}]},{\"match\":\"(\\\\\\\\)([abBefnrtv0dsw])\",\"captures\":{\"1\":{\"name\":\"support.type.re.escape.tcl\"},\"2\":{\"name\":\"support.type.re.escaped.value.tcl\"}}},{\"match\":\"(?<!(?<!\\\\\\\\)\\\\\\\\)(-)\",\"name\":\"entity.function.name\"}]},{\"begin\":\"(?<!\\\\\\\\)(\\\\()\",\"end\":\"(?<!\\\\\\\\)(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control\"}},\"endCaptures\":{\"1\":{\"name\":\"keyword.control\"}},\"patterns\":[{\"include\":\"#regular-expression\"}]},{\"match\":\"(?<!\\\\\\\\)({([0-9]*)(\\\\,)?([0-9]*)?})\",\"captures\":{\"1\":{\"name\":\"entity.function.name\"},\"2\":{\"name\":\"meta.constant.re.number.tcl\"},\"3\":{\"name\":\"support.type.re.expand.tcl\"},\"4\":{\"name\":\"meta.constant.re.number.tcl\"}}},{\"match\":\"(?:(?<!\\\\\\\\\\\\.)(?<=\\\\.))(?<=\\\\.|\\\\])((?<!\\\\\\\\)[*?+])\",\"name\":\"meta.constant.re.tcl\"},{\"match\":\"(?<=\\\\*|\\\\+)((?<!\\\\\\\\)[*?+])\",\"name\":\"support.type.re.tcl\"},{\"match\":\"(?<!\\\\\\\\)(\\\\*)\",\"name\":\"variable.re.modifier.tcl\"},{\"match\":\"((?<!\\\\\\\\)[.?^!$+])\",\"name\":\"variable.re.modifier.tcl\"},{\"match\":\"(?<=\\\\.)((?<!\\\\\\\\)[*?])\",\"name\":\"variable.re.modifier.tcl\"}]},\"expressions\":{\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#curly-string-brackets\"},{\"include\":\"#square-brackets\"},{\"include\":\"#expression-functions\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#expression-operators\"},{\"comment\":\"order-of-operations\",\"begin\":\"(\\\\()\",\"end\":\"\\\\s*(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.expression.brace.ooo.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name.expression.brace.ooo.close.tcl\"}},\"patterns\":[{\"include\":\"#expressions\"}]},{\"include\":\"#quoted-string\"}]},\"constant-numeric\":{\"patterns\":[{\"match\":\"\\\\s*+((?:#?|\\\\.)?(?:\\\\B[-+])?(?:\\\\b0[bB][0-1]*|\\\\b0[oO][0-7]*|\\\\b(0([xX]))[0-9a-fA-F]*|(\\\\B\\\\.[0-9]+|\\\\b[0-9]+(\\\\.[0-9]*)?)([eE][-+]?[0-9]+)?))\",\"captures\":{\"1\":{\"name\":\"meta.constant.numeric\"},\"2\":{\"name\":\"punctuation.italic\"},\"3\":{\"name\":\"support.type\"}}},{\"match\":\"\\\\s*+\\\\b(true|false|bool|entier|integer|float|null)\\\\b\",\"name\":\"meta.constant.punctuation.italic\"}]},\"expression-operators\":{\"patterns\":[{\"comment\":\"expression word operators\",\"match\":\"\\\\b(in|ni|eq|ne)\\\\b\",\"name\":\"support.type.operator.punctuation.italic.tcl\"},{\"comment\":\"expression operators\",\"match\":\"(=|\\\\+|-|\\\\*|/|%)\",\"name\":\"support.type.operator.tcl\"},{\"comment\":\"expression comparisons\",\"match\":\"([<>])\",\"name\":\"support.type.expression.operator.tcl\"},{\"comment\":\"expression bitwise\",\"match\":\"([|^&!~])\",\"name\":\"support.type.expression.operator.tcl\"},{\"comment\":\"expression ternary\",\"match\":\"([?:])\",\"name\":\"support.type.expression.operator.tcl\"}]},\"expression-functions\":{\"patterns\":[{\"begin\":\"\\\\b(abs|acos|asin|atan|atan2|bool|ceil|cos|cosh|double|entier|exp|floor|fmod|hypot|int|isqrt|log|log10|max|min|pow|rand|round|sin|sinh|sqrt|srand|tan|tanh|wide)\\\\b(\\\\()\",\"end\":\"(\\\\))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.math.function.punctuatio.italic.tcl\"},\"2\":{\"name\":\"entity.function.name.math.function.brace.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name.math.function.brace.close.tcl\"}},\"patterns\":[{\"include\":\"#expressions\"}]}]},\"tcl-vwait\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"comment\":\"vwait varName\",\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(vwait)\\\\b\\\\s*+(?!$|\\n|;|^|\\\\]|})\",\"end\":\"(?=$|\\n|;|\\\\]|}|\\\\s)\\\\s*([^$\\n^\\\\];}\\\\[\\\\\\\\]*)?(\\\\\\\\(?!\\n))?\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.ns.tcl\"},\"2\":{\"name\":\"keyword.control.vwait.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"invalid.illegal.numargs.tcl\"},\"2\":{\"name\":\"invalid.illegal.escape.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-proc\":{\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;])\\\\s*(::)?\\\\b(proc)\\\\b\\\\s+([^\\\\s\\n]+)\\\\s+(?={|\\\\b|\\\\[|\\\"|\\\\\\\\$)\",\"end\":\"(?=(?<!\\\\\\\\)$)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.proc.tcl\"},\"3\":{\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#brackets\"},{\"include\":\"#namespace-name\"}]}},\"patterns\":[{\"include\":\"#quoted-string\"},{\"include\":\"#proc-arguments\"},{\"include\":\"#brackets\"}]}]},\"tcl-subst\":{\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;])\\\\s*((?:::)?\\\\bsubst\\\\b)(?!\\\\s*$)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[;\\\\]}]))|(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.subst.tcl\",\"patterns\":[{\"include\":\"#namespace-separator\"}]}},\"patterns\":[{\"begin\":\"(?<=subst)\\\\b((?:\\\\s+(?:-nobackslashes|-nocommands|-novariables))?)(?!\\\\s*$)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[;\\\\]}]))|(?<=})\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#opt\"}]}},\"patterns\":[{\"include\":\"#proc-call-args\"}]}]}]},\"tcl-throw\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(throw)\\\\b\\\\s+(?!\\n)([^\\\\s]*)\",\"end\":\"\\\\s*(?=$|\\n|}|\\\\]|;)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.throw.tcl\"},\"3\":{\"name\":\"support.type\",\"patterns\":[{\"include\":\"#variable\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#proc-call-args\"}]}]},\"tcl-binary\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(binary)\\\\b\\\\s+(?!\\n)([^\\\\s\\\\[{;\\n\\\\]]*)\",\"end\":\"\\\\s*(?=$|\\n|\\\\]|;|})\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.throw.tcl\"},\"3\":{\"name\":\"entity.function.name.binary.tcl\",\"patterns\":[{\"include\":\"#variable\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"begin\":\"(?<=scan|format)\\\\s+(?!\\n)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n\\\\]};]))\",\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#glob-match\"}]},{\"include\":\"#proc-call-args\"}]}]},\"tcl-switch\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(switch)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[;\\\\]}]))|(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.switch.tcl\"},\"3\":{\"name\":\"entity.function.name.state.tcl\"}},\"patterns\":[{\"begin\":\"(?<=switch)\\\\b(\\\\s+(?!$)(?:(?:-|\\\\$)[^\\\\s\\n]*\\\\s+|\\\\[[^\\\\]\\n]*(?=\\\\]))*+)(?!\\\\s*{|\\\\[|\\\\s*$)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#double-dash\"},{\"include\":\"#variable\"},{\"include\":\"#square-brackets\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"match\":\"(default)\",\"name\":\"keyword.control.default.switch.unbraced.tcl\"},{\"include\":\"#brackets\"},{\"include\":\"#bare-string\"}]},{\"begin\":\"(?<=switch)\\\\b(\\\\s+(?!$)(?:(?:-|\\\\$)[^\\\\s]*\\\\s+|\\\\[[^\\\\]\\n]*(?=\\\\]))*+)(?=\\\\s*{)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[;\\\\]}]))|(?<=})\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#double-dash\"},{\"include\":\"#variable\"},{\"include\":\"#square-brackets\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"begin\":\"\\\\s*+({)\",\"end\":\"(})\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.switch.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.brace.switch.close.tcl\"}},\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"include\":\"#empty-brackets\"},{\"match\":\"\\\\s?(-)\\\\s\",\"name\":\"meta.constant.switch.next.tcl\"},{\"match\":\"\\\\s*\\\\b(default)\\\\b\\\\s+(?={)\",\"name\":\"keyword.control.punctuation.italic.tcl\"},{\"include\":\"#brackets\"},{\"include\":\"#glob-match\"},{\"include\":\"#bare-string\"}]},{\"match\":\"(default)\",\"name\":\"keyword.control.default.switch.unbraced.tcl\"},{\"include\":\"#brackets\"},{\"include\":\"#bare-string\"}]},{\"begin\":\"(?<=switch)\\\\b(\\\\s+(?!$)(?:(?!(?<!\\\\\\\\)$)(?:-|\\\\$)[^\\\\s]*(?:(?!\\\\s*$)\\\\s+)?|\\\\[[^\\\\]\\n]*(?=\\\\]))*+)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[;\\\\]}]))|(?<=})\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#double-dash\"},{\"include\":\"#variable\"},{\"include\":\"#square-brackets\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"match\":\"(default)\",\"name\":\"keyword.control.default.switch.unbraced.tcl\"},{\"include\":\"#brackets\"},{\"include\":\"#bare-string\"}]}]}]},\"tcl-puts\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*\\\\b(puts)\\\\b\",\"end\":\"(?=$|\\n|}|\\\\]|;)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.puts.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"match\":\"(?:(?<=puts)|^|(?<=-nonewline))\\\\s*+(?!\\n|$)([^\\\\s$\\n;}\\\\]\\\\[{\\\"]*+)(?!\\\\s*(?:$|\\n|}|\\\\]|;|^))\",\"name\":\"support.type.puts.channel.punctuation.italic.tcl\"},{\"include\":\"#square-brackets\"},{\"include\":\"#curly-string-brackets\"},{\"include\":\"#quoted-string\"},{\"include\":\"#bare-string\"}]}]},\"tcl-global\":{\"patterns\":[{\"begin\":\"(?<=^|{|\\\\[|;)\\\\s*\\\\b(global)\\\\b\",\"end\":\"(?=$|\\n|\\\\]|}|;)\",\"captures\":{\"1\":{\"name\":\"keyword.control.global.tcl\"}},\"patterns\":[{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-state-keywords\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"match\":\"(?<=state)\\\\s+\\\\b(set|get|pull|register|apply_middleware|configure|push|subscription|query|json|serialize)\\\\b\",\"name\":\"entity.function.state.name.tcl\"},{\"match\":\"(?<=state::)([^\\\\s\\\\]};]*)\",\"captures\":{\"1\":{\"name\":\"entity.function.state.name.tcl\",\"patterns\":[{\"include\":\"#namespace-separator\"}]}}}]},\"tcl-state-configure\":{\"patterns\":[{\"begin\":\"(?<=configure|apply_middleware)\\\\s+(?!$|\\n|;|\\\\]|}|^)([^\\\\s$}\\\\]\\\\[{;\\\\\\\\]*)\",\"end\":\"(?=$|\\n|\\\\]|}|;)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.class\"},\"2\":{\"patterns\":[{\"include\":\"#tcl-class-name\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#proc-call-args\"}]}]},\"tcl-state-register\":{\"patterns\":[{\"begin\":\"(?<=register)(\\\\s+[^\\\\s\\\\[\\\\];\\n]+)?\",\"end\":\"(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"meta.constant\",\"patterns\":[{\"include\":\"#tcl-class-name\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#square-brackets\"},{\"begin\":\"\\\\s*({)\",\"end\":\"\\\\s*(})\",\"captures\":{\"1\":{\"name\":\"meta.bracket.state.register.tcl\"}},\"patterns\":[{\"include\":\"#tcl-state-option-title\"},{\"include\":\"#tcl-state-option-items\"},{\"begin\":\"(?<=^|\\\\s)(middlewares|config|default)\\\\b(?=\\\\s*{)\",\"end\":\"(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.state.register.tcl\"}},\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"begin\":\"(?<=config|default)\\\\s+({)\",\"end\":\"\\\\s*(})\",\"captures\":{\"1\":{\"name\":\"meta.bracket.state.config.tcl\"}},\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"begin\":\"\\\\s*([^\\\\s|}|{|;]*)\\\\s+({)\",\"end\":\"(})\",\"beginCaptures\":{\"1\":{\"name\":\"variable\"}},\"patterns\":[{\"include\":\"#property-list\"}]},{\"match\":\"\\\\s*([^\\\\s|}|{|;]*)(\\\\s+[^}|{|;]*)\",\"captures\":{\"1\":{\"name\":\"variable\",\"patterns\":[{\"include\":\"#variable\"}]},\"2\":{\"name\":\"string\",\"patterns\":[{\"include\":\"#constant-numeric\"}]}}},{\"include\":\"#curly-string-brackets\"}]},{\"begin\":\"(?<=middlewares)\\\\s*+({)\",\"end\":\"\\\\s*(})\",\"patterns\":[{\"match\":\"\\\\s*([^\\\\s|}|;]*)\",\"captures\":{\"1\":{\"name\":\"meta.class.state.middleware.tcl\"}}}]}]}]}]}]},\"tcl-state-unsubscribe\":{\"patterns\":[{\"begin\":\"\\\\b(unsubscribe)\\\\b\",\"end\":\"(?=$|\\n|;|\\\\]|})\",\"patterns\":[{\"include\":\"#opt\"},{\"include\":\"#glob-match\"}]}]},\"tcl-state-subscribe\":{\"patterns\":[{\"begin\":\"\\\\s*\\\\b(subscribe)\\\\b\",\"end\":\"(?<=})|(?=$|\\n|;|\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.state.subscribe.tcl\"}},\"patterns\":[{\"match\":\"(?<=subscribe)\\\\b(?!\\\\[)(\\\\s+[^\\\\s\\n]*)(?:(?!\\\\s*(?:$|;|}|\\\\]))\\\\s*)?\",\"name\":\"meta.class.state.name\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#variable\"}]}}},{\"match\":\"(?=\\\\s*\\\\$)(\\\\s*[^\\\\s]*)(?:(?!\\\\s*(?:$|;|}|\\\\]))\\\\s*)?\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#variable\"}]}}},{\"include\":\"#square-brackets\"},{\"include\":\"#empty-brackets\"},{\"begin\":\"(?<!})\\\\s*({)\",\"end\":\"\\\\s*(})\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.state.subscribe.params.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.brace.state.subscribe.params.close.tcl\"}},\"patterns\":[{\"include\":\"#tcl-state-common-options\"},{\"include\":\"#variable-non-substituting\"},{\"include\":\"#tcl-state-id\"},{\"begin\":\"(?<=^|\\\\s|;)\\\\s*(conditions)\\\\b\",\"end\":\"(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.state.register.tcl\"}},\"patterns\":[{\"include\":\"#tcl-state-conditions\"}]}]},{\"include\":\"#brackets\"}]}]},\"tcl-state-common-options\":{\"patterns\":[{\"include\":\"#tcl-state-option-title\"},{\"include\":\"#tcl-state-option-items\"},{\"match\":\"(?<=^|;)\\\\s*(config|vendor)\",\"name\":\"keyword.control.tcl\"},{\"begin\":\"(?<=config|default|vendor)\\\\s*+({)\",\"end\":\"\\\\s*(})\",\"patterns\":[{\"match\":\"(\\\\s*[^\\\\s|}|{|;]*)(\\\\s+[^\\\\s|}|{|;]*)\",\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"string\",\"patterns\":[{\"include\":\"#constant-numeric\"}]}}},{\"include\":\"#curly-string-brackets\"}]}]},\"tcl-state-option-title\":{\"patterns\":[{\"match\":\"(?<=^|\\\\s)\\\\s*(title)\\\\b(\\\\s+[^$|\\n|;]*)\",\"captures\":{\"1\":{\"name\":\"keyword.state.register.tcl\"},\"2\":{\"patterns\":[{\"include\":\"#quoted-string\"},{\"include\":\"#curly-string-brackets\"},{\"match\":\"\\\\b([^\\\\s]*)\\\\b\\\\s*([^$|\\n]*)?\",\"captures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"invalid.illegal.state.title.tcl\"}}}]}}}]},\"tcl-state-option-attributes\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\s)\\\\s*(attributes|formatters)\\\\b\\\\s+{\",\"end\":\"\\\\s*(})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.state.attributes.tcl\"}},\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"begin\":\"\\\\s*\\\\[\",\"end\":\"\\\\s*]\",\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"include\":\"#proc-call\"}]},{\"match\":\"(?<!\\\\|)(\\\\s+[^\\\\s|\\\\$|\\\\[|\\\\]|}|{|;]*)(\\\\s+[^\\\\s|\\\\$|\\\\[|\\\\]|}|{|;]*)\",\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"support.type.state.attribute.name.tcl\"}}},{\"match\":\"\\\\s*(\\\\|)\",\"name\":\"entity.function.name.separator.tcl\"},{\"include\":\"#variable-non-substituting\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#curly-string-brackets\"}]}]},\"tcl-state-option-descriptions\":{\"patterns\":[{\"include\":\"#tcl-state-option-descriptions-titles\"},{\"include\":\"#tcl-state-option-descriptions-descriptions\"}]},\"tcl-state-option-descriptions-titles\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\s)\\\\s*(titles)\\\\b\\\\s+{\",\"end\":\"\\\\s*(})\",\"contentName\":\"variable\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.state.attributes.tcl\"}},\"patterns\":[{\"include\":\"#tcl-state-option-descriptions-patterns\"},{\"include\":\"#tcl-state-option-descriptions-titles\"}]}]},\"tcl-state-option-descriptions-descriptions\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\s)\\\\s*(descriptions)\\\\b\\\\s+{\",\"end\":\"\\\\s*}\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.state.attributes.tcl\"}},\"patterns\":[{\"include\":\"#quoted-string\"},{\"include\":\"#tcl-state-option-descriptions-patterns\"},{\"begin\":\"\\\\s*({)\",\"end\":\"\\\\s*}\",\"patterns\":[{\"include\":\"#tcl-state-option-descriptions-patterns\"}]}]}]},\"tcl-state-option-descriptions-patterns\":{\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"include\":\"#quoted-string\"},{\"begin\":\"(?<=^|{)\\\\s*([^\\\\s]*)\\\\s+(?=\\\")\",\"end\":\"(?<=\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"}},\"patterns\":[{\"include\":\"#quoted-string\"}]},{\"include\":\"#constant-numeric\"},{\"begin\":\"(?<=^|{)\\\\s*(items)\\\\s+{\",\"end\":\"\\\\s*(})\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"}},\"patterns\":[{\"include\":\"#tcl-state-option-descriptions-patterns\"},{\"include\":\"#quoted-string\"}]},{\"begin\":\"(?<=^|{)\\\\s*([^\\\\s]*)\\\\s+(?={)\",\"end\":\"(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"}},\"patterns\":[{\"include\":\"#html-curly-brackets\"}]}]},\"tcl-state-option-items\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\s)\\\\s*(items)\\\\b\",\"end\":\"(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.state.register.tcl\"}},\"patterns\":[{\"begin\":\"\\\\s*+({)\",\"end\":\"\\\\s*(})\",\"patterns\":[{\"begin\":\"(?<=^|;)\\\\s*\\\\b(optional|required|key)?\\\\b\\\\s+(string|bool|number|string|ip|json|mac|enum|ni|match|include|range|percent|greater|less|dict|array|numberArray)\\\\b\\\\s+([^\\\\s|\\\\||;|}]*)\",\"end\":\"\\\\s*(?=$|;|\\n)\",\"beginCaptures\":{\"1\":{\"name\":\"meta.constant\",\"patterns\":[{\"match\":\"(key)\",\"name\":\"markup.bold\"}]},\"2\":{\"name\":\"support.type\"},\"3\":{\"name\":\"variable\"}},\"patterns\":[{\"begin\":\"\\\\s*+(\\\\|)\",\"end\":\"(?=$|;|\\n)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"}},\"name\":\"string\",\"patterns\":[{\"include\":\"#constant-numeric\"}]}]}]}]}]},\"tcl-state-option-evaluate\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?<=^|\\\\s)\\\\s*(evaluate)\\\\b\\\\s*\",\"end\":\"(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.state.register.tcl\"}},\"patterns\":[{\"include\":\"#proc-arguments\"},{\"include\":\"#brackets\"}]}]},\"tcl-state-id\":{\"patterns\":[{\"match\":\"(?<=^|\\\\s)\\\\s*(id)\\\\b(\\\\s+[^$|\\n|;]*)\",\"captures\":{\"1\":{\"name\":\"markup.bold.keyword.state.register.tcl\"},\"2\":{\"patterns\":[{\"include\":\"#quoted-string\"},{\"include\":\"#curly-string-brackets\"},{\"match\":\"\\\\b([^\\\\s]*)\\\\b\\\\s*([^$|\\n]*)?\",\"captures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"invalid.illegal.state.title.tcl\"}}}]}}}]},\"tcl-state-conditions\":{\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"begin\":\"\\\\s*+({)\",\"end\":\"\\\\s*(})\",\"patterns\":[{\"include\":\"#tcl-state-conditions\"},{\"include\":\"#constant-numeric\"},{\"match\":\"(?<=\\\\s|{|^)(\\\\*)\\\\s\",\"name\":\"meta.class\"},{\"match\":\"(?<={|^|;)\\\\s*([^\\\\s|}|\\\\*|;]*)\\\\s+\",\"captures\":{\"1\":{\"name\":\"variable\"}}},{\"match\":\"\\\\b(set|modified|change(?:d|s)|created|removed|deleted|existed|defined|exists|created|added)\\\\b\\\\s*(?=$|}|;)\",\"name\":\"entity.function.name\"},{\"match\":\"([^\\\\s]*)\\\\s*(?=$)\",\"name\":\"meta.class\"},{\"match\":\"\\\\b(is|becomes|was|not|reverse)\\\\b(?!\\\\s*\\\\|)\",\"name\":\"punctuation.italic.entity.name.function\"},{\"match\":\"(?<=\\\\s)(\\\\b(?:rises above|include|ne|not equal|eq|equal|greater equal|ge|greather than|ge|less equal|le|falls below|divisible by|is in|in|not in|ni|match|regexp|notInclude|startsWith|starts with|endsWith|ends with|command|isType|eval)\\\\b|(?:\\\\>|=|==|<=|>=|>_|_<|%))(?=\\\\s*\\\\|)\",\"name\":\"support.type\"},{\"begin\":\"\\\\s*+(\\\\|)\",\"end\":\"(?=$|;|\\n|}|\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.condition.tcl\"}},\"name\":\"string\",\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"include\":\"#glob-match\"},{\"include\":\"#constant-numeric\"}]}]}]},\"tcl-state-setter-getter\":{\"patterns\":[{\"begin\":\"(?<=set|get|pull|push)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n;\\\\]}])\",\"patterns\":[{\"include\":\"#line-escape\"},{\"begin\":\"(?<=set|get|pull|push)\\\\b\\\\s*\",\"end\":\"(?=$|[\\\\s\\\\]};])\",\"patterns\":[{\"include\":\"#tcl-class-name\"}]},{\"begin\":\"\\\\s*({)\",\"end\":\"(})\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.state.brace.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name.state.brace.close.tcl\"}},\"patterns\":[{\"match\":\"\\\\s*([^\\\\s|}|\\\\]|$|\\n]*)\\\\s+([^\\\\s|}]*)\",\"captures\":{\"1\":{\"name\":\"string\"},\"2\":{\"name\":\"variable\"}}}]},{\"include\":\"#brackets\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare\"}]}]},\"tcl-class-name\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#namespace-separator\"},{\"include\":\"#square-brackets\"},{\"match\":\"(?:(?=\\\\s)\\\\s*)?(\\\\w+)\",\"name\":\"meta.class\"}]},\"tcl-incr\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(incr)\\\\b\",\"end\":\"\\\\s*(?=$|\\n|}|\\\\]|;)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.incr.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#brackets\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-lassign\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(lassign)\\\\b\",\"end\":\"\\\\s*(?=$|\\n|\\\\]|})\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.lassign.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#brackets\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-entity-commands\":{\"patterns\":[{\"begin\":\"\\\\s*(::)?\\\\b(tailcall)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"captures\":{\"1\":{\"name\":\"support.type.ns.separator.tcl\"},\"2\":{\"name\":\"keyword.control.tailcall.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#proc-call\"},{\"include\":\"#namespace-name\"}]},{\"begin\":\"(?<=^|[\\\\[{;]|tailcall)\\\\s*(::)?\\\\b(info|eof|read|fileevent|fblocked|flush|gets|chan|coroutine|eval|tls|http|clock|array|encoding|binary|file|task|after|tailcall|rename|callback|state|json|exec|pubsub)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.ent.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"match\":\"(?<=(?:info|clock|http|binary|coroutine|chan|encoding|file|task|array|after|tailcall|rename|callback|state|json|exec|pubsub))\\\\s+(?:(?!$|{|\\\\[|;|\\n)([^\\\\s\\\\]}\\\\[{;\\n\\\"]*))?\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#opt\"},{\"include\":\"#namespace-name\"}]}}},{\"include\":\"#proc-call-args\"}]}]},\"tcl-array\":{\"patterns\":[{\"include\":\"#namespace-separator\"},{\"begin\":\"(?<=^|[\\\\[{;]|tailcall\\\\s)\\\\s*(?:::)?(array\\\\b)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.array.tcl\"}},\"patterns\":[{\"include\":\"#tcl-array-set\"},{\"include\":\"#tcl-array-get\"},{\"include\":\"#tcl-array-commands\"}]}]},\"tcl-array-commands\":{\"patterns\":[{\"begin\":\"(?<=array)(?:::)?\\\\s+(names|donesearch|anymore|exists|nextelement|size|startsearch|statistics|unset)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.array.command.tcl\"}},\"patterns\":[{\"include\":\"#proc-call-args\"}]}]},\"tcl-array-set\":{\"patterns\":[{\"begin\":\"(?<=array)(?:::)?\\\\s+(set)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.array.set.tcl\"}},\"patterns\":[{\"begin\":\"(?<=set)\\\\s+(?!$|[\\n;}\\\\]])([^\\\\s\\\\];]*)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#variable-bare\"}]}},\"patterns\":[{\"include\":\"#empty-brackets\"},{\"include\":\"#property-list-brackets\"},{\"include\":\"#proc-call-args\"}]}]}]},\"tcl-array-get\":{\"patterns\":[{\"begin\":\"(?<=array)(?:::)?\\\\s+(get)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.array.get.tcl\"}},\"patterns\":[{\"begin\":\"(?<=get)(\\\\s+(?!$|[\\n;\\\\]])[^\\\\s\\\\]};\\n]*)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#variable-bare\"}]}},\"patterns\":[{\"include\":\"#proc-call-args\"}]}]}]},\"tcl-oo\":{\"comment\":\"handle tcl specific commands and evaluation\",\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;]|tailcall)\\\\s*((?:::)?(oo)::)?\\\\b((?:module|mixin|define|(?:meta)?class|objdefine|Helpers|InfoObject|copy|object|Slot|UnknownDefinition)\\\\b|Obj[0-9]*)\",\"end\":\"(?=$|[\\n;}\\\\]\\\\[{])\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.tcl\"},\"2\":{\"name\":\"keyword.control.oo.tcl\"},\"3\":{\"name\":\"keyword.control.oo.command\"}},\"patterns\":[{\"include\":\"#opt\"},{\"include\":\"#variable\"},{\"include\":\"#tcl-oo-commands\"}]}]},\"tcl-oo-commands\":{\"patterns\":[{\"include\":\"#tcl-oo-create\"},{\"include\":\"#tcl-oo-define\"}]},\"tcl-oo-create\":{\"patterns\":[{\"begin\":\"(?<=class|module|metaclass)\\\\b\\\\s+\\\\b(create)\\\\b\",\"end\":\"(?=$|[\\n;\\\\]])|(?<=})\",\"captures\":{\"1\":{\"name\":\"entity.function.name.oo.create.tcl\"}},\"patterns\":[{\"begin\":\"(?<=create)\\\\s+(?!$|[\\\\]\\n\\\\[$;\\\\}])\",\"end\":\"\\\\s\",\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#tcl-class-name\"}]},{\"include\":\"#tcl-oo-eval-brackets\"},{\"include\":\"#variable\"}]}]},\"tcl-oo-define\":{\"patterns\":[{\"begin\":\"(?<=define)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"patterns\":[{\"begin\":\"(?<=define)\\\\s+(?!$|[\\n;\\\\]}\\\\[$])\",\"end\":\"\\\\s\",\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#tcl-class-name\"}]},{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#square-brackets\"},{\"include\":\"#opt\"},{\"include\":\"#tcl-oo-define-constructor\"},{\"include\":\"#tcl-oo-define-destructor\"},{\"include\":\"#tcl-oo-define-method\"},{\"include\":\"#tcl-oo-eval-brackets\"},{\"include\":\"#namespace-name\"}]}]},\"tcl-oo-define-destructor\":{\"patterns\":[{\"begin\":\"(destructor)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.oo.define.constructor.tcl\"}},\"patterns\":[{\"include\":\"#brackets\"}]}]},\"tcl-oo-define-constructor\":{\"patterns\":[{\"begin\":\"(constructor)\\\\s+(?!$|[\\n;\\\\]}])\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.oo.define.constructor.tcl\"}},\"patterns\":[{\"include\":\"#proc-arguments\"},{\"include\":\"#brackets\"}]}]},\"tcl-oo-define-method\":{\"patterns\":[{\"begin\":\"(method)\\\\s+([^\\\\s]*)\\\\s+(?!$|[\\n;\\\\]}])\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.oo.define.method.tcl\"},\"2\":{\"patterns\":[{\"include\":\"#namespace-name\"}]}},\"patterns\":[{\"include\":\"#proc-arguments\"},{\"include\":\"#brackets\"}]}]},\"tcl-oo-eval-brackets\":{\"comment\":\"evaluating inside of a class create or define\",\"patterns\":[{\"begin\":\"\\\\s*(\\\\{)\",\"end\":\"\\\\s*(\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"meta.bracket.curly.oo.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.bracket.curly.oo.close.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#tcl-oo-my\"},{\"include\":\"#tcl-oo-constructor\"},{\"include\":\"#tcl-oo-destructor\"},{\"include\":\"#tcl-oo-method\"},{\"include\":\"#tcl-oo-variable\"},{\"include\":\"#tcl-oo-mixin\"},{\"include\":\"#tcl-oo-exports\"},{\"include\":\"#proc-call\"}]}]},\"tcl-oo-keywords\":{\"patterns\":[{\"include\":\"#tcl-oo-my\"},{\"include\":\"#tcl-oo-self\"}]},\"tcl-oo-exports\":{\"patterns\":[{\"begin\":\"(?<=^|[{;])\\\\s*(unexport|export)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;]))\",\"captures\":{\"1\":{\"name\":\"keyword.control.oo.unexport.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#namespace-name\"}]}]},\"tcl-oo-method\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*(method)\\\\s+([^\\\\s]*)\\\\s*\",\"end\":\"\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.oo.method.tcl\\\"\"},\"2\":{\"name\":\"entity.function.name.oo.method.tcl\"}},\"patterns\":[{\"include\":\"#proc-arguments\"},{\"include\":\"#tcl-oo-brackets\"}]}]},\"tcl-oo-my\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*+\\\\b(my)\\\\b\",\"end\":\"\\\\s*(?=$|\\n|;|\\\\]|})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.oo.my.punctuation.italic.tcl\"}},\"patterns\":[{\"begin\":\"(?<=my)\\\\b\\\\s+\\\\b(variable)\\\\b\",\"end\":\"(?=$|^|\\n|;)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.my.variable.oo.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"match\":\"([^\\\\s|\\\\]|}|$])\",\"name\":\"variable\"}]},{\"match\":\"(?<=my)\\\\b\\\\s+([^\\\\s\\\\]};]*)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.my.method.oo.tcl\"}}},{\"include\":\"#proc-call-args\"}]}]},\"tcl-oo-self\":{\"patterns\":[{\"match\":\"(?<=^|\\\\[)\\\\s*(self)\",\"captures\":{\"1\":{\"name\":\"keyword.control.oo.my.punctuation.italic.tcl\"}}},{\"match\":\"(?<=self)\\\\s+(next)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.punctuation.italic.tcl\"}}}]},\"tcl-oo-variable\":{\"patterns\":[{\"begin\":\"(?<=^|[;{])\\\\s*(variable)\\\\b\",\"end\":\"\\\\s*(?=(?<!\\\\\\\\)(?:$|[;\\n]))\",\"captures\":{\"1\":{\"name\":\"keyword.control.oo.variable.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-oo-constructor\":{\"patterns\":[{\"begin\":\"(?<=^|{)\\\\s*\\\\b(constructor)\\\\b(?:(?!$)\\\\s+)?\",\"end\":\"(?<=})\",\"captures\":{\"1\":{\"name\":\"keyword.control.oo.eval.constructor.tcl\"},\"2\":{\"name\":\"variable.other.tcl\"}},\"patterns\":[{\"include\":\"#proc-arguments\"},{\"include\":\"#brackets\"}]}]},\"tcl-oo-destructor\":{\"patterns\":[{\"begin\":\"(?<=^|{)\\\\s*\\\\b(destructor)\\\\b\",\"end\":\"(?<=})\",\"captures\":{\"1\":{\"name\":\"keyword.contorl.oo.eval.destructor.tcl\"}},\"patterns\":[{\"include\":\"#brackets\"}]}]},\"tcl-oo-mixin\":{\"patterns\":[{\"begin\":\"\\\\s*\\\\b(mixin|superclass)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"captures\":{\"1\":{\"name\":\"keyword.control.oo.mixin.tcl\"}},\"patterns\":[{\"include\":\"#tcl-class-name\"}]}]},\"classname\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"match\":\"(?<=\\\\s)\\\\s*([^\\\\s;\\\\\\\\\\\\[]*)\",\"name\":\"meta.class\"},{\"include\":\"#square-brackets\"}]},\"tcl-expression-keywords\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"\\\\s*+((::|-)?(if|expr|while))\\\\b\\\\s+(?={)\",\"end\":\"(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.if.tcl\",\"patterns\":[{\"include\":\"#namespace-separator\"},{\"include\":\"#opt\"}]},\"2\":{\"name\":\"support.type\"},\"3\":{\"name\":\"keyword.control.if.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"keyword.control.if.end.tcl\"}},\"patterns\":[{\"include\":\"#if-handlers\"}]},{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::|-)?(expr)\\\\b\",\"end\":\"(?=$|;|}|\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.expr.ns.tcl\"},\"2\":{\"name\":\"keyword.control.expr.unbraced.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#expressions\"}]}]},\"if-handlers\":{\"patterns\":[{\"include\":\"#expression-brackets\"},{\"include\":\"#if-else-if\"},{\"include\":\"#if-else\"},{\"include\":\"#curly-brackets\"}]},\"if-else-if\":{\"patterns\":[{\"begin\":\"(?<=\\\\})\\\\s+(elseif)\\\\s+\",\"end\":\"\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.elseif.tcl\"}},\"patterns\":[{\"include\":\"#expression-brackets\"},{\"include\":\"#brackets\"}]}]},\"if-else\":{\"patterns\":[{\"begin\":\"(?<=\\\\})\\\\s+(else)\\\\s+(?=\\\\{)\",\"end\":\"(?<=\\\\}|$)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.else.tcl\"}},\"patterns\":[{\"include\":\"#brackets\"}]}]},\"if-block\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?<=\\\\})\\\\s+(\\\\{)\",\"end\":\"(\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control\"}},\"patterns\":[{\"include\":\"$self\"}]}]},\"tcl-try-catch\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?<=^|[\\\\[{;]|tailcall)\\\\s*(::)?\\\\b(try)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.ns.separator\"},\"2\":{\"name\":\"keyword.control.try.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#tcl-try-trap\"},{\"include\":\"#tcl-try-on\"},{\"include\":\"#tcl-try-finally\"},{\"include\":\"#brackets\"}]}]},\"tcl-try-on\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?<=}|\\\\])\\\\s+\\\\b(on)\\\\b\\\\s+\\\\b(error|return|break|continue|ok|[0-9]*)\\\\b(?:\\\\s+(?={|\\\\b|\\\\$|\\\"|\\\\[|\\\\\\\\\\n)|\\\\s+(?!$|\\n))\",\"end\":\"\\\\s*(?=$|[{\\\\[;\\n])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.on.tcl\"},\"2\":{\"name\":\"keyword.control.try.on.tcl\",\"patterns\":[{\"include\":\"#constant-numeric\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#arguments-braced\"},{\"match\":\"(?!\\\\s)([^\\\\s;\\\\]}\\n$]*)(?=\\\\s+(?:{|\\\\[|\\n|\\\\\\\\\\n))\",\"captures\":{\"1\":{\"name\":\"variable.name\"}}},{\"include\":\"#variable\"}]}]},\"tcl-try-trap\":{\"patterns\":[{\"applyEndPatternLast\":1,\"begin\":\"(?<=}|\\\\])\\\\s+\\\\b(trap)\\\\b\",\"end\":\"(?=\\\\s*{)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.trap.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#square-brackets\"},{\"match\":\"(?<=trap)\\\\s+(?=\\\\b)([^\\\\s;\\\\]\\\\[}\\n$]+)(?:(?!\\n|$|\\\\\\\\)\\\\s+)?\",\"captures\":{\"1\":{\"name\":\"support.type.try.trap.name.tcl\"}}},{\"begin\":\"(?<=trap)\\\\s+({)\",\"end\":\"(})(?:\\\\s+(?!\\n|$|^))?\",\"contentName\":\"support.type.try.trap.name.tcl\"},{\"include\":\"#arguments-braced\"},{\"match\":\"([^\\\\s$\\n;\\\\[{}\\\\]]+)(?=\\\\s+{)\",\"name\":\"variable\"}]}]},\"tcl-try-finally\":{\"patterns\":[{\"begin\":\"(?<=})\\\\s+(finally)\\\\s+(?=[{\\\\[])\",\"end\":\"(?<=[}\\\\];])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.try.onerror.tcl\"}},\"patterns\":[{\"include\":\"#brackets\"}]}]},\"tcl-setters\":{\"patterns\":[{\"include\":\"#tcl-set\"},{\"include\":\"#tcl-unset\"},{\"include\":\"#tcl-append\"}]},\"tcl-set\":{\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;]|tailcall)\\\\s*(::)?\\\\b(set|variable)\\\\b\\\\s+(?!\\n|$)\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.set.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare\"},{\"include\":\"#regexp\"},{\"include\":\"#proc-call-args\"}]}]},\"tcl-append\":{\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;]|tailcall)\\\\s*(::)?\\\\b(append|lappend)\\\\b(?:(\\\\s+[^\\\\s]*))?\",\"end\":\"(?=$|^|;|}|\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.set.tcl\"},\"3\":{\"patterns\":[{\"include\":\"#variable-bare-italic\"},{\"include\":\"#variable\"}]}},\"patterns\":[{\"include\":\"#proc-call-args\"}]}]},\"tcl-unset\":{\"patterns\":[{\"contentName\":\"punctuation.variable.set.italic.tcl\",\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(unset)\",\"end\":\"\\\\s*(?=$|;|\\n|}|\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.unset.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#brackets\"},{\"match\":\"\\\\s*([^\\\\s|}|\\\\]|;]*)\",\"captures\":{\"1\":{\"name\":\"punctuation.variable.set.italic.tcl\"}}}]}]},\"tcl-namespace\":{\"patterns\":[{\"begin\":\"(?<=^|[{\\\\[;]|tailcall)\\\\s*(::)?\\\\b(namespace)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)$)|(?=[\\\\];}])\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.namespace.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#tcl-namespace-eval\"},{\"include\":\"#tcl-namespace-entity-commands\"},{\"include\":\"#tcl-namespace-subcommands\"},{\"include\":\"#proc-call-args\"}]}]},\"tcl-namespace-eval\":{\"begin\":\"\\\\s*\\\\b(eval|exists)\\\\b\\\\s*\",\"end\":\"(?=(?<!\\\\\\\\\\n)$|(?<!\\\\\\\\)\\n|[}\\\\];{\\\\[])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.namespace.eval.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#namespace-name\"},{\"include\":\"#brackets\"}]},\"tcl-namespace-entity-commands\":{\"begin\":\"\\\\s*\\\\b(delete)\\\\b\\\\s*\",\"end\":\"(?=(?<!\\\\\\\\\\n)$|(?<!\\\\\\\\)\\n|[}\\\\];{\\\\[])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.name.namespace.eval.tcl\"}},\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#line-escape\"},{\"include\":\"#namespace-name\"},{\"include\":\"#brackets\"}]},\"tcl-namespace-subcommands\":{\"match\":\"\\\\s*\\\\b(exists|ensemble|children|code|current|export|forget|import|inscope|origin|parent|path|qualifiers|tail|upvar|unknown|which)\\\\b\",\"captures\":{\"1\":{\"name\":\"entity.function.name.namespace.subcommand.tcl\"}}},\"namespace-name\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#namespace-separator\"},{\"match\":\"(?![\\\\s{}\\\\[\\\\]])([^\\\\s:$\\\\[\\\\]}{;\\n]+)\",\"name\":\"entity.function.name.tcl\"}]},\"namespace-separator\":{\"patterns\":[{\"match\":\"(?<!:)(:)(?!:)|(?<=::)(:)(?!:)\",\"name\":\"string\"},{\"match\":\"(::)\",\"name\":\"support.type\"}]},\"tcl-foreach\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(foreach)\\\\b(?:(?=\\\\s+{)\\\\s+)?\",\"end\":\"(?=(?<!\\\\\\\\)$)|(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.keyword.foreach.loop.tcl\"}},\"patterns\":[{\"include\":\"#arguments-braced\"},{\"include\":\"#brackets\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-catch\":{\"patterns\":[{\"begin\":\"(?<=\\\\[|{|^|tailcall)\\\\s*(::)?\\\\b(catch)\\\\b(?=\\\\s)\",\"end\":\"(?=\\\\]|}|$|(?<!\\\\\\\\)\\n|;)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.string.tcl\"}},\"patterns\":[{\"include\":\"#brackets\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-upvar\":{\"patterns\":[{\"begin\":\"(?<=\\\\[|\\\\{|^|tailcall)\\\\s*(::)?\\\\b(upvar)\\\\b\",\"end\":\"\\\\s*(?=\\\\]|}|$|;)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.string.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-info\":{\"patterns\":[{\"begin\":\"(?<=\\\\[|\\\\{|^|tailcall)\\\\s*(::)?\\\\b(info)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n;\\\\]}])\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.string.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#square-brackets\"},{\"include\":\"#tcl-info-exists\"},{\"include\":\"#tcl-info-oo\"},{\"include\":\"#tcl-info-subcommands\"}]}]},\"tcl-info-exists\":{\"patterns\":[{\"begin\":\"\\\\b(exists)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.info.exists.tcl\"}},\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#line-escape\"},{\"include\":\"#square-brackets\"},{\"include\":\"#variable-bare-italic\"}]}]},\"tcl-info-oo\":{\"patterns\":[{\"begin\":\"(?<=info)\\\\s+(class|object)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n;\\\\]}])\",\"captures\":{\"1\":{\"name\":\"entity.function.name.info.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"begin\":\"(?<=object)\\\\s+\\\\b(isa|vars|class)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n;\\\\]}])\",\"captures\":{\"1\":{\"name\":\"keyword.control.info.class.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#square-brackets\"},{\"include\":\"#tcl-class-name\"}]},{\"begin\":\"(?<=class)\\\\s+\\\\b(constructor|destructor|instances|subclasses|superclasses)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n;\\\\]}])\",\"captures\":{\"1\":{\"name\":\"keyword.control.info.class.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#square-brackets\"},{\"include\":\"#tcl-class-name\"}]},{\"begin\":\"(?<=class|object)\\\\s+\\\\b(call|definition|filters|forward|methods|methodtype|mixins|variables)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n;\\\\]}])\",\"captures\":{\"1\":{\"name\":\"keyword.control.info.class.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#tcl-class-name\"}]},{\"include\":\"#proc-call-args\"}]}]},\"tcl-info-pattern-commands\":{\"patterns\":[{\"begin\":\"\\\\b(command(?:s)?|globals|locals|procs|vars|functions)\\\\b\",\"end\":\"\\\\s*(?=$|\\n|}|\\\\]|;)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.tcl\"}},\"patterns\":[{\"include\":\"#constant-numeric\"},{\"include\":\"#namespace-name\"},{\"include\":\"#glob-match\"}]}]},\"tcl-info-subcommands\":{\"patterns\":[{\"include\":\"#tcl-info-pattern-commands\"},{\"begin\":\"\\\\b(level|frame|coroutine|nameofexecutable|nameofexe|args|body|cmdcount|complete|default|hostname|library|loaded|patchlevel|script|sharedlibextension|tclversion)\\\\b\\\\s*\",\"end\":\"\\\\s*(?=$|\\n|}|\\\\]|;)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.tcl\"}},\"patterns\":[{\"include\":\"#constant-numeric\"},{\"include\":\"#namespace-name\"},{\"include\":\"#proc-call-args\"}]}]},\"tcl-string\":{\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;]|tailcall)\\\\s*(::)?\\\\b(string)\\\\b\",\"end\":\"(?=}|\\\\]|;|$|\\n)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.string.tcl\"}},\"patterns\":[{\"include\":\"#tcl-string-is\"},{\"include\":\"#tcl-string-match\"},{\"include\":\"#tcl-string-matchfirst\"},{\"include\":\"#tcl-string-map\"},{\"include\":\"#tcl-string-subcommands\"},{\"include\":\"#proc-call-args\"}]}]},\"tcl-string-is\":{\"patterns\":[{\"match\":\"\\\\s*\\\\b(is)\\\\b\\\\s+([^\\\\s}\\\\];]*)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.string.is.tcl\"},\"2\":{\"name\":\"support.type\",\"patterns\":[{\"include\":\"#variable\"}]}}}]},\"tcl-string-match\":{\"patterns\":[{\"begin\":\"(?<=string)\\\\s+\\\\b(match)\\\\b\",\"end\":\"(?=$|\\n|\\\\]|}|;)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.string.is.tcl\"},\"2\":{\"name\":\"string\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#variable\"},{\"include\":\"#glob-match\"},{\"include\":\"#curly-string-brackets\"},{\"include\":\"#square-brackets\"},{\"include\":\"#constant-numeric\"}]}]},\"tcl-string-matchfirst\":{\"patterns\":[{\"begin\":\"\\\\s*\\\\b(matchfirst)\\\\b\",\"end\":\"\\\\s*(?=\\\\]|}|$|;)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.string.is.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#curly-string-brackets\"},{\"include\":\"#constant-numeric\"},{\"include\":\"#glob-match\"},{\"include\":\"#variable\"}]}]},\"tcl-string-map\":{\"patterns\":[{\"begin\":\"(?<=string)\\\\b\\\\s+(map)\\\\b\",\"end\":\"(?=$|\\n|\\\\]|}|{|\\\\[)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.string.map.tcl\"}},\"patterns\":[{\"include\":\"#square-brackets\"},{\"include\":\"#variable\"},{\"begin\":\"\\\\s*({)\",\"end\":\"\\\\s*(})\",\"patterns\":[{\"match\":\"(?<=[^\\\\\\\\]\\\\\\\\\\\\\\\\)(.)\",\"name\":\"string\"},{\"match\":\"([\\\\[\\\\]])\",\"name\":\"string\"},{\"include\":\"#quoted-string\"},{\"include\":\"#curly-string-brackets\"},{\"include\":\"#bare-string\"}]}]}]},\"tcl-string-subcommands\":{\"patterns\":[{\"match\":\"(?<=string)\\\\b\\\\s+(match|compact|toupper|tolower|bytelength|compare|cat|first|index|is|last|length|map|range|repeat|replace|reverse|totitle|trim|trimleft|trimright|wordend|wordstart|equal)\\\\s+\",\"name\":\"entity.function.name.string.subcommands.tcl\"}]},\"tcl-dict\":{\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;]|tailcall)\\\\s*(::)?\\\\b(dict)\\\\b\",\"end\":\"($)|(?=$|[;\\\\]}])\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"},\"2\":{\"name\":\"keyword.control.dict.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#tcl-dict-keywords\"},{\"include\":\"#tcl-dict-subcommands\"},{\"include\":\"#proc-call-args\"}]}]},\"tcl-dict-keywords\":{\"patterns\":[{\"include\":\"#tcl-dict-blocks\"},{\"include\":\"#tcl-dict-setters\"}]},\"property-list-brackets\":{\"patterns\":[{\"begin\":\"\\\\s*({)\",\"end\":\"(})\",\"patterns\":[{\"include\":\"#property-list\"}]}]},\"property-list\":{\"begin\":\"(?=.)\",\"end\":\"\\\\s|(?=(?<!\\\\\\\\)$|[\\\\]])|(?<=})\",\"patterns\":[{\"include\":\"#empty-brackets\"},{\"include\":\"#square-brackets\"},{\"include\":\"#tcl-expression-keywords\"},{\"begin\":\"([^\\\\s\\\\]]*)\\\\s+({)\",\"end\":\"(})\",\"beginCaptures\":{\"1\":{\"name\":\"variable\",\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#opt\"}]}},\"patterns\":[{\"include\":\"#empty-brackets\"},{\"include\":\"#property-list\"}]},{\"begin\":\"\\\\s*(?!$|\\\\]|\\\\\\\\)([^\\\\s\\\\]}{]*)\\\\s+(?!$|[{\\n])\",\"end\":\"(?=\\\\s|\\\\]|(?<!\\\\\\\\)$)|(?<=})\",\"beginCaptures\":{\"1\":{\"name\":\"variable\",\"patterns\":[{\"include\":\"#constant-numeric\"},{\"include\":\"#opt\"},{\"include\":\"#variable\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#opt\"},{\"include\":\"#empty-brackets\"},{\"include\":\"#special-brackets\"},{\"include\":\"#square-brackets\"},{\"include\":\"#variable\"},{\"include\":\"#constant-numeric\"},{\"match\":\"(?!\\\\s|\\\\])([^\\\\s\\\\]]+)\",\"name\":\"string\"}]},{\"include\":\"#variable\"},{\"include\":\"#bare-string\"}]},\"tcl-dict-blocks\":{\"begin\":\"(?<=dict)\\\\b\\\\s+\\\\b(for|update|with)\\\\b(?:(?!$|\\n|\\\\]|}|;|\\\\[|{)\\\\s+)?\",\"end\":\"(?<=})|(?=(?<!\\\\\\\\)(?:$|[;\\\\]}\\n]))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.dict.for.tcl\"}},\"patterns\":[{\"include\":\"#arguments-braced\"},{\"include\":\"#curly-brackets\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare-italic\"},{\"include\":\"#brackets\"}]},\"tcl-dict-setters\":{\"patterns\":[{\"begin\":\"(?<=dict)\\\\s+\\\\b(set|pull|unset|lappend|incr|push)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]}]))\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.dict.setters.subcommand.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#square-brackets\"},{\"begin\":\"(?<=pull|push)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]{}]))\",\"patterns\":[{\"include\":\"#line-escape\"},{\"match\":\"(?<=push)\\\\s+(\\\\-\\\\>)\",\"captures\":{\"1\":{\"name\":\"meta.constant\"}}},{\"include\":\"#variable\"},{\"include\":\"#square-brackets\"},{\"include\":\"#variable-bare\"},{\"begin\":\"\\\\s*({)\",\"end\":\"(})\",\"patterns\":[{\"match\":\"(?<={)\\\\s*([^\\\\s}]*)\",\"name\":\"string.pull.prop.tcl\"},{\"begin\":\"(?<=\\\\s)([^\\\\s}]*)\",\"end\":\"(?=})\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#variable-bare-italic\"}]}},\"patterns\":[{\"include\":\"#constant-numeric\"},{\"begin\":\"\\\\s*({)\",\"end\":\"(})\",\"contentName\":\"string.dict.pull.default.tcl\",\"captures\":{\"1\":{\"name\":\"entity.function.name.dict.pull.props.tcl\"}}},{\"include\":\"#bare-string\"}]},{\"include\":\"#constant-numeric\"}]}]},{\"begin\":\"(?<=set|unset|lappend|incr)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n;\\\\]{}]))\",\"patterns\":[{\"begin\":\"(?<=set|unset|lappend|incr)\\\\b\\\\s+\",\"end\":\"\\\\s\",\"patterns\":[{\"include\":\"#variable-bare-italic\"}]},{\"include\":\"#proc-call-args\"}]},{\"include\":\"#proc-call-args\"},{\"include\":\"#variable\"}]}]},\"tcl-dict-subcommands\":{\"patterns\":[{\"begin\":\"(?<=dict)\\\\s+(create)\\\\b(?:\\\\s+(?!$))?\",\"end\":\"(?=\\\\])|(?<!\\\\\\\\)$\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.dict.subcommand.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#property-list\"}]},{\"match\":\"(?!\\\\])\\\\s*\\\\b(append|exists|filter|get|get\\\\?|incr|info|keys|lappend|map|merge|remove|replace|set|size|unset|update|values|with|pull|push|pullFrom)\\\\b\",\"name\":\"entity.function.name.dict.subcommand.tcl\"}]},\"proc-arguments\":{\"patterns\":[{\"include\":\"#proc-args-braced\"},{\"include\":\"#proc-args-singular\"}]},\"proc-args-singular\":{\"patterns\":[{\"match\":\"(?!{|\\\\[|\\\\s|}|\\\\]|$)([^\\\\s}\\\\];]*)(?=\\\\s|}|\\\\])\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.variable.tcl\"}}}]},\"proc-args-braced\":{\"begin\":\"(?={)({)\",\"end\":\"\\\\s*(})\",\"beginCaptures\":{\"1\":{\"name\":\"meta.brace.curly.proc.args.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.brace.curly.proc.args.close.tcl\"}},\"patterns\":[{\"include\":\"#proc-arguments-nested\"},{\"include\":\"#variable-bare\"}]},\"proc-arguments-nested\":{\"patterns\":[{\"begin\":\"\\\\s*+({)\",\"end\":\"(})\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name\"}},\"patterns\":[{\"include\":\"#quoted-string\"},{\"include\":\"#empty-brackets\"},{\"match\":\"\\\\s*([^\\\\s|{|}]*)\\\\s*([^\\\\s|{|}]*)(?=\\\\s*?})\",\"contentName\":\"variable\",\"captures\":{\"1\":{\"name\":\"variable\"},\"2\":{\"name\":\"string.proc.argument\",\"patterns\":[{\"include\":\"#constant-numeric\"}]}}},{\"include\":\"#curly-string-brackets\"},{\"match\":\"\\\\s*([^\\\\s|{|}]*)\",\"name\":\"variable.proc.argument\"}]}]},\"arguments-braced\":{\"patterns\":[{\"begin\":\"({)(?:(?!$|\\n|\\\\]|}|;|\\\\[|{)\\\\s*)?\",\"end\":\"(})\",\"patterns\":[{\"match\":\"(?:(?!$|\\n|\\\\]|}|;|\\\\[|{)\\\\s*)?([^\\\\s|{|}]*)(?:(?!$|\\n|\\\\]|}|;|\\\\[|{)\\\\s*)?\",\"name\":\"variable\"}]}]},\"double-dash\":{\"match\":\"\\\\s(--)\\\\s\",\"captures\":{\"1\":{\"name\":\"keyword.control.tcl\"}}},\"quoted-string\":{\"patterns\":[{\"comment\":\"when inside curly bracket, {\\\"}\",\"match\":\"(?<={)\\\\s*+(\\\"\\\\s*(?=})(?!\\\"))\",\"name\":\"string.quoted.tcl\"},{\"begin\":\"\\\\s*+(?<!\\\\\\\\)(\\\")\",\"end\":\"(?<!\\\\\\\\)((?:\\\\\\\\{2})*)(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"constant.character.escape\"},\"2\":{\"name\":\"string.quoted.double.close.tcl\"}},\"patterns\":[{\"include\":\"#square-brackets\"},{\"include\":\"#string-content\"},{\"match\":\"(\\\\*)\",\"name\":\"bare.string\"},{\"match\":\"([{}])\",\"name\":\"string.quoted.tcl\"}]}]},\"string-content\":{\"patterns\":[{\"include\":\"#string-escapes\"},{\"include\":\"#variable\"},{\"include\":\"#square-brackets\"},{\"include\":\"#bare-string\"}]},\"string-escapes\":{\"patterns\":[{\"name\":\"constant.character.escape.newline.tcl\",\"match\":\"\\\\\\\\\\n\"},{\"name\":\"constant.character.escape\",\"match\":\"\\\\s*+\\\\\\\\[\\\\]\\\"\\\\\\\\nrtbfv0`\\\\[]\"},{\"name\":\"constant.character.escape\",\"match\":\"\\\\\\\\u(({[0-9a-fA-F]+\\\\})|[0-9a-fA-F]{4})\"},{\"name\":\"constant.character.escape\",\"match\":\"\\\\\\\\x[0-9a-fA-F]{2}\"},{\"name\":\"constant.character.escape\",\"match\":\"(?<!\\\\\\\\)(\\\\\\\\)([;])\",\"captures\":{\"1\":{\"name\":\"constant.character.escape\"},\"2\":{\"name\":\"string\"}}}]},\"bare-string\":{\"patterns\":[{\"include\":\"#opt\"},{\"include\":\"#string-escapes\"},{\"match\":\"\\\\s*(\\\\$)(?=$|\\n|\\\\]|}|\\\"|;|\\\\s)\",\"name\":\"bare.string.tcl\"},{\"match\":\"(\\\\\\\\[^\\\\]\\\"\\\\\\\\nrtbfv0`\\\\[])\",\"name\":\"bare.string.tcl\"},{\"match\":\"(?<!::)(?!;|\\\\]|}|\\\\*|\\\"|;)([^\\\\*}\\\\\\\\;\\\\]{\\\\[\\\"\\\\$\\n\\\\-\\\\)\\\\(]+)\",\"captures\":{\"1\":{\"name\":\"bare.string.tcl\",\"patterns\":[{\"match\":\"(?:(?<=::)|(?=[^\\\\s:]*(?=::)))(?!\\\\s)([^\\\\s]*)\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#namespace-name\"}]}}},{\"include\":\"#variable\"}]}}},{\"match\":\"(-)(?=\\\\s|;|}|\\\\]|\\\"|-)\",\"name\":\"bare.string.tcl\"},{\"match\":\"(?<=-)(-)\",\"name\":\"bare.string.tcl\"},{\"include\":\"#variable\"}]},\"html-curly-brackets\":{\"begin\":\"\\\\s*({)\",\"end\":\"(})\",\"patterns\":[{\"include\":\"text.html.basic\"}]},\"regexp\":{\"patterns\":[{\"begin\":\"(?<=^|\\\\[|{|;)\\\\s*(::)?\\\\b(regexp|regsub)\\\\b\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|.*[\\n;}\\\\]]))\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.ns.separator.tcl\"},\"2\":{\"name\":\"keyword.control.regexp.tcl\"}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#double-dash\"},{\"include\":\"#quoted-string\"},{\"match\":\"\\\\s*(->)\",\"name\":\"meta.constant.re.trashvar.tcl\"},{\"include\":\"#opt\"},{\"begin\":\"\\\\s*({|\\\")\",\"end\":\"(}|\\\")(?=\\\\s+(?:\\\\\\\\\\n|$|\\n|\\\\[|\\\\$|\\\\b|\\\"|;|}|-))\",\"contentName\":\"string.tcl\",\"patterns\":[{\"include\":\"#regular-expression\"}]},{\"include\":\"#quoted-string\"},{\"include\":\"#variable\"},{\"include\":\"#variable-bare-italic\"}]},{\"begin\":\"(?<=_regexp|_re)\\\\s+(?={|\\\")\",\"end\":\"(?=(?<!\\\\\\\\)$)|(?<=\\\")|(?<=})\",\"patterns\":[{\"begin\":\"({)\",\"end\":\"(})\",\"contentName\":\"string.tcl\",\"patterns\":[{\"include\":\"#regular-expression\"}]},{\"begin\":\"(\\\")\",\"end\":\"(\\\")\",\"contentName\":\"string.tcl\",\"patterns\":[{\"include\":\"#regular-expression\"}]}]}]},\"comment-blocks\":{\"patterns\":[{\"contentName\":\"comment.line.number-sign.tcl\",\"begin\":\"(?<=^|;|{)\\\\s*((#))\",\"end\":\"(?=$|\\n)|((#))(?=\\\\s*(?:[}\\n]))\",\"captures\":{\"1\":{\"name\":\"comment.line.number-sign.tcl\"},\"2\":{\"name\":\"punctuation.definition.comment.tcl\"}}},{\"contentName\":\"comment.block.tcl\",\"begin\":\"(?<=^|;|\\\\{)\\\\s*((?:\\\\%\\\\s+\\\\{)|(?:\\\\bif\\\\s+{?0}?\\\\s+{))\",\"end\":\"\\\\s*(\\\\})\",\"beginCaptures\":{\"1\":{\"name\":\"comment.block.multi.start.tcl\"},\"2\":{\"name\":\"punctuation.definition.comment.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"comment.block.multi.end.tcl\"}},\"patterns\":[{\"include\":\"#annotate\"},{\"include\":\"#variable-non-substituting\"}]}]},\"annotate\":{\"patterns\":[{\"include\":\"#annotate-control-block\"},{\"include\":\"#annotate-properties\"},{\"include\":\"#annotate-title\"},{\"include\":\"#annotate-header\"},{\"include\":\"#annotate-highlight\"},{\"include\":\"#annotate-type\"},{\"include\":\"#annotate-list\"}]},\"annotate-title\":{\"patterns\":[{\"comment\":\"adding @ in a multi-line will make the line emphasized\",\"contentName\":\"meta.class.comment.annotate.tcl\",\"begin\":\"\\\\s*+(@)\",\"end\":\"(?={|\\\\s-|>)|(@|}|$|\\n)|\\\\|\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.annotate.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"support.type.annotate.tcl\"}},\"patterns\":[{\"include\":\"#variable-non-substituting\"},{\"include\":\"#namespace-separator\"}]}]},\"annotate-properties\":{\"begin\":\"(?=\\\\s*@[^\\\\s\\n])\",\"end\":\"(?=$|[\\n}@])\",\"patterns\":[{\"comment\":\"special @ values that are meant as property values\",\"match\":\"\\\\s*+(@)\\\\b(type)\\\\b(\\\\s+[^{}|@\\\\[<>-]*)?\",\"captures\":{\"1\":{\"name\":\"meta.constant.annotate.property.tcl\"},\"2\":{\"name\":\"support.type.name.tcl\"},\"3\":{\"name\":\"entity.function.property.name.tcl\"}}},{\"comment\":\"special @ values that are meant as property values\",\"match\":\"\\\\s*+(@)\\\\b(arg(?:s)?|returns|key|prop|if|example|param|params|opt|option|argument|val|value)\\\\b(\\\\s+[^\\\\/{}|@\\\\[<>]*)?\",\"captures\":{\"1\":{\"name\":\"support.type.annotate.property.tcl\"},\"2\":{\"name\":\"variable.property.name.tcl\"},\"3\":{\"name\":\"support.type\",\"patterns\":[{\"include\":\"#opt\"}]}}},{\"comment\":\"@<other> (no space after @)\",\"match\":\"\\\\s*+(@)\\\\b([^\\\\s]*)\\\\b(\\\\s+[^\\\\/{}|@\\\\[<>-]*)?\",\"captures\":{\"1\":{\"name\":\"meta.constant.annotate.property.tcl\"},\"2\":{\"name\":\"entity.function.property.name.tcl\"},\"3\":{\"name\":\"support.type.tcl\"}}},{\"include\":\"#annotate\"}]},\"annotate-control-block\":{\"patterns\":[{\"comment\":\"bracketed within a comment\",\"contentName\":\"keyword.operator\",\"begin\":\"^\\\\s*+(?={)\",\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#brackets\"}]}]},\"annotate-proc-call\":{\"patterns\":[{\"begin\":\"(\\\\[)\",\"end\":\"(\\\\])\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.annotate.proc-call.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"support.type.annotate.proc-call.tcl\"}},\"patterns\":[{\"include\":\"#proc-call\"}]}]},\"annotate-type\":{\"patterns\":[{\"comment\":\"adding @ in a multi-line will make the line emphasized\",\"contentName\":\"entity.function.name.comment.annotate.tcl\",\"begin\":\"\\\\s*+({)\",\"end\":\"\\\\s*(})\",\"beginCaptures\":{\"1\":{\"name\":\"meta.constant.comment.annotate.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.constant.comment.annotate.tcl\"}},\"patterns\":[{\"include\":\"#annotate-regular-expression\"},{\"include\":\"#annotate-proc-call\"},{\"begin\":\"(<)\",\"end\":\"(>)|(?=[}])\",\"contentName\":\"support.type.comment.annotate.property.punctuation.italic.tcl\",\"patterns\":[{\"include\":\"#annotate-regular-expression\"},{\"match\":\"(\\\\|)\",\"name\":\"entity.function.name.tcl\"},{\"include\":\"#variable-non-substituting\"},{\"match\":\"([,])\",\"name\":\"entity.function.name.annotate.opt.tcl\"},{\"match\":\"([-])\",\"name\":\"meta.constant.annotate.opt.tcl\"}]},{\"match\":\"(?:(?<={|\\\\|)([?*])|([?*])(?=}|\\\\|))\",\"name\":\"variable.modifier.annotate.punctuation.italic.tcl\"},{\"match\":\"(\\\\|)\",\"name\":\"meta.constant.comment.annotate.tcl\"}]}]},\"annotate-regular-expression\":{\"patterns\":[{\"begin\":\"(/)\",\"end\":\"(/|$)\",\"beginCaptures\":{\"1\":{\"name\":\"support.type.annotate.re.brace.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"support.type.annotate.re.brace.close.tcl\"}},\"contentName\":\"string.re.expression.comment.annotate.contents.tcl\",\"patterns\":[{\"include\":\"#regular-expression\"}]}]},\"annotate-highlight\":{\"patterns\":[{\"comment\":\"adding | in a multi-line will make the line highlighted (string)\",\"match\":\"(?<=\\\\|)\\\\s*([^|]*)\",\"captures\":{\"1\":{\"name\":\"string.quote.annotate.comment.tcl\",\"patterns\":[{\"include\":\"#annotate-type\"},{\"include\":\"#annotate-proc-call\"},{\"include\":\"#variable-non-substituting\"},{\"match\":\"\\\\b(http://([^\\\\s]*))\",\"name\":\"entity.function.name.markup.underline\"}]}}}]},\"annotate-header\":{\"patterns\":[{\"comment\":\"adding > in a multi-line will make the line emphasized\",\"begin\":\"\\\\s*+(>)\",\"end\":\"(<)|(?=$|>)\",\"contentName\":\"meta.constant.annotate.header.tcl\",\"captures\":{\"1\":{\"name\":\"entity.function.name.annotate.tcl\"},\"2\":{\"name\":\"meta.constant.annotate.header.tcl\"}},\"patterns\":[{\"include\":\"#annotate\"}]}]},\"annotate-list\":{\"patterns\":[{\"match\":\"^\\\\s*([0-9]\\\\.)\\\\s+\",\"name\":\"meta.class\"}]},\"opt\":{\"patterns\":[{\"comment\":\"Handle options sent to commands at various points (cmd -name1 value -name2 value)\",\"match\":\"\\\\s*+(?<=\\\\s|^|\\\"|\\\\()((-)(?!-|\\\\s|\\\"|;|\\n|>)[^\\\\s$\\n\\\\[\\\\];\\\"{)(}]*)\",\"captures\":{\"1\":{\"name\":\"support.type.opt.tcl\"},\"2\":{\"name\":\"meta.constant.opt.start.tcl\"}}}]},\"line-escape\":{\"begin\":\"\\\\s*+(\\\\\\\\\\n)$\",\"end\":\"(^)(?:\\\\s*(?!$))?\",\"beginCaptures\":{\"1\":{\"name\":\"constant.character.escape.newline.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.lineescape.highlight.tcl\"}}},\"glob-match\":{\"patterns\":[{\"begin\":\"({)\",\"end\":\"(})\",\"patterns\":[{\"include\":\"#glob-match\"}]},{\"match\":\"\\\\s*+(\\\\*)\",\"name\":\"meta.class\"},{\"include\":\"#string-escapes\"},{\"begin\":\"(?<!\\\\\\\\)(\\\")\",\"end\":\"(?<!\\\\\\\\)(\\\")\",\"beginCaptures\":{\"1\":{\"name\":\"string.double.quoted.glob.match.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"string.double.quoted.glob.match.close.tcl\"}},\"patterns\":[{\"include\":\"#glob-match\"}]},{\"begin\":\"(?<!\\\\\\\\)(\\\\[)\",\"end\":\"(?<!\\\\\\\\)(\\\\])\",\"contentName\":\"support.type\",\"beginCaptures\":{\"1\":{\"name\":\"meta.class\"}},\"endCaptures\":{\"1\":{\"name\":\"meta.class\"}}},{\"include\":\"#square-brackets\"},{\"include\":\"#bare-string\"}]},\"spread-variable-only\":{\"comment\":\"Only allow a variable if it is spread using {*}\",\"patterns\":[{\"match\":\"(?<=^|\\\\[)\\\\s*(?<!\\\\{\\\\*\\\\})(\\\\$)(([a-zA-Z0-9_]|::)+(\\\\([^\\\\)]+\\\\))?|\\\\{[^\\\\}]*\\\\})\",\"captures\":{\"1\":{\"name\":\"invalid.illegal.nospread.tcl\"},\"2\":{\"name\":\"invalid.illegal.nospread.tcl\"}}},{\"include\":\"#variable\"}]},\"spread-variable\":{\"patterns\":[{\"match\":\"\\\\s*+({(\\\\*)}?)(?=\\\\$)\",\"captures\":{\"1\":{\"name\":\"entity.function.name.tcl.markup.italic\"},\"2\":{\"name\":\"support.type\"}}}]},\"variable-bare-italic\":{\"patterns\":[{\"begin\":\"\\\\s*(?!$|[$\\\\[;\\n{])\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n\\\\];\\\\[{}\\\\s])\",\"patterns\":[{\"include\":\"#quoted-string\"},{\"include\":\"#variable\"},{\"include\":\"#brackets\"},{\"begin\":\"\\\\s*(\\\\()\",\"end\":\"(\\\\))\",\"contentName\":\"punctuation.italic\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.array.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name.array.close.tcl\"}},\"patterns\":[{\"include\":\"#opt\"},{\"include\":\"#proc-call-args\"}]},{\"include\":\"#namespace-separator\"},{\"match\":\"(?!\\\\s)([^\\\\s\\\\[(?:::){;\\\\$\\\"\\\\]};]*)\",\"name\":\"punctuation.italic.variable\"},{\"match\":\"(?<=\\\\*)(?!\\\\s)([^\\\\s\\\\[(?:::){;$\\\"\\\\];}]*)\",\"name\":\"punctuation.italic.variable\"}]}]},\"variable-bare\":{\"patterns\":[{\"begin\":\"(?<=\\\\s|^|\\\\*|{)\\\\s*(?!$|[$\\n;}{\\\\]\\\\[])\",\"end\":\"(?=(?<!\\\\\\\\)$|[\\n\\\\];\\\\[{}]|(?=\\\\s))\",\"patterns\":[{\"include\":\"#variable\"},{\"include\":\"#quoted-string\"},{\"begin\":\"(\\\\()\",\"end\":\"(\\\\))\",\"contentName\":\"punctuation.italic\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.array.open.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name.array.close.tcl\"}},\"patterns\":[{\"include\":\"#opt\"},{\"include\":\"#proc-call-args\"}]},{\"include\":\"#namespace-separator\"},{\"match\":\"([,])\",\"name\":\"variable\"},{\"match\":\"(?!(?<!\\\\\\\\)$|\\\\[|\\\\])([^:\\\\s}\\\\]\\\\[\\\\({\\\",;$]*)\",\"name\":\"variable\"},{\"match\":\"(?<=\\\\*)(?!\\\\s|$|\\\\[|\\\\])([^:\\\\s}\\\\[{\\\\]\\\",;]*)\",\"name\":\"variable\"},{\"match\":\"(:)\",\"name\":\"string\"},{\"include\":\"#proc-call-args\"}]},{\"include\":\"#variable\"}]},\"variable-braced\":{\"patterns\":[{\"begin\":\"(?={)({)\",\"end\":\"(}|\\\\s)\",\"patterns\":[{\"include\":\"#variable-bare\"}]}]},\"variable-object\":{\"patterns\":[{\"begin\":\"(?<=^|[\\\\[{;])(?!\\\\s*$|[\\n\\\\]};])\\\\s*((\\\\$)([^\\\\s\\n\\\\]}]+))(?:(?!\\\\s*$|\\\\s*[\\n}\\\\];])\\\\s*([^\\\\s\\n\\\\]};]*))?\",\"end\":\"(?=(?<!\\\\\\\\)(?:$|[\\n\\\\];\\\\[{}]))\",\"beginCaptures\":{\"1\":{\"match\":\"(?<={)\\\\s*([^\\\\s]*)\\\\s*(?=})\",\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#variable-non-substituting\"}]}}},\"2\":{\"name\":\"support.type\"},\"3\":{\"name\":\"meta.class\",\"patterns\":[{\"include\":\"#namespace-separator\"}]},\"4\":{\"patterns\":[{\"include\":\"#line-escape\"},{\"match\":\"(destroy|new|create)\",\"name\":\"keyword.oo.special.tcl\"},{\"include\":\"#namespace-name\"}]}},\"patterns\":[{\"include\":\"#line-escape\"},{\"include\":\"#proc-call-args\"}]}]},\"variable\":{\"patterns\":[{\"include\":\"#spread-variable\"},{\"match\":\"^\\\\s*(\\\\$)\\\\s*(?=\\n|$|\\\\]|})\",\"name\":\"support.type\"},{\"match\":\"\\\\s*(?:(?![\\\\]\\n\\\"};])|(?=[$]))(?<!(?<!\\\\\\\\)\\\\\\\\)(\\\\$)(?:({)([^}\\\\s\\\\]\\\"\\\\)\\\\(\\\\$]*)(\\\\([^\\\\(\\\\)]*\\\\))?(})([^\\\\s\\\\[\\\\];\\n\\\"{}]*)?|(?=[A-Za-z0-9_:])([^\\\\s\\\\*\\\\[}\\\\]/\\\"\\\\);\\\\(\\\\\\\\$,\\\\-\\\\+'\\\\*]*)(\\\\([^\\\\s\\\\['\\\\\\\\;}\\\\]\\\")($,+*]*\\\\))?)\",\"captures\":{\"1\":{\"name\":\"support.type.variable.indicator.tcl\"},\"2\":{\"name\":\"entity.function.name.variable.brace.open.tcl\"},\"3\":{\"patterns\":[{\"include\":\"#namespace-separator\"},{\"include\":\"#variable\"},{\"match\":\"([^\\\\s:\\\"}{]+)\",\"name\":\"variable.name\"}]},\"4\":{\"patterns\":[{\"begin\":\"(\\\\()\",\"end\":\"(\\\\))\",\"contentName\":\"punctuation.italic\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"}},\"endCaptures\":{\"1\":{\"name\":\"support.type\"}},\"patterns\":[{\"include\":\"#opt\"},{\"include\":\"#proc-call-args\"}]}]},\"5\":{\"name\":\"entity.function.name.variable.brace.close.tcl\"},\"6\":{\"patterns\":[{\"include\":\"#proc-call-args\"},{\"include\":\"#bare-string\"}]},\"7\":{\"patterns\":[{\"include\":\"#namespace-separator\"},{\"match\":\"([^\\\\s:\\\"}{\\\\\\\\\\\\]\\\\[]+)\",\"name\":\"variable.name\"}]},\"8\":{\"patterns\":[{\"begin\":\"(\\\\()\",\"end\":\"(\\\\))\",\"contentName\":\"punctuation.italic\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name.tcl\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name.tcl\"}},\"patterns\":[{\"include\":\"#opt\"},{\"include\":\"#proc-call-args\"}]}]}}}]},\"variable-non-substituting\":{\"patterns\":[{\"include\":\"#spread-variable\"},{\"match\":\"^\\\\s*+(\\\\$)\\\\s*(?=\\n|$)\",\"name\":\"support.type\"},{\"match\":\"\\\\s*+(?:(?!\\\\]|\\n|\\\"|>|<|,))(?<!(?<!\\\\\\\\)\\\\\\\\)(\\\\$)(?:({)([^}\\\\s\\\\]\\\"\\\\)\\\\(\\\\$]*)(\\\\(.*\\\\))?(})|(?=[A-Za-z0-9_:])([^\\\\s\\\\,<>\\\\*}\\\\]/\\\"\\\\);\\\\(\\\\\\\\\\\\$,\\\\-\\\\+\\\\*]*)(\\\\([^\\\\s\\\\\\\\;\\\\*}\\\\]\\\"\\\\)\\\\(\\\\$,\\\\-\\\\+\\\\*<>]*\\\\))?)\",\"captures\":{\"1\":{\"name\":\"support.type.variable.indicator.tcl\"},\"2\":{\"name\":\"entity.function.name.variable.brace.open.tcl\"},\"3\":{\"patterns\":[{\"include\":\"#namespace-separator\"},{\"include\":\"#variable\"},{\"match\":\"([^\\\\s:\\\"}{]+)\",\"name\":\"meta.constant.tcl\"}]},\"4\":{\"patterns\":[{\"begin\":\"(\\\\()\",\"end\":\"(\\\\))\",\"contentName\":\"punctuation.italic.meta.constant\",\"beginCaptures\":{\"1\":{\"name\":\"support.type\"}},\"endCaptures\":{\"1\":{\"name\":\"support.type\"}},\"patterns\":[{\"include\":\"#proc-call-args\"}]}]},\"5\":{\"name\":\"entity.function.name.variable.brace.close.tcl\"},\"6\":{\"patterns\":[{\"include\":\"#namespace-separator\"},{\"match\":\"([^\\\\s:\\\"}{\\\\\\\\\\\\]\\\\[]+)\",\"name\":\"meta.constant\"}]},\"7\":{\"patterns\":[{\"begin\":\"(\\\\()\",\"end\":\"(\\\\))\",\"contentName\":\"punctuation.italic.meta.constant\",\"beginCaptures\":{\"1\":{\"name\":\"entity.function.name\"}},\"endCaptures\":{\"1\":{\"name\":\"entity.function.name\"}},\"patterns\":[{\"include\":\"#proc-call-args\"}]}]}}}]}}}";
|
|
2
|
+
|
|
3
|
+
export { tcl_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var tcl_json = "{\"for\":{\"prefix\":\"for\",\"body\":[\"for {set ${1:index} ${2:0}} {\\\\$${1:index} < ${3:length}} {incr ${1:index}} {\",\"\\t$0\",\"}\"],\"description\":\"For Loop\"},\"foreach\":{\"prefix\":\"foreach\",\"body\":[\"foreach ${1:var} ${2:list} {\",\"\\t$0\",\"}\"],\"description\":\"Foreach Loop\"},\"if\":{\"prefix\":\"if\",\"body\":[\"if {${1:var}} {\",\"\\t$0\",\"}\"],\"description\":\"If Condition\"},\"elseif\":{\"prefix\":\"elseif\",\"body\":[\"elseif {${1:var}} {\",\"\\t$0\",\"}\"],\"description\":\"ElseIf Condition\"},\"else\":{\"prefix\":\"else\",\"body\":[\"else {\",\"\\t$0\",\"}\"],\"description\":\"Else Block\"},\"proc\":{\"prefix\":\"proc\",\"body\":[\"proc ${1:name} {${2:args}} {\",\"\\t$0\",\"}\"],\"description\":\"Proc Block\"},\"while\":{\"prefix\":\"while\",\"body\":[\"while {${1:var}} {\",\"\\t$0\",\"}\"],\"description\":\"While Loop\"},\"catch\":{\"prefix\":\"catch\",\"body\":[\"catch {${1:body}} ${2:var}\"],\"description\":\"Catch Block\"},\"try\":{\"prefix\":\"try\",\"body\":[\"try {\",\"\\t$1\",\"} finally {\",\"\\t$0\",\"}\"],\"description\":\"Try Block\"},\"switch\":{\"prefix\":\"switch\",\"body\":[\"switch ${1:var} {\",\"\\t${2:case} {$3}\",\"\\tdefault {$0}\",\"}\"],\"description\":\"Switch Block\"},\"oo::class create\":{\"prefix\":\"oo::class create\",\"body\":[\"oo::class create ${1:name} {\",\"\\t${2:superclass s}\",\"\\tconstructor {} {\",\"\\t\\t$3\",\"\\t}\",\"\\tmethod ${4:m} {} {\",\"\\t\\t$0\",\"\\t}\",\"}\"],\"description\":\"Class Create\"},\"tk_chooseDirectory\":{\"prefix\":\"tk_chooseDirectory\",\"body\":[\"tk_chooseDirectory ${-initialdir dirname -mustexist boolean -title titleString}\"],\"description\":\"Choose Directory\"},\"tk_getOpenFile\":{\"prefix\":\"tk_getOpenFile\",\"body\":[\"tk_getOpenFile -filetypes {\",\"\\t\\t{{Text Files} {.txt} }\",\"\\t\\t{{All Files} * }\",\"\\t}\"],\"description\":\"Open File Dialog\"},\"tk_getSaveFile\":{\"prefix\":\"tk_getSaveFile\",\"body\":[\"tk_getSaveFile -filetypes {\",\"\\t\\t{{Text Files} {.txt} }\",\"\\t\\t{{All Files} * }\",\"\\t}\"],\"description\":\"Save File Dialog\"},\"tk_messageBox\":{\"prefix\":\"tk_messageBox\",\"body\":[\"tk_messageBox ${-message msg}\"],\"description\":\"Message Box\"}}";
|
|
2
|
+
|
|
3
|
+
export { tcl_json as default };
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
var template_json = "{\"scopeName\":\"template.ng\",\"injectionSelector\":\"L:text.html -comment\",\"patterns\":[{\"include\":\"#interpolation\"},{\"include\":\"#propertyBinding\"},{\"include\":\"#eventBinding\"},{\"include\":\"#twoWayBinding\"},{\"include\":\"#templateBinding\"}],\"repository\":{\"interpolation\":{\"begin\":\"{{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.block.ts\"}},\"end\":\"}}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.block.ts\"}},\"contentName\":\"expression.ng\",\"patterns\":[{\"include\":\"expression.ng\"}]},\"propertyBinding\":{\"begin\":\"(\\\\[\\\\s*@?[-_a-zA-Z0-9.$]*%?\\\\s*])(=)([\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"entity.other.attribute-name.html entity.other.ng-binding-name.property.html\",\"patterns\":[{\"include\":\"#bindingKey\"}]},\"2\":{\"name\":\"punctuation.separator.key-value.html\"},\"3\":{\"name\":\"string.quoted.html punctuation.definition.string.begin.html\"}},\"end\":\"\\\\3\",\"endCaptures\":{\"0\":{\"name\":\"string.quoted.html punctuation.definition.string.end.html\"}},\"name\":\"meta.ng-binding.property.html\",\"contentName\":\"expression.ng\",\"patterns\":[{\"include\":\"expression.ng\"}]},\"eventBinding\":{\"begin\":\"(\\\\(\\\\s*@?[-_a-zA-Z0-9.$]*\\\\s*\\\\))(=)([\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"entity.other.attribute-name.html entity.other.ng-binding-name.event.html\",\"patterns\":[{\"include\":\"#bindingKey\"}]},\"2\":{\"name\":\"punctuation.separator.key-value.html\"},\"3\":{\"name\":\"string.quoted.html punctuation.definition.string.begin.html\"}},\"end\":\"\\\\3\",\"endCaptures\":{\"0\":{\"name\":\"string.quoted.html punctuation.definition.string.end.html\"}},\"name\":\"meta.ng-binding.event.html\",\"contentName\":\"expression.ng\",\"patterns\":[{\"include\":\"expression.ng\"}]},\"twoWayBinding\":{\"begin\":\"(\\\\[\\\\s*\\\\(\\\\s*@?[-_a-zA-Z0-9.$]*\\\\s*\\\\)\\\\s*\\\\])(=)([\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"entity.other.attribute-name.html entity.other.ng-binding-name.two-way.html\",\"patterns\":[{\"include\":\"#bindingKey\"}]},\"2\":{\"name\":\"punctuation.separator.key-value.html\"},\"3\":{\"name\":\"string.quoted.html punctuation.definition.string.begin.html\"}},\"end\":\"\\\\3\",\"endCaptures\":{\"0\":{\"name\":\"string.quoted.html punctuation.definition.string.end.html\"}},\"name\":\"meta.ng-binding.two-way.html\",\"contentName\":\"expression.ng\",\"patterns\":[{\"include\":\"expression.ng\"}]},\"templateBinding\":{\"begin\":\"(\\\\*[-_a-zA-Z0-9.$]*)(=)([\\\"'])\",\"beginCaptures\":{\"1\":{\"name\":\"entity.other.attribute-name.html entity.other.ng-binding-name.template.html\",\"patterns\":[{\"include\":\"#bindingKey\"}]},\"2\":{\"name\":\"punctuation.separator.key-value.html\"},\"3\":{\"name\":\"string.quoted.html punctuation.definition.string.begin.html\"}},\"end\":\"\\\\3\",\"endCaptures\":{\"0\":{\"name\":\"string.quoted.html punctuation.definition.string.end.html\"}},\"name\":\"meta.ng-binding.template.html\",\"contentName\":\"expression.ng\",\"patterns\":[{\"include\":\"expression.ng\"}]},\"bindingKey\":{\"patterns\":[{\"match\":\"([\\\\[\\\\(]{1,2}|\\\\*)(?:\\\\s*)(@?[-_a-zA-Z0-9.$]*%?)(?:\\\\s*)([\\\\]\\\\)]{1,2})?\",\"captures\":{\"1\":{\"name\":\"punctuation.definition.ng-binding-name.begin.html\"},\"2\":{\"name\":\"entity.other.ng-binding-name.$2.html\",\"patterns\":[{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.html\"}]},\"3\":{\"name\":\"punctuation.definition.ng-binding-name.end.html\"}}}]}}}";
|
|
2
|
+
|
|
3
|
+
export { template_json as default };
|
package/dist/theme/index.d.ts
CHANGED
|
@@ -1,4 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import { Disposable } from 'vscode';
|
|
3
|
-
declare function defineVSCodeTheme(idOrTheme: string | Pick<IThemeExtensionPoint, 'id' | 'label' | 'description' | 'uiTheme' | 'path'>, load: () => Promise<string>): Disposable;
|
|
4
|
-
export { defineVSCodeTheme };
|
|
1
|
+
export {};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as monaco from 'monaco-editor';
|
|
2
|
-
import { OpenEditor, IEditorOptions } from 'vscode/service-override/
|
|
3
|
-
|
|
2
|
+
import { OpenEditor, IEditorOptions, IResolvedTextEditorModel } from 'vscode/service-override/editor';
|
|
3
|
+
import { IReference } from 'vscode/monaco';
|
|
4
|
+
export type EditorOpenHandler = (modelRef: IReference<IResolvedTextEditorModel>, input: IEditorOptions | undefined, editor: monaco.editor.ICodeEditor | null, sideBySide?: boolean) => Promise<monaco.editor.ICodeEditor | null>;
|
|
4
5
|
export default class EditorOpenHandlerRegistry {
|
|
5
6
|
private handlers;
|
|
6
7
|
registerEditorOpenHandler(handler: EditorOpenHandler): monaco.IDisposable;
|