@codingame/monaco-vscode-api 1.76.9 → 1.78.0-next.1
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/README.md +87 -49
- package/dist/Bibtex.tmLanguage.js +2 -0
- package/dist/Handlebars.tmLanguage.js +2 -0
- package/dist/JSON.tmLanguage.js +2 -0
- package/dist/JSONC.tmLanguage.js +2 -0
- package/dist/JavaScript.tmLanguage.js +2 -0
- package/dist/JavaScriptReact.tmLanguage.js +2 -0
- package/dist/LaTeX.tmLanguage.js +2 -0
- package/dist/MagicPython.tmLanguage.js +2 -0
- package/dist/MagicRegExp.tmLanguage.js +2 -0
- package/dist/Red-color-theme.js +2 -0
- package/dist/Regular Expressions (JavaScript).js +2 -0
- package/dist/TeX.tmLanguage.js +2 -0
- package/dist/TypeScript.tmLanguage.js +2 -0
- package/dist/TypeScriptReact.tmLanguage.js +2 -0
- package/dist/_.contribution.js +1 -1
- package/dist/abyss-color-theme.js +2 -0
- package/dist/api.js +1 -3
- package/dist/api2.js +421 -18091
- package/dist/asp-vb-net.tmlanguage.js +2 -0
- package/dist/assets/diffLineDeleted.mp3 +0 -0
- package/dist/assets/diffLineInserted.mp3 +0 -0
- package/dist/assets/diffLineModified.mp3 +0 -0
- package/dist/audioCue.js +108 -478
- package/dist/bat.js +9 -0
- package/dist/batchfile.js +2 -0
- package/dist/batchfile.tmLanguage.js +2 -0
- package/dist/button.js +35 -8
- package/dist/c.js +2 -0
- package/dist/c.tmLanguage.js +2 -0
- package/dist/clojure.js +8 -0
- package/dist/clojure.tmLanguage.js +2 -0
- package/dist/coffeescript.js +9 -0
- package/dist/coffeescript.tmLanguage.js +2 -0
- package/dist/coffeescript2.js +2 -0
- package/dist/configuration.d.ts +269 -4
- package/dist/configuration.js +4326 -328
- package/dist/configuration2.js +14 -324
- package/dist/cpp-grammar-bailout.tmLanguage.js +2 -0
- package/dist/cpp.embedded.macro.tmLanguage.js +2 -0
- package/dist/cpp.js +16 -0
- package/dist/cpp.tmLanguage.js +2 -0
- package/dist/cpp2.js +2 -0
- package/dist/csharp.js +9 -0
- package/dist/csharp.tmLanguage.js +2 -0
- package/dist/csharp2.js +2 -0
- package/dist/cshtml.tmLanguage.js +2 -0
- package/dist/css.js +8 -0
- package/dist/css.tmLanguage.js +2 -0
- package/dist/cuda-cpp.tmLanguage.js +2 -0
- package/dist/dark_plus.js +2 -0
- package/dist/dark_plus_experimental.js +2 -0
- package/dist/dark_vs.js +2 -0
- package/dist/dart.js +8 -0
- package/dist/dart.tmLanguage.js +2 -0
- package/dist/debug.js +12113 -12209
- package/dist/default-extensions/bat.js +12 -0
- package/dist/default-extensions/clojure.js +11 -0
- package/dist/default-extensions/coffeescript.js +12 -0
- package/dist/default-extensions/cpp.js +19 -0
- package/dist/default-extensions/csharp.js +12 -0
- package/dist/default-extensions/css.js +11 -0
- package/dist/default-extensions/dart.js +11 -0
- package/dist/default-extensions/diff.js +11 -0
- package/dist/default-extensions/docker.js +11 -0
- package/dist/default-extensions/fsharp.js +12 -0
- package/dist/default-extensions/go.js +11 -0
- package/dist/default-extensions/groovy.js +12 -0
- package/dist/default-extensions/handlebars.js +11 -0
- package/dist/default-extensions/hlsl.js +11 -0
- package/dist/default-extensions/html.js +13 -0
- package/dist/default-extensions/ini.js +13 -0
- package/dist/default-extensions/java.js +12 -0
- package/dist/default-extensions/javascript.js +17 -0
- package/dist/default-extensions/json.js +13 -0
- package/dist/default-extensions/julia.js +11 -0
- package/dist/default-extensions/latex.js +14 -0
- package/dist/default-extensions/less.js +11 -0
- package/dist/default-extensions/log.js +10 -0
- package/dist/default-extensions/lua.js +11 -0
- package/dist/default-extensions/make.js +11 -0
- package/dist/default-extensions/markdown-basics.js +12 -0
- package/dist/default-extensions/objective-c.js +13 -0
- package/dist/default-extensions/perl.js +13 -0
- package/dist/default-extensions/php.js +13 -0
- package/dist/default-extensions/powershell.js +11 -0
- package/dist/default-extensions/pug.js +11 -0
- package/dist/default-extensions/python.js +12 -0
- package/dist/default-extensions/r.js +11 -0
- package/dist/default-extensions/razor.js +11 -0
- package/dist/default-extensions/ruby.js +11 -0
- package/dist/default-extensions/rust.js +11 -0
- package/dist/default-extensions/scss.js +12 -0
- package/dist/default-extensions/shaderlab.js +11 -0
- package/dist/default-extensions/shellscript.js +11 -0
- package/dist/default-extensions/sql.js +11 -0
- package/dist/default-extensions/swift.js +12 -0
- package/dist/default-extensions/theme-abyss.js +10 -0
- package/dist/default-extensions/theme-defaults.js +18 -0
- package/dist/default-extensions/theme-kimbie-dark.js +10 -0
- package/dist/default-extensions/theme-monokai-dimmed.js +10 -0
- package/dist/default-extensions/theme-monokai.js +10 -0
- package/dist/default-extensions/theme-quietlight.js +10 -0
- package/dist/default-extensions/theme-red.js +10 -0
- package/dist/default-extensions/theme-seti.js +10 -0
- package/dist/default-extensions/theme-solarized-dark.js +10 -0
- package/dist/default-extensions/theme-solarized-light.js +10 -0
- package/dist/default-extensions/theme-tomorrow-night-blue.js +10 -0
- package/dist/default-extensions/typescript-basics.js +17 -0
- package/dist/default-extensions/vb.js +12 -0
- package/dist/default-extensions/xml.js +13 -0
- package/dist/default-extensions/yaml.js +13 -0
- package/dist/dialogs.js +11 -216
- package/dist/diff.js +8 -0
- package/dist/diff.tmLanguage.js +2 -0
- package/dist/dimmed-monokai-color-theme.js +2 -0
- package/dist/docker.js +8 -0
- package/dist/docker.tmLanguage.js +2 -0
- package/dist/dom.js +101 -0
- package/dist/extensionManagement.js +4 -0
- package/dist/extensions.d.ts +368 -23
- package/dist/extensions.js +4 -85
- package/dist/extensionsRegistry.js +63 -64
- package/dist/files.d.ts +845 -0
- package/dist/files.js +1805 -1151
- package/dist/files2.js +32 -0
- package/dist/fsharp.js +9 -0
- package/dist/fsharp.tmLanguage.js +2 -0
- package/dist/fsharp2.js +2 -0
- package/dist/go.js +8 -0
- package/dist/go.tmLanguage.js +2 -0
- package/dist/groovy.js +9 -0
- package/dist/groovy.tmLanguage.js +2 -0
- package/dist/groovy2.js +2 -0
- package/dist/handlebars.js +8 -0
- package/dist/hc_black.js +2 -0
- package/dist/hc_light.js +2 -0
- package/dist/hlsl.js +8 -0
- package/dist/hlsl.tmLanguage.js +2 -0
- package/dist/html-derivative.tmLanguage.js +2 -0
- package/dist/html.js +10 -0
- package/dist/html.tmLanguage.js +2 -0
- package/dist/html.tmLanguage2.js +2 -0
- package/dist/html2.js +2 -0
- package/dist/ini.js +10 -0
- package/dist/ini.language-configuration.js +2 -0
- package/dist/ini.tmLanguage.js +2 -0
- package/dist/injection.js +1 -1
- package/dist/java.js +9 -0
- package/dist/java.tmLanguage.js +2 -0
- package/dist/java2.js +2 -0
- package/dist/javascript-language-configuration.js +2 -0
- package/dist/javascript.js +14 -0
- package/dist/javascript2.js +2 -0
- package/dist/jsdoc.js.injection.tmLanguage.js +2 -0
- package/dist/jsdoc.ts.injection.tmLanguage.js +2 -0
- package/dist/json.js +10 -0
- package/dist/jsonErrorMessages.js +1 -1
- package/dist/julia.js +8 -0
- package/dist/julia.tmLanguage.js +2 -0
- package/dist/keybindings.d.ts +1 -10
- package/dist/keybindings.js +291 -353
- package/dist/kimbie-dark-color-theme.js +2 -0
- package/dist/language-configuration.js +2 -0
- package/dist/language-configuration10.js +2 -0
- package/dist/language-configuration11.js +2 -0
- package/dist/language-configuration12.js +2 -0
- package/dist/language-configuration13.js +2 -0
- package/dist/language-configuration14.js +2 -0
- package/dist/language-configuration15.js +2 -0
- package/dist/language-configuration16.js +2 -0
- package/dist/language-configuration17.js +2 -0
- package/dist/language-configuration18.js +2 -0
- package/dist/language-configuration19.js +2 -0
- package/dist/language-configuration2.js +2 -0
- package/dist/language-configuration20.js +2 -0
- package/dist/language-configuration21.js +2 -0
- package/dist/language-configuration22.js +2 -0
- package/dist/language-configuration23.js +2 -0
- package/dist/language-configuration24.js +2 -0
- package/dist/language-configuration25.js +2 -0
- package/dist/language-configuration26.js +2 -0
- package/dist/language-configuration27.js +2 -0
- package/dist/language-configuration28.js +2 -0
- package/dist/language-configuration29.js +2 -0
- package/dist/language-configuration3.js +2 -0
- package/dist/language-configuration30.js +2 -0
- package/dist/language-configuration31.js +2 -0
- package/dist/language-configuration32.js +2 -0
- package/dist/language-configuration33.js +2 -0
- package/dist/language-configuration34.js +2 -0
- package/dist/language-configuration35.js +2 -0
- package/dist/language-configuration36.js +2 -0
- package/dist/language-configuration37.js +2 -0
- package/dist/language-configuration38.js +2 -0
- package/dist/language-configuration39.js +2 -0
- package/dist/language-configuration4.js +2 -0
- package/dist/language-configuration5.js +2 -0
- package/dist/language-configuration6.js +2 -0
- package/dist/language-configuration7.js +2 -0
- package/dist/language-configuration8.js +2 -0
- package/dist/language-configuration9.js +2 -0
- package/dist/languageService.js +5 -6
- package/dist/languages.d.ts +66 -1
- package/dist/languages.js +924 -5
- package/dist/latex.js +11 -0
- package/dist/layout.contribution.darwin.js +1 -1
- package/dist/layout.contribution.linux.js +1 -1
- package/dist/layout.contribution.win.js +1 -1
- package/dist/less.js +8 -0
- package/dist/less.tmLanguage.js +2 -0
- package/dist/light_plus.js +2 -0
- package/dist/light_plus_experimental.js +2 -0
- package/dist/light_vs.js +2 -0
- package/dist/log.js +7 -0
- package/dist/log.tmLanguage.js +2 -0
- package/dist/lua.js +8 -0
- package/dist/lua.tmLanguage.js +2 -0
- package/dist/make.js +8 -0
- package/dist/make.tmLanguage.js +2 -0
- package/dist/markdown-basics.js +9 -0
- package/dist/markdown-latex-combined.tmLanguage.js +2 -0
- package/dist/markdown.js +2 -0
- package/dist/markdown.tmLanguage.js +2 -0
- package/dist/memento.js +91 -0
- package/dist/modelEditor.d.ts +1480 -138
- package/dist/modelEditor.js +8699 -326
- package/dist/monaco.d.ts +987 -15
- package/dist/monaco.js +40 -10
- package/dist/monokai-color-theme.js +2 -0
- package/dist/notifications.js +84 -64
- package/dist/objective-c.js +10 -0
- package/dist/objective-c.tmLanguage.js +2 -0
- package/dist/objective-c__.tmLanguage.js +2 -0
- package/dist/perl.js +10 -0
- package/dist/perl.language-configuration.js +2 -0
- package/dist/perl.tmLanguage.js +2 -0
- package/dist/perl6.language-configuration.js +2 -0
- package/dist/perl6.tmLanguage.js +2 -0
- package/dist/php.js +10 -0
- package/dist/php.tmLanguage.js +2 -0
- package/dist/php2.js +2 -0
- package/dist/platform.js +105 -0
- package/dist/platform.tmLanguage.js +2 -0
- package/dist/polyfill.js +52064 -11100
- package/dist/powershell.js +8 -0
- package/dist/powershell.tmLanguage.js +2 -0
- package/dist/preferences.js +2532 -0
- package/dist/properties.language-configuration.js +2 -0
- package/dist/pug.js +8 -0
- package/dist/pug.tmLanguage.js +2 -0
- package/dist/python.js +9 -0
- package/dist/quietlight-color-theme.js +2 -0
- package/dist/r.js +8 -0
- package/dist/r.tmLanguage.js +2 -0
- package/dist/razor.js +8 -0
- package/dist/rollup-vsix-plugin.d.ts +8 -0
- package/dist/rollup-vsix-plugin.js +104 -0
- package/dist/ruby.js +8 -0
- package/dist/ruby.tmLanguage.js +2 -0
- package/dist/rust.js +8 -0
- package/dist/rust.tmLanguage.js +2 -0
- package/dist/sassdoc.tmLanguage.js +2 -0
- package/dist/scss.js +9 -0
- package/dist/scss.tmLanguage.js +2 -0
- package/dist/services.d.ts +12988 -12840
- package/dist/services.js +1 -1
- package/dist/shaderlab.js +8 -0
- package/dist/shaderlab.tmLanguage.js +2 -0
- package/dist/shell-unix-bash.tmLanguage.js +2 -0
- package/dist/shellscript.js +8 -0
- package/dist/snippets.js +6 -11
- package/dist/snippetsService.js +7 -10
- package/dist/solarized-dark-color-theme.js +2 -0
- package/dist/solarized-light-color-theme.js +2 -0
- package/dist/sql.js +8 -0
- package/dist/sql.tmLanguage.js +2 -0
- package/dist/swift.js +9 -0
- package/dist/swift.tmLanguage.js +2 -0
- package/dist/swift2.js +2 -0
- package/dist/tags-language-configuration.js +2 -0
- package/dist/textmate.d.ts +0 -264
- package/dist/textmate.js +402 -66
- package/dist/theme-abyss.js +7 -0
- package/dist/theme-defaults.js +15 -0
- package/dist/theme-kimbie-dark.js +7 -0
- package/dist/theme-monokai-dimmed.js +7 -0
- package/dist/theme-monokai.js +7 -0
- package/dist/theme-quietlight.js +7 -0
- package/dist/theme-red.js +7 -0
- package/dist/theme-seti.js +7 -0
- package/dist/theme-solarized-dark.js +7 -0
- package/dist/theme-solarized-light.js +7 -0
- package/dist/theme-tomorrow-night-blue.js +7 -0
- package/dist/theme.js +5 -11
- package/dist/{contextkeys.js → theme2.js} +165 -143
- package/dist/tokenClassificationRegistry.js +46 -2
- package/dist/tomorrow-night-blue-color-theme.js +2 -0
- package/dist/typescript-basics.js +14 -0
- package/dist/typescript.js +2 -0
- package/dist/unboundCommands.js +41 -0
- package/dist/utils.js +345 -0
- package/dist/vb.js +9 -0
- package/dist/vb2.js +2 -0
- package/dist/vs-seti-icon-theme.js +2 -0
- package/dist/vs_minimal-icon-theme.js +2 -0
- package/dist/xml.js +10 -0
- package/dist/xml.language-configuration.js +2 -0
- package/dist/xml.tmLanguage.js +2 -0
- package/dist/xsl.language-configuration.js +2 -0
- package/dist/xsl.tmLanguage.js +2 -0
- package/dist/yaml.js +10 -0
- package/dist/yaml.tmLanguage.js +2 -0
- package/package.json +50 -33
- package/dist/async.js +0 -301
- package/dist/cancellation.js +0 -3
- package/dist/configurationRegistry.js +0 -441
- package/dist/extensionResourceLoader.js +0 -96
- package/dist/labels.js +0 -14
- package/dist/languageConfiguration.js +0 -919
- package/dist/layout.js +0 -47
- package/dist/layoutService.js +0 -4
- package/dist/missing-services.js +0 -5554
- package/dist/resources.js +0 -197
- package/dist/services2.js +0 -3467
- package/dist/textFileEditorModel.js +0 -2985
- package/dist/tokenClassification.d.ts +0 -7
- package/dist/tokenClassification.js +0 -277
- package/dist/variableResolver.js +0 -1711
- package/dist/workbenchThemeService.js +0 -46
- package/dist/workspaceContext.js +0 -50
- /package/dist/{languageConfiguration.d.ts → preferences.d.ts} +0 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var clojure_tmLanguage = "{\n\t\"information_for_contributors\": [\n\t\t\"This file has been converted from https://github.com/atom/language-clojure/blob/master/grammars/clojure.cson\",\n\t\t\"If you want to provide a fix or improvement, please create a pull request against the original repository.\",\n\t\t\"Once accepted there, we are happy to receive an update request.\"\n\t],\n\t\"version\": \"https://github.com/atom/language-clojure/commit/45bdb881501d0b8f8b707ca1d3fcc8b4b99fca03\",\n\t\"name\": \"Clojure\",\n\t\"scopeName\": \"source.clojure\",\n\t\"patterns\": [\n\t\t{\n\t\t\t\"include\": \"#comment\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#shebang-comment\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#quoted-sexp\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#sexp\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#keyfn\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#string\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#vector\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#set\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#map\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#regexp\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#var\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#constants\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#dynamic-variables\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#metadata\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#namespace-symbol\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#symbol\"\n\t\t}\n\t],\n\t\"repository\": {\n\t\t\"comment\": {\n\t\t\t\"begin\": \"(?<!\\\\\\\\);\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.comment.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"$\",\n\t\t\t\"name\": \"comment.line.semicolon.clojure\"\n\t\t},\n\t\t\"constants\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(nil)(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\n\t\t\t\t\t\"name\": \"constant.language.nil.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(true|false)\",\n\t\t\t\t\t\"name\": \"constant.language.boolean.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(##(?:Inf|-Inf|NaN))\",\n\t\t\t\t\t\"name\": \"constant.numeric.symbol.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([-+]?\\\\d+/\\\\d+)\",\n\t\t\t\t\t\"name\": \"constant.numeric.ratio.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([-+]?(?:(?:3[0-6])|(?:[12]\\\\d)|[2-9])[rR][0-9A-Za-z]+N?)\",\n\t\t\t\t\t\"name\": \"constant.numeric.arbitrary-radix.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([-+]?0[xX][0-9a-fA-F]+N?)\",\n\t\t\t\t\t\"name\": \"constant.numeric.hexadecimal.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([-+]?0[0-7]+N?)\",\n\t\t\t\t\t\"name\": \"constant.numeric.octal.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([-+]?[0-9]+(?:(\\\\.|(?=[eEM]))[0-9]*([eE][-+]?[0-9]+)?)M?)\",\n\t\t\t\t\t\"name\": \"constant.numeric.double.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([-+]?\\\\d+N?)\",\n\t\t\t\t\t\"name\": \"constant.numeric.long.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#keyword\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"keyword\": {\n\t\t\t\"match\": \"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)):[\\\\w\\\\#\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\/\\\\!\\\\?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}|\\\\,))\",\n\t\t\t\"name\": \"constant.keyword.clojure\"\n\t\t},\n\t\t\"keyfn\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(if(-[-\\\\p{Ll}\\\\?]*)?|when(-[-\\\\p{Ll}]*)?|for(-[-\\\\p{Ll}]*)?|cond|do|let(-[-\\\\p{Ll}\\\\?]*)?|binding|loop|recur|fn|throw[\\\\p{Ll}\\\\-]*|try|catch|finally|([\\\\p{Ll}]*case))(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\n\t\t\t\t\t\"name\": \"storage.control.clojure\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<=(\\\\s|\\\\(|\\\\[|\\\\{))(declare-?|(in-)?ns|import|use|require|load|compile|(def[\\\\p{Ll}\\\\-]*))(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\n\t\t\t\t\t\"name\": \"keyword.control.clojure\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"dynamic-variables\": {\n\t\t\t\"match\": \"\\\\*[\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\d]+\\\\*\",\n\t\t\t\"name\": \"meta.symbol.dynamic.clojure\"\n\t\t},\n\t\t\"map\": {\n\t\t\t\"begin\": \"(\\\\{)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.map.begin.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.map.end.trailing.clojure\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.section.map.end.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.map.clojure\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"metadata\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(\\\\^\\\\{)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.metadata.map.begin.clojure\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.metadata.map.end.trailing.clojure\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.metadata.map.end.clojure\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.metadata.map.clojure\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(\\\\^)\",\n\t\t\t\t\t\"end\": \"(\\\\s)\",\n\t\t\t\t\t\"name\": \"meta.metadata.simple.clojure\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#keyword\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"quoted-sexp\": {\n\t\t\t\"begin\": \"(['``]\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.begin.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(\\\\))$|(\\\\)(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\))\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.end.trailing.clojure\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.end.trailing.clojure\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.end.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.quoted-expression.clojure\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"regexp\": {\n\t\t\t\"begin\": \"#\\\"\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.regexp.begin.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\"\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.regexp.end.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.regexp.clojure\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#regexp_escaped_char\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"regexp_escaped_char\": {\n\t\t\t\"match\": \"\\\\\\\\.\",\n\t\t\t\"name\": \"constant.character.escape.clojure\"\n\t\t},\n\t\t\"set\": {\n\t\t\t\"begin\": \"(\\\\#\\\\{)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.set.begin.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(\\\\}(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\})\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.set.end.trailing.clojure\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.section.set.end.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.set.clojure\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"sexp\": {\n\t\t\t\"begin\": \"(\\\\()\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.begin.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(\\\\))$|(\\\\)(?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\))\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.end.trailing.clojure\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.end.trailing.clojure\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"punctuation.section.expression.end.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.expression.clojure\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?<=\\\\()(ns|declare|def[\\\\w\\\\d._:+=><!?*-]*|[\\\\w._:+=><!?*-][\\\\w\\\\d._:+=><!?*-]*/def[\\\\w\\\\d._:+=><!?*-]*)\\\\s+\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.control.clojure\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\))\",\n\t\t\t\t\t\"name\": \"meta.definition.global.clojure\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#metadata\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#dynamic-variables\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"([\\\\p{L}\\\\.\\\\-\\\\_\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)\",\n\t\t\t\t\t\t\t\"name\": \"entity.global.clojure\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#keyfn\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#constants\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#vector\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#map\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#set\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#sexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<=\\\\()(.+?)(?=\\\\s|\\\\))\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.function.clojure\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"shebang-comment\": {\n\t\t\t\"begin\": \"^(#!)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.comment.shebang.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"$\",\n\t\t\t\"name\": \"comment.line.shebang.clojure\"\n\t\t},\n\t\t\"string\": {\n\t\t\t\"begin\": \"(?<!\\\\\\\\)(\\\")\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(\\\")\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.quoted.double.clojure\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\.\",\n\t\t\t\t\t\"name\": \"constant.character.escape.clojure\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"namespace-symbol\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([\\\\p{L}\\\\.\\\\-\\\\_\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)/\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"meta.symbol.namespace.clojure\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"symbol\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([\\\\p{L}\\\\.\\\\-\\\\_\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*][\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\!\\\\?\\\\*\\\\d]*)\",\n\t\t\t\t\t\"name\": \"meta.symbol.clojure\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"var\": {\n\t\t\t\"match\": \"(?<=(\\\\s|\\\\(|\\\\[|\\\\{)\\\\#)'[\\\\w\\\\.\\\\-\\\\_\\\\:\\\\+\\\\=\\\\>\\\\<\\\\/\\\\!\\\\?\\\\*]+(?=(\\\\s|\\\\)|\\\\]|\\\\}))\",\n\t\t\t\"name\": \"meta.var.clojure\"\n\t\t},\n\t\t\"vector\": {\n\t\t\t\"begin\": \"(\\\\[)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.vector.begin.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(\\\\](?=[\\\\}\\\\]\\\\)\\\\s]*(?:;|$)))|(\\\\])\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.section.vector.end.trailing.clojure\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.section.vector.end.clojure\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.vector.clojure\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t}\n}";
|
|
2
|
+
export { clojure_tmLanguage as default };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { registerExtension } from './api2.js';
|
|
2
|
+
import { onExtHostInitialized } from './polyfill.js';
|
|
3
|
+
var manifest = {name:"coffeescript",displayName:"%displayName%",description:"%description%",version:"1.0.0",publisher:"vscode",license:"MIT",engines:{vscode:"*"},scripts:{"update-grammar":"node ../node_modules/vscode-grammar-updater/bin atom/language-coffee-script grammars/coffeescript.cson ./syntaxes/coffeescript.tmLanguage.json"},contributes:{languages:[{id:"coffeescript",extensions:[".coffee",".cson",".iced"],aliases:["CoffeeScript","coffeescript","coffee"],configuration:"./language-configuration.json"}],grammars:[{language:"coffeescript",scopeName:"source.coffee",path:"./syntaxes/coffeescript.tmLanguage.json"}],breakpoints:[{language:"coffeescript"}],snippets:[{language:"coffeescript",path:"./snippets/coffeescript.code-snippets"}],configurationDefaults:{"[coffeescript]":{"diffEditor.ignoreTrimWhitespace":false}}},repository:{type:"git",url:"https://github.com/microsoft/vscode.git"}};
|
|
4
|
+
onExtHostInitialized(() => {
|
|
5
|
+
const { registerFile } = registerExtension(manifest);
|
|
6
|
+
registerFile('./language-configuration.json', async () => await import('./language-configuration3.js').then(module => module.default ?? module)),
|
|
7
|
+
registerFile('./syntaxes/coffeescript.tmLanguage.json', async () => await import('./coffeescript.tmLanguage.js').then(module => module.default ?? module)),
|
|
8
|
+
registerFile('./snippets/coffeescript.code-snippets', async () => await import('./coffeescript2.js').then(module => module.default ?? module));
|
|
9
|
+
});
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var coffeescript_tmLanguage = "{\n\t\"information_for_contributors\": [\n\t\t\"This file has been converted from https://github.com/atom/language-coffee-script/blob/master/grammars/coffeescript.cson\",\n\t\t\"If you want to provide a fix or improvement, please create a pull request against the original repository.\",\n\t\t\"Once accepted there, we are happy to receive an update request.\"\n\t],\n\t\"version\": \"https://github.com/atom/language-coffee-script/commit/0f6db9143663e18b1ad00667820f46747dba495e\",\n\t\"name\": \"CoffeeScript\",\n\t\"scopeName\": \"source.coffee\",\n\t\"patterns\": [\n\t\t{\n\t\t\t\"include\": \"#jsx\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(new)\\\\s+(?:(?:(class)\\\\s+(\\\\w+(?:\\\\.\\\\w*)*)?)|(\\\\w+(?:\\\\.\\\\w*)*))\",\n\t\t\t\"name\": \"meta.class.instance.constructor.coffee\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"keyword.operator.new.coffee\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"storage.type.class.coffee\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"entity.name.type.instance.coffee\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"entity.name.type.instance.coffee\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"'''\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"'''\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.quoted.single.heredoc.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.escape.backslash.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(\\\\\\\\).\",\n\t\t\t\t\t\"name\": \"constant.character.escape.backslash.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"\\\"\\\"\\\"\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\"\\\"\\\"\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.quoted.double.heredoc.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.escape.backslash.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(\\\\\\\\).\",\n\t\t\t\t\t\"name\": \"constant.character.escape.backslash.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interpolated_coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(`)(.*)(`)\",\n\t\t\t\"name\": \"string.quoted.script.coffee\",\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"source.js.embedded.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"source.js\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?<!#)###(?!#)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.comment.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"###\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.comment.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"comment.block.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<=^|\\\\s)@\\\\w*(?=\\\\s)\",\n\t\t\t\t\t\"name\": \"storage.type.annotation.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"#\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.comment.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"$\",\n\t\t\t\"name\": \"comment.line.number-sign.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"///\",\n\t\t\t\"end\": \"(///)[gimuy]*\",\n\t\t\t\"name\": \"string.regexp.multiline.coffee\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#heregexp\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?<![\\\\w$])(/)(?=(?![/*+?])(.+)(/)[gimuy]*(?!\\\\s*[\\\\w$/(]))\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"(/)[gimuy]*(?!\\\\s*[\\\\w$/(])\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"string.regexp.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"source.js.regexp\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?<![\\\\.\\\\$])(break|by|catch|continue|else|finally|for|in|of|if|return|switch|then|throw|try|unless|when|while|until|loop|do|export|import|default|from|as|yield|async|await|(?<=for)\\\\s+own)(?!\\\\s*:)\\\\b\",\n\t\t\t\"name\": \"keyword.control.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?<![\\\\.\\\\$])(delete|instanceof|new|typeof)(?!\\\\s*:)\\\\b\",\n\t\t\t\"name\": \"keyword.operator.$1.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?<![\\\\.\\\\$])(case|function|var|void|with|const|let|enum|native|__hasProp|__extends|__slice|__bind|__indexOf|implements|interface|package|private|protected|public|static)(?!\\\\s*:)\\\\b\",\n\t\t\t\"name\": \"keyword.reserved.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?x)\\n(?<=\\\\s|^)((@)?[a-zA-Z_$][\\\\w$]*)\\n\\\\s*([:=])\\\\s*\\n(?=(\\\\([^\\\\(\\\\)]*\\\\)\\\\s*)?[=-]>)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"entity.name.function.coffee\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"variable.other.readwrite.instance.coffee\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"keyword.operator.assignment.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"[=-]>\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"storage.type.function.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.function.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function_params\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?x)\\n(?<=\\\\s|^)(?:((')([^']*?)('))|((\\\")([^\\\"]*?)(\\\")))\\n\\\\s*([:=])\\\\s*\\n(?=(\\\\([^\\\\(\\\\)]*\\\\)\\\\s*)?[=-]>)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"string.quoted.single.coffee\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"entity.name.function.coffee\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t},\n\t\t\t\t\"5\": {\n\t\t\t\t\t\"name\": \"string.quoted.double.coffee\"\n\t\t\t\t},\n\t\t\t\t\"6\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t},\n\t\t\t\t\"7\": {\n\t\t\t\t\t\"name\": \"entity.name.function.coffee\"\n\t\t\t\t},\n\t\t\t\t\"8\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t},\n\t\t\t\t\"9\": {\n\t\t\t\t\t\"name\": \"keyword.operator.assignment.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"[=-]>\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"storage.type.function.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.function.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function_params\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?=(\\\\([^\\\\(\\\\)]*\\\\)\\\\s*)?[=-]>)\",\n\t\t\t\"end\": \"[=-]>\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"storage.type.function.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.function.inline.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#function_params\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?<=\\\\s|^)({)(?=[^'\\\"#]+?}[\\\\s\\\\]}]*=)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.destructuring.begin.bracket.curly.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.destructuring.end.bracket.curly.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.variable.assignment.destructured.object.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[a-zA-Z$_]\\\\w*\",\n\t\t\t\t\t\"name\": \"variable.assignment.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"(?<=\\\\s|^)(\\\\[)(?=[^'\\\"#]+?\\\\][\\\\s\\\\]}]*=)\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.destructuring.begin.bracket.square.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\]\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.destructuring.end.bracket.square.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"name\": \"meta.variable.assignment.destructured.array.coffee\",\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[a-zA-Z$_]\\\\w*\",\n\t\t\t\t\t\"name\": \"variable.assignment.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?<!\\\\.|::)(true|on|yes)(?!\\\\s*[:=][^=])\\\\b\",\n\t\t\t\"name\": \"constant.language.boolean.true.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?<!\\\\.|::)(false|off|no)(?!\\\\s*[:=][^=])\\\\b\",\n\t\t\t\"name\": \"constant.language.boolean.false.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?<!\\\\.|::)null(?!\\\\s*[:=][^=])\\\\b\",\n\t\t\t\"name\": \"constant.language.null.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(?<!\\\\.|::)extends(?!\\\\s*[:=])\\\\b\",\n\t\t\t\"name\": \"variable.language.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?<!\\\\.)\\\\b(?<!\\\\$)(super|this|arguments)(?!\\\\s*[:=][^=]|\\\\$)\\\\b\",\n\t\t\t\"name\": \"variable.language.$1.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.class.coffee\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"keyword.control.inheritance.coffee\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"entity.other.inherited-class.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?<=\\\\s|^|\\\\[|\\\\()(class)\\\\s+(extends)\\\\s+(@?[a-zA-Z\\\\$\\\\._][\\\\w\\\\.]*)\",\n\t\t\t\"name\": \"meta.class.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"captures\": {\n\t\t\t\t\"1\": {\n\t\t\t\t\t\"name\": \"storage.type.class.coffee\"\n\t\t\t\t},\n\t\t\t\t\"2\": {\n\t\t\t\t\t\"name\": \"entity.name.type.class.coffee\"\n\t\t\t\t},\n\t\t\t\t\"3\": {\n\t\t\t\t\t\"name\": \"keyword.control.inheritance.coffee\"\n\t\t\t\t},\n\t\t\t\t\"4\": {\n\t\t\t\t\t\"name\": \"entity.other.inherited-class.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"match\": \"(?<=\\\\s|^|\\\\[|\\\\()(class\\\\b)\\\\s+(@?[a-zA-Z\\\\$_][\\\\w\\\\.]*)?(?:\\\\s+(extends)\\\\s+(@?[a-zA-Z\\\\$\\\\._][\\\\w\\\\.]*))?\",\n\t\t\t\"name\": \"meta.class.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(debugger|\\\\\\\\)\\\\b\",\n\t\t\t\"name\": \"keyword.other.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(Array|ArrayBuffer|Blob|Boolean|Date|document|Function|Int(8|16|32|64)Array|Math|Map|Number|Object|Proxy|RegExp|Set|String|WeakMap|window|Uint(8|16|32|64)Array|XMLHttpRequest)\\\\b\",\n\t\t\t\"name\": \"support.class.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(console)\\\\b\",\n\t\t\t\"name\": \"entity.name.type.object.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"((?<=console\\\\.)(debug|warn|info|log|error|time|timeEnd|assert))\\\\b\",\n\t\t\t\"name\": \"support.function.console.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"((?<=\\\\.)(apply|call|concat|every|filter|forEach|from|hasOwnProperty|indexOf|isPrototypeOf|join|lastIndexOf|map|of|pop|propertyIsEnumerable|push|reduce(Right)?|reverse|shift|slice|some|sort|splice|to(Locale)?String|unshift|valueOf))\\\\b\",\n\t\t\t\"name\": \"support.function.method.array.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"((?<=Array\\\\.)(isArray))\\\\b\",\n\t\t\t\"name\": \"support.function.static.array.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"((?<=Object\\\\.)(create|definePropert(ies|y)|freeze|getOwnProperty(Descriptors?|Names)|getProperty(Descriptor|Names)|getPrototypeOf|is(Extensible|Frozen|Sealed)?|isnt|keys|preventExtensions|seal))\\\\b\",\n\t\t\t\"name\": \"support.function.static.object.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"((?<=Math\\\\.)(abs|acos|acosh|asin|asinh|atan|atan2|atanh|ceil|cos|cosh|exp|expm1|floor|hypot|log|log10|log1p|log2|max|min|pow|random|round|sign|sin|sinh|sqrt|tan|tanh|trunc))\\\\b\",\n\t\t\t\"name\": \"support.function.static.math.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"((?<=Number\\\\.)(is(Finite|Integer|NaN)|toInteger))\\\\b\",\n\t\t\t\"name\": \"support.function.static.number.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?<!\\\\.)\\\\b(module|exports|__filename|__dirname|global|process)(?!\\\\s*:)\\\\b\",\n\t\t\t\"name\": \"support.variable.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"\\\\b(Infinity|NaN|undefined)\\\\b\",\n\t\t\t\"name\": \"constant.language.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#operators\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#method_calls\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#function_calls\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#numbers\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#objects\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#properties\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"::\",\n\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \"(?<!\\\\$)\\\\b[0-9]+[\\\\w$]*\",\n\t\t\t\"name\": \"invalid.illegal.identifier.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \";\",\n\t\t\t\"name\": \"punctuation.terminator.statement.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"match\": \",\",\n\t\t\t\"name\": \"punctuation.separator.delimiter.coffee\"\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"{\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"meta.brace.curly.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"meta.brace.curly.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"\\\\[\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.array.begin.bracket.square.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\]\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"punctuation.definition.array.end.bracket.square.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\.{3}\",\n\t\t\t\t\t\"name\": \"keyword.operator.slice.exclusive.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?<!\\\\.)\\\\.{2}\",\n\t\t\t\t\t\"name\": \"keyword.operator.slice.inclusive.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"meta.brace.round.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"\\\\)\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"meta.brace.round.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#instance_variable\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#single_quoted_string\"\n\t\t},\n\t\t{\n\t\t\t\"include\": \"#double_quoted_string\"\n\t\t}\n\t],\n\t\"repository\": {\n\t\t\"arguments\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.begin.bracket.round.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.arguments.end.bracket.round.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.arguments.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?=(@|@?[\\\\w$]+|[=-]>|\\\\-\\\\d|\\\\[|{|\\\"|'))\",\n\t\t\t\t\t\"end\": \"(?=\\\\s*(?<![\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\w$]))|(?=\\\\s*(}|\\\\]|\\\\)|#|$))\",\n\t\t\t\t\t\"name\": \"meta.arguments.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"double_quoted_string\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\"\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\"\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.quoted.double.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.escape.backslash.coffee\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]|37[0-7]?|[4-7][0-7]?|.)\",\n\t\t\t\t\t\t\t\"name\": \"constant.character.escape.backslash.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#interpolated_coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"function_calls\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(@)?([\\\\w$]+)(?=\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.readwrite.instance.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#function_names\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?<=\\\\))\",\n\t\t\t\t\t\"name\": \"meta.function-call.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#arguments\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?x)\\n(@)?([\\\\w$]+)\\n\\\\s*\\n(?=\\\\s+(?!(?<![\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\w$]))(?=(@?[\\\\w$]+|[=-]>|\\\\-\\\\d|\\\\[|{|\\\"|')))\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.readwrite.instance.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#function_names\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\s*(?<![\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\w$]))|(?=\\\\s*(}|\\\\]|\\\\)|#|$))\",\n\t\t\t\t\t\"name\": \"meta.function-call.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#arguments\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"function_names\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?x)\\n\\\\b(isNaN|isFinite|eval|uneval|parseInt|parseFloat|decodeURI|\\ndecodeURIComponent|encodeURI|encodeURIComponent|escape|unescape|\\nrequire|set(Interval|Timeout)|clear(Interval|Timeout))\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[a-zA-Z_$][\\\\w$]*\",\n\t\t\t\t\t\"name\": \"entity.name.function.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\d[\\\\w$]*\",\n\t\t\t\t\t\"name\": \"invalid.illegal.identifier.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"function_params\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\(\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.begin.bracket.round.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.parameters.end.bracket.round.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.parameters.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"([a-zA-Z_$][\\\\w$]*)(\\\\.\\\\.\\\\.)?\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.parameter.function.coffee\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.splat.coffee\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"match\": \"(@(?:[a-zA-Z_$][\\\\w$]*)?)(\\\\.\\\\.\\\\.)?\",\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"variable.parameter.function.readwrite.instance.coffee\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"keyword.operator.splat.coffee\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"embedded_comment\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.comment.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(?<!\\\\\\\\)(#).*$\\\\n?\",\n\t\t\t\t\t\"name\": \"comment.line.number-sign.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"instance_variable\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(@)([a-zA-Z_\\\\$]\\\\w*)?\",\n\t\t\t\t\t\"name\": \"variable.other.readwrite.instance.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"interpolated_coffee\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\#\\\\{\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.section.embedded.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\}\",\n\t\t\t\t\t\"name\": \"source.coffee.embedded.source\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"method_calls\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?:(\\\\.)|(::))\\\\s*([\\\\w$]+)\\\\s*(?=\\\\()\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.method.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#method_names\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?<=\\\\))\",\n\t\t\t\t\t\"name\": \"meta.method-call.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#arguments\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(?:(\\\\.)|(::))\\\\s*([\\\\w$]+)\\\\s*(?=\\\\s+(?!(?<![\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\w$]))(?=(@|@?[\\\\w$]+|[=-]>|\\\\-\\\\d|\\\\[|{|\\\"|')))\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.method.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"include\": \"#method_names\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(?=\\\\s*(?<![\\\\w$])(of|in|then|is|isnt|and|or|for|else|when|if|unless|by|instanceof)(?![\\\\w$]))|(?=\\\\s*(}|\\\\]|\\\\)|#|$))\",\n\t\t\t\t\t\"name\": \"meta.method-call.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#arguments\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"method_names\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?x)\\n\\\\bon(Rowsinserted|Rowsdelete|Rowenter|Rowexit|Resize|Resizestart|Resizeend|Reset|\\nReadystatechange|Mouseout|Mouseover|Mousedown|Mouseup|Mousemove|\\nBefore(cut|deactivate|unload|update|paste|print|editfocus|activate)|\\nBlur|Scrolltop|Submit|Select|Selectstart|Selectionchange|Hover|Help|\\nChange|Contextmenu|Controlselect|Cut|Cellchange|Clock|Close|Deactivate|\\nDatasetchanged|Datasetcomplete|Dataavailable|Drop|Drag|Dragstart|Dragover|\\nDragdrop|Dragenter|Dragend|Dragleave|Dblclick|Unload|Paste|Propertychange|Error|\\nErrorupdate|Keydown|Keyup|Keypress|Focus|Load|Activate|Afterupdate|Afterprint|Abort)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.event-handler.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?x)\\n\\\\b(shift|showModelessDialog|showModalDialog|showHelp|scroll|scrollX|scrollByPages|\\nscrollByLines|scrollY|scrollTo|stop|strike|sizeToContent|sidebar|signText|sort|\\nsup|sub|substr|substring|splice|split|send|set(Milliseconds|Seconds|Minutes|Hours|\\nMonth|Year|FullYear|Date|UTC(Milliseconds|Seconds|Minutes|Hours|Month|FullYear|Date)|\\nTime|Hotkeys|Cursor|ZOptions|Active|Resizable|RequestHeader)|search|slice|\\nsavePreferences|small|home|handleEvent|navigate|char|charCodeAt|charAt|concat|\\ncontextual|confirm|compile|clear|captureEvents|call|createStyleSheet|createPopup|\\ncreateEventObject|to(GMTString|UTCString|String|Source|UpperCase|LowerCase|LocaleString)|\\ntest|taint|taintEnabled|indexOf|italics|disableExternalCapture|dump|detachEvent|unshift|\\nuntaint|unwatch|updateCommands|join|javaEnabled|pop|push|plugins.refresh|paddings|parse|\\nprint|prompt|preference|enableExternalCapture|exec|execScript|valueOf|UTC|find|file|\\nfileModifiedDate|fileSize|fileCreatedDate|fileUpdatedDate|fixed|fontsize|fontcolor|\\nforward|fromCharCode|watch|link|load|lastIndexOf|anchor|attachEvent|atob|apply|alert|\\nabort|routeEvents|resize|resizeBy|resizeTo|recalc|returnValue|replace|reverse|reload|\\nreleaseCapture|releaseEvents|go|get(Milliseconds|Seconds|Minutes|Hours|Month|Day|Year|FullYear|\\nTime|Date|TimezoneOffset|UTC(Milliseconds|Seconds|Minutes|Hours|Day|Month|FullYear|Date)|\\nAttention|Selection|ResponseHeader|AllResponseHeaders)|moveBy|moveBelow|moveTo|\\nmoveToAbsolute|moveAbove|mergeAttributes|match|margins|btoa|big|bold|borderWidths|blink|back)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?x)\\n\\\\b(acceptNode|add|addEventListener|addTextTrack|adoptNode|after|animate|append|\\nappendChild|appendData|before|blur|canPlayType|captureStream|\\ncaretPositionFromPoint|caretRangeFromPoint|checkValidity|clear|click|\\ncloneContents|cloneNode|cloneRange|close|closest|collapse|\\ncompareBoundaryPoints|compareDocumentPosition|comparePoint|contains|\\nconvertPointFromNode|convertQuadFromNode|convertRectFromNode|createAttribute|\\ncreateAttributeNS|createCaption|createCDATASection|createComment|\\ncreateContextualFragment|createDocument|createDocumentFragment|\\ncreateDocumentType|createElement|createElementNS|createEntityReference|\\ncreateEvent|createExpression|createHTMLDocument|createNodeIterator|\\ncreateNSResolver|createProcessingInstruction|createRange|createShadowRoot|\\ncreateTBody|createTextNode|createTFoot|createTHead|createTreeWalker|delete|\\ndeleteCaption|deleteCell|deleteContents|deleteData|deleteRow|deleteTFoot|\\ndeleteTHead|detach|disconnect|dispatchEvent|elementFromPoint|elementsFromPoint|\\nenableStyleSheetsForSet|entries|evaluate|execCommand|exitFullscreen|\\nexitPointerLock|expand|extractContents|fastSeek|firstChild|focus|forEach|get|\\ngetAll|getAnimations|getAttribute|getAttributeNames|getAttributeNode|\\ngetAttributeNodeNS|getAttributeNS|getBoundingClientRect|getBoxQuads|\\ngetClientRects|getContext|getDestinationInsertionPoints|getElementById|\\ngetElementsByClassName|getElementsByName|getElementsByTagName|\\ngetElementsByTagNameNS|getItem|getNamedItem|getSelection|getStartDate|\\ngetVideoPlaybackQuality|has|hasAttribute|hasAttributeNS|hasAttributes|\\nhasChildNodes|hasFeature|hasFocus|importNode|initEvent|insertAdjacentElement|\\ninsertAdjacentHTML|insertAdjacentText|insertBefore|insertCell|insertData|\\ninsertNode|insertRow|intersectsNode|isDefaultNamespace|isEqualNode|\\nisPointInRange|isSameNode|item|key|keys|lastChild|load|lookupNamespaceURI|\\nlookupPrefix|matches|move|moveAttribute|moveAttributeNode|moveChild|\\nmoveNamedItem|namedItem|nextNode|nextSibling|normalize|observe|open|\\nparentNode|pause|play|postMessage|prepend|preventDefault|previousNode|\\npreviousSibling|probablySupportsContext|queryCommandEnabled|\\nqueryCommandIndeterm|queryCommandState|queryCommandSupported|queryCommandValue|\\nquerySelector|querySelectorAll|registerContentHandler|registerElement|\\nregisterProtocolHandler|releaseCapture|releaseEvents|remove|removeAttribute|\\nremoveAttributeNode|removeAttributeNS|removeChild|removeEventListener|\\nremoveItem|replace|replaceChild|replaceData|replaceWith|reportValidity|\\nrequestFullscreen|requestPointerLock|reset|scroll|scrollBy|scrollIntoView|\\nscrollTo|seekToNextFrame|select|selectNode|selectNodeContents|set|setAttribute|\\nsetAttributeNode|setAttributeNodeNS|setAttributeNS|setCapture|\\nsetCustomValidity|setEnd|setEndAfter|setEndBefore|setItem|setNamedItem|\\nsetRangeText|setSelectionRange|setSinkId|setStart|setStartAfter|setStartBefore|\\nslice|splitText|stepDown|stepUp|stopImmediatePropagation|stopPropagation|\\nsubmit|substringData|supports|surroundContents|takeRecords|terminate|toBlob|\\ntoDataURL|toggle|toString|values|write|writeln)\\\\b\",\n\t\t\t\t\t\"name\": \"support.function.dom.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[a-zA-Z_$][\\\\w$]*\",\n\t\t\t\t\t\"name\": \"entity.name.function.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\d[\\\\w$]*\",\n\t\t\t\t\t\"name\": \"invalid.illegal.identifier.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"numbers\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\b(?<!\\\\$)0(x|X)[0-9a-fA-F]+\\\\b(?!\\\\$)\",\n\t\t\t\t\t\"name\": \"constant.numeric.hex.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\b(?<!\\\\$)0(b|B)[01]+\\\\b(?!\\\\$)\",\n\t\t\t\t\t\"name\": \"constant.numeric.binary.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\b(?<!\\\\$)0(o|O)?[0-7]+\\\\b(?!\\\\$)\",\n\t\t\t\t\t\"name\": \"constant.numeric.octal.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?x)\\n(?<!\\\\$)(?:\\n (?:\\\\b[0-9]+(\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\b)| # 1.1E+3\\n (?:\\\\b[0-9]+(\\\\.)[eE][+-]?[0-9]+\\\\b)| # 1.E+3\\n (?:\\\\B(\\\\.)[0-9]+[eE][+-]?[0-9]+\\\\b)| # .1E+3\\n (?:\\\\b[0-9]+[eE][+-]?[0-9]+\\\\b)| # 1E+3\\n (?:\\\\b[0-9]+(\\\\.)[0-9]+\\\\b)| # 1.1\\n (?:\\\\b[0-9]+(?=\\\\.{2,3}))| # 1 followed by a slice\\n (?:\\\\b[0-9]+(\\\\.)\\\\B)| # 1.\\n (?:\\\\B(\\\\.)[0-9]+\\\\b)| # .1\\n (?:\\\\b[0-9]+\\\\b(?!\\\\.)) # 1\\n)(?!\\\\$)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"constant.numeric.decimal.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"6\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.decimal.period.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"objects\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[A-Z][A-Z0-9_$]*(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))\",\n\t\t\t\t\t\"name\": \"constant.other.object.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[a-zA-Z_$][\\\\w$]*(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))\",\n\t\t\t\t\t\"name\": \"variable.other.object.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"operators\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?:([a-zA-Z$_][\\\\w$]*)?\\\\s+|(?<![\\\\w$]))(and=|or=)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.assignment.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.compound.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([a-zA-Z$_][\\\\w$]*)?\\\\s*(%=|\\\\+=|-=|\\\\*=|&&=|\\\\|\\\\|=|\\\\?=|(?<!\\\\()/=)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.assignment.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.compound.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([a-zA-Z$_][\\\\w$]*)?\\\\s*(&=|\\\\^=|<<=|>>=|>>>=|\\\\|=)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.assignment.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.compound.bitwise.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"<<|>>>|>>\",\n\t\t\t\t\t\"name\": \"keyword.operator.bitwise.shift.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"!=|<=|>=|==|<|>\",\n\t\t\t\t\t\"name\": \"keyword.operator.comparison.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"&&|!|\\\\|\\\\|\",\n\t\t\t\t\t\"name\": \"keyword.operator.logical.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"&|\\\\||\\\\^|~\",\n\t\t\t\t\t\"name\": \"keyword.operator.bitwise.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"([a-zA-Z$_][\\\\w$]*)?\\\\s*(=|:(?!:))(?![>=])\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"variable.assignment.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"--\",\n\t\t\t\t\t\"name\": \"keyword.operator.decrement.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\+\\\\+\",\n\t\t\t\t\t\"name\": \"keyword.operator.increment.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\.\\\\.\\\\.\",\n\t\t\t\t\t\"name\": \"keyword.operator.splat.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\?\",\n\t\t\t\t\t\"name\": \"keyword.operator.existential.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"%|\\\\*|/|-|\\\\+\",\n\t\t\t\t\t\"name\": \"keyword.operator.coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?x)\\n\\\\b(?<![\\\\.\\\\$])\\n(?:\\n (and|or|not) # logical\\n |\\n (is|isnt) # comparison\\n)\\n(?!\\\\s*:)\\\\b\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.logical.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.comparison.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"properties\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?:(\\\\.)|(::))\\\\s*([A-Z][A-Z0-9_$]*\\\\b\\\\$*)(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.property.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"constant.other.object.property.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?:(\\\\.)|(::))\\\\s*(\\\\$*[a-zA-Z_$][\\\\w$]*)(?=\\\\s*\\\\??(\\\\.\\\\s*[a-zA-Z_$]\\\\w*|::))\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.property.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.object.property.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?:(\\\\.)|(::))\\\\s*([A-Z][A-Z0-9_$]*\\\\b\\\\$*)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.property.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"constant.other.property.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?:(\\\\.)|(::))\\\\s*(\\\\$*[a-zA-Z_$][\\\\w$]*)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.property.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"variable.other.property.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"(?:(\\\\.)|(::))\\\\s*([0-9][\\\\w$]*)\",\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.separator.property.period.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.prototype.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"invalid.illegal.identifier.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"single_quoted_string\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"'\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.begin.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"'\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.string.end.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"string.quoted.single.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"punctuation.definition.escape.backslash.coffee\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(\\\\\\\\)(x[0-9A-Fa-f]{2}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.)\",\n\t\t\t\t\t\t\t\"name\": \"constant.character.escape.backslash.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"regex-character-class\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[wWsSdD]|\\\\.\",\n\t\t\t\t\t\"name\": \"constant.character.character-class.regexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})\",\n\t\t\t\t\t\"name\": \"constant.character.numeric.regexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\c[A-Z]\",\n\t\t\t\t\t\"name\": \"constant.character.control.regexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\.\",\n\t\t\t\t\t\"name\": \"constant.character.escape.backslash.regexp\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"heregexp\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[bB]|\\\\^|\\\\$\",\n\t\t\t\t\t\"name\": \"keyword.control.anchor.regexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\\\\\[1-9]\\\\d*\",\n\t\t\t\t\t\"name\": \"keyword.other.back-reference.regexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??\",\n\t\t\t\t\t\"name\": \"keyword.operator.quantifier.regexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"match\": \"\\\\|\",\n\t\t\t\t\t\"name\": \"keyword.operator.or.regexp\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(\\\\()((\\\\?=)|(\\\\?!))\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.group.regexp\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\"name\": \"meta.assertion.look-ahead.regexp\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\"name\": \"meta.assertion.negative-look-ahead.regexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(\\\\))\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.group.regexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.group.assertion.regexp\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#heregexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"\\\\((\\\\?:)?\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.group.regexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"\\\\)\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"0\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.group.regexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"meta.group.regexp\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#heregexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(\\\\[)(\\\\^)?\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.character-class.regexp\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.negation.regexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(\\\\])\",\n\t\t\t\t\t\"endCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.character-class.regexp\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"name\": \"constant.other.character-class.set.regexp\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.numeric.regexp\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.control.regexp\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"3\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.backslash.regexp\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"4\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.numeric.regexp\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"5\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.control.regexp\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"6\": {\n\t\t\t\t\t\t\t\t\t\"name\": \"constant.character.escape.backslash.regexp\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\"match\": \"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\",\n\t\t\t\t\t\t\t\"name\": \"constant.other.character-class.range.regexp\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#regex-character-class\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#regex-character-class\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#interpolated_coffee\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#embedded_comment\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"jsx\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#jsx-tag\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#jsx-end-tag\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"jsx-expression\": {\n\t\t\t\"begin\": \"{\",\n\t\t\t\"beginCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"meta.brace.curly.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"end\": \"}\",\n\t\t\t\"endCaptures\": {\n\t\t\t\t\"0\": {\n\t\t\t\t\t\"name\": \"meta.brace.curly.coffee\"\n\t\t\t\t}\n\t\t\t},\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#double_quoted_string\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"$self\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"jsx-attribute\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"captures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"entity.other.attribute-name.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"keyword.operator.assignment.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"match\": \"(?:^|\\\\s+)([-\\\\w.]+)\\\\s*(=)\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#double_quoted_string\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#single_quoted_string\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"include\": \"#jsx-expression\"\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"jsx-tag\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(<)([-\\\\w\\\\.]+)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.tag.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.tag.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(/?>)\",\n\t\t\t\t\t\"name\": \"meta.tag.coffee\",\n\t\t\t\t\t\"patterns\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"include\": \"#jsx-attribute\"\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\t\"jsx-end-tag\": {\n\t\t\t\"patterns\": [\n\t\t\t\t{\n\t\t\t\t\t\"begin\": \"(</)([-\\\\w\\\\.]+)\",\n\t\t\t\t\t\"beginCaptures\": {\n\t\t\t\t\t\t\"1\": {\n\t\t\t\t\t\t\t\"name\": \"punctuation.definition.tag.coffee\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"2\": {\n\t\t\t\t\t\t\t\"name\": \"entity.name.tag.coffee\"\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t\"end\": \"(/?>)\",\n\t\t\t\t\t\"name\": \"meta.tag.coffee\"\n\t\t\t\t}\n\t\t\t]\n\t\t}\n\t}\n}";
|
|
2
|
+
export { coffeescript_tmLanguage as default };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
var coffeescript = "{\n\t\"Region Start\": {\n\t\t\"prefix\": \"#region\",\n\t\t\"body\": [\n\t\t\t\"#region\"\n\t\t],\n\t\t\"description\": \"Folding Region Start\"\n\t},\n\t\"Region End\": {\n\t\t\"prefix\": \"#endregion\",\n\t\t\"body\": [\n\t\t\t\"#endregion\"\n\t\t],\n\t\t\"description\": \"Folding Region End\"\n\t}\n}\n";
|
|
2
|
+
export { coffeescript as default };
|
package/dist/configuration.d.ts
CHANGED
|
@@ -146,15 +146,28 @@ declare namespace Event {
|
|
|
146
146
|
*/
|
|
147
147
|
function map<I, O>(event: Event<I>, map: (i: I) => O, disposable?: DisposableStore): Event<O>;
|
|
148
148
|
/**
|
|
149
|
+
* Wraps an event in another event that performs some function on the event object before firing.
|
|
150
|
+
*
|
|
149
151
|
* *NOTE* that this function returns an `Event` and it MUST be called with a `DisposableStore` whenever the returned
|
|
150
152
|
* event is accessible to "third parties", e.g the event is a public property. Otherwise a leaked listener on the
|
|
151
153
|
* returned event causes this utility to leak a listener on the original event.
|
|
154
|
+
*
|
|
155
|
+
* @param event The event source for the new event.
|
|
156
|
+
* @param each The function to perform on the event object.
|
|
157
|
+
* @param disposable A disposable store to add the new EventEmitter to.
|
|
152
158
|
*/
|
|
153
159
|
function forEach<I>(event: Event<I>, each: (i: I) => void, disposable?: DisposableStore): Event<I>;
|
|
154
160
|
/**
|
|
161
|
+
* Wraps an event in another event that fires only when some condition is met.
|
|
162
|
+
*
|
|
155
163
|
* *NOTE* that this function returns an `Event` and it MUST be called with a `DisposableStore` whenever the returned
|
|
156
164
|
* event is accessible to "third parties", e.g the event is a public property. Otherwise a leaked listener on the
|
|
157
165
|
* returned event causes this utility to leak a listener on the original event.
|
|
166
|
+
*
|
|
167
|
+
* @param event The event source for the new event.
|
|
168
|
+
* @param filter The filter function that defines the condition. The event will fire for the object if this function
|
|
169
|
+
* returns true.
|
|
170
|
+
* @param disposable A disposable store to add the new EventEmitter to.
|
|
158
171
|
*/
|
|
159
172
|
function filter<T, U>(event: Event<T | U>, filter: (e: T | U) => e is T, disposable?: DisposableStore): Event<T>;
|
|
160
173
|
function filter<T>(event: Event<T>, filter: (e: T) => boolean, disposable?: DisposableStore): Event<T>;
|
|
@@ -164,8 +177,7 @@ declare namespace Event {
|
|
|
164
177
|
*/
|
|
165
178
|
function signal<T>(event: Event<T>): Event<void>;
|
|
166
179
|
/**
|
|
167
|
-
* Given a collection of events, returns a single event which emits
|
|
168
|
-
* whenever any of the provided events emit.
|
|
180
|
+
* Given a collection of events, returns a single event which emits whenever any of the provided events emit.
|
|
169
181
|
*/
|
|
170
182
|
function any<T>(...events: Event<T>[]): Event<T>;
|
|
171
183
|
function any(...events: Event<any>[]): Event<void>;
|
|
@@ -204,9 +216,22 @@ declare namespace Event {
|
|
|
204
216
|
*/
|
|
205
217
|
function accumulate<T>(event: Event<T>, delay?: number, disposable?: DisposableStore): Event<T[]>;
|
|
206
218
|
/**
|
|
219
|
+
* Filters an event such that some condition is _not_ met more than once in a row, effectively ensuring duplicate
|
|
220
|
+
* event objects from different sources do not fire the same event object.
|
|
221
|
+
*
|
|
207
222
|
* *NOTE* that this function returns an `Event` and it MUST be called with a `DisposableStore` whenever the returned
|
|
208
223
|
* event is accessible to "third parties", e.g the event is a public property. Otherwise a leaked listener on the
|
|
209
224
|
* returned event causes this utility to leak a listener on the original event.
|
|
225
|
+
*
|
|
226
|
+
* @param event The event source for the new event.
|
|
227
|
+
* @param equals The equality condition.
|
|
228
|
+
* @param disposable A disposable store to add the new EventEmitter to.
|
|
229
|
+
*
|
|
230
|
+
* @example
|
|
231
|
+
* ```
|
|
232
|
+
* // Fire only one time when a single window is opened or focused
|
|
233
|
+
* Event.latch(Event.any(onDidOpenWindow, onDidFocusWindow))
|
|
234
|
+
* ```
|
|
210
235
|
*/
|
|
211
236
|
function latch<T>(event: Event<T>, equals?: (a: T, b: T) => boolean, disposable?: DisposableStore): Event<T>;
|
|
212
237
|
/**
|
|
@@ -228,9 +253,24 @@ declare namespace Event {
|
|
|
228
253
|
*/
|
|
229
254
|
function split<T, U>(event: Event<T | U>, isT: (e: T | U) => e is T, disposable?: DisposableStore): [Event<T>, Event<U>];
|
|
230
255
|
/**
|
|
256
|
+
* Buffers an event until it has a listener attached.
|
|
257
|
+
*
|
|
231
258
|
* *NOTE* that this function returns an `Event` and it MUST be called with a `DisposableStore` whenever the returned
|
|
232
259
|
* event is accessible to "third parties", e.g the event is a public property. Otherwise a leaked listener on the
|
|
233
260
|
* returned event causes this utility to leak a listener on the original event.
|
|
261
|
+
*
|
|
262
|
+
* @param event The event source for the new event.
|
|
263
|
+
* @param flushAfterTimeout Determines whether to flush the buffer after a timeout immediately or after a
|
|
264
|
+
* `setTimeout` when the first event listener is added.
|
|
265
|
+
* @param _buffer Internal: A source event array used for tests.
|
|
266
|
+
*
|
|
267
|
+
* @example
|
|
268
|
+
* ```
|
|
269
|
+
* // Start accumulating events, when the first listener is attached, flush
|
|
270
|
+
* // the event after a timeout such that multiple listeners attached before
|
|
271
|
+
* // the timeout would receive the event
|
|
272
|
+
* this.onInstallExtension = Event.buffer(service.onInstallExtension, true);
|
|
273
|
+
* ```
|
|
234
274
|
*/
|
|
235
275
|
function buffer<T>(event: Event<T>, flushAfterTimeout?: boolean, _buffer?: T[]): Event<T>;
|
|
236
276
|
interface IChainableEvent<T> extends IDisposable {
|
|
@@ -246,23 +286,213 @@ declare namespace Event {
|
|
|
246
286
|
on(listener: (e: T) => any, thisArgs?: any, disposables?: IDisposable[] | DisposableStore): IDisposable;
|
|
247
287
|
once(listener: (e: T) => any, thisArgs?: any, disposables?: IDisposable[]): IDisposable;
|
|
248
288
|
}
|
|
289
|
+
/**
|
|
290
|
+
* Wraps the event in an {@link IChainableEvent}, allowing a more functional programming style.
|
|
291
|
+
*
|
|
292
|
+
* @example
|
|
293
|
+
* ```
|
|
294
|
+
* // Normal
|
|
295
|
+
* const onEnterPressNormal = Event.filter(
|
|
296
|
+
* Event.map(onKeyPress.event, e => new StandardKeyboardEvent(e)),
|
|
297
|
+
* e.keyCode === KeyCode.Enter
|
|
298
|
+
* ).event;
|
|
299
|
+
*
|
|
300
|
+
* // Using chain
|
|
301
|
+
* const onEnterPressChain = Event.chain(onKeyPress.event)
|
|
302
|
+
* .map(e => new StandardKeyboardEvent(e))
|
|
303
|
+
* .filter(e => e.keyCode === KeyCode.Enter)
|
|
304
|
+
* .event;
|
|
305
|
+
* ```
|
|
306
|
+
*/
|
|
249
307
|
function chain<T>(event: Event<T>): IChainableEvent<T>;
|
|
250
308
|
interface NodeEventEmitter {
|
|
251
309
|
on(event: string | symbol, listener: Function): unknown;
|
|
252
310
|
removeListener(event: string | symbol, listener: Function): unknown;
|
|
253
311
|
}
|
|
312
|
+
/**
|
|
313
|
+
* Creates an {@link Event} from a node event emitter.
|
|
314
|
+
*/
|
|
254
315
|
function fromNodeEventEmitter<T>(emitter: NodeEventEmitter, eventName: string, map?: (...args: any[]) => T): Event<T>;
|
|
255
316
|
interface DOMEventEmitter {
|
|
256
317
|
addEventListener(event: string | symbol, listener: Function): void;
|
|
257
318
|
removeEventListener(event: string | symbol, listener: Function): void;
|
|
258
319
|
}
|
|
320
|
+
/**
|
|
321
|
+
* Creates an {@link Event} from a DOM event emitter.
|
|
322
|
+
*/
|
|
259
323
|
function fromDOMEventEmitter<T>(emitter: DOMEventEmitter, eventName: string, map?: (...args: any[]) => T): Event<T>;
|
|
324
|
+
/**
|
|
325
|
+
* Creates a promise out of an event, using the {@link Event.once} helper.
|
|
326
|
+
*/
|
|
260
327
|
function toPromise<T>(event: Event<T>): Promise<T>;
|
|
328
|
+
/**
|
|
329
|
+
* Adds a listener to an event and calls the listener immediately with undefined as the event object.
|
|
330
|
+
*
|
|
331
|
+
* @example
|
|
332
|
+
* ```
|
|
333
|
+
* // Initialize the UI and update it when dataChangeEvent fires
|
|
334
|
+
* runAndSubscribe(dataChangeEvent, () => this._updateUI());
|
|
335
|
+
* ```
|
|
336
|
+
*/
|
|
261
337
|
function runAndSubscribe<T>(event: Event<T>, handler: (e: T | undefined) => any): IDisposable;
|
|
338
|
+
/**
|
|
339
|
+
* Adds a listener to an event and calls the listener immediately with undefined as the event object. A new
|
|
340
|
+
* {@link DisposableStore} is passed to the listener which is disposed when the returned disposable is disposed.
|
|
341
|
+
*/
|
|
262
342
|
function runAndSubscribeWithStore<T>(event: Event<T>, handler: (e: T | undefined, disposableStore: DisposableStore) => any): IDisposable;
|
|
263
343
|
function fromObservable<T>(obs: IObservable<T, any>, store?: DisposableStore): Event<T>;
|
|
264
344
|
}
|
|
265
345
|
|
|
346
|
+
/**
|
|
347
|
+
* Uniform Resource Identifier (URI) http://tools.ietf.org/html/rfc3986.
|
|
348
|
+
* This class is a simple parser which creates the basic component parts
|
|
349
|
+
* (http://tools.ietf.org/html/rfc3986#section-3) with minimal validation
|
|
350
|
+
* and encoding.
|
|
351
|
+
*
|
|
352
|
+
* ```txt
|
|
353
|
+
* foo://example.com:8042/over/there?name=ferret#nose
|
|
354
|
+
* \_/ \______________/\_________/ \_________/ \__/
|
|
355
|
+
* | | | | |
|
|
356
|
+
* scheme authority path query fragment
|
|
357
|
+
* | _____________________|__
|
|
358
|
+
* / \ / \
|
|
359
|
+
* urn:example:animal:ferret:nose
|
|
360
|
+
* ```
|
|
361
|
+
*/
|
|
362
|
+
declare class URI implements UriComponents {
|
|
363
|
+
static isUri(thing: any): thing is URI;
|
|
364
|
+
/**
|
|
365
|
+
* scheme is the 'http' part of 'http://www.example.com/some/path?query#fragment'.
|
|
366
|
+
* The part before the first colon.
|
|
367
|
+
*/
|
|
368
|
+
readonly scheme: string;
|
|
369
|
+
/**
|
|
370
|
+
* authority is the 'www.example.com' part of 'http://www.example.com/some/path?query#fragment'.
|
|
371
|
+
* The part between the first double slashes and the next slash.
|
|
372
|
+
*/
|
|
373
|
+
readonly authority: string;
|
|
374
|
+
/**
|
|
375
|
+
* path is the '/some/path' part of 'http://www.example.com/some/path?query#fragment'.
|
|
376
|
+
*/
|
|
377
|
+
readonly path: string;
|
|
378
|
+
/**
|
|
379
|
+
* query is the 'query' part of 'http://www.example.com/some/path?query#fragment'.
|
|
380
|
+
*/
|
|
381
|
+
readonly query: string;
|
|
382
|
+
/**
|
|
383
|
+
* fragment is the 'fragment' part of 'http://www.example.com/some/path?query#fragment'.
|
|
384
|
+
*/
|
|
385
|
+
readonly fragment: string;
|
|
386
|
+
/**
|
|
387
|
+
* @internal
|
|
388
|
+
*/
|
|
389
|
+
protected constructor(scheme: string, authority?: string, path?: string, query?: string, fragment?: string, _strict?: boolean);
|
|
390
|
+
/**
|
|
391
|
+
* @internal
|
|
392
|
+
*/
|
|
393
|
+
protected constructor(components: UriComponents);
|
|
394
|
+
/**
|
|
395
|
+
* Returns a string representing the corresponding file system path of this URI.
|
|
396
|
+
* Will handle UNC paths, normalizes windows drive letters to lower-case, and uses the
|
|
397
|
+
* platform specific path separator.
|
|
398
|
+
*
|
|
399
|
+
* * Will *not* validate the path for invalid characters and semantics.
|
|
400
|
+
* * Will *not* look at the scheme of this URI.
|
|
401
|
+
* * The result shall *not* be used for display purposes but for accessing a file on disk.
|
|
402
|
+
*
|
|
403
|
+
*
|
|
404
|
+
* The *difference* to `URI#path` is the use of the platform specific separator and the handling
|
|
405
|
+
* of UNC paths. See the below sample of a file-uri with an authority (UNC path).
|
|
406
|
+
*
|
|
407
|
+
* ```ts
|
|
408
|
+
const u = URI.parse('file://server/c$/folder/file.txt')
|
|
409
|
+
u.authority === 'server'
|
|
410
|
+
u.path === '/shares/c$/file.txt'
|
|
411
|
+
u.fsPath === '\\server\c$\folder\file.txt'
|
|
412
|
+
```
|
|
413
|
+
*
|
|
414
|
+
* Using `URI#path` to read a file (using fs-apis) would not be enough because parts of the path,
|
|
415
|
+
* namely the server name, would be missing. Therefore `URI#fsPath` exists - it's sugar to ease working
|
|
416
|
+
* with URIs that represent files on disk (`file` scheme).
|
|
417
|
+
*/
|
|
418
|
+
get fsPath(): string;
|
|
419
|
+
with(change: {
|
|
420
|
+
scheme?: string;
|
|
421
|
+
authority?: string | null;
|
|
422
|
+
path?: string | null;
|
|
423
|
+
query?: string | null;
|
|
424
|
+
fragment?: string | null;
|
|
425
|
+
}): URI;
|
|
426
|
+
/**
|
|
427
|
+
* Creates a new URI from a string, e.g. `http://www.example.com/some/path`,
|
|
428
|
+
* `file:///usr/home`, or `scheme:with/path`.
|
|
429
|
+
*
|
|
430
|
+
* @param value A string which represents an URI (see `URI#toString`).
|
|
431
|
+
*/
|
|
432
|
+
static parse(value: string, _strict?: boolean): URI;
|
|
433
|
+
/**
|
|
434
|
+
* Creates a new URI from a file system path, e.g. `c:\my\files`,
|
|
435
|
+
* `/usr/home`, or `\\server\share\some\path`.
|
|
436
|
+
*
|
|
437
|
+
* The *difference* between `URI#parse` and `URI#file` is that the latter treats the argument
|
|
438
|
+
* as path, not as stringified-uri. E.g. `URI.file(path)` is **not the same as**
|
|
439
|
+
* `URI.parse('file://' + path)` because the path might contain characters that are
|
|
440
|
+
* interpreted (# and ?). See the following sample:
|
|
441
|
+
* ```ts
|
|
442
|
+
const good = URI.file('/coding/c#/project1');
|
|
443
|
+
good.scheme === 'file';
|
|
444
|
+
good.path === '/coding/c#/project1';
|
|
445
|
+
good.fragment === '';
|
|
446
|
+
const bad = URI.parse('file://' + '/coding/c#/project1');
|
|
447
|
+
bad.scheme === 'file';
|
|
448
|
+
bad.path === '/coding/c'; // path is now broken
|
|
449
|
+
bad.fragment === '/project1';
|
|
450
|
+
```
|
|
451
|
+
*
|
|
452
|
+
* @param path A file system path (see `URI#fsPath`)
|
|
453
|
+
*/
|
|
454
|
+
static file(path: string): URI;
|
|
455
|
+
static from(components: {
|
|
456
|
+
scheme: string;
|
|
457
|
+
authority?: string;
|
|
458
|
+
path?: string;
|
|
459
|
+
query?: string;
|
|
460
|
+
fragment?: string;
|
|
461
|
+
}): URI;
|
|
462
|
+
/**
|
|
463
|
+
* Join a URI path with path fragments and normalizes the resulting path.
|
|
464
|
+
*
|
|
465
|
+
* @param uri The input URI.
|
|
466
|
+
* @param pathFragment The path fragment to add to the URI path.
|
|
467
|
+
* @returns The resulting URI.
|
|
468
|
+
*/
|
|
469
|
+
static joinPath(uri: URI, ...pathFragment: string[]): URI;
|
|
470
|
+
/**
|
|
471
|
+
* Creates a string representation for this URI. It's guaranteed that calling
|
|
472
|
+
* `URI.parse` with the result of this function creates an URI which is equal
|
|
473
|
+
* to this URI.
|
|
474
|
+
*
|
|
475
|
+
* * The result shall *not* be used for display purposes but for externalization or transport.
|
|
476
|
+
* * The result will be encoded using the percentage encoding and encoding happens mostly
|
|
477
|
+
* ignore the scheme-specific encoding rules.
|
|
478
|
+
*
|
|
479
|
+
* @param skipEncoding Do not encode the result, default is `false`
|
|
480
|
+
*/
|
|
481
|
+
toString(skipEncoding?: boolean): string;
|
|
482
|
+
toJSON(): UriComponents;
|
|
483
|
+
static revive(data: UriComponents | URI): URI;
|
|
484
|
+
static revive(data: UriComponents | URI | undefined): URI | undefined;
|
|
485
|
+
static revive(data: UriComponents | URI | null): URI | null;
|
|
486
|
+
static revive(data: UriComponents | URI | undefined | null): URI | undefined | null;
|
|
487
|
+
}
|
|
488
|
+
interface UriComponents {
|
|
489
|
+
scheme: string;
|
|
490
|
+
authority: string;
|
|
491
|
+
path: string;
|
|
492
|
+
query: string;
|
|
493
|
+
fragment: string;
|
|
494
|
+
}
|
|
495
|
+
|
|
266
496
|
/**
|
|
267
497
|
* An interface for a JavaScript object that
|
|
268
498
|
* acts a dictionary. The keys are strings.
|
|
@@ -560,6 +790,36 @@ type IConfigurationDefaultOverride = {
|
|
|
560
790
|
readonly valuesSources?: Map<string, IExtensionInfo | string>;
|
|
561
791
|
};
|
|
562
792
|
|
|
793
|
+
interface IBaseWorkspaceIdentifier {
|
|
794
|
+
/**
|
|
795
|
+
* Every workspace (multi-root, single folder or empty)
|
|
796
|
+
* has a unique identifier. It is not possible to open
|
|
797
|
+
* a workspace with the same `id` in multiple windows
|
|
798
|
+
*/
|
|
799
|
+
readonly id: string;
|
|
800
|
+
}
|
|
801
|
+
/**
|
|
802
|
+
* A single folder workspace identifier is a path to a folder + id.
|
|
803
|
+
*/
|
|
804
|
+
interface ISingleFolderWorkspaceIdentifier extends IBaseWorkspaceIdentifier {
|
|
805
|
+
/**
|
|
806
|
+
* Folder path as `URI`.
|
|
807
|
+
*/
|
|
808
|
+
readonly uri: URI;
|
|
809
|
+
}
|
|
810
|
+
/**
|
|
811
|
+
* A multi-root workspace identifier is a path to a workspace file + id.
|
|
812
|
+
*/
|
|
813
|
+
interface IWorkspaceIdentifier extends IBaseWorkspaceIdentifier {
|
|
814
|
+
/**
|
|
815
|
+
* Workspace config file path as `URI`.
|
|
816
|
+
*/
|
|
817
|
+
configPath: URI;
|
|
818
|
+
}
|
|
819
|
+
interface IEmptyWorkspaceIdentifier extends IBaseWorkspaceIdentifier {
|
|
820
|
+
}
|
|
821
|
+
type IAnyWorkspaceIdentifier = IWorkspaceIdentifier | ISingleFolderWorkspaceIdentifier | IEmptyWorkspaceIdentifier;
|
|
822
|
+
|
|
563
823
|
type IEditorOverrideServices = monaco.editor.IEditorOverrideServices
|
|
564
824
|
|
|
565
825
|
interface IThemeScopedColorCustomizations {
|
|
@@ -569,10 +829,15 @@ interface IColorCustomizations {
|
|
|
569
829
|
[colorIdOrThemeScope: string]: IThemeScopedColorCustomizations | string;
|
|
570
830
|
}
|
|
571
831
|
|
|
832
|
+
interface IWorkspaceFolderCreationData {
|
|
833
|
+
readonly uri: URI;
|
|
834
|
+
readonly name?: string;
|
|
835
|
+
}
|
|
836
|
+
|
|
572
837
|
declare function updateUserConfiguration(configurationJson: string): Promise<void>;
|
|
573
838
|
declare function getUserConfiguration(): Promise<string>;
|
|
574
839
|
declare function onUserConfigurationChange(callback: () => void): vscode.Disposable;
|
|
575
840
|
declare const configurationRegistry: IConfigurationRegistry;
|
|
576
|
-
declare function getServiceOverride(): IEditorOverrideServices;
|
|
841
|
+
declare function getServiceOverride(defaultWorkspaceUri: URI): IEditorOverrideServices;
|
|
577
842
|
|
|
578
|
-
export { ConfigurationScope, IColorCustomizations, IConfigurationDefaults, IConfigurationNode, IThemeScopedColorCustomizations, configurationRegistry, getServiceOverride as default, getUserConfiguration, onUserConfigurationChange, updateUserConfiguration };
|
|
843
|
+
export { ConfigurationScope, IAnyWorkspaceIdentifier, IColorCustomizations, IConfigurationDefaults, IConfigurationNode, IThemeScopedColorCustomizations, IWorkspaceFolderCreationData, configurationRegistry, getServiceOverride as default, getUserConfiguration, onUserConfigurationChange, updateUserConfiguration };
|