diff --git a/Cargo.lock b/Cargo.lock
index df14ee4851..a110aef25c 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1347,6 +1347,43 @@ dependencies = [
"uuid 1.4.1",
]
+[[package]]
+name = "channel2"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "client2",
+ "clock",
+ "collections",
+ "db2",
+ "feature_flags2",
+ "futures 0.3.28",
+ "gpui2",
+ "image",
+ "language2",
+ "lazy_static",
+ "log",
+ "parking_lot 0.11.2",
+ "postage",
+ "rand 0.8.5",
+ "rpc2",
+ "schemars",
+ "serde",
+ "serde_derive",
+ "settings2",
+ "smallvec",
+ "smol",
+ "sum_tree",
+ "tempfile",
+ "text",
+ "thiserror",
+ "time",
+ "tiny_http",
+ "url",
+ "util",
+ "uuid 1.4.1",
+]
+
[[package]]
name = "chrono"
version = "0.4.31"
@@ -2422,8 +2459,10 @@ dependencies = [
"client",
"collections",
"editor",
+ "futures 0.3.28",
"gpui",
"language",
+ "log",
"lsp",
"postage",
"project",
@@ -8960,6 +8999,21 @@ dependencies = [
"util",
]
+[[package]]
+name = "theme_importer"
+version = "0.1.0"
+dependencies = [
+ "anyhow",
+ "convert_case 0.6.0",
+ "gpui2",
+ "log",
+ "rust-embed",
+ "serde",
+ "simplelog",
+ "theme2",
+ "uuid 1.4.1",
+]
+
[[package]]
name = "theme_selector"
version = "0.1.0"
@@ -9690,7 +9744,7 @@ dependencies = [
[[package]]
name = "tree-sitter-vue"
version = "0.0.1"
-source = "git+https://github.com/zed-industries/tree-sitter-vue?rev=95b2890#95b28908d90e928c308866f7631e73ef6e1d4b5f"
+source = "git+https://github.com/zed-industries/tree-sitter-vue?rev=9b6cb221ccb8d0b956fcb17e9a1efac2feefeb58#9b6cb221ccb8d0b956fcb17e9a1efac2feefeb58"
dependencies = [
"cc",
"tree-sitter",
diff --git a/Cargo.toml b/Cargo.toml
index 998ea081a6..268399ad3f 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -10,6 +10,7 @@ members = [
"crates/call",
"crates/call2",
"crates/channel",
+ "crates/channel2",
"crates/cli",
"crates/client",
"crates/client2",
@@ -93,6 +94,7 @@ members = [
"crates/text",
"crates/theme",
"crates/theme2",
+ "crates/theme_importer",
"crates/theme_selector",
"crates/ui2",
"crates/util",
@@ -175,7 +177,7 @@ tree-sitter-yaml = { git = "https://github.com/zed-industries/tree-sitter-yaml",
tree-sitter-lua = "0.0.14"
tree-sitter-nix = { git = "https://github.com/nix-community/tree-sitter-nix", rev = "66e3e9ce9180ae08fc57372061006ef83f0abde7" }
tree-sitter-nu = { git = "https://github.com/nushell/tree-sitter-nu", rev = "786689b0562b9799ce53e824cb45a1a2a04dc673"}
-tree-sitter-vue = {git = "https://github.com/zed-industries/tree-sitter-vue", rev = "95b2890"}
+tree-sitter-vue = {git = "https://github.com/zed-industries/tree-sitter-vue", rev = "9b6cb221ccb8d0b956fcb17e9a1efac2feefeb58"}
[patch.crates-io]
tree-sitter = { git = "https://github.com/tree-sitter/tree-sitter", rev = "35a6052fbcafc5e5fc0f9415b8652be7dcaf7222" }
async-task = { git = "https://github.com/zed-industries/async-task", rev = "341b57d6de98cdfd7b418567b8de2022ca993a6e" }
diff --git a/assets/icons/dash.svg b/assets/icons/dash.svg
new file mode 100644
index 0000000000..efff9eab5e
--- /dev/null
+++ b/assets/icons/dash.svg
@@ -0,0 +1 @@
+
diff --git a/assets/themes/src/vscode/andromeda/LICENSE b/assets/themes/src/vscode/andromeda/LICENSE
new file mode 100644
index 0000000000..82d25d5061
--- /dev/null
+++ b/assets/themes/src/vscode/andromeda/LICENSE
@@ -0,0 +1,7 @@
+Copyright (c) 2017 eliverlara@gmail.com
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/assets/themes/src/vscode/andromeda/andromeda-bordered.json b/assets/themes/src/vscode/andromeda/andromeda-bordered.json
new file mode 100644
index 0000000000..c59ece1ee1
--- /dev/null
+++ b/assets/themes/src/vscode/andromeda/andromeda-bordered.json
@@ -0,0 +1,369 @@
+{
+ "name": "Andromeda Bordered",
+ "type": "dark",
+ "colors": {
+ "focusBorder": "#746f77",
+ "foreground": "#D5CED9",
+ "widget.shadow": "#14151A",
+ "selection.background": "#746f77",
+ "errorForeground": "#FC644D",
+
+ "button.background": "#00e8c5cc",
+ "button.hoverBackground": "#07d4b6cc",
+
+ "dropdown.background": "#2b303b",
+ "dropdown.border": "#363c49",
+
+ "input.background": "#2b303b",
+ "input.placeholderForeground": "#746f77",
+ "inputOption.activeBorder": "#C668BA",
+ "inputValidation.errorBackground": "#D65343",
+ "inputValidation.errorBorder": "#D65343",
+ "inputValidation.infoBackground": "#3A6395",
+ "inputValidation.infoBorder": "#3A6395",
+ "inputValidation.warningBackground": "#DE9237",
+ "inputValidation.warningBorder": "#DE9237",
+
+ "scrollbar.shadow": "#23262E",
+ "scrollbarSlider.activeBackground": "#3A3F4CCC",
+ "scrollbarSlider.background": "#3A3F4C77",
+ "scrollbarSlider.hoverBackground": "#3A3F4CAA",
+
+ "badge.background": "#00b0ff",
+ "badge.foreground": "#20232B",
+
+ "progressBar.background": "#C668BA",
+
+ "list.activeSelectionBackground": "#23262E",
+ "list.activeSelectionForeground": "#00e8c6",
+ "list.dropBackground": "#3a404e",
+ "list.focusBackground": "#282b35",
+ "list.focusForeground": "#eee",
+ "list.hoverBackground": "#23262E",
+ "list.hoverForeground": "#eee",
+ "list.inactiveSelectionBackground": "#23262E",
+ "list.inactiveSelectionForeground": "#00e8c6",
+
+ "activityBar.background": "#20232B",
+ "activityBar.dropBackground": "#3a404e",
+ "activityBar.foreground": "#BAAFC0",
+ "activityBarBadge.background": "#00b0ff",
+ "activityBarBadge.foreground": "#20232B",
+ "activityBar.border": "#1B1D23",
+
+ "sideBar.background": "#23262E",
+ "sideBarSectionHeader.background": "#23262E",
+ "sideBarTitle.foreground": "#00e8c6",
+ "sideBar.foreground": "#999999",
+ "sideBar.border": "#1B1D23",
+
+ "editorGroup.background": "#23262E",
+ "editorGroup.dropBackground": "#495061d7",
+ "editorGroupHeader.tabsBackground": "#23262E",
+ "tab.activeBackground": "#262A33",
+ "tab.inactiveBackground": "#23262E",
+ "tab.activeForeground": "#00e8c6",
+ "tab.inactiveForeground": "#746f77",
+
+ "editor.background": "#262A33",
+ "editor.foreground": "#D5CED9",
+ "editorLineNumber.foreground": "#746f77",
+ "editorCursor.foreground": "#FFF",
+ "editor.selectionBackground": "#3D4352",
+ "editor.selectionHighlightBackground": "#4F435580",
+ "editor.wordHighlightBackground": "#4F4355",
+ "editor.wordHighlightStrongBackground": "#db45a280",
+ "editor.findMatchBackground": "#f39d1256",
+ "editor.findMatchHighlightBackground": "#59b8b377",
+ "editor.findMatchBorder": "#f39d12b6",
+ "editor.hoverHighlightBackground": "#373941",
+ "editor.lineHighlightBackground": "#2e323d",
+ "editor.lineHighlightBorder": "#2e323d",
+ "editorLink.activeForeground": "#3B79C7",
+ "editor.rangeHighlightBackground": "#372F3C",
+ "editorWhitespace.foreground": "#333844",
+ "editorIndentGuide.background": "#333844",
+ "editorIndentGuide.activeBackground": "#585C66",
+ "editorRuler.foreground": "#4F4355",
+ "editorCodeLens.foreground": "#746f77",
+ "editorBracketMatch.background": "#746f77",
+ "editorBracketMatch.border": "#746f77",
+ "editorOverviewRuler.border": "#1B1D23",
+ "editorError.foreground": "#FC644D",
+ "editorWarning.foreground": "#FF9F2E",
+ "editorGutter.modifiedBackground": "#5BC0EBBB",
+ "editorGutter.addedBackground": "#9BC53DBB",
+ "editorGutter.deletedBackground": "#FC644DBB",
+
+ "diffEditor.insertedTextBackground": "#29BF1220",
+ "diffEditor.removedTextBackground": "#F21B3F20",
+
+ "editorWidget.background": "#20232A",
+ "editorSuggestWidget.background": "#20232A",
+ "editorSuggestWidget.border": "#372F3C",
+ "editorSuggestWidget.selectedBackground": "#373941",
+ "editorHoverWidget.background": "#373941",
+ "editorHoverWidget.border": "#00e8c5cc",
+ "debugExceptionWidget.background": "#FF9F2E60",
+ "debugExceptionWidget.border": "#FF9F2E60",
+
+ "minimapSlider.background": "#58607460",
+ "minimapSlider.hoverBackground": "#60698060",
+ "minimapSlider.activeBackground": "#60698060",
+
+ "peekView.border": "#23262E",
+ "peekViewEditor.background": "#1A1C22",
+ "peekViewEditor.matchHighlightBackground": "#FF9F2E60",
+ "peekViewResult.background": "#1A1C22",
+ "peekViewResult.matchHighlightBackground": "#FF9F2E60",
+ "peekViewResult.selectionBackground": "#23262E",
+ "peekViewTitle.background": "#1A1C22",
+ "peekViewTitleDescription.foreground": "#746f77",
+
+ "merge.currentHeaderBackground": "#F92672",
+ "merge.currentContentBackground": "#F9267240",
+ "merge.incomingHeaderBackground": "#3B79C7BB",
+ "merge.incomingContentBackground": "#3B79C740",
+
+ "panel.background": "#23262E",
+ "panel.border": "#1B1D23",
+ "panelTitle.activeBorder": "#23262E",
+ "panelTitle.inactiveForeground": "#746f77",
+
+ "statusBar.background": "#23262E",
+ "statusBar.debuggingBackground": "#FC644D",
+ "statusBar.noFolderBackground": "#23262E",
+ "statusBarItem.activeBackground": "#00e8c5cc",
+ "statusBarItem.hoverBackground": "#07d4b5b0",
+ "statusBarItem.prominentBackground": "#07d4b5b0",
+ "statusBarItem.prominentHoverBackground": "#00e8c5cc",
+
+ "terminal.ansiRed":"#ee5d43",
+ "terminal.ansiGreen":"#96E072",
+ "terminal.ansiYellow":"#FFE66D",
+ "terminal.ansiBlue":"#7cb7ff",
+ "terminal.ansiMagenta":"#ff00aa",
+ "terminal.ansiCyan":"#00e8c6",
+ "terminal.ansiBrightRed":"#ee5d43",
+ "terminal.ansiBrightGreen":"#96E072",
+ "terminal.ansiBrightYellow":"#FFE66D",
+ "terminal.ansiBrightBlue":"#7cb7ff",
+ "terminal.ansiBrightMagenta":"#ff00aa",
+ "terminal.ansiBrightCyan":"#00e8c6",
+ "terminalCursor.background": "#23262E",
+ "terminalCursor.foreground": "#FFE66D",
+
+ "titleBar.activeBackground": "#23262E",
+
+ "notification.background": "#2d313b",
+ "notification.buttonBackground": "#00e8c5cc",
+ "notification.buttonHoverBackground": "#07d4b5b0",
+ "notification.infoBackground": "#00b0ff",
+ "notification.warningBackground": "#FF9F2E",
+ "notification.errorBackground": "#FC644D",
+
+ "extensionButton.prominentBackground": "#07d4b6cc",
+ "extensionButton.prominentHoverBackground": "#07d4b5b0",
+
+ "pickerGroup.border": "#4F4355",
+ "pickerGroup.foreground": "#746f77",
+
+ "debugToolBar.background": "#20232A",
+
+ "walkThrough.embeddedEditorBackground": "#23262E",
+
+ "gitDecoration.ignoredResourceForeground": "#555555"
+
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#D5CED9",
+ "background": "#23262E"
+ }
+ },
+ {
+ "name": "Comment color",
+ "scope": [
+ "comment",
+ "markup.quote.markdown",
+ "meta.diff",
+ "meta.diff.header"
+ ],
+ "settings": {
+ "foreground": "#A0A1A7cc"
+ }
+ },
+ {
+ "name": "Text Color",
+ "scope": [
+ "meta.template.expression.js",
+ "constant.name.attribute.tag.jade",
+ "punctuation.definition.metadata.markdown",
+ "punctuation.definition.string.end.markdown",
+ "punctuation.definition.string.begin.markdown"
+ ],
+ "settings": {
+ "foreground": "#D5CED9"
+ }
+ },
+ {
+ "name": "Cyan",
+ "scope": [
+ "variable",
+ "support.variable",
+ "entity.name.tag.yaml",
+ "constant.character.entity.html",
+ "source.css entity.name.tag.reference",
+ "beginning.punctuation.definition.list.markdown",
+ "source.css entity.other.attribute-name.parent-selector",
+ "meta.structure.dictionary.json support.type.property-name"
+ ],
+ "settings": {
+ "foreground": "#00e8c6"
+ }
+ },
+ {
+ "name": "Orange",
+ "scope": [
+ "markup.bold",
+ "constant.numeric",
+ "meta.group.regexp",
+ "constant.other.php",
+ "support.constant.ext.php",
+ "constant.other.class.php",
+ "support.constant.core.php",
+ "fenced_code.block.language",
+ "constant.other.caps.python",
+ "entity.other.attribute-name",
+ "support.type.exception.python",
+ "source.css keyword.other.unit",
+ "variable.other.object.property.js.jsx", "variable.other.object.js"
+ ],
+ "settings": {
+ "foreground": "#f39c12"
+ }
+ },
+ {
+ "name": "Yellow",
+ "scope": [
+ "markup.list",
+ "text.xml string",
+ "entity.name.type",
+ "support.function",
+ "entity.other.attribute-name",
+ "meta.at-rule.extend",
+ "entity.name.function",
+ "entity.other.inherited-class",
+ "entity.other.keyframe-offset.css",
+ "text.html.markdown string.quoted",
+ "meta.function-call.generic.python",
+ "meta.at-rule.extend support.constant",
+ "entity.other.attribute-name.class.jade",
+ "source.css entity.other.attribute-name",
+ "text.xml punctuation.definition.string"
+
+ ],
+ "settings": {
+ "foreground": "#FFE66D"
+ }
+ },
+ {
+ "name": "Pink",
+ "scope": [
+ "markup.heading",
+ "variable.language.this.js",
+ "variable.language.special.self.python"
+ ],
+ "settings": {
+ "foreground": "#ff00aa"
+ }
+ },
+ {
+ "name": "Hot Pink",
+ "scope": [
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.end.php",
+ "punctuation.section.embedded.end.ruby",
+ "punctuation.section.embedded.begin.php",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.definition.template-expression",
+ "entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#f92672"
+ }
+ },
+ {
+ "name": "Purple",
+ "scope": [
+ "storage",
+ "keyword",
+ "meta.link",
+ "meta.image",
+ "markup.italic",
+ "source.js support.type"
+
+ ],
+ "settings": {
+ "foreground": "#c74ded"
+ }
+ },
+ {
+ "name": "Blue",
+ "scope": [
+ "string.regexp",
+ "markup.changed"
+ ],
+ "settings": {
+ "foreground": "#7cb7ff"
+ }
+ },
+ {
+ "name": "Red",
+ "scope": [
+ "constant",
+ "support.class",
+ "keyword.operator",
+ "support.constant",
+ "text.html.markdown string",
+ "source.css support.function",
+ "source.php support.function",
+ "support.function.magic.python",
+ "entity.other.attribute-name.id",
+ "markup.deleted"
+ ],
+ "settings": {
+ "foreground": "#ee5d43"
+ }
+ },
+ {
+ "name": "Green",
+ "scope": [
+ "string",
+ "text.html.php string",
+ "markup.inline.raw",
+ "markup.inserted",
+ "punctuation.definition.string",
+ "punctuation.definition.markdown",
+ "text.html meta.embedded source.js string",
+ "text.html.php punctuation.definition.string",
+ "text.html meta.embedded source.js punctuation.definition.string",
+ "text.html punctuation.definition.string",
+ "text.html string"
+ ],
+ "settings": {
+ "foreground": "#96E072"
+ }
+ },
+ {
+ "name": "Font Underline",
+ "scope": [
+ "entity.other.inherited-class"
+ ],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/andromeda/andromeda.json b/assets/themes/src/vscode/andromeda/andromeda.json
new file mode 100644
index 0000000000..235eb8f003
--- /dev/null
+++ b/assets/themes/src/vscode/andromeda/andromeda.json
@@ -0,0 +1,367 @@
+{
+ "name": "Andromeda",
+ "type": "dark",
+ "colors": {
+ "focusBorder": "#746f77",
+ "foreground": "#D5CED9",
+ "widget.shadow": "#14151A",
+ "selection.background": "#746f77",
+ "errorForeground": "#FC644D",
+
+ "button.background": "#00e8c5cc",
+ "button.hoverBackground": "#07d4b6cc",
+
+ "dropdown.background": "#2b303b",
+ "dropdown.border": "#363c49",
+
+ "input.background": "#2b303b",
+ "input.placeholderForeground": "#746f77",
+ "inputOption.activeBorder": "#C668BA",
+ "inputValidation.errorBackground": "#D65343",
+ "inputValidation.errorBorder": "#D65343",
+ "inputValidation.infoBackground": "#3A6395",
+ "inputValidation.infoBorder": "#3A6395",
+ "inputValidation.warningBackground": "#DE9237",
+ "inputValidation.warningBorder": "#DE9237",
+
+ "scrollbar.shadow": "#23262E",
+ "scrollbarSlider.activeBackground": "#3A3F4CCC",
+ "scrollbarSlider.background": "#3A3F4C77",
+ "scrollbarSlider.hoverBackground": "#3A3F4CAA",
+
+ "badge.background": "#00b0ff",
+ "badge.foreground": "#20232B",
+
+ "progressBar.background": "#C668BA",
+
+ "list.activeSelectionBackground": "#23262E",
+ "list.activeSelectionForeground": "#00e8c6",
+ "list.dropBackground": "#3a404e",
+ "list.focusBackground": "#282b35",
+ "list.focusForeground": "#eee",
+ "list.hoverBackground": "#23262E",
+ "list.hoverForeground": "#eee",
+ "list.inactiveSelectionBackground": "#23262E",
+ "list.inactiveSelectionForeground": "#00e8c6",
+
+ "activityBar.background": "#23262E",
+ "activityBar.dropBackground": "#3a404e",
+ "activityBar.foreground": "#BAAFC0",
+ "activityBarBadge.background": "#00b0ff",
+ "activityBarBadge.foreground": "#20232B",
+
+ "sideBar.background": "#23262E",
+ "sideBarSectionHeader.background": "#23262E",
+ "sideBarTitle.foreground": "#00e8c6",
+ "sideBar.foreground": "#999999",
+
+ "editorGroup.background": "#23262E",
+ "editorGroup.dropBackground": "#495061d7",
+ "editorGroupHeader.tabsBackground": "#23262E",
+ "tab.activeBackground": "#23262e",
+ "tab.inactiveBackground": "#23262E",
+ "tab.activeForeground": "#00e8c6",
+ "tab.inactiveForeground": "#746f77",
+
+ "editor.background": "#23262E",
+ "editor.foreground": "#D5CED9",
+ "editorLineNumber.foreground": "#746f77",
+ "editorCursor.foreground": "#FFF",
+ "editor.selectionBackground": "#3D4352",
+ "editor.selectionHighlightBackground": "#4F435580",
+ "editor.wordHighlightBackground": "#4F4355",
+ "editor.wordHighlightStrongBackground": "#db45a280",
+ "editor.findMatchBackground": "#f39d1256",
+ "editor.findMatchHighlightBackground": "#59b8b377",
+ "editor.findMatchBorder": "#f39d12b6",
+ "editor.hoverHighlightBackground": "#373941",
+ "editor.lineHighlightBackground": "#2e323d",
+ "editor.lineHighlightBorder": "#2e323d",
+ "editorLink.activeForeground": "#3B79C7",
+ "editor.rangeHighlightBackground": "#372F3C",
+ "editorWhitespace.foreground": "#333844",
+ "editorIndentGuide.background": "#333844",
+ "editorIndentGuide.activeBackground": "#585C66",
+ "editorRuler.foreground": "#4F4355",
+ "editorCodeLens.foreground": "#746f77",
+ "editorBracketMatch.background": "#746f77",
+ "editorBracketMatch.border": "#746f77",
+ "editorOverviewRuler.border": "#1B1D23",
+ "editorError.foreground": "#FC644D",
+ "editorWarning.foreground": "#FF9F2E",
+ "editorGutter.modifiedBackground": "#5BC0EBBB",
+ "editorGutter.addedBackground": "#9BC53DBB",
+ "editorGutter.deletedBackground": "#FC644DBB",
+
+ "diffEditor.insertedTextBackground": "#29BF1220",
+ "diffEditor.removedTextBackground": "#F21B3F20",
+
+ "editorWidget.background": "#20232A",
+ "editorSuggestWidget.background": "#20232A",
+ "editorSuggestWidget.border": "#372F3C",
+ "editorSuggestWidget.selectedBackground": "#373941",
+ "editorHoverWidget.background": "#373941",
+ "editorHoverWidget.border": "#00e8c5cc",
+ "debugExceptionWidget.background": "#FF9F2E60",
+ "debugExceptionWidget.border": "#FF9F2E60",
+
+ "minimapSlider.background": "#58607460",
+ "minimapSlider.hoverBackground": "#60698060",
+ "minimapSlider.activeBackground": "#60698060",
+
+ "peekView.border": "#23262E",
+ "peekViewEditor.background": "#1A1C22",
+ "peekViewEditor.matchHighlightBackground": "#FF9F2E60",
+ "peekViewResult.background": "#1A1C22",
+ "peekViewResult.matchHighlightBackground": "#FF9F2E60",
+ "peekViewResult.selectionBackground": "#23262E",
+ "peekViewTitle.background": "#1A1C22",
+ "peekViewTitleDescription.foreground": "#746f77",
+
+ "merge.currentHeaderBackground": "#F92672",
+ "merge.currentContentBackground": "#F9267240",
+ "merge.incomingHeaderBackground": "#3B79C7BB",
+ "merge.incomingContentBackground": "#3B79C740",
+
+ "panel.background": "#23262E",
+ "panel.border": "#1B1D23",
+ "panelTitle.activeBorder": "#23262E",
+ "panelTitle.inactiveForeground": "#746f77",
+
+ "statusBar.background": "#23262E",
+ "statusBar.debuggingBackground": "#FC644D",
+ "statusBar.noFolderBackground": "#23262E",
+ "statusBarItem.activeBackground": "#00e8c5cc",
+ "statusBarItem.hoverBackground": "#07d4b5b0",
+ "statusBarItem.prominentBackground": "#07d4b5b0",
+ "statusBarItem.prominentHoverBackground": "#00e8c5cc",
+
+ "terminal.ansiRed":"#ee5d43",
+ "terminal.ansiGreen":"#96E072",
+ "terminal.ansiYellow":"#FFE66D",
+ "terminal.ansiBlue":"#7cb7ff",
+ "terminal.ansiMagenta":"#ff00aa",
+ "terminal.ansiCyan":"#00e8c6",
+ "terminal.ansiBrightRed":"#ee5d43",
+ "terminal.ansiBrightGreen":"#96E072",
+ "terminal.ansiBrightYellow":"#FFE66D",
+ "terminal.ansiBrightBlue":"#7cb7ff",
+ "terminal.ansiBrightMagenta":"#ff00aa",
+ "terminal.ansiBrightCyan":"#00e8c6",
+ "terminalCursor.background": "#23262E",
+ "terminalCursor.foreground": "#FFE66D",
+
+ "titleBar.activeBackground": "#23262E",
+
+ "notification.background": "#2d313b",
+ "notification.buttonBackground": "#00e8c5cc",
+ "notification.buttonHoverBackground": "#07d4b5b0",
+ "notification.infoBackground": "#00b0ff",
+ "notification.warningBackground": "#FF9F2E",
+ "notification.errorBackground": "#FC644D",
+
+ "extensionButton.prominentBackground": "#07d4b6cc",
+ "extensionButton.prominentHoverBackground": "#07d4b5b0",
+
+ "pickerGroup.border": "#4F4355",
+ "pickerGroup.foreground": "#746f77",
+
+ "debugToolBar.background": "#20232A",
+
+ "walkThrough.embeddedEditorBackground": "#23262E",
+
+ "gitDecoration.ignoredResourceForeground": "#555555"
+
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#D5CED9",
+ "background": "#23262E"
+ }
+ },
+ {
+ "name": "Comment color",
+ "scope": [
+ "comment",
+ "markup.quote.markdown",
+ "meta.diff",
+ "meta.diff.header"
+ ],
+ "settings": {
+ "foreground": "#A0A1A7cc"
+ }
+ },
+ {
+ "name": "Text Color",
+ "scope": [
+ "meta.template.expression.js",
+ "constant.name.attribute.tag.jade",
+ "punctuation.definition.metadata.markdown",
+ "punctuation.definition.string.end.markdown",
+ "punctuation.definition.string.begin.markdown"
+ ],
+ "settings": {
+ "foreground": "#D5CED9"
+ }
+ },
+ {
+ "name": "Cyan",
+ "scope": [
+ "variable",
+ "support.variable",
+ "entity.name.tag.yaml",
+ "constant.character.entity.html",
+ "source.css entity.name.tag.reference",
+ "beginning.punctuation.definition.list.markdown",
+ "source.css entity.other.attribute-name.parent-selector",
+ "meta.structure.dictionary.json support.type.property-name"
+ ],
+ "settings": {
+ "foreground": "#00e8c6"
+ }
+ },
+ {
+ "name": "Orange",
+ "scope": [
+ "markup.bold",
+ "constant.numeric",
+ "meta.group.regexp",
+ "constant.other.php",
+ "support.constant.ext.php",
+ "constant.other.class.php",
+ "support.constant.core.php",
+ "fenced_code.block.language",
+ "constant.other.caps.python",
+ "entity.other.attribute-name",
+ "support.type.exception.python",
+ "source.css keyword.other.unit",
+ "variable.other.object.property.js.jsx", "variable.other.object.js"
+ ],
+ "settings": {
+ "foreground": "#f39c12"
+ }
+ },
+ {
+ "name": "Yellow",
+ "scope": [
+ "markup.list",
+ "text.xml string",
+ "entity.name.type",
+ "support.function",
+ "entity.other.attribute-name",
+ "meta.at-rule.extend",
+ "entity.name.function",
+ "entity.other.inherited-class",
+ "entity.other.keyframe-offset.css",
+ "text.html.markdown string.quoted",
+ "meta.function-call.generic.python",
+ "meta.at-rule.extend support.constant",
+ "entity.other.attribute-name.class.jade",
+ "source.css entity.other.attribute-name",
+ "text.xml punctuation.definition.string"
+
+ ],
+ "settings": {
+ "foreground": "#FFE66D"
+ }
+ },
+ {
+ "name": "Pink",
+ "scope": [
+ "markup.heading",
+ "variable.language.this.js",
+ "variable.language.special.self.python"
+ ],
+ "settings": {
+ "foreground": "#ff00aa"
+ }
+ },
+ {
+ "name": "Hot Pink",
+ "scope": [
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.end.php",
+ "punctuation.section.embedded.end.ruby",
+ "punctuation.section.embedded.begin.php",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.definition.template-expression",
+ "entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#f92672"
+ }
+ },
+ {
+ "name": "Purple",
+ "scope": [
+ "storage",
+ "keyword",
+ "meta.link",
+ "meta.image",
+ "markup.italic",
+ "source.js support.type"
+
+ ],
+ "settings": {
+ "foreground": "#c74ded"
+ }
+ },
+ {
+ "name": "Blue",
+ "scope": [
+ "string.regexp",
+ "markup.changed"
+ ],
+ "settings": {
+ "foreground": "#7cb7ff"
+ }
+ },
+ {
+ "name": "Red",
+ "scope": [
+ "constant",
+ "support.class",
+ "keyword.operator",
+ "support.constant",
+ "text.html.markdown string",
+ "source.css support.function",
+ "source.php support.function",
+ "support.function.magic.python",
+ "entity.other.attribute-name.id",
+ "markup.deleted"
+ ],
+ "settings": {
+ "foreground": "#ee5d43"
+ }
+ },
+ {
+ "name": "Green",
+ "scope": [
+ "string",
+ "text.html.php string",
+ "markup.inline.raw",
+ "markup.inserted",
+ "punctuation.definition.string",
+ "punctuation.definition.markdown",
+ "text.html meta.embedded source.js string",
+ "text.html.php punctuation.definition.string",
+ "text.html meta.embedded source.js punctuation.definition.string",
+ "text.html punctuation.definition.string",
+ "text.html string"
+ ],
+ "settings": {
+ "foreground": "#96E072"
+ }
+ },
+ {
+ "name": "Font Underline",
+ "scope": [
+ "entity.other.inherited-class"
+ ],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/andromeda/family.json b/assets/themes/src/vscode/andromeda/family.json
new file mode 100644
index 0000000000..cbdc038a55
--- /dev/null
+++ b/assets/themes/src/vscode/andromeda/family.json
@@ -0,0 +1,16 @@
+{
+ "name": "Andromeda",
+ "author": "Eliver Lara (EliverLara)",
+ "themes": [
+ {
+ "name": "Andromeda",
+ "file_name": "andromeda.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Andromeda Bordered",
+ "file_name": "andromeda-bordered.json",
+ "appearance": "dark"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/ayu/LICENSE b/assets/themes/src/vscode/ayu/LICENSE
new file mode 100644
index 0000000000..97c615481a
--- /dev/null
+++ b/assets/themes/src/vscode/ayu/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2016 Ike Ku
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/assets/themes/src/vscode/ayu/ayu-dark.json b/assets/themes/src/vscode/ayu/ayu-dark.json
new file mode 100644
index 0000000000..71c1da3fa5
--- /dev/null
+++ b/assets/themes/src/vscode/ayu/ayu-dark.json
@@ -0,0 +1,847 @@
+{
+ "type": "dark",
+ "colors": {
+ "focusBorder": "#e6b450b3",
+ "foreground": "#565b66",
+ "widget.shadow": "#00000080",
+ "selection.background": "#409fff4d",
+ "icon.foreground": "#565b66",
+ "errorForeground": "#d95757",
+ "descriptionForeground": "#565b66",
+ "textBlockQuote.background": "#0f131a",
+ "textLink.foreground": "#e6b450",
+ "textLink.activeForeground": "#e6b450",
+ "textPreformat.foreground": "#bfbdb6",
+ "button.background": "#e6b450",
+ "button.foreground": "#734d00",
+ "button.hoverBackground": "#e1af4b",
+ "button.secondaryBackground": "#565b6633",
+ "button.secondaryForeground": "#bfbdb6",
+ "button.secondaryHoverBackground": "#565b6680",
+ "dropdown.background": "#0d1017",
+ "dropdown.foreground": "#565b66",
+ "dropdown.border": "#565b6645",
+ "input.background": "#0d1017",
+ "input.border": "#565b6645",
+ "input.foreground": "#bfbdb6",
+ "input.placeholderForeground": "#565b6680",
+ "inputOption.activeBorder": "#e6b4504d",
+ "inputOption.activeBackground": "#e6b45033",
+ "inputOption.activeForeground": "#e6b450",
+ "inputValidation.errorBackground": "#0d1017",
+ "inputValidation.errorBorder": "#d95757",
+ "inputValidation.infoBackground": "#0b0e14",
+ "inputValidation.infoBorder": "#39bae6",
+ "inputValidation.warningBackground": "#0b0e14",
+ "inputValidation.warningBorder": "#ffb454",
+ "scrollbar.shadow": "#1e232b00",
+ "scrollbarSlider.background": "#565b6666",
+ "scrollbarSlider.hoverBackground": "#565b6699",
+ "scrollbarSlider.activeBackground": "#565b66b3",
+ "badge.background": "#e6b45033",
+ "badge.foreground": "#e6b450",
+ "progressBar.background": "#e6b450",
+ "list.activeSelectionBackground": "#47526640",
+ "list.activeSelectionForeground": "#bfbdb6",
+ "list.focusBackground": "#47526640",
+ "list.focusForeground": "#bfbdb6",
+ "list.focusOutline": "#47526640",
+ "list.highlightForeground": "#e6b450",
+ "list.deemphasizedForeground": "#d95757",
+ "list.hoverBackground": "#47526640",
+ "list.inactiveSelectionBackground": "#47526633",
+ "list.inactiveSelectionForeground": "#565b66",
+ "list.invalidItemForeground": "#565b664d",
+ "list.errorForeground": "#d95757",
+ "tree.indentGuidesStroke": "#6c738080",
+ "listFilterWidget.background": "#0f131a",
+ "listFilterWidget.outline": "#e6b450",
+ "listFilterWidget.noMatchesOutline": "#d95757",
+ "list.filterMatchBackground": "#5f4c7266",
+ "list.filterMatchBorder": "#6c598066",
+ "activityBar.background": "#0b0e14",
+ "activityBar.foreground": "#565b66cc",
+ "activityBar.inactiveForeground": "#565b6699",
+ "activityBar.border": "#0b0e14",
+ "activityBar.activeBorder": "#e6b450",
+ "activityBarBadge.background": "#e6b450",
+ "activityBarBadge.foreground": "#734d00",
+ "sideBar.background": "#0b0e14",
+ "sideBar.border": "#0b0e14",
+ "sideBarTitle.foreground": "#565b66",
+ "sideBarSectionHeader.background": "#0b0e14",
+ "sideBarSectionHeader.foreground": "#565b66",
+ "sideBarSectionHeader.border": "#0b0e14",
+ "minimap.background": "#0b0e14",
+ "minimap.selectionHighlight": "#409fff4d",
+ "minimap.errorHighlight": "#d95757",
+ "minimap.findMatchHighlight": "#6c5980",
+ "minimapGutter.addedBackground": "#7fd962",
+ "minimapGutter.modifiedBackground": "#73b8ff",
+ "minimapGutter.deletedBackground": "#f26d78",
+ "editorGroup.border": "#1e232b",
+ "editorGroup.background": "#0f131a",
+ "editorGroupHeader.noTabsBackground": "#0b0e14",
+ "editorGroupHeader.tabsBackground": "#0b0e14",
+ "editorGroupHeader.tabsBorder": "#0b0e14",
+ "tab.activeBackground": "#0b0e14",
+ "tab.activeForeground": "#bfbdb6",
+ "tab.border": "#0b0e14",
+ "tab.activeBorder": "#e6b450",
+ "tab.unfocusedActiveBorder": "#565b66",
+ "tab.inactiveBackground": "#0b0e14",
+ "tab.inactiveForeground": "#565b66",
+ "tab.unfocusedActiveForeground": "#565b66",
+ "tab.unfocusedInactiveForeground": "#565b66",
+ "editor.background": "#0b0e14",
+ "editor.foreground": "#bfbdb6",
+ "editorLineNumber.foreground": "#6c738099",
+ "editorLineNumber.activeForeground": "#6c7380e6",
+ "editorCursor.foreground": "#e6b450",
+ "editor.inactiveSelectionBackground": "#409fff21",
+ "editor.selectionBackground": "#409fff4d",
+ "editor.selectionHighlightBackground": "#7fd96226",
+ "editor.selectionHighlightBorder": "#7fd96200",
+ "editor.wordHighlightBackground": "#73b8ff14",
+ "editor.wordHighlightStrongBackground": "#7fd96214",
+ "editor.wordHighlightBorder": "#73b8ff80",
+ "editor.wordHighlightStrongBorder": "#7fd96280",
+ "editor.findMatchBackground": "#6c5980",
+ "editor.findMatchBorder": "#6c5980",
+ "editor.findMatchHighlightBackground": "#6c598066",
+ "editor.findMatchHighlightBorder": "#5f4c7266",
+ "editor.findRangeHighlightBackground": "#6c598040",
+ "editor.rangeHighlightBackground": "#6c598033",
+ "editor.lineHighlightBackground": "#131721",
+ "editorLink.activeForeground": "#e6b450",
+ "editorWhitespace.foreground": "#6c738099",
+ "editorIndentGuide.background": "#6c738033",
+ "editorIndentGuide.activeBackground": "#6c738080",
+ "editorRuler.foreground": "#6c738033",
+ "editorCodeLens.foreground": "#acb6bf8c",
+ "editorBracketMatch.background": "#6c73804d",
+ "editorBracketMatch.border": "#6c73804d",
+ "editor.snippetTabstopHighlightBackground": "#7fd96233",
+ "editorOverviewRuler.border": "#1e232b",
+ "editorOverviewRuler.modifiedForeground": "#73b8ff",
+ "editorOverviewRuler.addedForeground": "#7fd962",
+ "editorOverviewRuler.deletedForeground": "#f26d78",
+ "editorOverviewRuler.errorForeground": "#d95757",
+ "editorOverviewRuler.warningForeground": "#e6b450",
+ "editorOverviewRuler.bracketMatchForeground": "#6c7380b3",
+ "editorOverviewRuler.wordHighlightForeground": "#73b8ff66",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#7fd96266",
+ "editorOverviewRuler.findMatchForeground": "#6c5980",
+ "editorError.foreground": "#d95757",
+ "editorWarning.foreground": "#e6b450",
+ "editorGutter.modifiedBackground": "#73b8ffcc",
+ "editorGutter.addedBackground": "#7fd962cc",
+ "editorGutter.deletedBackground": "#f26d78cc",
+ "diffEditor.insertedTextBackground": "#7fd9621f",
+ "diffEditor.removedTextBackground": "#f26d781f",
+ "diffEditor.diagonalFill": "#1e232b",
+ "editorWidget.background": "#0f131a",
+ "editorWidget.border": "#1e232b",
+ "editorHoverWidget.background": "#0f131a",
+ "editorHoverWidget.border": "#1e232b",
+ "editorSuggestWidget.background": "#0f131a",
+ "editorSuggestWidget.border": "#1e232b",
+ "editorSuggestWidget.highlightForeground": "#e6b450",
+ "editorSuggestWidget.selectedBackground": "#47526640",
+ "debugExceptionWidget.border": "#1e232b",
+ "debugExceptionWidget.background": "#0f131a",
+ "editorMarkerNavigation.background": "#0f131a",
+ "peekView.border": "#47526640",
+ "peekViewTitle.background": "#47526640",
+ "peekViewTitleDescription.foreground": "#565b66",
+ "peekViewTitleLabel.foreground": "#bfbdb6",
+ "peekViewEditor.background": "#0f131a",
+ "peekViewEditor.matchHighlightBackground": "#6c598066",
+ "peekViewEditor.matchHighlightBorder": "#5f4c7266",
+ "peekViewResult.background": "#0f131a",
+ "peekViewResult.fileForeground": "#bfbdb6",
+ "peekViewResult.lineForeground": "#565b66",
+ "peekViewResult.matchHighlightBackground": "#6c598066",
+ "peekViewResult.selectionBackground": "#47526640",
+ "panel.background": "#0b0e14",
+ "panel.border": "#1e232b",
+ "panelTitle.activeBorder": "#e6b450",
+ "panelTitle.activeForeground": "#bfbdb6",
+ "panelTitle.inactiveForeground": "#565b66",
+ "statusBar.background": "#0b0e14",
+ "statusBar.foreground": "#565b66",
+ "statusBar.border": "#0b0e14",
+ "statusBar.debuggingBackground": "#f29668",
+ "statusBar.debuggingForeground": "#0d1017",
+ "statusBar.noFolderBackground": "#0f131a",
+ "statusBarItem.activeBackground": "#565b6633",
+ "statusBarItem.hoverBackground": "#565b6633",
+ "statusBarItem.prominentBackground": "#1e232b",
+ "statusBarItem.prominentHoverBackground": "#00000030",
+ "statusBarItem.remoteBackground": "#e6b450",
+ "statusBarItem.remoteForeground": "#734d00",
+ "titleBar.activeBackground": "#0b0e14",
+ "titleBar.activeForeground": "#bfbdb6",
+ "titleBar.inactiveBackground": "#0b0e14",
+ "titleBar.inactiveForeground": "#565b66",
+ "titleBar.border": "#0b0e14",
+ "extensionButton.prominentForeground": "#734d00",
+ "extensionButton.prominentBackground": "#e6b450",
+ "extensionButton.prominentHoverBackground": "#e1af4b",
+ "pickerGroup.border": "#1e232b",
+ "pickerGroup.foreground": "#565b6680",
+ "debugToolBar.background": "#0f131a",
+ "debugIcon.breakpointForeground": "#f29668",
+ "debugIcon.breakpointDisabledForeground": "#f2966880",
+ "debugConsoleInputIcon.foreground": "#e6b450",
+ "welcomePage.tileBackground": "#0b0e14",
+ "welcomePage.tileShadow": "#00000080",
+ "welcomePage.progress.background": "#131721",
+ "welcomePage.buttonBackground": "#e6b45066",
+ "walkThrough.embeddedEditorBackground": "#0f131a",
+ "gitDecoration.modifiedResourceForeground": "#73b8ffb3",
+ "gitDecoration.deletedResourceForeground": "#f26d78b3",
+ "gitDecoration.untrackedResourceForeground": "#7fd962b3",
+ "gitDecoration.ignoredResourceForeground": "#565b6680",
+ "gitDecoration.conflictingResourceForeground": "",
+ "gitDecoration.submoduleResourceForeground": "#d2a6ffb3",
+ "settings.headerForeground": "#bfbdb6",
+ "settings.modifiedItemIndicator": "#73b8ff",
+ "keybindingLabel.background": "#565b661a",
+ "keybindingLabel.foreground": "#bfbdb6",
+ "keybindingLabel.border": "#bfbdb61a",
+ "keybindingLabel.bottomBorder": "#bfbdb61a",
+ "terminal.background": "#0b0e14",
+ "terminal.foreground": "#bfbdb6",
+ "terminal.ansiBlack": "#1e232b",
+ "terminal.ansiRed": "#ea6c73",
+ "terminal.ansiGreen": "#7fd962",
+ "terminal.ansiYellow": "#f9af4f",
+ "terminal.ansiBlue": "#53bdfa",
+ "terminal.ansiMagenta": "#cda1fa",
+ "terminal.ansiCyan": "#90e1c6",
+ "terminal.ansiWhite": "#c7c7c7",
+ "terminal.ansiBrightBlack": "#686868",
+ "terminal.ansiBrightRed": "#f07178",
+ "terminal.ansiBrightGreen": "#aad94c",
+ "terminal.ansiBrightYellow": "#ffb454",
+ "terminal.ansiBrightBlue": "#59c2ff",
+ "terminal.ansiBrightMagenta": "#d2a6ff",
+ "terminal.ansiBrightCyan": "#95e6cb",
+ "terminal.ansiBrightWhite": "#ffffff"
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "background": "#0b0e14",
+ "foreground": "#bfbdb6"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": [
+ "comment"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#acb6bf8c"
+ }
+ },
+ {
+ "name": "String",
+ "scope": [
+ "string",
+ "constant.other.symbol"
+ ],
+ "settings": {
+ "foreground": "#aad94c"
+ }
+ },
+ {
+ "name": "Regular Expressions and Escape Characters",
+ "scope": [
+ "string.regexp",
+ "constant.character",
+ "constant.other"
+ ],
+ "settings": {
+ "foreground": "#95e6cb"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": [
+ "constant.numeric"
+ ],
+ "settings": {
+ "foreground": "#d2a6ff"
+ }
+ },
+ {
+ "name": "Built-in constants",
+ "scope": [
+ "constant.language"
+ ],
+ "settings": {
+ "foreground": "#d2a6ff"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": [
+ "variable",
+ "variable.parameter.function-call"
+ ],
+ "settings": {
+ "foreground": "#bfbdb6"
+ }
+ },
+ {
+ "name": "Member Variable",
+ "scope": [
+ "variable.member"
+ ],
+ "settings": {
+ "foreground": "#f07178"
+ }
+ },
+ {
+ "name": "Language variable",
+ "scope": [
+ "variable.language"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage"
+ ],
+ "settings": {
+ "foreground": "#ff8f40"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": [
+ "keyword"
+ ],
+ "settings": {
+ "foreground": "#ff8f40"
+ }
+ },
+ {
+ "name": "Operators",
+ "scope": [
+ "keyword.operator"
+ ],
+ "settings": {
+ "foreground": "#f29668"
+ }
+ },
+ {
+ "name": "Separators like ; or ,",
+ "scope": [
+ "punctuation.separator",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#bfbdb6b3"
+ }
+ },
+ {
+ "name": "Punctuation",
+ "scope": [
+ "punctuation.section"
+ ],
+ "settings": {
+ "foreground": "#bfbdb6"
+ }
+ },
+ {
+ "name": "Accessor",
+ "scope": [
+ "punctuation.accessor"
+ ],
+ "settings": {
+ "foreground": "#f29668"
+ }
+ },
+ {
+ "name": "JavaScript/TypeScript interpolation punctuation",
+ "scope": [
+ "punctuation.definition.template-expression"
+ ],
+ "settings": {
+ "foreground": "#ff8f40"
+ }
+ },
+ {
+ "name": "Ruby interpolation punctuation",
+ "scope": [
+ "punctuation.section.embedded"
+ ],
+ "settings": {
+ "foreground": "#ff8f40"
+ }
+ },
+ {
+ "name": "Interpolation text",
+ "scope": [
+ "meta.embedded"
+ ],
+ "settings": {
+ "foreground": "#bfbdb6"
+ }
+ },
+ {
+ "name": "Types fixes",
+ "scope": [
+ "source.java storage.type",
+ "source.haskell storage.type",
+ "source.c storage.type"
+ ],
+ "settings": {
+ "foreground": "#59c2ff"
+ }
+ },
+ {
+ "name": "Inherited class type",
+ "scope": [
+ "entity.other.inherited-class"
+ ],
+ "settings": {
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "Lambda arrow",
+ "scope": [
+ "storage.type.function"
+ ],
+ "settings": {
+ "foreground": "#ff8f40"
+ }
+ },
+ {
+ "name": "Java primitive variable types",
+ "scope": [
+ "source.java storage.type.primitive"
+ ],
+ "settings": {
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": [
+ "entity.name.function"
+ ],
+ "settings": {
+ "foreground": "#ffb454"
+ }
+ },
+ {
+ "name": "Function arguments",
+ "scope": [
+ "variable.parameter",
+ "meta.parameter"
+ ],
+ "settings": {
+ "foreground": "#d2a6ff"
+ }
+ },
+ {
+ "name": "Function call",
+ "scope": [
+ "variable.function",
+ "variable.annotation",
+ "meta.function-call.generic",
+ "support.function.go"
+ ],
+ "settings": {
+ "foreground": "#ffb454"
+ }
+ },
+ {
+ "name": "Library function",
+ "scope": [
+ "support.function",
+ "support.macro"
+ ],
+ "settings": {
+ "foreground": "#f07178"
+ }
+ },
+ {
+ "name": "Imports and packages",
+ "scope": [
+ "entity.name.import",
+ "entity.name.package"
+ ],
+ "settings": {
+ "foreground": "#aad94c"
+ }
+ },
+ {
+ "name": "Entity name",
+ "scope": [
+ "entity.name"
+ ],
+ "settings": {
+ "foreground": "#59c2ff"
+ }
+ },
+ {
+ "name": "Tag",
+ "scope": [
+ "entity.name.tag",
+ "meta.tag.sgml"
+ ],
+ "settings": {
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "JSX Component",
+ "scope": [
+ "support.class.component"
+ ],
+ "settings": {
+ "foreground": "#59c2ff"
+ }
+ },
+ {
+ "name": "Tag start/end",
+ "scope": [
+ "punctuation.definition.tag.end",
+ "punctuation.definition.tag.begin",
+ "punctuation.definition.tag"
+ ],
+ "settings": {
+ "foreground": "#39bae680"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": [
+ "entity.other.attribute-name"
+ ],
+ "settings": {
+ "foreground": "#ffb454"
+ }
+ },
+ {
+ "name": "Library constant",
+ "scope": [
+ "support.constant"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#f29668"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": [
+ "support.type",
+ "support.class",
+ "source.go storage.type"
+ ],
+ "settings": {
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "Decorators/annotation",
+ "scope": [
+ "meta.decorator variable.other",
+ "meta.decorator punctuation.decorator",
+ "storage.type.annotation"
+ ],
+ "settings": {
+ "foreground": "#e6b673"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": [
+ "invalid"
+ ],
+ "settings": {
+ "foreground": "#d95757"
+ }
+ },
+ {
+ "name": "diff.header",
+ "scope": [
+ "meta.diff",
+ "meta.diff.header"
+ ],
+ "settings": {
+ "foreground": "#c594c5"
+ }
+ },
+ {
+ "name": "Ruby class methods",
+ "scope": [
+ "source.ruby variable.other.readwrite"
+ ],
+ "settings": {
+ "foreground": "#ffb454"
+ }
+ },
+ {
+ "name": "CSS tag names",
+ "scope": [
+ "source.css entity.name.tag",
+ "source.sass entity.name.tag",
+ "source.scss entity.name.tag",
+ "source.less entity.name.tag",
+ "source.stylus entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#59c2ff"
+ }
+ },
+ {
+ "name": "CSS browser prefix",
+ "scope": [
+ "source.css support.type",
+ "source.sass support.type",
+ "source.scss support.type",
+ "source.less support.type",
+ "source.stylus support.type"
+ ],
+ "settings": {
+ "foreground": "#acb6bf8c"
+ }
+ },
+ {
+ "name": "CSS Properties",
+ "scope": [
+ "support.type.property-name"
+ ],
+ "settings": {
+ "fontStyle": "normal",
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "Search Results Numbers",
+ "scope": [
+ "constant.numeric.line-number.find-in-files - match"
+ ],
+ "settings": {
+ "foreground": "#acb6bf8c"
+ }
+ },
+ {
+ "name": "Search Results Match Numbers",
+ "scope": [
+ "constant.numeric.line-number.match"
+ ],
+ "settings": {
+ "foreground": "#ff8f40"
+ }
+ },
+ {
+ "name": "Search Results Lines",
+ "scope": [
+ "entity.name.filename.find-in-files"
+ ],
+ "settings": {
+ "foreground": "#aad94c"
+ }
+ },
+ {
+ "scope": [
+ "message.error"
+ ],
+ "settings": {
+ "foreground": "#d95757"
+ }
+ },
+ {
+ "name": "Markup heading",
+ "scope": [
+ "markup.heading",
+ "markup.heading entity.name"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#aad94c"
+ }
+ },
+ {
+ "name": "Markup links",
+ "scope": [
+ "markup.underline.link",
+ "string.other.link"
+ ],
+ "settings": {
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "Markup Italic",
+ "scope": [
+ "markup.italic"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#f07178"
+ }
+ },
+ {
+ "name": "Markup Bold",
+ "scope": [
+ "markup.bold"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#f07178"
+ }
+ },
+ {
+ "name": "Markup Bold/italic",
+ "scope": [
+ "markup.italic markup.bold",
+ "markup.bold markup.italic"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "Markup Code",
+ "scope": [
+ "markup.raw"
+ ],
+ "settings": {
+ "background": "#bfbdb605"
+ }
+ },
+ {
+ "name": "Markup Code Inline",
+ "scope": [
+ "markup.raw.inline"
+ ],
+ "settings": {
+ "background": "#bfbdb60f"
+ }
+ },
+ {
+ "name": "Markdown Separator",
+ "scope": [
+ "meta.separator"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "background": "#bfbdb60f",
+ "foreground": "#acb6bf8c"
+ }
+ },
+ {
+ "name": "Markup Blockquote",
+ "scope": [
+ "markup.quote"
+ ],
+ "settings": {
+ "foreground": "#95e6cb",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup List Bullet",
+ "scope": [
+ "markup.list punctuation.definition.list.begin"
+ ],
+ "settings": {
+ "foreground": "#ffb454"
+ }
+ },
+ {
+ "name": "Markup added",
+ "scope": [
+ "markup.inserted"
+ ],
+ "settings": {
+ "foreground": "#7fd962"
+ }
+ },
+ {
+ "name": "Markup modified",
+ "scope": [
+ "markup.changed"
+ ],
+ "settings": {
+ "foreground": "#73b8ff"
+ }
+ },
+ {
+ "name": "Markup removed",
+ "scope": [
+ "markup.deleted"
+ ],
+ "settings": {
+ "foreground": "#f26d78"
+ }
+ },
+ {
+ "name": "Markup Strike",
+ "scope": [
+ "markup.strike"
+ ],
+ "settings": {
+ "foreground": "#e6b673"
+ }
+ },
+ {
+ "name": "Markup Table",
+ "scope": [
+ "markup.table"
+ ],
+ "settings": {
+ "background": "#bfbdb60f",
+ "foreground": "#39bae6"
+ }
+ },
+ {
+ "name": "Markup Raw Inline",
+ "scope": [
+ "text.html.markdown markup.inline.raw"
+ ],
+ "settings": {
+ "foreground": "#f29668"
+ }
+ },
+ {
+ "name": "Markdown - Line Break",
+ "scope": [
+ "text.html.markdown meta.dummy.line-break"
+ ],
+ "settings": {
+ "background": "#acb6bf8c",
+ "foreground": "#acb6bf8c"
+ }
+ },
+ {
+ "name": "Markdown - Raw Block Fenced",
+ "scope": [
+ "punctuation.definition.markdown"
+ ],
+ "settings": {
+ "background": "#bfbdb6",
+ "foreground": "#acb6bf8c"
+ }
+ }
+ ],
+ "semanticHighlighting": true,
+ "semanticTokenColors": {
+ "parameter.label": "#bfbdb6"
+ }
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/ayu/ayu-light.json b/assets/themes/src/vscode/ayu/ayu-light.json
new file mode 100644
index 0000000000..782b04ac76
--- /dev/null
+++ b/assets/themes/src/vscode/ayu/ayu-light.json
@@ -0,0 +1,847 @@
+{
+ "type": "light",
+ "colors": {
+ "focusBorder": "#ffaa33b3",
+ "foreground": "#8a9199",
+ "widget.shadow": "#00000026",
+ "selection.background": "#035bd626",
+ "icon.foreground": "#8a9199",
+ "errorForeground": "#e65050",
+ "descriptionForeground": "#8a9199",
+ "textBlockQuote.background": "#f3f4f5",
+ "textLink.foreground": "#ffaa33",
+ "textLink.activeForeground": "#ffaa33",
+ "textPreformat.foreground": "#5c6166",
+ "button.background": "#ffaa33",
+ "button.foreground": "#804a00",
+ "button.hoverBackground": "#f9a52e",
+ "button.secondaryBackground": "#8a919933",
+ "button.secondaryForeground": "#5c6166",
+ "button.secondaryHoverBackground": "#8a919980",
+ "dropdown.background": "#fcfcfc",
+ "dropdown.foreground": "#8a9199",
+ "dropdown.border": "#8a919945",
+ "input.background": "#fcfcfc",
+ "input.border": "#8a919945",
+ "input.foreground": "#5c6166",
+ "input.placeholderForeground": "#8a919980",
+ "inputOption.activeBorder": "#f4a0284d",
+ "inputOption.activeBackground": "#ffaa3333",
+ "inputOption.activeForeground": "#f4a028",
+ "inputValidation.errorBackground": "#fcfcfc",
+ "inputValidation.errorBorder": "#e65050",
+ "inputValidation.infoBackground": "#f8f9fa",
+ "inputValidation.infoBorder": "#55b4d4",
+ "inputValidation.warningBackground": "#f8f9fa",
+ "inputValidation.warningBorder": "#f2ae49",
+ "scrollbar.shadow": "#6b7d8f00",
+ "scrollbarSlider.background": "#8a919966",
+ "scrollbarSlider.hoverBackground": "#8a919999",
+ "scrollbarSlider.activeBackground": "#8a9199b3",
+ "badge.background": "#ffaa3333",
+ "badge.foreground": "#f4a028",
+ "progressBar.background": "#ffaa33",
+ "list.activeSelectionBackground": "#56728f1f",
+ "list.activeSelectionForeground": "#5c6166",
+ "list.focusBackground": "#56728f1f",
+ "list.focusForeground": "#5c6166",
+ "list.focusOutline": "#56728f1f",
+ "list.highlightForeground": "#ffaa33",
+ "list.deemphasizedForeground": "#e65050",
+ "list.hoverBackground": "#56728f1f",
+ "list.inactiveSelectionBackground": "#6b7d8f1f",
+ "list.inactiveSelectionForeground": "#8a9199",
+ "list.invalidItemForeground": "#8a91994d",
+ "list.errorForeground": "#e65050",
+ "tree.indentGuidesStroke": "#8a919959",
+ "listFilterWidget.background": "#f3f4f5",
+ "listFilterWidget.outline": "#ffaa33",
+ "listFilterWidget.noMatchesOutline": "#e65050",
+ "list.filterMatchBackground": "#ddcaef73",
+ "list.filterMatchBorder": "#ecd9ff73",
+ "activityBar.background": "#f8f9fa",
+ "activityBar.foreground": "#8a9199cc",
+ "activityBar.inactiveForeground": "#8a919999",
+ "activityBar.border": "#f8f9fa",
+ "activityBar.activeBorder": "#ffaa33",
+ "activityBarBadge.background": "#ffaa33",
+ "activityBarBadge.foreground": "#f8f9fa",
+ "sideBar.background": "#f8f9fa",
+ "sideBar.border": "#f8f9fa",
+ "sideBarTitle.foreground": "#8a9199",
+ "sideBarSectionHeader.background": "#f8f9fa",
+ "sideBarSectionHeader.foreground": "#8a9199",
+ "sideBarSectionHeader.border": "#f8f9fa",
+ "minimap.background": "#f8f9fa",
+ "minimap.selectionHighlight": "#035bd626",
+ "minimap.errorHighlight": "#e65050",
+ "minimap.findMatchHighlight": "#ecd9ff",
+ "minimapGutter.addedBackground": "#6cbf43",
+ "minimapGutter.modifiedBackground": "#478acc",
+ "minimapGutter.deletedBackground": "#ff7383",
+ "editorGroup.border": "#6b7d8f1f",
+ "editorGroup.background": "#f3f4f5",
+ "editorGroupHeader.noTabsBackground": "#f8f9fa",
+ "editorGroupHeader.tabsBackground": "#f8f9fa",
+ "editorGroupHeader.tabsBorder": "#f8f9fa",
+ "tab.activeBackground": "#f8f9fa",
+ "tab.activeForeground": "#5c6166",
+ "tab.border": "#f8f9fa",
+ "tab.activeBorder": "#ffaa33",
+ "tab.unfocusedActiveBorder": "#8a9199",
+ "tab.inactiveBackground": "#f8f9fa",
+ "tab.inactiveForeground": "#8a9199",
+ "tab.unfocusedActiveForeground": "#8a9199",
+ "tab.unfocusedInactiveForeground": "#8a9199",
+ "editor.background": "#f8f9fa",
+ "editor.foreground": "#5c6166",
+ "editorLineNumber.foreground": "#8a919966",
+ "editorLineNumber.activeForeground": "#8a9199cc",
+ "editorCursor.foreground": "#ffaa33",
+ "editor.inactiveSelectionBackground": "#035bd612",
+ "editor.selectionBackground": "#035bd626",
+ "editor.selectionHighlightBackground": "#6cbf4326",
+ "editor.selectionHighlightBorder": "#6cbf4300",
+ "editor.wordHighlightBackground": "#478acc14",
+ "editor.wordHighlightStrongBackground": "#6cbf4314",
+ "editor.wordHighlightBorder": "#478acc80",
+ "editor.wordHighlightStrongBorder": "#6cbf4380",
+ "editor.findMatchBackground": "#ecd9ff",
+ "editor.findMatchBorder": "#ecd9ff",
+ "editor.findMatchHighlightBackground": "#ecd9ff73",
+ "editor.findMatchHighlightBorder": "#ddcaef73",
+ "editor.findRangeHighlightBackground": "#ecd9ff40",
+ "editor.rangeHighlightBackground": "#ecd9ff33",
+ "editor.lineHighlightBackground": "#8a91991a",
+ "editorLink.activeForeground": "#ffaa33",
+ "editorWhitespace.foreground": "#8a919966",
+ "editorIndentGuide.background": "#8a91992e",
+ "editorIndentGuide.activeBackground": "#8a919959",
+ "editorRuler.foreground": "#8a91992e",
+ "editorCodeLens.foreground": "#787b8099",
+ "editorBracketMatch.background": "#8a91994d",
+ "editorBracketMatch.border": "#8a91994d",
+ "editor.snippetTabstopHighlightBackground": "#6cbf4333",
+ "editorOverviewRuler.border": "#6b7d8f1f",
+ "editorOverviewRuler.modifiedForeground": "#478acc",
+ "editorOverviewRuler.addedForeground": "#6cbf43",
+ "editorOverviewRuler.deletedForeground": "#ff7383",
+ "editorOverviewRuler.errorForeground": "#e65050",
+ "editorOverviewRuler.warningForeground": "#ffaa33",
+ "editorOverviewRuler.bracketMatchForeground": "#8a9199b3",
+ "editorOverviewRuler.wordHighlightForeground": "#478acc66",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#6cbf4366",
+ "editorOverviewRuler.findMatchForeground": "#ecd9ff",
+ "editorError.foreground": "#e65050",
+ "editorWarning.foreground": "#ffaa33",
+ "editorGutter.modifiedBackground": "#478acccc",
+ "editorGutter.addedBackground": "#6cbf43cc",
+ "editorGutter.deletedBackground": "#ff7383cc",
+ "diffEditor.insertedTextBackground": "#6cbf431f",
+ "diffEditor.removedTextBackground": "#ff73831f",
+ "diffEditor.diagonalFill": "#6b7d8f1f",
+ "editorWidget.background": "#f3f4f5",
+ "editorWidget.border": "#6b7d8f1f",
+ "editorHoverWidget.background": "#f3f4f5",
+ "editorHoverWidget.border": "#6b7d8f1f",
+ "editorSuggestWidget.background": "#f3f4f5",
+ "editorSuggestWidget.border": "#6b7d8f1f",
+ "editorSuggestWidget.highlightForeground": "#ffaa33",
+ "editorSuggestWidget.selectedBackground": "#56728f1f",
+ "debugExceptionWidget.border": "#6b7d8f1f",
+ "debugExceptionWidget.background": "#f3f4f5",
+ "editorMarkerNavigation.background": "#f3f4f5",
+ "peekView.border": "#56728f1f",
+ "peekViewTitle.background": "#56728f1f",
+ "peekViewTitleDescription.foreground": "#8a9199",
+ "peekViewTitleLabel.foreground": "#5c6166",
+ "peekViewEditor.background": "#f3f4f5",
+ "peekViewEditor.matchHighlightBackground": "#ecd9ff73",
+ "peekViewEditor.matchHighlightBorder": "#ddcaef73",
+ "peekViewResult.background": "#f3f4f5",
+ "peekViewResult.fileForeground": "#5c6166",
+ "peekViewResult.lineForeground": "#8a9199",
+ "peekViewResult.matchHighlightBackground": "#ecd9ff73",
+ "peekViewResult.selectionBackground": "#56728f1f",
+ "panel.background": "#f8f9fa",
+ "panel.border": "#6b7d8f1f",
+ "panelTitle.activeBorder": "#ffaa33",
+ "panelTitle.activeForeground": "#5c6166",
+ "panelTitle.inactiveForeground": "#8a9199",
+ "statusBar.background": "#f8f9fa",
+ "statusBar.foreground": "#8a9199",
+ "statusBar.border": "#f8f9fa",
+ "statusBar.debuggingBackground": "#ed9366",
+ "statusBar.debuggingForeground": "#fcfcfc",
+ "statusBar.noFolderBackground": "#f3f4f5",
+ "statusBarItem.activeBackground": "#8a919933",
+ "statusBarItem.hoverBackground": "#8a919933",
+ "statusBarItem.prominentBackground": "#6b7d8f1f",
+ "statusBarItem.prominentHoverBackground": "#00000030",
+ "statusBarItem.remoteBackground": "#ffaa33",
+ "statusBarItem.remoteForeground": "#804a00",
+ "titleBar.activeBackground": "#f8f9fa",
+ "titleBar.activeForeground": "#5c6166",
+ "titleBar.inactiveBackground": "#f8f9fa",
+ "titleBar.inactiveForeground": "#8a9199",
+ "titleBar.border": "#f8f9fa",
+ "extensionButton.prominentForeground": "#804a00",
+ "extensionButton.prominentBackground": "#ffaa33",
+ "extensionButton.prominentHoverBackground": "#f9a52e",
+ "pickerGroup.border": "#6b7d8f1f",
+ "pickerGroup.foreground": "#8a919980",
+ "debugToolBar.background": "#f3f4f5",
+ "debugIcon.breakpointForeground": "#ed9366",
+ "debugIcon.breakpointDisabledForeground": "#ed936680",
+ "debugConsoleInputIcon.foreground": "#ffaa33",
+ "welcomePage.tileBackground": "#f8f9fa",
+ "welcomePage.tileShadow": "#00000026",
+ "welcomePage.progress.background": "#8a91991a",
+ "welcomePage.buttonBackground": "#ffaa3366",
+ "walkThrough.embeddedEditorBackground": "#f3f4f5",
+ "gitDecoration.modifiedResourceForeground": "#478accb3",
+ "gitDecoration.deletedResourceForeground": "#ff7383b3",
+ "gitDecoration.untrackedResourceForeground": "#6cbf43b3",
+ "gitDecoration.ignoredResourceForeground": "#8a919980",
+ "gitDecoration.conflictingResourceForeground": "",
+ "gitDecoration.submoduleResourceForeground": "#a37accb3",
+ "settings.headerForeground": "#5c6166",
+ "settings.modifiedItemIndicator": "#478acc",
+ "keybindingLabel.background": "#8a91991a",
+ "keybindingLabel.foreground": "#5c6166",
+ "keybindingLabel.border": "#5c61661a",
+ "keybindingLabel.bottomBorder": "#5c61661a",
+ "terminal.background": "#f8f9fa",
+ "terminal.foreground": "#5c6166",
+ "terminal.ansiBlack": "#000000",
+ "terminal.ansiRed": "#ea6c6d",
+ "terminal.ansiGreen": "#6cbf43",
+ "terminal.ansiYellow": "#eca944",
+ "terminal.ansiBlue": "#3199e1",
+ "terminal.ansiMagenta": "#9e75c7",
+ "terminal.ansiCyan": "#46ba94",
+ "terminal.ansiWhite": "#c7c7c7",
+ "terminal.ansiBrightBlack": "#686868",
+ "terminal.ansiBrightRed": "#f07171",
+ "terminal.ansiBrightGreen": "#86b300",
+ "terminal.ansiBrightYellow": "#f2ae49",
+ "terminal.ansiBrightBlue": "#399ee6",
+ "terminal.ansiBrightMagenta": "#a37acc",
+ "terminal.ansiBrightCyan": "#4cbf99",
+ "terminal.ansiBrightWhite": "#d1d1d1"
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "background": "#f8f9fa",
+ "foreground": "#5c6166"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": [
+ "comment"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#787b8099"
+ }
+ },
+ {
+ "name": "String",
+ "scope": [
+ "string",
+ "constant.other.symbol"
+ ],
+ "settings": {
+ "foreground": "#86b300"
+ }
+ },
+ {
+ "name": "Regular Expressions and Escape Characters",
+ "scope": [
+ "string.regexp",
+ "constant.character",
+ "constant.other"
+ ],
+ "settings": {
+ "foreground": "#4cbf99"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": [
+ "constant.numeric"
+ ],
+ "settings": {
+ "foreground": "#a37acc"
+ }
+ },
+ {
+ "name": "Built-in constants",
+ "scope": [
+ "constant.language"
+ ],
+ "settings": {
+ "foreground": "#a37acc"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": [
+ "variable",
+ "variable.parameter.function-call"
+ ],
+ "settings": {
+ "foreground": "#5c6166"
+ }
+ },
+ {
+ "name": "Member Variable",
+ "scope": [
+ "variable.member"
+ ],
+ "settings": {
+ "foreground": "#f07171"
+ }
+ },
+ {
+ "name": "Language variable",
+ "scope": [
+ "variable.language"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage"
+ ],
+ "settings": {
+ "foreground": "#fa8d3e"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": [
+ "keyword"
+ ],
+ "settings": {
+ "foreground": "#fa8d3e"
+ }
+ },
+ {
+ "name": "Operators",
+ "scope": [
+ "keyword.operator"
+ ],
+ "settings": {
+ "foreground": "#ed9366"
+ }
+ },
+ {
+ "name": "Separators like ; or ,",
+ "scope": [
+ "punctuation.separator",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#5c6166b3"
+ }
+ },
+ {
+ "name": "Punctuation",
+ "scope": [
+ "punctuation.section"
+ ],
+ "settings": {
+ "foreground": "#5c6166"
+ }
+ },
+ {
+ "name": "Accessor",
+ "scope": [
+ "punctuation.accessor"
+ ],
+ "settings": {
+ "foreground": "#ed9366"
+ }
+ },
+ {
+ "name": "JavaScript/TypeScript interpolation punctuation",
+ "scope": [
+ "punctuation.definition.template-expression"
+ ],
+ "settings": {
+ "foreground": "#fa8d3e"
+ }
+ },
+ {
+ "name": "Ruby interpolation punctuation",
+ "scope": [
+ "punctuation.section.embedded"
+ ],
+ "settings": {
+ "foreground": "#fa8d3e"
+ }
+ },
+ {
+ "name": "Interpolation text",
+ "scope": [
+ "meta.embedded"
+ ],
+ "settings": {
+ "foreground": "#5c6166"
+ }
+ },
+ {
+ "name": "Types fixes",
+ "scope": [
+ "source.java storage.type",
+ "source.haskell storage.type",
+ "source.c storage.type"
+ ],
+ "settings": {
+ "foreground": "#399ee6"
+ }
+ },
+ {
+ "name": "Inherited class type",
+ "scope": [
+ "entity.other.inherited-class"
+ ],
+ "settings": {
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "Lambda arrow",
+ "scope": [
+ "storage.type.function"
+ ],
+ "settings": {
+ "foreground": "#fa8d3e"
+ }
+ },
+ {
+ "name": "Java primitive variable types",
+ "scope": [
+ "source.java storage.type.primitive"
+ ],
+ "settings": {
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": [
+ "entity.name.function"
+ ],
+ "settings": {
+ "foreground": "#f2ae49"
+ }
+ },
+ {
+ "name": "Function arguments",
+ "scope": [
+ "variable.parameter",
+ "meta.parameter"
+ ],
+ "settings": {
+ "foreground": "#a37acc"
+ }
+ },
+ {
+ "name": "Function call",
+ "scope": [
+ "variable.function",
+ "variable.annotation",
+ "meta.function-call.generic",
+ "support.function.go"
+ ],
+ "settings": {
+ "foreground": "#f2ae49"
+ }
+ },
+ {
+ "name": "Library function",
+ "scope": [
+ "support.function",
+ "support.macro"
+ ],
+ "settings": {
+ "foreground": "#f07171"
+ }
+ },
+ {
+ "name": "Imports and packages",
+ "scope": [
+ "entity.name.import",
+ "entity.name.package"
+ ],
+ "settings": {
+ "foreground": "#86b300"
+ }
+ },
+ {
+ "name": "Entity name",
+ "scope": [
+ "entity.name"
+ ],
+ "settings": {
+ "foreground": "#399ee6"
+ }
+ },
+ {
+ "name": "Tag",
+ "scope": [
+ "entity.name.tag",
+ "meta.tag.sgml"
+ ],
+ "settings": {
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "JSX Component",
+ "scope": [
+ "support.class.component"
+ ],
+ "settings": {
+ "foreground": "#399ee6"
+ }
+ },
+ {
+ "name": "Tag start/end",
+ "scope": [
+ "punctuation.definition.tag.end",
+ "punctuation.definition.tag.begin",
+ "punctuation.definition.tag"
+ ],
+ "settings": {
+ "foreground": "#55b4d480"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": [
+ "entity.other.attribute-name"
+ ],
+ "settings": {
+ "foreground": "#f2ae49"
+ }
+ },
+ {
+ "name": "Library constant",
+ "scope": [
+ "support.constant"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#ed9366"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": [
+ "support.type",
+ "support.class",
+ "source.go storage.type"
+ ],
+ "settings": {
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "Decorators/annotation",
+ "scope": [
+ "meta.decorator variable.other",
+ "meta.decorator punctuation.decorator",
+ "storage.type.annotation"
+ ],
+ "settings": {
+ "foreground": "#e6ba7e"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": [
+ "invalid"
+ ],
+ "settings": {
+ "foreground": "#e65050"
+ }
+ },
+ {
+ "name": "diff.header",
+ "scope": [
+ "meta.diff",
+ "meta.diff.header"
+ ],
+ "settings": {
+ "foreground": "#c594c5"
+ }
+ },
+ {
+ "name": "Ruby class methods",
+ "scope": [
+ "source.ruby variable.other.readwrite"
+ ],
+ "settings": {
+ "foreground": "#f2ae49"
+ }
+ },
+ {
+ "name": "CSS tag names",
+ "scope": [
+ "source.css entity.name.tag",
+ "source.sass entity.name.tag",
+ "source.scss entity.name.tag",
+ "source.less entity.name.tag",
+ "source.stylus entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#399ee6"
+ }
+ },
+ {
+ "name": "CSS browser prefix",
+ "scope": [
+ "source.css support.type",
+ "source.sass support.type",
+ "source.scss support.type",
+ "source.less support.type",
+ "source.stylus support.type"
+ ],
+ "settings": {
+ "foreground": "#787b8099"
+ }
+ },
+ {
+ "name": "CSS Properties",
+ "scope": [
+ "support.type.property-name"
+ ],
+ "settings": {
+ "fontStyle": "normal",
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "Search Results Numbers",
+ "scope": [
+ "constant.numeric.line-number.find-in-files - match"
+ ],
+ "settings": {
+ "foreground": "#787b8099"
+ }
+ },
+ {
+ "name": "Search Results Match Numbers",
+ "scope": [
+ "constant.numeric.line-number.match"
+ ],
+ "settings": {
+ "foreground": "#fa8d3e"
+ }
+ },
+ {
+ "name": "Search Results Lines",
+ "scope": [
+ "entity.name.filename.find-in-files"
+ ],
+ "settings": {
+ "foreground": "#86b300"
+ }
+ },
+ {
+ "scope": [
+ "message.error"
+ ],
+ "settings": {
+ "foreground": "#e65050"
+ }
+ },
+ {
+ "name": "Markup heading",
+ "scope": [
+ "markup.heading",
+ "markup.heading entity.name"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#86b300"
+ }
+ },
+ {
+ "name": "Markup links",
+ "scope": [
+ "markup.underline.link",
+ "string.other.link"
+ ],
+ "settings": {
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "Markup Italic",
+ "scope": [
+ "markup.italic"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#f07171"
+ }
+ },
+ {
+ "name": "Markup Bold",
+ "scope": [
+ "markup.bold"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#f07171"
+ }
+ },
+ {
+ "name": "Markup Bold/italic",
+ "scope": [
+ "markup.italic markup.bold",
+ "markup.bold markup.italic"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "Markup Code",
+ "scope": [
+ "markup.raw"
+ ],
+ "settings": {
+ "background": "#5c616605"
+ }
+ },
+ {
+ "name": "Markup Code Inline",
+ "scope": [
+ "markup.raw.inline"
+ ],
+ "settings": {
+ "background": "#5c61660f"
+ }
+ },
+ {
+ "name": "Markdown Separator",
+ "scope": [
+ "meta.separator"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "background": "#5c61660f",
+ "foreground": "#787b8099"
+ }
+ },
+ {
+ "name": "Markup Blockquote",
+ "scope": [
+ "markup.quote"
+ ],
+ "settings": {
+ "foreground": "#4cbf99",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup List Bullet",
+ "scope": [
+ "markup.list punctuation.definition.list.begin"
+ ],
+ "settings": {
+ "foreground": "#f2ae49"
+ }
+ },
+ {
+ "name": "Markup added",
+ "scope": [
+ "markup.inserted"
+ ],
+ "settings": {
+ "foreground": "#6cbf43"
+ }
+ },
+ {
+ "name": "Markup modified",
+ "scope": [
+ "markup.changed"
+ ],
+ "settings": {
+ "foreground": "#478acc"
+ }
+ },
+ {
+ "name": "Markup removed",
+ "scope": [
+ "markup.deleted"
+ ],
+ "settings": {
+ "foreground": "#ff7383"
+ }
+ },
+ {
+ "name": "Markup Strike",
+ "scope": [
+ "markup.strike"
+ ],
+ "settings": {
+ "foreground": "#e6ba7e"
+ }
+ },
+ {
+ "name": "Markup Table",
+ "scope": [
+ "markup.table"
+ ],
+ "settings": {
+ "background": "#5c61660f",
+ "foreground": "#55b4d4"
+ }
+ },
+ {
+ "name": "Markup Raw Inline",
+ "scope": [
+ "text.html.markdown markup.inline.raw"
+ ],
+ "settings": {
+ "foreground": "#ed9366"
+ }
+ },
+ {
+ "name": "Markdown - Line Break",
+ "scope": [
+ "text.html.markdown meta.dummy.line-break"
+ ],
+ "settings": {
+ "background": "#787b8099",
+ "foreground": "#787b8099"
+ }
+ },
+ {
+ "name": "Markdown - Raw Block Fenced",
+ "scope": [
+ "punctuation.definition.markdown"
+ ],
+ "settings": {
+ "background": "#5c6166",
+ "foreground": "#787b8099"
+ }
+ }
+ ],
+ "semanticHighlighting": true,
+ "semanticTokenColors": {
+ "parameter.label": "#5c6166"
+ }
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/ayu/ayu-mirage.json b/assets/themes/src/vscode/ayu/ayu-mirage.json
new file mode 100644
index 0000000000..7708236829
--- /dev/null
+++ b/assets/themes/src/vscode/ayu/ayu-mirage.json
@@ -0,0 +1,847 @@
+{
+ "type": "dark",
+ "colors": {
+ "focusBorder": "#ffcc66b3",
+ "foreground": "#707a8c",
+ "widget.shadow": "#12151cb3",
+ "selection.background": "#409fff40",
+ "icon.foreground": "#707a8c",
+ "errorForeground": "#ff6666",
+ "descriptionForeground": "#707a8c",
+ "textBlockQuote.background": "#1c212b",
+ "textLink.foreground": "#ffcc66",
+ "textLink.activeForeground": "#ffcc66",
+ "textPreformat.foreground": "#cccac2",
+ "button.background": "#ffcc66",
+ "button.foreground": "#805500",
+ "button.hoverBackground": "#fac761",
+ "button.secondaryBackground": "#707a8c33",
+ "button.secondaryForeground": "#cccac2",
+ "button.secondaryHoverBackground": "#707a8c80",
+ "dropdown.background": "#242936",
+ "dropdown.foreground": "#707a8c",
+ "dropdown.border": "#707a8c45",
+ "input.background": "#242936",
+ "input.border": "#707a8c45",
+ "input.foreground": "#cccac2",
+ "input.placeholderForeground": "#707a8c80",
+ "inputOption.activeBorder": "#ffcc664d",
+ "inputOption.activeBackground": "#ffcc6633",
+ "inputOption.activeForeground": "#ffcc66",
+ "inputValidation.errorBackground": "#242936",
+ "inputValidation.errorBorder": "#ff6666",
+ "inputValidation.infoBackground": "#1f2430",
+ "inputValidation.infoBorder": "#5ccfe6",
+ "inputValidation.warningBackground": "#1f2430",
+ "inputValidation.warningBorder": "#ffd173",
+ "scrollbar.shadow": "#171b2400",
+ "scrollbarSlider.background": "#707a8c66",
+ "scrollbarSlider.hoverBackground": "#707a8c99",
+ "scrollbarSlider.activeBackground": "#707a8cb3",
+ "badge.background": "#ffcc6633",
+ "badge.foreground": "#ffcc66",
+ "progressBar.background": "#ffcc66",
+ "list.activeSelectionBackground": "#63759926",
+ "list.activeSelectionForeground": "#cccac2",
+ "list.focusBackground": "#63759926",
+ "list.focusForeground": "#cccac2",
+ "list.focusOutline": "#63759926",
+ "list.highlightForeground": "#ffcc66",
+ "list.deemphasizedForeground": "#ff6666",
+ "list.hoverBackground": "#63759926",
+ "list.inactiveSelectionBackground": "#69758c1f",
+ "list.inactiveSelectionForeground": "#707a8c",
+ "list.invalidItemForeground": "#707a8c4d",
+ "list.errorForeground": "#ff6666",
+ "tree.indentGuidesStroke": "#8a919959",
+ "listFilterWidget.background": "#1c212b",
+ "listFilterWidget.outline": "#ffcc66",
+ "listFilterWidget.noMatchesOutline": "#ff6666",
+ "list.filterMatchBackground": "#5c467266",
+ "list.filterMatchBorder": "#69538066",
+ "activityBar.background": "#1f2430",
+ "activityBar.foreground": "#707a8ccc",
+ "activityBar.inactiveForeground": "#707a8c99",
+ "activityBar.border": "#1f2430",
+ "activityBar.activeBorder": "#ffcc66",
+ "activityBarBadge.background": "#ffcc66",
+ "activityBarBadge.foreground": "#805500",
+ "sideBar.background": "#1f2430",
+ "sideBar.border": "#1f2430",
+ "sideBarTitle.foreground": "#707a8c",
+ "sideBarSectionHeader.background": "#1f2430",
+ "sideBarSectionHeader.foreground": "#707a8c",
+ "sideBarSectionHeader.border": "#1f2430",
+ "minimap.background": "#1f2430",
+ "minimap.selectionHighlight": "#409fff40",
+ "minimap.errorHighlight": "#ff6666",
+ "minimap.findMatchHighlight": "#695380",
+ "minimapGutter.addedBackground": "#87d96c",
+ "minimapGutter.modifiedBackground": "#80bfff",
+ "minimapGutter.deletedBackground": "#f27983",
+ "editorGroup.border": "#171b24",
+ "editorGroup.background": "#1c212b",
+ "editorGroupHeader.noTabsBackground": "#1f2430",
+ "editorGroupHeader.tabsBackground": "#1f2430",
+ "editorGroupHeader.tabsBorder": "#1f2430",
+ "tab.activeBackground": "#1f2430",
+ "tab.activeForeground": "#cccac2",
+ "tab.border": "#1f2430",
+ "tab.activeBorder": "#ffcc66",
+ "tab.unfocusedActiveBorder": "#707a8c",
+ "tab.inactiveBackground": "#1f2430",
+ "tab.inactiveForeground": "#707a8c",
+ "tab.unfocusedActiveForeground": "#707a8c",
+ "tab.unfocusedInactiveForeground": "#707a8c",
+ "editor.background": "#1f2430",
+ "editor.foreground": "#cccac2",
+ "editorLineNumber.foreground": "#8a919966",
+ "editorLineNumber.activeForeground": "#8a9199cc",
+ "editorCursor.foreground": "#ffcc66",
+ "editor.inactiveSelectionBackground": "#409fff21",
+ "editor.selectionBackground": "#409fff40",
+ "editor.selectionHighlightBackground": "#87d96c26",
+ "editor.selectionHighlightBorder": "#87d96c00",
+ "editor.wordHighlightBackground": "#80bfff14",
+ "editor.wordHighlightStrongBackground": "#87d96c14",
+ "editor.wordHighlightBorder": "#80bfff80",
+ "editor.wordHighlightStrongBorder": "#87d96c80",
+ "editor.findMatchBackground": "#695380",
+ "editor.findMatchBorder": "#695380",
+ "editor.findMatchHighlightBackground": "#69538066",
+ "editor.findMatchHighlightBorder": "#5c467266",
+ "editor.findRangeHighlightBackground": "#69538040",
+ "editor.rangeHighlightBackground": "#69538033",
+ "editor.lineHighlightBackground": "#1a1f29",
+ "editorLink.activeForeground": "#ffcc66",
+ "editorWhitespace.foreground": "#8a919966",
+ "editorIndentGuide.background": "#8a91992e",
+ "editorIndentGuide.activeBackground": "#8a919959",
+ "editorRuler.foreground": "#8a91992e",
+ "editorCodeLens.foreground": "#b8cfe680",
+ "editorBracketMatch.background": "#8a91994d",
+ "editorBracketMatch.border": "#8a91994d",
+ "editor.snippetTabstopHighlightBackground": "#87d96c33",
+ "editorOverviewRuler.border": "#171b24",
+ "editorOverviewRuler.modifiedForeground": "#80bfff",
+ "editorOverviewRuler.addedForeground": "#87d96c",
+ "editorOverviewRuler.deletedForeground": "#f27983",
+ "editorOverviewRuler.errorForeground": "#ff6666",
+ "editorOverviewRuler.warningForeground": "#ffcc66",
+ "editorOverviewRuler.bracketMatchForeground": "#8a9199b3",
+ "editorOverviewRuler.wordHighlightForeground": "#80bfff66",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#87d96c66",
+ "editorOverviewRuler.findMatchForeground": "#695380",
+ "editorError.foreground": "#ff6666",
+ "editorWarning.foreground": "#ffcc66",
+ "editorGutter.modifiedBackground": "#80bfffcc",
+ "editorGutter.addedBackground": "#87d96ccc",
+ "editorGutter.deletedBackground": "#f27983cc",
+ "diffEditor.insertedTextBackground": "#87d96c1f",
+ "diffEditor.removedTextBackground": "#f279831f",
+ "diffEditor.diagonalFill": "#171b24",
+ "editorWidget.background": "#1c212b",
+ "editorWidget.border": "#171b24",
+ "editorHoverWidget.background": "#1c212b",
+ "editorHoverWidget.border": "#171b24",
+ "editorSuggestWidget.background": "#1c212b",
+ "editorSuggestWidget.border": "#171b24",
+ "editorSuggestWidget.highlightForeground": "#ffcc66",
+ "editorSuggestWidget.selectedBackground": "#63759926",
+ "debugExceptionWidget.border": "#171b24",
+ "debugExceptionWidget.background": "#1c212b",
+ "editorMarkerNavigation.background": "#1c212b",
+ "peekView.border": "#63759926",
+ "peekViewTitle.background": "#63759926",
+ "peekViewTitleDescription.foreground": "#707a8c",
+ "peekViewTitleLabel.foreground": "#cccac2",
+ "peekViewEditor.background": "#1c212b",
+ "peekViewEditor.matchHighlightBackground": "#69538066",
+ "peekViewEditor.matchHighlightBorder": "#5c467266",
+ "peekViewResult.background": "#1c212b",
+ "peekViewResult.fileForeground": "#cccac2",
+ "peekViewResult.lineForeground": "#707a8c",
+ "peekViewResult.matchHighlightBackground": "#69538066",
+ "peekViewResult.selectionBackground": "#63759926",
+ "panel.background": "#1f2430",
+ "panel.border": "#171b24",
+ "panelTitle.activeBorder": "#ffcc66",
+ "panelTitle.activeForeground": "#cccac2",
+ "panelTitle.inactiveForeground": "#707a8c",
+ "statusBar.background": "#1f2430",
+ "statusBar.foreground": "#707a8c",
+ "statusBar.border": "#1f2430",
+ "statusBar.debuggingBackground": "#f29e74",
+ "statusBar.debuggingForeground": "#242936",
+ "statusBar.noFolderBackground": "#1c212b",
+ "statusBarItem.activeBackground": "#707a8c33",
+ "statusBarItem.hoverBackground": "#707a8c33",
+ "statusBarItem.prominentBackground": "#171b24",
+ "statusBarItem.prominentHoverBackground": "#00000030",
+ "statusBarItem.remoteBackground": "#ffcc66",
+ "statusBarItem.remoteForeground": "#805500",
+ "titleBar.activeBackground": "#1f2430",
+ "titleBar.activeForeground": "#cccac2",
+ "titleBar.inactiveBackground": "#1f2430",
+ "titleBar.inactiveForeground": "#707a8c",
+ "titleBar.border": "#1f2430",
+ "extensionButton.prominentForeground": "#805500",
+ "extensionButton.prominentBackground": "#ffcc66",
+ "extensionButton.prominentHoverBackground": "#fac761",
+ "pickerGroup.border": "#171b24",
+ "pickerGroup.foreground": "#707a8c80",
+ "debugToolBar.background": "#1c212b",
+ "debugIcon.breakpointForeground": "#f29e74",
+ "debugIcon.breakpointDisabledForeground": "#f29e7480",
+ "debugConsoleInputIcon.foreground": "#ffcc66",
+ "welcomePage.tileBackground": "#1f2430",
+ "welcomePage.tileShadow": "#12151cb3",
+ "welcomePage.progress.background": "#1a1f29",
+ "welcomePage.buttonBackground": "#ffcc6666",
+ "walkThrough.embeddedEditorBackground": "#1c212b",
+ "gitDecoration.modifiedResourceForeground": "#80bfffb3",
+ "gitDecoration.deletedResourceForeground": "#f27983b3",
+ "gitDecoration.untrackedResourceForeground": "#87d96cb3",
+ "gitDecoration.ignoredResourceForeground": "#707a8c80",
+ "gitDecoration.conflictingResourceForeground": "",
+ "gitDecoration.submoduleResourceForeground": "#dfbfffb3",
+ "settings.headerForeground": "#cccac2",
+ "settings.modifiedItemIndicator": "#80bfff",
+ "keybindingLabel.background": "#707a8c1a",
+ "keybindingLabel.foreground": "#cccac2",
+ "keybindingLabel.border": "#cccac21a",
+ "keybindingLabel.bottomBorder": "#cccac21a",
+ "terminal.background": "#1f2430",
+ "terminal.foreground": "#cccac2",
+ "terminal.ansiBlack": "#171b24",
+ "terminal.ansiRed": "#ed8274",
+ "terminal.ansiGreen": "#87d96c",
+ "terminal.ansiYellow": "#facc6e",
+ "terminal.ansiBlue": "#6dcbfa",
+ "terminal.ansiMagenta": "#dabafa",
+ "terminal.ansiCyan": "#90e1c6",
+ "terminal.ansiWhite": "#c7c7c7",
+ "terminal.ansiBrightBlack": "#686868",
+ "terminal.ansiBrightRed": "#f28779",
+ "terminal.ansiBrightGreen": "#d5ff80",
+ "terminal.ansiBrightYellow": "#ffd173",
+ "terminal.ansiBrightBlue": "#73d0ff",
+ "terminal.ansiBrightMagenta": "#dfbfff",
+ "terminal.ansiBrightCyan": "#95e6cb",
+ "terminal.ansiBrightWhite": "#ffffff"
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "background": "#1f2430",
+ "foreground": "#cccac2"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": [
+ "comment"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#b8cfe680"
+ }
+ },
+ {
+ "name": "String",
+ "scope": [
+ "string",
+ "constant.other.symbol"
+ ],
+ "settings": {
+ "foreground": "#d5ff80"
+ }
+ },
+ {
+ "name": "Regular Expressions and Escape Characters",
+ "scope": [
+ "string.regexp",
+ "constant.character",
+ "constant.other"
+ ],
+ "settings": {
+ "foreground": "#95e6cb"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": [
+ "constant.numeric"
+ ],
+ "settings": {
+ "foreground": "#dfbfff"
+ }
+ },
+ {
+ "name": "Built-in constants",
+ "scope": [
+ "constant.language"
+ ],
+ "settings": {
+ "foreground": "#dfbfff"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": [
+ "variable",
+ "variable.parameter.function-call"
+ ],
+ "settings": {
+ "foreground": "#cccac2"
+ }
+ },
+ {
+ "name": "Member Variable",
+ "scope": [
+ "variable.member"
+ ],
+ "settings": {
+ "foreground": "#f28779"
+ }
+ },
+ {
+ "name": "Language variable",
+ "scope": [
+ "variable.language"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage"
+ ],
+ "settings": {
+ "foreground": "#ffad66"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": [
+ "keyword"
+ ],
+ "settings": {
+ "foreground": "#ffad66"
+ }
+ },
+ {
+ "name": "Operators",
+ "scope": [
+ "keyword.operator"
+ ],
+ "settings": {
+ "foreground": "#f29e74"
+ }
+ },
+ {
+ "name": "Separators like ; or ,",
+ "scope": [
+ "punctuation.separator",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#cccac2b3"
+ }
+ },
+ {
+ "name": "Punctuation",
+ "scope": [
+ "punctuation.section"
+ ],
+ "settings": {
+ "foreground": "#cccac2"
+ }
+ },
+ {
+ "name": "Accessor",
+ "scope": [
+ "punctuation.accessor"
+ ],
+ "settings": {
+ "foreground": "#f29e74"
+ }
+ },
+ {
+ "name": "JavaScript/TypeScript interpolation punctuation",
+ "scope": [
+ "punctuation.definition.template-expression"
+ ],
+ "settings": {
+ "foreground": "#ffad66"
+ }
+ },
+ {
+ "name": "Ruby interpolation punctuation",
+ "scope": [
+ "punctuation.section.embedded"
+ ],
+ "settings": {
+ "foreground": "#ffad66"
+ }
+ },
+ {
+ "name": "Interpolation text",
+ "scope": [
+ "meta.embedded"
+ ],
+ "settings": {
+ "foreground": "#cccac2"
+ }
+ },
+ {
+ "name": "Types fixes",
+ "scope": [
+ "source.java storage.type",
+ "source.haskell storage.type",
+ "source.c storage.type"
+ ],
+ "settings": {
+ "foreground": "#73d0ff"
+ }
+ },
+ {
+ "name": "Inherited class type",
+ "scope": [
+ "entity.other.inherited-class"
+ ],
+ "settings": {
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "Lambda arrow",
+ "scope": [
+ "storage.type.function"
+ ],
+ "settings": {
+ "foreground": "#ffad66"
+ }
+ },
+ {
+ "name": "Java primitive variable types",
+ "scope": [
+ "source.java storage.type.primitive"
+ ],
+ "settings": {
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": [
+ "entity.name.function"
+ ],
+ "settings": {
+ "foreground": "#ffd173"
+ }
+ },
+ {
+ "name": "Function arguments",
+ "scope": [
+ "variable.parameter",
+ "meta.parameter"
+ ],
+ "settings": {
+ "foreground": "#dfbfff"
+ }
+ },
+ {
+ "name": "Function call",
+ "scope": [
+ "variable.function",
+ "variable.annotation",
+ "meta.function-call.generic",
+ "support.function.go"
+ ],
+ "settings": {
+ "foreground": "#ffd173"
+ }
+ },
+ {
+ "name": "Library function",
+ "scope": [
+ "support.function",
+ "support.macro"
+ ],
+ "settings": {
+ "foreground": "#f28779"
+ }
+ },
+ {
+ "name": "Imports and packages",
+ "scope": [
+ "entity.name.import",
+ "entity.name.package"
+ ],
+ "settings": {
+ "foreground": "#d5ff80"
+ }
+ },
+ {
+ "name": "Entity name",
+ "scope": [
+ "entity.name"
+ ],
+ "settings": {
+ "foreground": "#73d0ff"
+ }
+ },
+ {
+ "name": "Tag",
+ "scope": [
+ "entity.name.tag",
+ "meta.tag.sgml"
+ ],
+ "settings": {
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "JSX Component",
+ "scope": [
+ "support.class.component"
+ ],
+ "settings": {
+ "foreground": "#73d0ff"
+ }
+ },
+ {
+ "name": "Tag start/end",
+ "scope": [
+ "punctuation.definition.tag.end",
+ "punctuation.definition.tag.begin",
+ "punctuation.definition.tag"
+ ],
+ "settings": {
+ "foreground": "#5ccfe680"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": [
+ "entity.other.attribute-name"
+ ],
+ "settings": {
+ "foreground": "#ffd173"
+ }
+ },
+ {
+ "name": "Library constant",
+ "scope": [
+ "support.constant"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#f29e74"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": [
+ "support.type",
+ "support.class",
+ "source.go storage.type"
+ ],
+ "settings": {
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "Decorators/annotation",
+ "scope": [
+ "meta.decorator variable.other",
+ "meta.decorator punctuation.decorator",
+ "storage.type.annotation"
+ ],
+ "settings": {
+ "foreground": "#ffdfb3"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": [
+ "invalid"
+ ],
+ "settings": {
+ "foreground": "#ff6666"
+ }
+ },
+ {
+ "name": "diff.header",
+ "scope": [
+ "meta.diff",
+ "meta.diff.header"
+ ],
+ "settings": {
+ "foreground": "#c594c5"
+ }
+ },
+ {
+ "name": "Ruby class methods",
+ "scope": [
+ "source.ruby variable.other.readwrite"
+ ],
+ "settings": {
+ "foreground": "#ffd173"
+ }
+ },
+ {
+ "name": "CSS tag names",
+ "scope": [
+ "source.css entity.name.tag",
+ "source.sass entity.name.tag",
+ "source.scss entity.name.tag",
+ "source.less entity.name.tag",
+ "source.stylus entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#73d0ff"
+ }
+ },
+ {
+ "name": "CSS browser prefix",
+ "scope": [
+ "source.css support.type",
+ "source.sass support.type",
+ "source.scss support.type",
+ "source.less support.type",
+ "source.stylus support.type"
+ ],
+ "settings": {
+ "foreground": "#b8cfe680"
+ }
+ },
+ {
+ "name": "CSS Properties",
+ "scope": [
+ "support.type.property-name"
+ ],
+ "settings": {
+ "fontStyle": "normal",
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "Search Results Numbers",
+ "scope": [
+ "constant.numeric.line-number.find-in-files - match"
+ ],
+ "settings": {
+ "foreground": "#b8cfe680"
+ }
+ },
+ {
+ "name": "Search Results Match Numbers",
+ "scope": [
+ "constant.numeric.line-number.match"
+ ],
+ "settings": {
+ "foreground": "#ffad66"
+ }
+ },
+ {
+ "name": "Search Results Lines",
+ "scope": [
+ "entity.name.filename.find-in-files"
+ ],
+ "settings": {
+ "foreground": "#d5ff80"
+ }
+ },
+ {
+ "scope": [
+ "message.error"
+ ],
+ "settings": {
+ "foreground": "#ff6666"
+ }
+ },
+ {
+ "name": "Markup heading",
+ "scope": [
+ "markup.heading",
+ "markup.heading entity.name"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#d5ff80"
+ }
+ },
+ {
+ "name": "Markup links",
+ "scope": [
+ "markup.underline.link",
+ "string.other.link"
+ ],
+ "settings": {
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "Markup Italic",
+ "scope": [
+ "markup.italic"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#f28779"
+ }
+ },
+ {
+ "name": "Markup Bold",
+ "scope": [
+ "markup.bold"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#f28779"
+ }
+ },
+ {
+ "name": "Markup Bold/italic",
+ "scope": [
+ "markup.italic markup.bold",
+ "markup.bold markup.italic"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "Markup Code",
+ "scope": [
+ "markup.raw"
+ ],
+ "settings": {
+ "background": "#cccac205"
+ }
+ },
+ {
+ "name": "Markup Code Inline",
+ "scope": [
+ "markup.raw.inline"
+ ],
+ "settings": {
+ "background": "#cccac20f"
+ }
+ },
+ {
+ "name": "Markdown Separator",
+ "scope": [
+ "meta.separator"
+ ],
+ "settings": {
+ "fontStyle": "bold",
+ "background": "#cccac20f",
+ "foreground": "#b8cfe680"
+ }
+ },
+ {
+ "name": "Markup Blockquote",
+ "scope": [
+ "markup.quote"
+ ],
+ "settings": {
+ "foreground": "#95e6cb",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup List Bullet",
+ "scope": [
+ "markup.list punctuation.definition.list.begin"
+ ],
+ "settings": {
+ "foreground": "#ffd173"
+ }
+ },
+ {
+ "name": "Markup added",
+ "scope": [
+ "markup.inserted"
+ ],
+ "settings": {
+ "foreground": "#87d96c"
+ }
+ },
+ {
+ "name": "Markup modified",
+ "scope": [
+ "markup.changed"
+ ],
+ "settings": {
+ "foreground": "#80bfff"
+ }
+ },
+ {
+ "name": "Markup removed",
+ "scope": [
+ "markup.deleted"
+ ],
+ "settings": {
+ "foreground": "#f27983"
+ }
+ },
+ {
+ "name": "Markup Strike",
+ "scope": [
+ "markup.strike"
+ ],
+ "settings": {
+ "foreground": "#ffdfb3"
+ }
+ },
+ {
+ "name": "Markup Table",
+ "scope": [
+ "markup.table"
+ ],
+ "settings": {
+ "background": "#cccac20f",
+ "foreground": "#5ccfe6"
+ }
+ },
+ {
+ "name": "Markup Raw Inline",
+ "scope": [
+ "text.html.markdown markup.inline.raw"
+ ],
+ "settings": {
+ "foreground": "#f29e74"
+ }
+ },
+ {
+ "name": "Markdown - Line Break",
+ "scope": [
+ "text.html.markdown meta.dummy.line-break"
+ ],
+ "settings": {
+ "background": "#b8cfe680",
+ "foreground": "#b8cfe680"
+ }
+ },
+ {
+ "name": "Markdown - Raw Block Fenced",
+ "scope": [
+ "punctuation.definition.markdown"
+ ],
+ "settings": {
+ "background": "#cccac2",
+ "foreground": "#b8cfe680"
+ }
+ }
+ ],
+ "semanticHighlighting": true,
+ "semanticTokenColors": {
+ "parameter.label": "#cccac2"
+ }
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/ayu/family.json b/assets/themes/src/vscode/ayu/family.json
new file mode 100644
index 0000000000..05092a335d
--- /dev/null
+++ b/assets/themes/src/vscode/ayu/family.json
@@ -0,0 +1,21 @@
+{
+ "name": "Ayu",
+ "author": "dempfi (Ike Ku)",
+ "themes": [
+ {
+ "name": "Ayu Light",
+ "file_name": "ayu-light.json",
+ "appearance": "light"
+ },
+ {
+ "name": "Ayu Mirage",
+ "file_name": "ayu-mirage.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Ayu Dark",
+ "file_name": "ayu-dark.json",
+ "appearance": "dark"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/dracula/LICENSE b/assets/themes/src/vscode/dracula/LICENSE
new file mode 100644
index 0000000000..dcaf6d7f61
--- /dev/null
+++ b/assets/themes/src/vscode/dracula/LICENSE
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2016 Dracula Theme
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/assets/themes/src/vscode/dracula/dracula.json b/assets/themes/src/vscode/dracula/dracula.json
new file mode 100644
index 0000000000..6604a094d5
--- /dev/null
+++ b/assets/themes/src/vscode/dracula/dracula.json
@@ -0,0 +1,1067 @@
+{
+ "$schema": "vscode://schemas/color-theme",
+ "name": "Dracula",
+ "author": "Zeno Rocha",
+ "maintainers": ["Derek P Sifford "],
+ "semanticClass": "theme.dracula",
+ "semanticHighlighting": true,
+ "dracula": {
+ "base": [
+ "#282A36",
+ "#F8F8F2",
+ "#44475A",
+ "#6272A4",
+ "#8BE9FD",
+ "#50FA7B",
+ "#FFB86C",
+ "#FF79C6",
+ "#BD93F9",
+ "#FF5555",
+ "#F1FA8C"
+ ],
+ "ansi": [
+ "#21222C",
+ "#FF5555",
+ "#50FA7B",
+ "#F1FA8C",
+ "#BD93F9",
+ "#FF79C6",
+ "#8BE9FD",
+ "#F8F8F2",
+ "#6272A4",
+ "#FF6E6E",
+ "#69FF94",
+ "#FFFFA5",
+ "#D6ACFF",
+ "#FF92DF",
+ "#A4FFFF",
+ "#FFFFFF"
+ ],
+ "brightOther": ["#E9F284", "#8BE9FE"],
+ "other": [
+ "#44475A75",
+ "#FFFFFF1A",
+ "#FFFFFF",
+ "#44475A70",
+ "#424450",
+ "#343746",
+ "#21222C",
+ "#191A21"
+ ]
+ },
+ "colors": {
+ "terminal.background": "#282A36",
+ "terminal.foreground": "#F8F8F2",
+ "terminal.ansiBrightBlack": "#6272A4",
+ "terminal.ansiBrightRed": "#FF6E6E",
+ "terminal.ansiBrightGreen": "#69FF94",
+ "terminal.ansiBrightYellow": "#FFFFA5",
+ "terminal.ansiBrightBlue": "#D6ACFF",
+ "terminal.ansiBrightMagenta": "#FF92DF",
+ "terminal.ansiBrightCyan": "#A4FFFF",
+ "terminal.ansiBrightWhite": "#FFFFFF",
+ "terminal.ansiBlack": "#21222C",
+ "terminal.ansiRed": "#FF5555",
+ "terminal.ansiGreen": "#50FA7B",
+ "terminal.ansiYellow": "#F1FA8C",
+ "terminal.ansiBlue": "#BD93F9",
+ "terminal.ansiMagenta": "#FF79C6",
+ "terminal.ansiCyan": "#8BE9FD",
+ "terminal.ansiWhite": "#F8F8F2",
+ "focusBorder": "#6272A4",
+ "foreground": "#F8F8F2",
+ "selection.background": "#BD93F9",
+ "errorForeground": "#FF5555",
+ "button.background": "#44475A",
+ "button.foreground": "#F8F8F2",
+ "button.secondaryBackground": "#282A36",
+ "button.secondaryForeground": "#F8F8F2",
+ "button.secondaryHoverBackground": "#343746",
+ "dropdown.background": "#343746",
+ "dropdown.border": "#191A21",
+ "dropdown.foreground": "#F8F8F2",
+ "input.background": "#282A36",
+ "input.foreground": "#F8F8F2",
+ "input.border": "#191A21",
+ "input.placeholderForeground": "#6272A4",
+ "inputOption.activeBorder": "#BD93F9",
+ "inputValidation.infoBorder": "#FF79C6",
+ "inputValidation.warningBorder": "#FFB86C",
+ "inputValidation.errorBorder": "#FF5555",
+ "badge.foreground": "#F8F8F2",
+ "badge.background": "#44475A",
+ "progressBar.background": "#FF79C6",
+ "list.activeSelectionBackground": "#44475A",
+ "list.activeSelectionForeground": "#F8F8F2",
+ "list.dropBackground": "#44475A",
+ "list.focusBackground": "#44475A75",
+ "list.highlightForeground": "#8BE9FD",
+ "list.hoverBackground": "#44475A75",
+ "list.inactiveSelectionBackground": "#44475A75",
+ "list.warningForeground": "#FFB86C",
+ "list.errorForeground": "#FF5555",
+ "activityBar.background": "#343746",
+ "activityBar.inactiveForeground": "#6272A4",
+ "activityBar.foreground": "#F8F8F2",
+ "activityBar.activeBorder": "#FF79C680",
+ "activityBar.activeBackground": "#BD93F910",
+ "activityBarBadge.background": "#FF79C6",
+ "activityBarBadge.foreground": "#F8F8F2",
+ "sideBar.background": "#21222C",
+ "sideBarTitle.foreground": "#F8F8F2",
+ "sideBarSectionHeader.background": "#282A36",
+ "sideBarSectionHeader.border": "#191A21",
+ "editorGroup.border": "#BD93F9",
+ "editorGroup.dropBackground": "#44475A70",
+ "editorGroupHeader.tabsBackground": "#191A21",
+ "tab.activeBackground": "#282A36",
+ "tab.activeForeground": "#F8F8F2",
+ "tab.border": "#191A21",
+ "tab.activeBorderTop": "#FF79C680",
+ "tab.inactiveBackground": "#21222C",
+ "tab.inactiveForeground": "#6272A4",
+ "editor.foreground": "#F8F8F2",
+ "editor.background": "#282A36",
+ "editorLineNumber.foreground": "#6272A4",
+ "editor.selectionBackground": "#44475A",
+ "editor.selectionHighlightBackground": "#424450",
+ "editor.foldBackground": "#21222C80",
+ "editor.wordHighlightBackground": "#8BE9FD50",
+ "editor.wordHighlightStrongBackground": "#50FA7B50",
+ "editor.findMatchBackground": "#FFB86C80",
+ "editor.findMatchHighlightBackground": "#FFFFFF40",
+ "editor.findRangeHighlightBackground": "#44475A75",
+ "editor.hoverHighlightBackground": "#8BE9FD50",
+ "editor.lineHighlightBorder": "#44475A",
+ "editorLink.activeForeground": "#8BE9FD",
+ "editor.rangeHighlightBackground": "#BD93F915",
+ "editor.snippetTabstopHighlightBackground": "#282A36",
+ "editor.snippetTabstopHighlightBorder": "#6272A4",
+ "editor.snippetFinalTabstopHighlightBackground": "#282A36",
+ "editor.snippetFinalTabstopHighlightBorder": "#50FA7B",
+ "editorWhitespace.foreground": "#FFFFFF1A",
+ "editorIndentGuide.background": "#FFFFFF1A",
+ "editorIndentGuide.activeBackground": "#FFFFFF45",
+ "editorRuler.foreground": "#FFFFFF1A",
+ "editorCodeLens.foreground": "#6272A4",
+ "editorBracketHighlight.foreground1": "#F8F8F2",
+ "editorBracketHighlight.foreground2": "#FF79C6",
+ "editorBracketHighlight.foreground3": "#8BE9FD",
+ "editorBracketHighlight.foreground4": "#50FA7B",
+ "editorBracketHighlight.foreground5": "#BD93F9",
+ "editorBracketHighlight.foreground6": "#FFB86C",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#FF5555",
+ "editorOverviewRuler.border": "#191A21",
+ "editorOverviewRuler.selectionHighlightForeground": "#FFB86C",
+ "editorOverviewRuler.wordHighlightForeground": "#8BE9FD",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#50FA7B",
+ "editorOverviewRuler.modifiedForeground": "#8BE9FD80",
+ "editorOverviewRuler.addedForeground": "#50FA7B80",
+ "editorOverviewRuler.deletedForeground": "#FF555580",
+ "editorOverviewRuler.errorForeground": "#FF555580",
+ "editorOverviewRuler.warningForeground": "#FFB86C80",
+ "editorOverviewRuler.infoForeground": "#8BE9FD80",
+ "editorError.foreground": "#FF5555",
+ "editorWarning.foreground": "#8BE9FD",
+ "editorGutter.modifiedBackground": "#8BE9FD80",
+ "editorGutter.addedBackground": "#50FA7B80",
+ "editorGutter.deletedBackground": "#FF555580",
+ "gitDecoration.modifiedResourceForeground": "#8BE9FD",
+ "gitDecoration.deletedResourceForeground": "#FF5555",
+ "gitDecoration.untrackedResourceForeground": "#50FA7B",
+ "gitDecoration.ignoredResourceForeground": "#6272A4",
+ "gitDecoration.conflictingResourceForeground": "#FFB86C",
+ "diffEditor.insertedTextBackground": "#50FA7B20",
+ "diffEditor.removedTextBackground": "#FF555550",
+ "inlineChat.regionHighlight": "#343746",
+ "editorWidget.background": "#21222C",
+ "editorSuggestWidget.background": "#21222C",
+ "editorSuggestWidget.foreground": "#F8F8F2",
+ "editorSuggestWidget.selectedBackground": "#44475A",
+ "editorHoverWidget.background": "#282A36",
+ "editorHoverWidget.border": "#6272A4",
+ "editorMarkerNavigation.background": "#21222C",
+ "peekView.border": "#44475A",
+ "peekViewEditor.background": "#282A36",
+ "peekViewEditor.matchHighlightBackground": "#F1FA8C80",
+ "peekViewResult.background": "#21222C",
+ "peekViewResult.fileForeground": "#F8F8F2",
+ "peekViewResult.lineForeground": "#F8F8F2",
+ "peekViewResult.matchHighlightBackground": "#F1FA8C80",
+ "peekViewResult.selectionBackground": "#44475A",
+ "peekViewResult.selectionForeground": "#F8F8F2",
+ "peekViewTitle.background": "#191A21",
+ "peekViewTitleDescription.foreground": "#6272A4",
+ "peekViewTitleLabel.foreground": "#F8F8F2",
+ "merge.currentHeaderBackground": "#50FA7B90",
+ "merge.incomingHeaderBackground": "#BD93F990",
+ "editorOverviewRuler.currentContentForeground": "#50FA7B",
+ "editorOverviewRuler.incomingContentForeground": "#BD93F9",
+ "panel.background": "#282A36",
+ "panel.border": "#BD93F9",
+ "panelTitle.activeBorder": "#FF79C6",
+ "panelTitle.activeForeground": "#F8F8F2",
+ "panelTitle.inactiveForeground": "#6272A4",
+ "statusBar.background": "#191A21",
+ "statusBar.foreground": "#F8F8F2",
+ "statusBar.debuggingBackground": "#FF5555",
+ "statusBar.debuggingForeground": "#191A21",
+ "statusBar.noFolderBackground": "#191A21",
+ "statusBar.noFolderForeground": "#F8F8F2",
+ "statusBarItem.prominentBackground": "#FF5555",
+ "statusBarItem.prominentHoverBackground": "#FFB86C",
+ "statusBarItem.remoteForeground": "#282A36",
+ "statusBarItem.remoteBackground": "#BD93F9",
+ "titleBar.activeBackground": "#21222C",
+ "titleBar.activeForeground": "#F8F8F2",
+ "titleBar.inactiveBackground": "#191A21",
+ "titleBar.inactiveForeground": "#6272A4",
+ "extensionButton.prominentForeground": "#F8F8F2",
+ "extensionButton.prominentBackground": "#50FA7B90",
+ "extensionButton.prominentHoverBackground": "#50FA7B60",
+ "pickerGroup.border": "#BD93F9",
+ "pickerGroup.foreground": "#8BE9FD",
+ "debugToolBar.background": "#21222C",
+ "walkThrough.embeddedEditorBackground": "#21222C",
+ "settings.headerForeground": "#F8F8F2",
+ "settings.modifiedItemIndicator": "#FFB86C",
+ "settings.dropdownBackground": "#21222C",
+ "settings.dropdownForeground": "#F8F8F2",
+ "settings.dropdownBorder": "#191A21",
+ "settings.checkboxBackground": "#21222C",
+ "settings.checkboxForeground": "#F8F8F2",
+ "settings.checkboxBorder": "#191A21",
+ "settings.textInputBackground": "#21222C",
+ "settings.textInputForeground": "#F8F8F2",
+ "settings.textInputBorder": "#191A21",
+ "settings.numberInputBackground": "#21222C",
+ "settings.numberInputForeground": "#F8F8F2",
+ "settings.numberInputBorder": "#191A21",
+ "breadcrumb.foreground": "#6272A4",
+ "breadcrumb.background": "#282A36",
+ "breadcrumb.focusForeground": "#F8F8F2",
+ "breadcrumb.activeSelectionForeground": "#F8F8F2",
+ "breadcrumbPicker.background": "#191A21",
+ "listFilterWidget.background": "#343746",
+ "listFilterWidget.outline": "#424450",
+ "listFilterWidget.noMatchesOutline": "#FF5555"
+ },
+ "tokenColors": [
+ {
+ "scope": ["emphasis"],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["strong"],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": ["header"],
+ "settings": {
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "scope": ["meta.diff", "meta.diff.header"],
+ "settings": {
+ "foreground": "#6272A4"
+ }
+ },
+ {
+ "scope": ["markup.inserted"],
+ "settings": {
+ "foreground": "#50FA7B"
+ }
+ },
+ {
+ "scope": ["markup.deleted"],
+ "settings": {
+ "foreground": "#FF5555"
+ }
+ },
+ {
+ "scope": ["markup.changed"],
+ "settings": {
+ "foreground": "#FFB86C"
+ }
+ },
+ {
+ "scope": ["invalid"],
+ "settings": {
+ "foreground": "#FF5555",
+ "fontStyle": "underline italic"
+ }
+ },
+ {
+ "scope": ["invalid.deprecated"],
+ "settings": {
+ "foreground": "#F8F8F2",
+ "fontStyle": "underline italic"
+ }
+ },
+ {
+ "scope": ["entity.name.filename"],
+ "settings": {
+ "foreground": "#F1FA8C"
+ }
+ },
+ {
+ "scope": ["markup.error"],
+ "settings": {
+ "foreground": "#FF5555"
+ }
+ },
+ {
+ "name": "Underlined markup",
+ "scope": ["markup.underline"],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "name": "Bold markup",
+ "scope": ["markup.bold"],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#FFB86C"
+ }
+ },
+ {
+ "name": "Markup headings",
+ "scope": ["markup.heading"],
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "name": "Markup italic",
+ "scope": ["markup.italic"],
+ "settings": {
+ "foreground": "#F1FA8C",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Bullets, lists (prose)",
+ "scope": [
+ "beginning.punctuation.definition.list.markdown",
+ "beginning.punctuation.definition.quote.markdown",
+ "punctuation.definition.link.restructuredtext"
+ ],
+ "settings": {
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Inline code (prose)",
+ "scope": ["markup.inline.raw", "markup.raw.restructuredtext"],
+ "settings": {
+ "foreground": "#50FA7B"
+ }
+ },
+ {
+ "name": "Links (prose)",
+ "scope": ["markup.underline.link", "markup.underline.link.image"],
+ "settings": {
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Link text, image alt text (prose)",
+ "scope": [
+ "meta.link.reference.def.restructuredtext",
+ "punctuation.definition.directive.restructuredtext",
+ "string.other.link.description",
+ "string.other.link.title"
+ ],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "Blockquotes (prose)",
+ "scope": ["entity.name.directive.restructuredtext", "markup.quote"],
+ "settings": {
+ "foreground": "#F1FA8C",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Horizontal rule (prose)",
+ "scope": ["meta.separator.markdown"],
+ "settings": {
+ "foreground": "#6272A4"
+ }
+ },
+ {
+ "name": "Code blocks",
+ "scope": [
+ "fenced_code.block.language",
+ "markup.raw.inner.restructuredtext",
+ "markup.fenced_code.block.markdown punctuation.definition.markdown"
+ ],
+ "settings": {
+ "foreground": "#50FA7B"
+ }
+ },
+ {
+ "name": "Prose constants",
+ "scope": ["punctuation.definition.constant.restructuredtext"],
+ "settings": {
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "name": "Braces in markdown headings",
+ "scope": [
+ "markup.heading.markdown punctuation.definition.string.begin",
+ "markup.heading.markdown punctuation.definition.string.end"
+ ],
+ "settings": {
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "name": "Braces in markdown paragraphs",
+ "scope": [
+ "meta.paragraph.markdown punctuation.definition.string.begin",
+ "meta.paragraph.markdown punctuation.definition.string.end"
+ ],
+ "settings": {
+ "foreground": "#F8F8F2"
+ }
+ },
+ {
+ "name": "Braces in markdown blockquotes",
+ "scope": [
+ "markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.begin",
+ "markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.end"
+ ],
+ "settings": {
+ "foreground": "#F1FA8C"
+ }
+ },
+ {
+ "name": "User-defined class names",
+ "scope": ["entity.name.type.class", "entity.name.class"],
+ "settings": {
+ "foreground": "#8BE9FD",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "this, super, self, etc.",
+ "scope": [
+ "keyword.expressions-and-types.swift",
+ "keyword.other.this",
+ "variable.language",
+ "variable.language punctuation.definition.variable.php",
+ "variable.other.readwrite.instance.ruby",
+ "variable.parameter.function.language.special"
+ ],
+ "settings": {
+ "foreground": "#BD93F9",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Inherited classes",
+ "scope": ["entity.other.inherited-class"],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Comments",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "unused.comment",
+ "wildcard.comment"
+ ],
+ "settings": {
+ "foreground": "#6272A4"
+ }
+ },
+ {
+ "name": "JSDoc-style keywords",
+ "scope": [
+ "comment keyword.codetag.notation",
+ "comment.block.documentation keyword",
+ "comment.block.documentation storage.type.class"
+ ],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "JSDoc-style types",
+ "scope": ["comment.block.documentation entity.name.type"],
+ "settings": {
+ "foreground": "#8BE9FD",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "JSDoc-style type brackets",
+ "scope": [
+ "comment.block.documentation entity.name.type punctuation.definition.bracket"
+ ],
+ "settings": {
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "JSDoc-style comment parameters",
+ "scope": ["comment.block.documentation variable"],
+ "settings": {
+ "foreground": "#FFB86C",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Constants",
+ "scope": ["constant", "variable.other.constant"],
+ "settings": {
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "name": "Constant escape sequences",
+ "scope": [
+ "constant.character.escape",
+ "constant.character.string.escape",
+ "constant.regexp"
+ ],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "HTML tags",
+ "scope": ["entity.name.tag"],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "CSS attribute parent selectors ('&')",
+ "scope": ["entity.other.attribute-name.parent-selector"],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "HTML/CSS attribute names",
+ "scope": ["entity.other.attribute-name"],
+ "settings": {
+ "foreground": "#50FA7B",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Function names",
+ "scope": [
+ "entity.name.function",
+ "meta.function-call.object",
+ "meta.function-call.php",
+ "meta.function-call.static",
+ "meta.method-call.java meta.method",
+ "meta.method.groovy",
+ "support.function.any-method.lua",
+ "keyword.operator.function.infix"
+ ],
+ "settings": {
+ "foreground": "#50FA7B"
+ }
+ },
+ {
+ "name": "Function parameters",
+ "scope": [
+ "entity.name.variable.parameter",
+ "meta.at-rule.function variable",
+ "meta.at-rule.mixin variable",
+ "meta.function.arguments variable.other.php",
+ "meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql",
+ "variable.parameter"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#FFB86C"
+ }
+ },
+ {
+ "name": "Decorators",
+ "scope": [
+ "meta.decorator variable.other.readwrite",
+ "meta.decorator variable.other.property"
+ ],
+ "settings": {
+ "foreground": "#50FA7B",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Decorator Objects",
+ "scope": ["meta.decorator variable.other.object"],
+ "settings": {
+ "foreground": "#50FA7B"
+ }
+ },
+ {
+ "name": "Keywords",
+ "scope": ["keyword", "punctuation.definition.keyword"],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "Keyword \"new\"",
+ "scope": ["keyword.control.new", "keyword.operator.new"],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Generic selectors (CSS/SCSS/Less/Stylus)",
+ "scope": ["meta.selector"],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "Language Built-ins",
+ "scope": ["support"],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Built-in magic functions and constants",
+ "scope": [
+ "support.function.magic",
+ "support.variable",
+ "variable.other.predefined"
+ ],
+ "settings": {
+ "fontStyle": "regular",
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "name": "Built-in functions / properties",
+ "scope": ["support.function", "support.type.property-name"],
+ "settings": {
+ "fontStyle": "regular"
+ }
+ },
+ {
+ "name": "Separators (key/value, namespace, inheritance, pointer, hash, slice, etc)",
+ "scope": [
+ "constant.other.symbol.hashkey punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.placeholder punctuation",
+ "entity.other.attribute-name.pseudo-class punctuation",
+ "entity.other.attribute-name.pseudo-element punctuation",
+ "meta.group.double.toml",
+ "meta.group.toml",
+ "meta.object-binding-pattern-variable punctuation.destructuring",
+ "punctuation.colon.graphql",
+ "punctuation.definition.block.scalar.folded.yaml",
+ "punctuation.definition.block.scalar.literal.yaml",
+ "punctuation.definition.block.sequence.item.yaml",
+ "punctuation.definition.entity.other.inherited-class",
+ "punctuation.function.swift",
+ "punctuation.separator.dictionary.key-value",
+ "punctuation.separator.hash",
+ "punctuation.separator.inheritance",
+ "punctuation.separator.key-value",
+ "punctuation.separator.key-value.mapping.yaml",
+ "punctuation.separator.namespace",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.slice",
+ "string.unquoted.heredoc punctuation.definition.string",
+ "support.other.chomping-indicator.yaml",
+ "punctuation.separator.annotation"
+ ],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "Brackets, braces, parens, etc.",
+ "scope": [
+ "keyword.operator.other.powershell",
+ "keyword.other.statement-separator.powershell",
+ "meta.brace.round",
+ "meta.function-call punctuation",
+ "punctuation.definition.arguments.begin",
+ "punctuation.definition.arguments.end",
+ "punctuation.definition.entity.begin",
+ "punctuation.definition.entity.end",
+ "punctuation.definition.tag.cs",
+ "punctuation.definition.type.begin",
+ "punctuation.definition.type.end",
+ "punctuation.section.scope.begin",
+ "punctuation.section.scope.end",
+ "punctuation.terminator.expression.php",
+ "storage.type.generic.java",
+ "string.template meta.brace",
+ "string.template punctuation.accessor"
+ ],
+ "settings": {
+ "foreground": "#F8F8F2"
+ }
+ },
+ {
+ "name": "Variable interpolation operators",
+ "scope": [
+ "meta.string-contents.quoted.double punctuation.definition.variable",
+ "punctuation.definition.interpolation.begin",
+ "punctuation.definition.interpolation.end",
+ "punctuation.definition.template-expression.begin",
+ "punctuation.definition.template-expression.end",
+ "punctuation.section.embedded.begin",
+ "punctuation.section.embedded.coffee",
+ "punctuation.section.embedded.end",
+ "punctuation.section.embedded.end source.php",
+ "punctuation.section.embedded.end source.ruby",
+ "punctuation.definition.variable.makefile"
+ ],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "Keys (serializable languages)",
+ "scope": [
+ "entity.name.function.target.makefile",
+ "entity.name.section.toml",
+ "entity.name.tag.yaml",
+ "variable.other.key.toml"
+ ],
+ "settings": {
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Dates / timestamps (serializable languages)",
+ "scope": ["constant.other.date", "constant.other.timestamp"],
+ "settings": {
+ "foreground": "#FFB86C"
+ }
+ },
+ {
+ "name": "YAML aliases",
+ "scope": ["variable.other.alias.yaml"],
+ "settings": {
+ "fontStyle": "italic underline",
+ "foreground": "#50FA7B"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage",
+ "meta.implementation storage.type.objc",
+ "meta.interface-or-protocol storage.type.objc",
+ "source.groovy storage.type.def"
+ ],
+ "settings": {
+ "fontStyle": "regular",
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "Types",
+ "scope": [
+ "entity.name.type",
+ "keyword.primitive-datatypes.swift",
+ "keyword.type.cs",
+ "meta.protocol-list.objc",
+ "meta.return-type.objc",
+ "source.go storage.type",
+ "source.groovy storage.type",
+ "source.java storage.type",
+ "source.powershell entity.other.attribute-name",
+ "storage.class.std.rust",
+ "storage.type.attribute.swift",
+ "storage.type.c",
+ "storage.type.core.rust",
+ "storage.type.cs",
+ "storage.type.groovy",
+ "storage.type.objc",
+ "storage.type.php",
+ "storage.type.haskell",
+ "storage.type.ocaml"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Generics, templates, and mapped type declarations",
+ "scope": [
+ "entity.name.type.type-parameter",
+ "meta.indexer.mappedtype.declaration entity.name.type",
+ "meta.type.parameters entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#FFB86C"
+ }
+ },
+ {
+ "name": "Modifiers",
+ "scope": ["storage.modifier"],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "RegExp string",
+ "scope": [
+ "string.regexp",
+ "constant.other.character-class.set.regexp",
+ "constant.character.escape.backslash.regexp"
+ ],
+ "settings": {
+ "foreground": "#F1FA8C"
+ }
+ },
+ {
+ "name": "Non-capture operators",
+ "scope": ["punctuation.definition.group.capture.regexp"],
+ "settings": {
+ "foreground": "#FF79C6"
+ }
+ },
+ {
+ "name": "RegExp start and end characters",
+ "scope": [
+ "string.regexp punctuation.definition.string.begin",
+ "string.regexp punctuation.definition.string.end"
+ ],
+ "settings": {
+ "foreground": "#FF5555"
+ }
+ },
+ {
+ "name": "Character group",
+ "scope": ["punctuation.definition.character-class.regexp"],
+ "settings": {
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Capture groups",
+ "scope": ["punctuation.definition.group.regexp"],
+ "settings": {
+ "foreground": "#FFB86C"
+ }
+ },
+ {
+ "name": "Assertion operators",
+ "scope": [
+ "punctuation.definition.group.assertion.regexp",
+ "keyword.operator.negation.regexp"
+ ],
+ "settings": {
+ "foreground": "#FF5555"
+ }
+ },
+ {
+ "name": "Positive lookaheads",
+ "scope": ["meta.assertion.look-ahead.regexp"],
+ "settings": {
+ "foreground": "#50FA7B"
+ }
+ },
+ {
+ "name": "Strings",
+ "scope": ["string"],
+ "settings": {
+ "foreground": "#F1FA8C"
+ }
+ },
+ {
+ "name": "String quotes (temporary vscode fix)",
+ "scope": [
+ "punctuation.definition.string.begin",
+ "punctuation.definition.string.end"
+ ],
+ "settings": {
+ "foreground": "#E9F284"
+ }
+ },
+ {
+ "name": "Property quotes (temporary vscode fix)",
+ "scope": [
+ "punctuation.support.type.property-name.begin",
+ "punctuation.support.type.property-name.end"
+ ],
+ "settings": {
+ "foreground": "#8BE9FE"
+ }
+ },
+ {
+ "name": "Docstrings",
+ "scope": [
+ "string.quoted.docstring.multi",
+ "string.quoted.docstring.multi.python punctuation.definition.string.begin",
+ "string.quoted.docstring.multi.python punctuation.definition.string.end",
+ "string.quoted.docstring.multi.python constant.character.escape"
+ ],
+ "settings": {
+ "foreground": "#6272A4"
+ }
+ },
+ {
+ "name": "Variables and object properties",
+ "scope": [
+ "variable",
+ "constant.other.key.perl",
+ "support.variable.property",
+ "variable.other.constant.js",
+ "variable.other.constant.ts",
+ "variable.other.constant.tsx"
+ ],
+ "settings": {
+ "foreground": "#F8F8F2"
+ }
+ },
+ {
+ "name": "Destructuring / aliasing reference name (LHS)",
+ "scope": [
+ "meta.import variable.other.readwrite",
+ "meta.variable.assignment.destructured.object.coffee variable"
+ ],
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#FFB86C"
+ }
+ },
+ {
+ "name": "Destructuring / aliasing variable name (RHS)",
+ "scope": [
+ "meta.import variable.other.readwrite.alias",
+ "meta.export variable.other.readwrite.alias",
+ "meta.variable.assignment.destructured.object.coffee variable variable"
+ ],
+ "settings": {
+ "fontStyle": "normal",
+ "foreground": "#F8F8F2"
+ }
+ },
+ {
+ "name": "GraphQL keys",
+ "scope": ["meta.selectionset.graphql variable"],
+ "settings": {
+ "foreground": "#F1FA8C"
+ }
+ },
+ {
+ "name": "GraphQL function arguments",
+ "scope": ["meta.selectionset.graphql meta.arguments variable"],
+ "settings": {
+ "foreground": "#F8F8F2"
+ }
+ },
+ {
+ "name": "GraphQL fragment name (definition)",
+ "scope": ["entity.name.fragment.graphql", "variable.fragment.graphql"],
+ "settings": {
+ "foreground": "#8BE9FD"
+ }
+ },
+ {
+ "name": "Edge cases (foreground color resets)",
+ "scope": [
+ "constant.other.symbol.hashkey.ruby",
+ "keyword.operator.dereference.java",
+ "keyword.operator.navigation.groovy",
+ "meta.scope.for-loop.shell punctuation.definition.string.begin",
+ "meta.scope.for-loop.shell punctuation.definition.string.end",
+ "meta.scope.for-loop.shell string",
+ "storage.modifier.import",
+ "punctuation.section.embedded.begin.tsx",
+ "punctuation.section.embedded.end.tsx",
+ "punctuation.section.embedded.begin.jsx",
+ "punctuation.section.embedded.end.jsx",
+ "punctuation.separator.list.comma.css",
+ "constant.language.empty-list.haskell"
+ ],
+ "settings": {
+ "foreground": "#F8F8F2"
+ }
+ },
+ {
+ "name": "Shell variables prefixed with \"$\" (edge case)",
+ "scope": ["source.shell variable.other"],
+ "settings": {
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "name": "Powershell constants mistakenly scoped to `support`, rather than `constant` (edge)",
+ "scope": ["support.constant"],
+ "settings": {
+ "fontStyle": "normal",
+ "foreground": "#BD93F9"
+ }
+ },
+ {
+ "name": "Makefile prerequisite names",
+ "scope": ["meta.scope.prerequisites.makefile"],
+ "settings": {
+ "foreground": "#F1FA8C"
+ }
+ },
+ {
+ "name": "SCSS attibute selector strings",
+ "scope": ["meta.attribute-selector.scss"],
+ "settings": {
+ "foreground": "#F1FA8C"
+ }
+ },
+ {
+ "name": "SCSS attribute selector brackets",
+ "scope": [
+ "punctuation.definition.attribute-selector.end.bracket.square.scss",
+ "punctuation.definition.attribute-selector.begin.bracket.square.scss"
+ ],
+ "settings": {
+ "foreground": "#F8F8F2"
+ }
+ },
+ {
+ "name": "Haskell Pragmas",
+ "scope": ["meta.preprocessor.haskell"],
+ "settings": {
+ "foreground": "#6272A4"
+ }
+ },
+ {
+ "name": "Log file error",
+ "scope": ["log.error"],
+ "settings": {
+ "foreground": "#FF5555",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Log file warning",
+ "scope": ["log.warning"],
+ "settings": {
+ "foreground": "#F1FA8C",
+ "fontStyle": "bold"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/dracula/family.json b/assets/themes/src/vscode/dracula/family.json
new file mode 100644
index 0000000000..b3bf2cf04a
--- /dev/null
+++ b/assets/themes/src/vscode/dracula/family.json
@@ -0,0 +1,11 @@
+{
+ "name": "Dracula",
+ "author": "Zeno Rocha",
+ "themes": [
+ {
+ "name": "Dracula",
+ "file_name": "dracula.json",
+ "appearance": "dark"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/gruvbox/LICENSE b/assets/themes/src/vscode/gruvbox/LICENSE
new file mode 100644
index 0000000000..01085fd817
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/LICENSE
@@ -0,0 +1 @@
+MIT/X11
diff --git a/assets/themes/src/vscode/gruvbox/family.json b/assets/themes/src/vscode/gruvbox/family.json
new file mode 100644
index 0000000000..7ff7589a8e
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/family.json
@@ -0,0 +1,36 @@
+{
+ "name": "Gruvbox",
+ "author": "morhetz",
+ "themes": [
+ {
+ "name": "Gruvbox Dark Hard",
+ "file_name": "gruvbox-dark-hard.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Gruvbox Dark Medium",
+ "file_name": "gruvbox-dark-medium.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Gruvbox Dark Soft",
+ "file_name": "gruvbox-dark-soft.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Gruvbox Light Hard",
+ "file_name": "gruvbox-light-hard.json",
+ "appearance": "light"
+ },
+ {
+ "name": "Gruvbox Light Medium",
+ "file_name": "gruvbox-light-medium.json",
+ "appearance": "light"
+ },
+ {
+ "name": "Gruvbox Light Soft",
+ "file_name": "gruvbox-light-soft.json",
+ "appearance": "light"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/gruvbox/gruvbox-dark-hard.json b/assets/themes/src/vscode/gruvbox/gruvbox-dark-hard.json
new file mode 100644
index 0000000000..4c1a7c9e8a
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/gruvbox-dark-hard.json
@@ -0,0 +1,1074 @@
+{
+ "$schema": "vscode://schemas/color-theme",
+ "name": "Gruvbox Dark Hard",
+ "type": "dark",
+ "semanticHighlighting": true,
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "emphasis",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "strong",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "header",
+ "settings": {
+ "foreground": "#458588"
+ }
+ },
+ {
+ "scope": ["comment", "punctuation.definition.comment"],
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant", "support.constant", "variable.arguments"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": "constant.rgb-value",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "entity.name.selector",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["entity.name.tag", "punctuation.tag"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#cc241d"
+ }
+ },
+ {
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#b16286"
+ }
+ },
+ {
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "meta.preprocessor",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.string",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.numeric",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "meta.header.diff",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "storage",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "string",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.tag",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.value",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "string.escape",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "string.quasi",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "string.entity",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "object",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "module.node",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": "support.type.property-name",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "keyword.control.module",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "keyword.control.less",
+ "settings": {
+ "foreground": "#d79921"
+ }
+ },
+ {
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "keyword.operator.new",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "metatag.php",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "support.function.git-rebase",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "constant.sha.git-rebase",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "Types declaration and references",
+ "scope": [
+ "meta.type.name",
+ "meta.return.type",
+ "meta.return-type",
+ "meta.cast",
+ "meta.type.annotation",
+ "support.type",
+ "storage.type.cs",
+ "variable.class"
+ ],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["variable.this", "support.variable"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": [
+ "entity.name",
+ "entity.static",
+ "entity.name.class.static.function",
+ "entity.name.function",
+ "entity.name.class",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "name": "Function declarations",
+ "scope": ["entity.function", "entity.name.function.static"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "entity.name.function.function-call",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "support.function.builtin",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.method",
+ "entity.name.method.function-call",
+ "entity.name.static.function-call"
+ ],
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "brace",
+ "settings": {
+ "foreground": "#d5c4a1"
+ }
+ },
+ {
+ "name": "variables",
+ "scope": [
+ "meta.parameter.type.variable",
+ "variable.parameter",
+ "variable.name",
+ "variable.other",
+ "variable",
+ "string.constant.other.placeholder"
+ ],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": "prototype",
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#a89984"
+ }
+ },
+ {
+ "scope": "punctuation.quoted",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "punctuation.quasi",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "URL",
+ "scope": ["*url*", "*link*", "*uri*"],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+
+ {
+ "name": "Python function",
+ "scope": ["meta.function.python", "entity.name.function.python"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "Python Function and Class definition keywords",
+ "scope": [
+ "storage.type.function.python",
+ "storage.modifier.declaration",
+ "storage.type.class.python",
+ "storage.type.string.python"
+ ],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "Async keyword",
+ "scope": ["storage.type.function.async.python"],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": "meta.function-call.generic",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "Python Function Arguments",
+ "scope": "meta.function-call.arguments",
+ "settings": {
+ "foreground": "#d5c4a1"
+ }
+ },
+ {
+ "name": "Python Function decorator",
+ "scope": "entity.name.function.decorator",
+ "settings": {
+ "foreground": "#fabd2f",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Python ALL CAPS",
+ "scope": "constant.other.caps",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "punctuation.definition.logical-expression",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": ["string.interpolated.dollar.shell", "string.interpolated.backtick.shell"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+
+ {
+ "scope": "keyword.control.directive",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "support.function.C99",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+
+ {
+ "name": "C# functions & namespace",
+ "scope": [
+ "meta.function.cs",
+ "entity.name.function.cs",
+ "entity.name.type.namespace.cs"
+ ],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "C# Variables",
+ "scope": [
+ "keyword.other.using.cs",
+ "entity.name.variable.field.cs",
+ "entity.name.variable.local.cs",
+ "variable.other.readwrite.cs"
+ ],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "C# This",
+ "scope": ["keyword.other.this.cs", "keyword.other.base.cs"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+
+ {
+ "scope": "meta.scope.prerequisites",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": "entity.name.function.target",
+ "settings": {
+ "foreground": "#b8bb26",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "name": "coloring of the Java import and package identifiers",
+ "scope": ["storage.modifier.import.java", "storage.modifier.package.java"],
+ "settings": {
+ "foreground": "#bdae93"
+ }
+ },
+ {
+ "scope": ["keyword.other.import.java", "keyword.other.package.java"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "storage.type.java",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": "storage.type.annotation",
+ "settings": {
+ "foreground": "#83a598",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "keyword.other.documentation.javadoc",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "comment.block.javadoc variable.parameter.java",
+ "settings": {
+ "foreground": "#b8bb26",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": [
+ "source.java variable.other.object",
+ "source.java variable.other.definition.java"
+ ],
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+
+ {
+ "name": "Lisp optional function parameters",
+ "scope": "meta.function-parameters.lisp",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+
+ {
+ "scope": "markup.underline",
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "string.other.link.title.markdown",
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "markup.underline.link",
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": "markup.bold",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.italic",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "markup.inserted",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "markup.deleted",
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": "markup.changed",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.punctuation.quote.beginning",
+ "settings": {
+ "foreground": "#98971a"
+ }
+ },
+ {
+ "scope": "markup.punctuation.list.beginning",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["markup.inline.raw", "markup.fenced_code.block"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+
+ {
+ "scope": "string.quoted.double.json",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "JSON Level 0",
+ "scope": ["source.json meta.structure.dictionary.json support.type.property-name.json"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "JSON Level 1",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "JSON Level 2",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "name": "JSON Level 3",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+
+ {
+ "scope": "entity.other.attribute-name.css",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "source.css meta.selector",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "support.type.property-name.css",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name.class",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": [
+ "source.css support.function.transform",
+ "source.css support.function.timing-function",
+ "source.css support.function.misc"
+ ],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "CSS property value",
+ "scope": [
+ "support.property-value",
+ "constant.rgb-value",
+ "support.property-value.scss",
+ "constant.rgb-value.scss"
+ ],
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": ["entity.name.tag.css"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["text.html entity.name.tag", "text.html punctuation.tag"],
+ "settings": {
+ "foreground": "#8ec07c",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": ["source.js variable.language"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "scope": ["source.ts variable.language"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "scope": ["source.go storage.type"],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.import"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": ["source.go keyword.package", "source.go keyword.import"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": ["source.go keyword.interface", "source.go keyword.struct"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.type"],
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.function"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+
+ {
+ "scope": ["keyword.control.cucumber.table"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+
+ {
+ "name": "ReasonML String",
+ "scope": ["source.reason string.double", "source.reason string.regexp"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "ReasonML equals sign",
+ "scope": ["source.reason keyword.control.less"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "ReasonML variable",
+ "scope": ["source.reason entity.name.function"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "ReasonML property",
+ "scope": ["source.reason support.property-value", "source.reason entity.name.filename"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "name": "Powershell member",
+ "scope": ["source.powershell variable.other.member.powershell"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "name": "Powershell function",
+ "scope": ["source.powershell support.function.powershell"],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "name": "Powershell function attribute",
+ "scope": ["source.powershell support.function.attribute.powershell"],
+ "settings": {
+ "foreground": "#bdae93"
+ }
+ },
+ {
+ "name": "Powershell hashtable member",
+ "scope": [
+ "source.powershell meta.hashtable.assignment.powershell variable.other.readwrite.powershell"
+ ],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ }
+ ],
+ "colors": {
+ "focusBorder": "#3c3836",
+ "foreground": "#ebdbb2",
+ "widget.shadow": "#1d202130",
+ "selection.background": "#689d6a80",
+ "errorForeground": "#fb4934",
+
+ "button.background": "#45858880",
+ "button.foreground": "#ebdbb2",
+ "button.hoverBackground": "#45858860",
+
+ "dropdown.background": "#1d2021",
+ "dropdown.border": "#3c3836",
+ "dropdown.foreground": "#ebdbb2",
+
+ "input.background": "#ebdbb205",
+ "input.border": "#3c3836",
+ "input.foreground": "#ebdbb2",
+ "input.placeholderForeground": "#ebdbb260",
+ "inputValidation.errorBorder": "#fb4934",
+ "inputValidation.errorBackground": "#cc241d80",
+ "inputValidation.infoBorder": "#83a598",
+ "inputValidation.infoBackground": "#45858880",
+ "inputValidation.warningBorder": "#fabd2f",
+ "inputValidation.warningBackground": "#d7992180",
+ "inputOption.activeBorder": "#ebdbb260",
+
+ "scrollbar.shadow": "#1d2021",
+ "scrollbarSlider.activeBackground": "#689d6a",
+ "scrollbarSlider.hoverBackground": "#665c54",
+ "scrollbarSlider.background": "#50494599",
+
+ "badge.background": "#d3869b",
+ "badge.foreground": "#1d2021",
+
+ "progressBar.background": "#689d6a",
+
+ "list.activeSelectionBackground": "#3c383680",
+ "list.activeSelectionForeground": "#8ec07c",
+ "list.hoverBackground": "#3c383680",
+ "list.hoverForeground": "#d5c4a1",
+ "list.focusBackground": "#3c3836",
+ "list.focusForeground": "#ebdbb2",
+ "list.inactiveSelectionForeground": "#689d6a",
+ "list.inactiveSelectionBackground": "#3c383680",
+ "list.dropBackground": "#3c3836",
+ "list.highlightForeground": "#689d6a",
+
+ "sideBar.background": "#1d2021",
+ "sideBar.foreground": "#d5c4a1",
+ "sideBar.border": "#3c3836",
+ "sideBarTitle.foreground": "#ebdbb2",
+ "sideBarSectionHeader.background": "#1d202100",
+ "sideBarSectionHeader.foreground": "#ebdbb2",
+
+ "activityBar.background": "#1d2021",
+ "activityBar.foreground": "#ebdbb2",
+ "activityBar.border": "#3c3836",
+ "activityBarBadge.background": "#458588",
+ "activityBarBadge.foreground": "#ebdbb2",
+
+ "editorGroup.border": "#3c3836",
+ "editorGroup.dropBackground": "#3c383660",
+ "editorGroupHeader.noTabsBackground": "#3c3836",
+ "editorGroupHeader.tabsBackground": "#1d2021",
+ "editorGroupHeader.tabsBorder": "#3c3836",
+
+ "tab.border": "#1d202100",
+ "tab.activeBorder": "#689d6a",
+ "tab.activeBackground": "#32302f",
+ "tab.activeForeground": "#ebdbb2",
+ "tab.inactiveForeground": "#a89984",
+ "tab.inactiveBackground": "#1d2021",
+ "tab.unfocusedActiveForeground": "#a89984",
+ "tab.unfocusedActiveBorder": "#1d202100",
+ "tab.unfocusedInactiveForeground": "#928374",
+
+ "editor.background": "#1d2021",
+ "editor.foreground": "#ebdbb2",
+ "editorLineNumber.foreground": "#665c54",
+ "editorCursor.foreground": "#ebdbb2",
+ "editor.selectionBackground": "#689d6a40",
+ "editor.selectionHighlightBackground": "#fabd2f40",
+ "editor.hoverHighlightBackground": "#689d6a50",
+ "editorLink.activeForeground": "#ebdbb2",
+ "editor.findMatchBackground": "#83a59870",
+ "editor.findMatchHighlightBackground": "#fe801930",
+ "editor.findRangeHighlightBackground": "#83a59870",
+ "editor.lineHighlightBackground": "#3c383660",
+ "editor.lineHighlightBorder": "#3c383600",
+ "editorWhitespace.foreground": "#a8998420",
+ "editorRuler.foreground": "#a8998440",
+ "editorCodeLens.foreground": "#a8998490",
+ "editorBracketMatch.border": "#1d202100",
+ "editorBracketMatch.background": "#92837480",
+ "editorHoverWidget.background": "#1d2021",
+ "editorHoverWidget.border": "#3c3836",
+ "editorOverviewRuler.border": "#1d202100",
+ "editorOverviewRuler.findMatchForeground": "#bdae93",
+ "editorOverviewRuler.rangeHighlightForeground": "#bdae93",
+ "editorOverviewRuler.selectionHighlightForeground": "#665c54",
+ "editorOverviewRuler.wordHighlightForeground": "#665c54",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#665c54",
+ "editorOverviewRuler.modifiedForeground": "#83a598",
+ "editorOverviewRuler.addedForeground": "#83a598",
+ "editorOverviewRuler.deletedForeground": "#83a598",
+ "editorOverviewRuler.errorForeground": "#fb4934",
+ "editorOverviewRuler.warningForeground": "#d79921",
+ "editorOverviewRuler.infoForeground": "#d3869b",
+ "editorGutter.background": "#1d202100",
+ "editorGutter.modifiedBackground": "#83a598",
+ "editorGutter.addedBackground": "#b8bb26",
+ "editorGutter.deletedBackground": "#fb4934",
+ "editorError.foreground": "#cc241d",
+ "editorWarning.foreground": "#d79921",
+ "editorInfo.foreground": "#458588",
+
+ "editorBracketHighlight.foreground1": "#b16286",
+ "editorBracketHighlight.foreground2": "#458588",
+ "editorBracketHighlight.foreground3": "#689d6a",
+ "editorBracketHighlight.foreground4": "#98971a",
+ "editorBracketHighlight.foreground5": "#d79921",
+ "editorBracketHighlight.foreground6": "#d65d0e",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#cc241d",
+
+ "diffEditor.insertedTextBackground": "#b8bb2630",
+ "diffEditor.removedTextBackground": "#fb493430",
+
+ "editorWidget.background": "#1d2021",
+ "editorWidget.border": "#3c3836",
+ "editorSuggestWidget.background": "#1d2021",
+ "editorSuggestWidget.foreground": "#ebdbb2",
+ "editorSuggestWidget.highlightForeground": "#689d6a",
+ "editorSuggestWidget.selectedBackground": "#3c383660",
+ "editorSuggestWidget.border": "#3c3836",
+
+ "peekView.border": "#3c3836",
+ "peekViewEditor.background": "#3c383670",
+ "peekViewEditor.matchHighlightBackground": "#504945",
+ "peekViewEditorGutter.background": "#3c383670",
+ "peekViewResult.background": "#3c383670",
+ "peekViewResult.fileForeground": "#ebdbb2",
+ "peekViewResult.selectionBackground": "#45858820",
+ "peekViewResult.selectionForeground": "#ebdbb2",
+ "peekViewResult.lineForeground": "#ebdbb2",
+ "peekViewResult.matchHighlightBackground": "#504945",
+ "peekViewTitle.background": "#3c383670",
+ "peekViewTitleDescription.foreground": "#bdae93",
+ "peekViewTitleLabel.foreground": "#ebdbb2",
+
+ "merge.currentHeaderBackground": "#45858840",
+ "merge.currentContentBackground": "#45858820",
+ "merge.incomingHeaderBackground": "#689d6a40",
+ "merge.incomingContentBackground": "#689d6a20",
+ "merge.border": "#1d202100",
+ "editorOverviewRuler.currentContentForeground": "#458588",
+ "editorOverviewRuler.incomingContentForeground": "#689d6a",
+ "editorOverviewRuler.commonContentForeground": "#928374",
+
+ "panel.border": "#3c3836",
+ "panelTitle.activeForeground": "#ebdbb2",
+
+ "statusBar.background": "#1d2021",
+ "statusBar.border": "#3c3836",
+ "statusBar.foreground": "#ebdbb2",
+ "statusBar.debuggingBackground": "#fe8019",
+ "statusBar.debuggingForeground": "#1d2021",
+ "statusBar.debuggingBorder": "#1d202100",
+ "statusBar.noFolderBackground": "#1d2021",
+ "statusBar.noFolderBorder": "#1d202100",
+
+ "terminal.ansiBlack": "#3c3836",
+ "terminal.ansiBrightBlack": "#928374",
+ "terminal.ansiRed": "#cc241d",
+ "terminal.ansiBrightRed": "#fb4934",
+ "terminal.ansiGreen": "#98971a",
+ "terminal.ansiBrightGreen": "#b8bb26",
+ "terminal.ansiYellow": "#d79921",
+ "terminal.ansiBrightYellow": "#fabd2f",
+ "terminal.ansiBlue": "#458588",
+ "terminal.ansiBrightBlue": "#83a598",
+ "terminal.ansiMagenta": "#b16286",
+ "terminal.ansiBrightMagenta": "#d3869b",
+ "terminal.ansiCyan": "#689d6a",
+ "terminal.ansiBrightCyan": "#8ec07c",
+ "terminal.ansiWhite": "#a89984",
+ "terminal.ansiBrightWhite": "#ebdbb2",
+ "terminal.foreground": "#ebdbb2",
+ "terminal.background": "#1d2021",
+
+ "titleBar.activeBackground": "#1d2021",
+ "titleBar.activeForeground": "#ebdbb2",
+ "titleBar.inactiveBackground": "#1d2021",
+
+ "gitDecoration.modifiedResourceForeground": "#d79921",
+ "gitDecoration.deletedResourceForeground": "#cc241d",
+ "gitDecoration.untrackedResourceForeground": "#98971a",
+ "gitDecoration.ignoredResourceForeground": "#7c6f64",
+ "gitDecoration.conflictingResourceForeground": "#b16286",
+
+ "menu.border": "#3c3836",
+ "menu.separatorBackground": "#3c3836",
+
+ "notebook.cellEditorBackground": "#282828",
+ "notebook.focusedCellBorder": "#a89984",
+ "notebook.cellBorderColor": "#3c3836",
+ "notebook.focusedEditorBorder": "#3c3836",
+
+ "extensionButton.prominentBackground": "#b8bb2680",
+ "extensionButton.prominentHoverBackground": "#b8bb2630",
+
+ "textLink.foreground": "#83a598",
+ "textLink.activeForeground": "#458588",
+ "debugToolBar.background": "#1d2021"
+ },
+ "semanticTokenColors": {
+ "constant.builtin": "#d3869b",
+ "property": "#83a598",
+ "property:python": "#ebdbb2",
+ "parameter": "#83a598",
+ "variable": "#ebdbb2",
+ "function": "#8ec07c",
+ "function.builtin": "#fe8019",
+ "method": "#8ec07c"
+ }
+}
diff --git a/assets/themes/src/vscode/gruvbox/gruvbox-dark-medium.json b/assets/themes/src/vscode/gruvbox/gruvbox-dark-medium.json
new file mode 100644
index 0000000000..e9ef916193
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/gruvbox-dark-medium.json
@@ -0,0 +1,1074 @@
+{
+ "$schema": "vscode://schemas/color-theme",
+ "name": "Gruvbox Dark Medium",
+ "type": "dark",
+ "semanticHighlighting": true,
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "emphasis",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "strong",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "header",
+ "settings": {
+ "foreground": "#458588"
+ }
+ },
+ {
+ "scope": ["comment", "punctuation.definition.comment"],
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant", "support.constant", "variable.arguments"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": "constant.rgb-value",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "entity.name.selector",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["entity.name.tag", "punctuation.tag"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#cc241d"
+ }
+ },
+ {
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#b16286"
+ }
+ },
+ {
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "meta.preprocessor",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.string",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.numeric",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "meta.header.diff",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "storage",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "string",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.tag",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.value",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "string.escape",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "string.quasi",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "string.entity",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "object",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "module.node",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": "support.type.property-name",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "keyword.control.module",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "keyword.control.less",
+ "settings": {
+ "foreground": "#d79921"
+ }
+ },
+ {
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "keyword.operator.new",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "metatag.php",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "support.function.git-rebase",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "constant.sha.git-rebase",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "Types declaration and references",
+ "scope": [
+ "meta.type.name",
+ "meta.return.type",
+ "meta.return-type",
+ "meta.cast",
+ "meta.type.annotation",
+ "support.type",
+ "storage.type.cs",
+ "variable.class"
+ ],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["variable.this", "support.variable"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": [
+ "entity.name",
+ "entity.static",
+ "entity.name.class.static.function",
+ "entity.name.function",
+ "entity.name.class",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "name": "Function declarations",
+ "scope": ["entity.function", "entity.name.function.static"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "entity.name.function.function-call",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "support.function.builtin",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.method",
+ "entity.name.method.function-call",
+ "entity.name.static.function-call"
+ ],
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "brace",
+ "settings": {
+ "foreground": "#d5c4a1"
+ }
+ },
+ {
+ "name": "variables",
+ "scope": [
+ "meta.parameter.type.variable",
+ "variable.parameter",
+ "variable.name",
+ "variable.other",
+ "variable",
+ "string.constant.other.placeholder"
+ ],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": "prototype",
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#a89984"
+ }
+ },
+ {
+ "scope": "punctuation.quoted",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "punctuation.quasi",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "URL",
+ "scope": ["*url*", "*link*", "*uri*"],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+
+ {
+ "name": "Python function",
+ "scope": ["meta.function.python", "entity.name.function.python"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "Python Function and Class definition keywords",
+ "scope": [
+ "storage.type.function.python",
+ "storage.modifier.declaration",
+ "storage.type.class.python",
+ "storage.type.string.python"
+ ],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "Async keyword",
+ "scope": ["storage.type.function.async.python"],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": "meta.function-call.generic",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "Python Function Arguments",
+ "scope": "meta.function-call.arguments",
+ "settings": {
+ "foreground": "#d5c4a1"
+ }
+ },
+ {
+ "name": "Python Function decorator",
+ "scope": "entity.name.function.decorator",
+ "settings": {
+ "foreground": "#fabd2f",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Python ALL CAPS",
+ "scope": "constant.other.caps",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "punctuation.definition.logical-expression",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": ["string.interpolated.dollar.shell", "string.interpolated.backtick.shell"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+
+ {
+ "scope": "keyword.control.directive",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "support.function.C99",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+
+ {
+ "name": "C# functions & namespace",
+ "scope": [
+ "meta.function.cs",
+ "entity.name.function.cs",
+ "entity.name.type.namespace.cs"
+ ],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "C# Variables",
+ "scope": [
+ "keyword.other.using.cs",
+ "entity.name.variable.field.cs",
+ "entity.name.variable.local.cs",
+ "variable.other.readwrite.cs"
+ ],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "C# This",
+ "scope": ["keyword.other.this.cs", "keyword.other.base.cs"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+
+ {
+ "scope": "meta.scope.prerequisites",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": "entity.name.function.target",
+ "settings": {
+ "foreground": "#b8bb26",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "name": "coloring of the Java import and package identifiers",
+ "scope": ["storage.modifier.import.java", "storage.modifier.package.java"],
+ "settings": {
+ "foreground": "#bdae93"
+ }
+ },
+ {
+ "scope": ["keyword.other.import.java", "keyword.other.package.java"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "storage.type.java",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": "storage.type.annotation",
+ "settings": {
+ "foreground": "#83a598",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "keyword.other.documentation.javadoc",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "comment.block.javadoc variable.parameter.java",
+ "settings": {
+ "foreground": "#b8bb26",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": [
+ "source.java variable.other.object",
+ "source.java variable.other.definition.java"
+ ],
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+
+ {
+ "name": "Lisp optional function parameters",
+ "scope": "meta.function-parameters.lisp",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+
+ {
+ "scope": "markup.underline",
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "string.other.link.title.markdown",
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "markup.underline.link",
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": "markup.bold",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.italic",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "markup.inserted",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "markup.deleted",
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": "markup.changed",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.punctuation.quote.beginning",
+ "settings": {
+ "foreground": "#98971a"
+ }
+ },
+ {
+ "scope": "markup.punctuation.list.beginning",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["markup.inline.raw", "markup.fenced_code.block"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+
+ {
+ "scope": "string.quoted.double.json",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "JSON Level 0",
+ "scope": ["source.json meta.structure.dictionary.json support.type.property-name.json"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "JSON Level 1",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "JSON Level 2",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "name": "JSON Level 3",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+
+ {
+ "scope": "entity.other.attribute-name.css",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "source.css meta.selector",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "support.type.property-name.css",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name.class",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": [
+ "source.css support.function.transform",
+ "source.css support.function.timing-function",
+ "source.css support.function.misc"
+ ],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "CSS property value",
+ "scope": [
+ "support.property-value",
+ "constant.rgb-value",
+ "support.property-value.scss",
+ "constant.rgb-value.scss"
+ ],
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": ["entity.name.tag.css"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["text.html entity.name.tag", "text.html punctuation.tag"],
+ "settings": {
+ "foreground": "#8ec07c",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": ["source.js variable.language"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "scope": ["source.ts variable.language"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "scope": ["source.go storage.type"],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.import"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": ["source.go keyword.package", "source.go keyword.import"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": ["source.go keyword.interface", "source.go keyword.struct"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.type"],
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.function"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+
+ {
+ "scope": ["keyword.control.cucumber.table"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+
+ {
+ "name": "ReasonML String",
+ "scope": ["source.reason string.double", "source.reason string.regexp"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "ReasonML equals sign",
+ "scope": ["source.reason keyword.control.less"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "ReasonML variable",
+ "scope": ["source.reason entity.name.function"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "ReasonML property",
+ "scope": ["source.reason support.property-value", "source.reason entity.name.filename"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "name": "Powershell member",
+ "scope": ["source.powershell variable.other.member.powershell"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "name": "Powershell function",
+ "scope": ["source.powershell support.function.powershell"],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "name": "Powershell function attribute",
+ "scope": ["source.powershell support.function.attribute.powershell"],
+ "settings": {
+ "foreground": "#bdae93"
+ }
+ },
+ {
+ "name": "Powershell hashtable member",
+ "scope": [
+ "source.powershell meta.hashtable.assignment.powershell variable.other.readwrite.powershell"
+ ],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ }
+ ],
+ "colors": {
+ "focusBorder": "#3c3836",
+ "foreground": "#ebdbb2",
+ "widget.shadow": "#28282830",
+ "selection.background": "#689d6a80",
+ "errorForeground": "#fb4934",
+
+ "button.background": "#45858880",
+ "button.foreground": "#ebdbb2",
+ "button.hoverBackground": "#45858860",
+
+ "dropdown.background": "#282828",
+ "dropdown.border": "#3c3836",
+ "dropdown.foreground": "#ebdbb2",
+
+ "input.background": "#ebdbb205",
+ "input.border": "#3c3836",
+ "input.foreground": "#ebdbb2",
+ "input.placeholderForeground": "#ebdbb260",
+ "inputValidation.errorBorder": "#fb4934",
+ "inputValidation.errorBackground": "#cc241d80",
+ "inputValidation.infoBorder": "#83a598",
+ "inputValidation.infoBackground": "#45858880",
+ "inputValidation.warningBorder": "#fabd2f",
+ "inputValidation.warningBackground": "#d7992180",
+ "inputOption.activeBorder": "#ebdbb260",
+
+ "scrollbar.shadow": "#282828",
+ "scrollbarSlider.activeBackground": "#689d6a",
+ "scrollbarSlider.hoverBackground": "#665c54",
+ "scrollbarSlider.background": "#50494599",
+
+ "badge.background": "#d3869b",
+ "badge.foreground": "#282828",
+
+ "progressBar.background": "#689d6a",
+
+ "list.activeSelectionBackground": "#3c383680",
+ "list.activeSelectionForeground": "#8ec07c",
+ "list.hoverBackground": "#3c383680",
+ "list.hoverForeground": "#d5c4a1",
+ "list.focusBackground": "#3c3836",
+ "list.focusForeground": "#ebdbb2",
+ "list.inactiveSelectionForeground": "#689d6a",
+ "list.inactiveSelectionBackground": "#3c383680",
+ "list.dropBackground": "#3c3836",
+ "list.highlightForeground": "#689d6a",
+
+ "sideBar.background": "#282828",
+ "sideBar.foreground": "#d5c4a1",
+ "sideBar.border": "#3c3836",
+ "sideBarTitle.foreground": "#ebdbb2",
+ "sideBarSectionHeader.background": "#28282800",
+ "sideBarSectionHeader.foreground": "#ebdbb2",
+
+ "activityBar.background": "#282828",
+ "activityBar.foreground": "#ebdbb2",
+ "activityBar.border": "#3c3836",
+ "activityBarBadge.background": "#458588",
+ "activityBarBadge.foreground": "#ebdbb2",
+
+ "editorGroup.border": "#3c3836",
+ "editorGroup.dropBackground": "#3c383660",
+ "editorGroupHeader.noTabsBackground": "#3c3836",
+ "editorGroupHeader.tabsBackground": "#282828",
+ "editorGroupHeader.tabsBorder": "#3c3836",
+
+ "tab.border": "#28282800",
+ "tab.activeBorder": "#689d6a",
+ "tab.activeBackground": "#3c3836",
+ "tab.activeForeground": "#ebdbb2",
+ "tab.inactiveForeground": "#a89984",
+ "tab.inactiveBackground": "#282828",
+ "tab.unfocusedActiveForeground": "#a89984",
+ "tab.unfocusedActiveBorder": "#28282800",
+ "tab.unfocusedInactiveForeground": "#928374",
+
+ "editor.background": "#282828",
+ "editor.foreground": "#ebdbb2",
+ "editorLineNumber.foreground": "#665c54",
+ "editorCursor.foreground": "#ebdbb2",
+ "editor.selectionBackground": "#689d6a40",
+ "editor.selectionHighlightBackground": "#fabd2f40",
+ "editor.hoverHighlightBackground": "#689d6a50",
+ "editorLink.activeForeground": "#ebdbb2",
+ "editor.findMatchBackground": "#83a59870",
+ "editor.findMatchHighlightBackground": "#fe801930",
+ "editor.findRangeHighlightBackground": "#83a59870",
+ "editor.lineHighlightBackground": "#3c383660",
+ "editor.lineHighlightBorder": "#3c383600",
+ "editorWhitespace.foreground": "#a8998420",
+ "editorRuler.foreground": "#a8998440",
+ "editorCodeLens.foreground": "#a8998490",
+ "editorBracketMatch.border": "#28282800",
+ "editorBracketMatch.background": "#92837480",
+ "editorHoverWidget.background": "#282828",
+ "editorHoverWidget.border": "#3c3836",
+ "editorOverviewRuler.border": "#28282800",
+ "editorOverviewRuler.findMatchForeground": "#bdae93",
+ "editorOverviewRuler.rangeHighlightForeground": "#bdae93",
+ "editorOverviewRuler.selectionHighlightForeground": "#665c54",
+ "editorOverviewRuler.wordHighlightForeground": "#665c54",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#665c54",
+ "editorOverviewRuler.modifiedForeground": "#83a598",
+ "editorOverviewRuler.addedForeground": "#83a598",
+ "editorOverviewRuler.deletedForeground": "#83a598",
+ "editorOverviewRuler.errorForeground": "#fb4934",
+ "editorOverviewRuler.warningForeground": "#d79921",
+ "editorOverviewRuler.infoForeground": "#d3869b",
+ "editorGutter.background": "#28282800",
+ "editorGutter.modifiedBackground": "#83a598",
+ "editorGutter.addedBackground": "#b8bb26",
+ "editorGutter.deletedBackground": "#fb4934",
+ "editorError.foreground": "#cc241d",
+ "editorWarning.foreground": "#d79921",
+ "editorInfo.foreground": "#458588",
+
+ "editorBracketHighlight.foreground1": "#b16286",
+ "editorBracketHighlight.foreground2": "#458588",
+ "editorBracketHighlight.foreground3": "#689d6a",
+ "editorBracketHighlight.foreground4": "#98971a",
+ "editorBracketHighlight.foreground5": "#d79921",
+ "editorBracketHighlight.foreground6": "#d65d0e",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#cc241d",
+
+ "diffEditor.insertedTextBackground": "#b8bb2630",
+ "diffEditor.removedTextBackground": "#fb493430",
+
+ "editorWidget.background": "#282828",
+ "editorWidget.border": "#3c3836",
+ "editorSuggestWidget.background": "#282828",
+ "editorSuggestWidget.foreground": "#ebdbb2",
+ "editorSuggestWidget.highlightForeground": "#689d6a",
+ "editorSuggestWidget.selectedBackground": "#3c383660",
+ "editorSuggestWidget.border": "#3c3836",
+
+ "peekView.border": "#3c3836",
+ "peekViewEditor.background": "#3c383670",
+ "peekViewEditor.matchHighlightBackground": "#504945",
+ "peekViewEditorGutter.background": "#3c383670",
+ "peekViewResult.background": "#3c383670",
+ "peekViewResult.fileForeground": "#ebdbb2",
+ "peekViewResult.selectionBackground": "#45858820",
+ "peekViewResult.selectionForeground": "#ebdbb2",
+ "peekViewResult.lineForeground": "#ebdbb2",
+ "peekViewResult.matchHighlightBackground": "#504945",
+ "peekViewTitle.background": "#3c383670",
+ "peekViewTitleDescription.foreground": "#bdae93",
+ "peekViewTitleLabel.foreground": "#ebdbb2",
+
+ "merge.currentHeaderBackground": "#45858840",
+ "merge.currentContentBackground": "#45858820",
+ "merge.incomingHeaderBackground": "#689d6a40",
+ "merge.incomingContentBackground": "#689d6a20",
+ "merge.border": "#28282800",
+ "editorOverviewRuler.currentContentForeground": "#458588",
+ "editorOverviewRuler.incomingContentForeground": "#689d6a",
+ "editorOverviewRuler.commonContentForeground": "#928374",
+
+ "panel.border": "#3c3836",
+ "panelTitle.activeForeground": "#ebdbb2",
+
+ "statusBar.background": "#282828",
+ "statusBar.border": "#3c3836",
+ "statusBar.foreground": "#ebdbb2",
+ "statusBar.debuggingBackground": "#fe8019",
+ "statusBar.debuggingForeground": "#282828",
+ "statusBar.debuggingBorder": "#28282800",
+ "statusBar.noFolderBackground": "#282828",
+ "statusBar.noFolderBorder": "#28282800",
+
+ "terminal.ansiBlack": "#3c3836",
+ "terminal.ansiBrightBlack": "#928374",
+ "terminal.ansiRed": "#cc241d",
+ "terminal.ansiBrightRed": "#fb4934",
+ "terminal.ansiGreen": "#98971a",
+ "terminal.ansiBrightGreen": "#b8bb26",
+ "terminal.ansiYellow": "#d79921",
+ "terminal.ansiBrightYellow": "#fabd2f",
+ "terminal.ansiBlue": "#458588",
+ "terminal.ansiBrightBlue": "#83a598",
+ "terminal.ansiMagenta": "#b16286",
+ "terminal.ansiBrightMagenta": "#d3869b",
+ "terminal.ansiCyan": "#689d6a",
+ "terminal.ansiBrightCyan": "#8ec07c",
+ "terminal.ansiWhite": "#a89984",
+ "terminal.ansiBrightWhite": "#ebdbb2",
+ "terminal.foreground": "#ebdbb2",
+ "terminal.background": "#282828",
+
+ "titleBar.activeBackground": "#282828",
+ "titleBar.activeForeground": "#ebdbb2",
+ "titleBar.inactiveBackground": "#282828",
+
+ "gitDecoration.modifiedResourceForeground": "#d79921",
+ "gitDecoration.deletedResourceForeground": "#cc241d",
+ "gitDecoration.untrackedResourceForeground": "#98971a",
+ "gitDecoration.ignoredResourceForeground": "#7c6f64",
+ "gitDecoration.conflictingResourceForeground": "#b16286",
+
+ "menu.border": "#3c3836",
+ "menu.separatorBackground": "#3c3836",
+
+ "notebook.cellEditorBackground": "#32302f",
+ "notebook.focusedCellBorder": "#a89984",
+ "notebook.cellBorderColor": "#504945",
+ "notebook.focusedEditorBorder": "#504945",
+
+ "extensionButton.prominentBackground": "#b8bb2680",
+ "extensionButton.prominentHoverBackground": "#b8bb2630",
+
+ "textLink.foreground": "#83a598",
+ "textLink.activeForeground": "#458588",
+ "debugToolBar.background": "#282828"
+ },
+ "semanticTokenColors": {
+ "constant.builtin": "#d3869b",
+ "property": "#83a598",
+ "property:python": "#ebdbb2",
+ "parameter": "#83a598",
+ "variable": "#ebdbb2",
+ "function": "#8ec07c",
+ "function.builtin": "#fe8019",
+ "method": "#8ec07c"
+ }
+}
diff --git a/assets/themes/src/vscode/gruvbox/gruvbox-dark-soft.json b/assets/themes/src/vscode/gruvbox/gruvbox-dark-soft.json
new file mode 100644
index 0000000000..8581447f49
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/gruvbox-dark-soft.json
@@ -0,0 +1,1074 @@
+{
+ "$schema": "vscode://schemas/color-theme",
+ "name": "Gruvbox Dark Soft",
+ "type": "dark",
+ "semanticHighlighting": true,
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "emphasis",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "strong",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "header",
+ "settings": {
+ "foreground": "#458588"
+ }
+ },
+ {
+ "scope": ["comment", "punctuation.definition.comment"],
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant", "support.constant", "variable.arguments"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": "constant.rgb-value",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "entity.name.selector",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["entity.name.tag", "punctuation.tag"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#cc241d"
+ }
+ },
+ {
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#b16286"
+ }
+ },
+ {
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "meta.preprocessor",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.string",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.numeric",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "meta.header.diff",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "storage",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "string",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.tag",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.value",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "string.escape",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "string.quasi",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "string.entity",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "object",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "module.node",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": "support.type.property-name",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "keyword.control.module",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "keyword.control.less",
+ "settings": {
+ "foreground": "#d79921"
+ }
+ },
+ {
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "keyword.operator.new",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "metatag.php",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "support.function.git-rebase",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "constant.sha.git-rebase",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "Types declaration and references",
+ "scope": [
+ "meta.type.name",
+ "meta.return.type",
+ "meta.return-type",
+ "meta.cast",
+ "meta.type.annotation",
+ "support.type",
+ "storage.type.cs",
+ "variable.class"
+ ],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["variable.this", "support.variable"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": [
+ "entity.name",
+ "entity.static",
+ "entity.name.class.static.function",
+ "entity.name.function",
+ "entity.name.class",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "name": "Function declarations",
+ "scope": ["entity.function", "entity.name.function.static"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "entity.name.function.function-call",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "support.function.builtin",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.method",
+ "entity.name.method.function-call",
+ "entity.name.static.function-call"
+ ],
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "brace",
+ "settings": {
+ "foreground": "#d5c4a1"
+ }
+ },
+ {
+ "name": "variables",
+ "scope": [
+ "meta.parameter.type.variable",
+ "variable.parameter",
+ "variable.name",
+ "variable.other",
+ "variable",
+ "string.constant.other.placeholder"
+ ],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": "prototype",
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#a89984"
+ }
+ },
+ {
+ "scope": "punctuation.quoted",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "punctuation.quasi",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "URL",
+ "scope": ["*url*", "*link*", "*uri*"],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+
+ {
+ "name": "Python function",
+ "scope": ["meta.function.python", "entity.name.function.python"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "Python Function and Class definition keywords",
+ "scope": [
+ "storage.type.function.python",
+ "storage.modifier.declaration",
+ "storage.type.class.python",
+ "storage.type.string.python"
+ ],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "Async keyword",
+ "scope": ["storage.type.function.async.python"],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": "meta.function-call.generic",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "Python Function Arguments",
+ "scope": "meta.function-call.arguments",
+ "settings": {
+ "foreground": "#d5c4a1"
+ }
+ },
+ {
+ "name": "Python Function decorator",
+ "scope": "entity.name.function.decorator",
+ "settings": {
+ "foreground": "#fabd2f",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Python ALL CAPS",
+ "scope": "constant.other.caps",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "scope": "punctuation.definition.logical-expression",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": ["string.interpolated.dollar.shell", "string.interpolated.backtick.shell"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+
+ {
+ "scope": "keyword.control.directive",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "support.function.C99",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+
+ {
+ "name": "C# functions & namespace",
+ "scope": [
+ "meta.function.cs",
+ "entity.name.function.cs",
+ "entity.name.type.namespace.cs"
+ ],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "C# Variables",
+ "scope": [
+ "keyword.other.using.cs",
+ "entity.name.variable.field.cs",
+ "entity.name.variable.local.cs",
+ "variable.other.readwrite.cs"
+ ],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "C# This",
+ "scope": ["keyword.other.this.cs", "keyword.other.base.cs"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+
+ {
+ "scope": "meta.scope.prerequisites",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": "entity.name.function.target",
+ "settings": {
+ "foreground": "#b8bb26",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "name": "coloring of the Java import and package identifiers",
+ "scope": ["storage.modifier.import.java", "storage.modifier.package.java"],
+ "settings": {
+ "foreground": "#bdae93"
+ }
+ },
+ {
+ "scope": ["keyword.other.import.java", "keyword.other.package.java"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "storage.type.java",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": "storage.type.annotation",
+ "settings": {
+ "foreground": "#83a598",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "keyword.other.documentation.javadoc",
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": "comment.block.javadoc variable.parameter.java",
+ "settings": {
+ "foreground": "#b8bb26",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": [
+ "source.java variable.other.object",
+ "source.java variable.other.definition.java"
+ ],
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+
+ {
+ "name": "Lisp optional function parameters",
+ "scope": "meta.function-parameters.lisp",
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+
+ {
+ "scope": "markup.underline",
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "string.other.link.title.markdown",
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "markup.underline.link",
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "scope": "markup.bold",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.italic",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "markup.inserted",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": "markup.deleted",
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": "markup.changed",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "markup.punctuation.quote.beginning",
+ "settings": {
+ "foreground": "#98971a"
+ }
+ },
+ {
+ "scope": "markup.punctuation.list.beginning",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["markup.inline.raw", "markup.fenced_code.block"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+
+ {
+ "scope": "string.quoted.double.json",
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "JSON Level 0",
+ "scope": ["source.json meta.structure.dictionary.json support.type.property-name.json"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "JSON Level 1",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "JSON Level 2",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+ {
+ "name": "JSON Level 3",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+
+ {
+ "scope": "entity.other.attribute-name.css",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "source.css meta.selector",
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": "support.type.property-name.css",
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name.class",
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": [
+ "source.css support.function.transform",
+ "source.css support.function.timing-function",
+ "source.css support.function.misc"
+ ],
+ "settings": {
+ "foreground": "#fb4934"
+ }
+ },
+ {
+ "name": "CSS property value",
+ "scope": [
+ "support.property-value",
+ "constant.rgb-value",
+ "support.property-value.scss",
+ "constant.rgb-value.scss"
+ ],
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": ["entity.name.tag.css"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["text.html entity.name.tag", "text.html punctuation.tag"],
+ "settings": {
+ "foreground": "#8ec07c",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": ["source.js variable.language"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "scope": ["source.ts variable.language"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "scope": ["source.go storage.type"],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.import"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "scope": ["source.go keyword.package", "source.go keyword.import"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "scope": ["source.go keyword.interface", "source.go keyword.struct"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.type"],
+ "settings": {
+ "foreground": "#ebdbb2"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.function"],
+ "settings": {
+ "foreground": "#d3869b"
+ }
+ },
+
+ {
+ "scope": ["keyword.control.cucumber.table"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+
+ {
+ "name": "ReasonML String",
+ "scope": ["source.reason string.double", "source.reason string.regexp"],
+ "settings": {
+ "foreground": "#b8bb26"
+ }
+ },
+ {
+ "name": "ReasonML equals sign",
+ "scope": ["source.reason keyword.control.less"],
+ "settings": {
+ "foreground": "#8ec07c"
+ }
+ },
+ {
+ "name": "ReasonML variable",
+ "scope": ["source.reason entity.name.function"],
+ "settings": {
+ "foreground": "#83a598"
+ }
+ },
+ {
+ "name": "ReasonML property",
+ "scope": ["source.reason support.property-value", "source.reason entity.name.filename"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+
+ {
+ "name": "Powershell member",
+ "scope": ["source.powershell variable.other.member.powershell"],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ },
+ {
+ "name": "Powershell function",
+ "scope": ["source.powershell support.function.powershell"],
+ "settings": {
+ "foreground": "#fabd2f"
+ }
+ },
+ {
+ "name": "Powershell function attribute",
+ "scope": ["source.powershell support.function.attribute.powershell"],
+ "settings": {
+ "foreground": "#bdae93"
+ }
+ },
+ {
+ "name": "Powershell hashtable member",
+ "scope": [
+ "source.powershell meta.hashtable.assignment.powershell variable.other.readwrite.powershell"
+ ],
+ "settings": {
+ "foreground": "#fe8019"
+ }
+ }
+ ],
+ "colors": {
+ "focusBorder": "#3c3836",
+ "foreground": "#ebdbb2",
+ "widget.shadow": "#32302f30",
+ "selection.background": "#689d6a80",
+ "errorForeground": "#fb4934",
+
+ "button.background": "#45858880",
+ "button.foreground": "#ebdbb2",
+ "button.hoverBackground": "#45858860",
+
+ "dropdown.background": "#32302f",
+ "dropdown.border": "#3c3836",
+ "dropdown.foreground": "#ebdbb2",
+
+ "input.background": "#ebdbb205",
+ "input.border": "#3c3836",
+ "input.foreground": "#ebdbb2",
+ "input.placeholderForeground": "#ebdbb260",
+ "inputValidation.errorBorder": "#fb4934",
+ "inputValidation.errorBackground": "#cc241d80",
+ "inputValidation.infoBorder": "#83a598",
+ "inputValidation.infoBackground": "#45858880",
+ "inputValidation.warningBorder": "#fabd2f",
+ "inputValidation.warningBackground": "#d7992180",
+ "inputOption.activeBorder": "#ebdbb260",
+
+ "scrollbar.shadow": "#32302f",
+ "scrollbarSlider.activeBackground": "#689d6a",
+ "scrollbarSlider.hoverBackground": "#665c54",
+ "scrollbarSlider.background": "#50494599",
+
+ "badge.background": "#d3869b",
+ "badge.foreground": "#32302f",
+
+ "progressBar.background": "#689d6a",
+
+ "list.activeSelectionBackground": "#3c383680",
+ "list.activeSelectionForeground": "#8ec07c",
+ "list.hoverBackground": "#3c383680",
+ "list.hoverForeground": "#d5c4a1",
+ "list.focusBackground": "#3c3836",
+ "list.focusForeground": "#ebdbb2",
+ "list.inactiveSelectionForeground": "#689d6a",
+ "list.inactiveSelectionBackground": "#3c383680",
+ "list.dropBackground": "#3c3836",
+ "list.highlightForeground": "#689d6a",
+
+ "sideBar.background": "#32302f",
+ "sideBar.foreground": "#d5c4a1",
+ "sideBar.border": "#3c3836",
+ "sideBarTitle.foreground": "#ebdbb2",
+ "sideBarSectionHeader.background": "#32302f00",
+ "sideBarSectionHeader.foreground": "#ebdbb2",
+
+ "activityBar.background": "#32302f",
+ "activityBar.foreground": "#ebdbb2",
+ "activityBar.border": "#3c3836",
+ "activityBarBadge.background": "#458588",
+ "activityBarBadge.foreground": "#ebdbb2",
+
+ "editorGroup.border": "#3c3836",
+ "editorGroup.dropBackground": "#3c383660",
+ "editorGroupHeader.noTabsBackground": "#3c3836",
+ "editorGroupHeader.tabsBackground": "#32302f",
+ "editorGroupHeader.tabsBorder": "#3c3836",
+
+ "tab.border": "#32302f00",
+ "tab.activeBackground": "#504945",
+ "tab.activeBorder": "#689d6a",
+ "tab.activeForeground": "#ebdbb2",
+ "tab.inactiveForeground": "#a89984",
+ "tab.inactiveBackground": "#32302f",
+ "tab.unfocusedActiveForeground": "#a89984",
+ "tab.unfocusedActiveBorder": "#32302f00",
+ "tab.unfocusedInactiveForeground": "#928374",
+
+ "editor.background": "#32302f",
+ "editor.foreground": "#ebdbb2",
+ "editorLineNumber.foreground": "#665c54",
+ "editorCursor.foreground": "#ebdbb2",
+ "editor.selectionBackground": "#689d6a40",
+ "editor.selectionHighlightBackground": "#fabd2f40",
+ "editor.hoverHighlightBackground": "#689d6a50",
+ "editorLink.activeForeground": "#ebdbb2",
+ "editor.findMatchBackground": "#83a59870",
+ "editor.findMatchHighlightBackground": "#fe801930",
+ "editor.findRangeHighlightBackground": "#83a59870",
+ "editor.lineHighlightBackground": "#3c383660",
+ "editor.lineHighlightBorder": "#3c383600",
+ "editorWhitespace.foreground": "#a8998420",
+ "editorRuler.foreground": "#a8998440",
+ "editorCodeLens.foreground": "#a8998490",
+ "editorBracketMatch.border": "#32302f00",
+ "editorBracketMatch.background": "#92837480",
+ "editorHoverWidget.background": "#32302f",
+ "editorHoverWidget.border": "#3c3836",
+ "editorOverviewRuler.border": "#32302f00",
+ "editorOverviewRuler.findMatchForeground": "#bdae93",
+ "editorOverviewRuler.rangeHighlightForeground": "#bdae93",
+ "editorOverviewRuler.selectionHighlightForeground": "#665c54",
+ "editorOverviewRuler.wordHighlightForeground": "#665c54",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#665c54",
+ "editorOverviewRuler.modifiedForeground": "#83a598",
+ "editorOverviewRuler.addedForeground": "#83a598",
+ "editorOverviewRuler.deletedForeground": "#83a598",
+ "editorOverviewRuler.errorForeground": "#fb4934",
+ "editorOverviewRuler.warningForeground": "#d79921",
+ "editorOverviewRuler.infoForeground": "#d3869b",
+ "editorGutter.background": "#32302f00",
+ "editorGutter.modifiedBackground": "#83a598",
+ "editorGutter.addedBackground": "#b8bb26",
+ "editorGutter.deletedBackground": "#fb4934",
+ "editorError.foreground": "#cc241d",
+ "editorWarning.foreground": "#d79921",
+ "editorInfo.foreground": "#458588",
+
+ "editorBracketHighlight.foreground1": "#b16286",
+ "editorBracketHighlight.foreground2": "#458588",
+ "editorBracketHighlight.foreground3": "#689d6a",
+ "editorBracketHighlight.foreground4": "#98971a",
+ "editorBracketHighlight.foreground5": "#d79921",
+ "editorBracketHighlight.foreground6": "#d65d0e",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#cc241d",
+
+ "diffEditor.insertedTextBackground": "#b8bb2630",
+ "diffEditor.removedTextBackground": "#fb493430",
+
+ "editorWidget.background": "#32302f",
+ "editorWidget.border": "#3c3836",
+ "editorSuggestWidget.background": "#32302f",
+ "editorSuggestWidget.foreground": "#ebdbb2",
+ "editorSuggestWidget.highlightForeground": "#689d6a",
+ "editorSuggestWidget.selectedBackground": "#3c383660",
+ "editorSuggestWidget.border": "#3c3836",
+
+ "peekView.border": "#3c3836",
+ "peekViewEditor.background": "#3c383670",
+ "peekViewEditor.matchHighlightBackground": "#504945",
+ "peekViewEditorGutter.background": "#3c383670",
+ "peekViewResult.background": "#3c383670",
+ "peekViewResult.fileForeground": "#ebdbb2",
+ "peekViewResult.selectionBackground": "#45858820",
+ "peekViewResult.selectionForeground": "#ebdbb2",
+ "peekViewResult.lineForeground": "#ebdbb2",
+ "peekViewResult.matchHighlightBackground": "#504945",
+ "peekViewTitle.background": "#3c383670",
+ "peekViewTitleDescription.foreground": "#bdae93",
+ "peekViewTitleLabel.foreground": "#ebdbb2",
+
+ "merge.currentHeaderBackground": "#45858840",
+ "merge.currentContentBackground": "#45858820",
+ "merge.incomingHeaderBackground": "#689d6a40",
+ "merge.incomingContentBackground": "#689d6a20",
+ "merge.border": "#32302f00",
+ "editorOverviewRuler.currentContentForeground": "#458588",
+ "editorOverviewRuler.incomingContentForeground": "#689d6a",
+ "editorOverviewRuler.commonContentForeground": "#928374",
+
+ "panel.border": "#3c3836",
+ "panelTitle.activeForeground": "#ebdbb2",
+
+ "statusBar.background": "#32302f",
+ "statusBar.border": "#3c3836",
+ "statusBar.foreground": "#ebdbb2",
+ "statusBar.debuggingBackground": "#fe8019",
+ "statusBar.debuggingForeground": "#32302f",
+ "statusBar.debuggingBorder": "#32302f00",
+ "statusBar.noFolderBackground": "#32302f",
+ "statusBar.noFolderBorder": "#32302f00",
+
+ "terminal.ansiBlack": "#3c3836",
+ "terminal.ansiBrightBlack": "#928374",
+ "terminal.ansiRed": "#cc241d",
+ "terminal.ansiBrightRed": "#fb4934",
+ "terminal.ansiGreen": "#98971a",
+ "terminal.ansiBrightGreen": "#b8bb26",
+ "terminal.ansiYellow": "#d79921",
+ "terminal.ansiBrightYellow": "#fabd2f",
+ "terminal.ansiBlue": "#458588",
+ "terminal.ansiBrightBlue": "#83a598",
+ "terminal.ansiMagenta": "#b16286",
+ "terminal.ansiBrightMagenta": "#d3869b",
+ "terminal.ansiCyan": "#689d6a",
+ "terminal.ansiBrightCyan": "#8ec07c",
+ "terminal.ansiWhite": "#a89984",
+ "terminal.ansiBrightWhite": "#ebdbb2",
+ "terminal.foreground": "#ebdbb2",
+ "terminal.background": "#32302f",
+
+ "titleBar.activeBackground": "#32302f",
+ "titleBar.activeForeground": "#ebdbb2",
+ "titleBar.inactiveBackground": "#32302f",
+
+ "gitDecoration.modifiedResourceForeground": "#d79921",
+ "gitDecoration.deletedResourceForeground": "#cc241d",
+ "gitDecoration.untrackedResourceForeground": "#98971a",
+ "gitDecoration.ignoredResourceForeground": "#7c6f64",
+ "gitDecoration.conflictingResourceForeground": "#b16286",
+
+ "menu.border": "#3c3836",
+ "menu.separatorBackground": "#3c3836",
+
+ "notebook.cellEditorBackground": "#282828",
+ "notebook.focusedCellBorder": "#a89984",
+ "notebook.cellBorderColor": "#665c54",
+ "notebook.focusedEditorBorder": "#665c54",
+
+ "extensionButton.prominentBackground": "#b8bb2680",
+ "extensionButton.prominentHoverBackground": "#b8bb2630",
+
+ "textLink.foreground": "#83a598",
+ "textLink.activeForeground": "#458588",
+ "debugToolBar.background": "#32302f"
+ },
+ "semanticTokenColors": {
+ "constant.builtin": "#d3869b",
+ "property": "#83a598",
+ "property:python": "#ebdbb2",
+ "parameter": "#83a598",
+ "variable": "#ebdbb2",
+ "function": "#8ec07c",
+ "function.builtin": "#fe8019",
+ "method": "#8ec07c"
+ }
+}
diff --git a/assets/themes/src/vscode/gruvbox/gruvbox-light-hard.json b/assets/themes/src/vscode/gruvbox/gruvbox-light-hard.json
new file mode 100644
index 0000000000..bd0f60eac9
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/gruvbox-light-hard.json
@@ -0,0 +1,1073 @@
+{
+ "$schema": "vscode://schemas/color-theme",
+ "name": "Gruvbox Light Hard",
+ "semanticHighlighting": true,
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "emphasis",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "strong",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "header",
+ "settings": {
+ "foreground": "#458588"
+ }
+ },
+ {
+ "scope": ["comment", "punctuation.definition.comment"],
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant", "support.constant", "variable.arguments"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": "constant.rgb-value",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "entity.name.selector",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["entity.name.tag", "punctuation.tag"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#cc241d"
+ }
+ },
+ {
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#b16286"
+ }
+ },
+ {
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "meta.preprocessor",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.string",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.numeric",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "meta.header.diff",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "storage",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "string",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.tag",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.value",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "string.escape",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "string.quasi",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "string.entity",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "object",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "module.node",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": "support.type.property-name",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "keyword.control.module",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "keyword.control.less",
+ "settings": {
+ "foreground": "#d79921"
+ }
+ },
+ {
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "keyword.operator.new",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "metatag.php",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "support.function.git-rebase",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "constant.sha.git-rebase",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "Types declaration and references",
+ "scope": [
+ "meta.type.name",
+ "meta.return.type",
+ "meta.return-type",
+ "meta.cast",
+ "meta.type.annotation",
+ "support.type",
+ "storage.type.cs",
+ "variable.class"
+ ],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["variable.this", "support.variable"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": [
+ "entity.name",
+ "entity.static",
+ "entity.name.class.static.function",
+ "entity.name.function",
+ "entity.name.class",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "name": "Function declarations",
+ "scope": ["entity.function", "entity.name.function.static"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "entity.name.function.function-call",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "support.function.builtin",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.method",
+ "entity.name.method.function-call",
+ "entity.name.static.function-call"
+ ],
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "brace",
+ "settings": {
+ "foreground": "#504945"
+ }
+ },
+ {
+ "name": "variables",
+ "scope": [
+ "meta.parameter.type.variable",
+ "variable.parameter",
+ "variable.name",
+ "variable.other",
+ "variable",
+ "string.constant.other.placeholder"
+ ],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": "prototype",
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#7c6f64"
+ }
+ },
+ {
+ "scope": "punctuation.quoted",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "punctuation.quasi",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "URL",
+ "scope": ["*url*", "*link*", "*uri*"],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+
+ {
+ "name": "Python function",
+ "scope": ["meta.function.python", "entity.name.function.python"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "Python Function and Class definition keywords",
+ "scope": [
+ "storage.type.function.python",
+ "storage.modifier.declaration",
+ "storage.type.class.python",
+ "storage.type.string.python"
+ ],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "Async keyword",
+ "scope": ["storage.type.function.async.python"],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": "meta.function-call.generic",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "Python Function Arguments",
+ "scope": "meta.function-call.arguments",
+ "settings": {
+ "foreground": "#504945"
+ }
+ },
+ {
+ "name": "Python Function decorator",
+ "scope": "entity.name.function.decorator",
+ "settings": {
+ "foreground": "#b57614",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Python ALL CAPS",
+ "scope": "constant.other.caps",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "punctuation.definition.logical-expression",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": ["string.interpolated.dollar.shell", "string.interpolated.backtick.shell"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+
+ {
+ "scope": "keyword.control.directive",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "support.function.C99",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+
+ {
+ "name": "C# functions & namespace",
+ "scope": [
+ "meta.function.cs",
+ "entity.name.function.cs",
+ "entity.name.type.namespace.cs"
+ ],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "C# Variables",
+ "scope": [
+ "keyword.other.using.cs",
+ "entity.name.variable.field.cs",
+ "entity.name.variable.local.cs",
+ "variable.other.readwrite.cs"
+ ],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "C# This",
+ "scope": ["keyword.other.this.cs", "keyword.other.base.cs"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+
+ {
+ "scope": "meta.scope.prerequisites",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": "entity.name.function.target",
+ "settings": {
+ "foreground": "#79740e",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "name": "coloring of the Java import and package identifiers",
+ "scope": ["storage.modifier.import.java", "storage.modifier.package.java"],
+ "settings": {
+ "foreground": "#665c54"
+ }
+ },
+ {
+ "scope": ["keyword.other.import.java", "keyword.other.package.java"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "storage.type.java",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": "storage.type.annotation",
+ "settings": {
+ "foreground": "#076678",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "keyword.other.documentation.javadoc",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "comment.block.javadoc variable.parameter.java",
+ "settings": {
+ "foreground": "#79740e",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": [
+ "source.java variable.other.object",
+ "source.java variable.other.definition.java"
+ ],
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+
+ {
+ "name": "Lisp optional function parameters",
+ "scope": "meta.function-parameters.lisp",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+
+ {
+ "scope": "markup.underline",
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "string.other.link.title.markdown",
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "markup.underline.link",
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": "markup.bold",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.italic",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "markup.inserted",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "markup.deleted",
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": "markup.changed",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.punctuation.quote.beginning",
+ "settings": {
+ "foreground": "#98971a"
+ }
+ },
+ {
+ "scope": "markup.punctuation.list.beginning",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["markup.inline.raw", "markup.fenced_code.block"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+
+ {
+ "scope": "string.quoted.double.json",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "JSON Level 0",
+ "scope": ["source.json meta.structure.dictionary.json support.type.property-name.json"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "JSON Level 1",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "JSON Level 2",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "name": "JSON Level 3",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+
+ {
+ "scope": "entity.other.attribute-name.css",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "source.css meta.selector",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "support.type.property-name.css",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name.class",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": [
+ "source.css support.function.transform",
+ "source.css support.function.timing-function",
+ "source.css support.function.misc"
+ ],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "CSS property value",
+ "scope": [
+ "support.property-value",
+ "constant.rgb-value",
+ "support.property-value.scss",
+ "constant.rgb-value.scss"
+ ],
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": ["entity.name.tag.css"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["text.html entity.name.tag", "text.html punctuation.tag"],
+ "settings": {
+ "foreground": "#427b58",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": ["source.js variable.language"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "scope": ["source.ts variable.language"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "scope": ["source.go storage.type"],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.import"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": ["source.go keyword.package", "source.go keyword.import"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": ["source.go keyword.interface", "source.go keyword.struct"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.type"],
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.function"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+
+ {
+ "scope": ["keyword.control.cucumber.table"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+
+ {
+ "name": "ReasonML String",
+ "scope": ["source.reason string.double", "source.reason string.regexp"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "ReasonML equals sign",
+ "scope": ["source.reason keyword.control.less"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "ReasonML variable",
+ "scope": ["source.reason entity.name.function"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "ReasonML property",
+ "scope": ["source.reason support.property-value", "source.reason entity.name.filename"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "name": "Powershell member",
+ "scope": ["source.powershell variable.other.member.powershell"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "name": "Powershell function",
+ "scope": ["source.powershell support.function.powershell"],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "name": "Powershell function attribute",
+ "scope": ["source.powershell support.function.attribute.powershell"],
+ "settings": {
+ "foreground": "#665c54"
+ }
+ },
+ {
+ "name": "Powershell hashtable member",
+ "scope": [
+ "source.powershell meta.hashtable.assignment.powershell variable.other.readwrite.powershell"
+ ],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ }
+ ],
+ "colors": {
+ "focusBorder": "#ebdbb2",
+ "foreground": "#3c3836",
+ "widget.shadow": "#f9f5d730",
+ "selection.background": "#689d6a80",
+ "errorForeground": "#9d0006",
+
+ "button.background": "#45858880",
+ "button.foreground": "#3c3836",
+ "button.hoverBackground": "#45858860",
+
+ "dropdown.background": "#f9f5d7",
+ "dropdown.border": "#ebdbb2",
+ "dropdown.foreground": "#3c3836",
+
+ "input.background": "#3c383605",
+ "input.border": "#ebdbb2",
+ "input.foreground": "#3c3836",
+ "input.placeholderForeground": "#3c383660",
+ "inputValidation.errorBorder": "#9d0006",
+ "inputValidation.errorBackground": "#cc241d80",
+ "inputValidation.infoBorder": "#076678",
+ "inputValidation.infoBackground": "#45858880",
+ "inputValidation.warningBorder": "#b57614",
+ "inputValidation.warningBackground": "#d7992180",
+ "inputOption.activeBorder": "#3c383660",
+
+ "scrollbar.shadow": "#f9f5d7",
+ "scrollbarSlider.activeBackground": "#689d6a",
+ "scrollbarSlider.hoverBackground": "#bdae93",
+ "scrollbarSlider.background": "#d5c4a199",
+
+ "badge.background": "#8f3f71",
+ "badge.foreground": "#f9f5d7",
+
+ "progressBar.background": "#689d6a",
+
+ "list.activeSelectionBackground": "#ebdbb280",
+ "list.activeSelectionForeground": "#af3a03",
+ "list.hoverBackground": "#ebdbb280",
+ "list.hoverForeground": "#504945",
+ "list.focusBackground": "#ebdbb2",
+ "list.focusForeground": "#3c3836",
+ "list.inactiveSelectionForeground": "#d65d0e",
+ "list.inactiveSelectionBackground": "#ebdbb280",
+ "list.dropBackground": "#ebdbb2",
+ "list.highlightForeground": "#689d6a",
+
+ "sideBar.background": "#f9f5d7",
+ "sideBar.foreground": "#504945",
+ "sideBar.border": "#ebdbb2",
+ "sideBarTitle.foreground": "#3c3836",
+ "sideBarSectionHeader.background": "#f9f5d700",
+ "sideBarSectionHeader.foreground": "#3c3836",
+
+ "activityBar.background": "#f9f5d7",
+ "activityBar.foreground": "#3c3836",
+ "activityBar.border": "#ebdbb2",
+ "activityBarBadge.background": "#458588",
+ "activityBarBadge.foreground": "#ebdbb2",
+
+ "editorGroup.border": "#ebdbb2",
+ "editorGroup.dropBackground": "#ebdbb260",
+ "editorGroupHeader.noTabsBackground": "#ebdbb2",
+ "editorGroupHeader.tabsBackground": "#f9f5d7",
+ "editorGroupHeader.tabsBorder": "#ebdbb2",
+
+ "tab.border": "#f9f5d700",
+ "tab.activeBackground": "#f2e5bc",
+ "tab.activeBorder": "#d65d0e",
+ "tab.activeForeground": "#3c3836",
+ "tab.inactiveForeground": "#7c6f64",
+ "tab.inactiveBackground": "#f9f5d7",
+ "tab.unfocusedActiveForeground": "#7c6f64",
+ "tab.unfocusedActiveBorder": "#f9f5d700",
+ "tab.unfocusedInactiveForeground": "#928374",
+
+ "editor.background": "#f9f5d7",
+ "editor.foreground": "#3c3836",
+ "editorLineNumber.foreground": "#bdae93",
+ "editorCursor.foreground": "#3c3836",
+ "editor.selectionBackground": "#689d6a40",
+ "editor.selectionHighlightBackground": "#b5761440",
+ "editor.hoverHighlightBackground": "#689d6a50",
+ "editorLink.activeForeground": "#3c3836",
+ "editor.findMatchBackground": "#07667870",
+ "editor.findMatchHighlightBackground": "#af3a0330",
+ "editor.findRangeHighlightBackground": "#07667870",
+ "editor.lineHighlightBackground": "#ebdbb260",
+ "editor.lineHighlightBorder": "#ebdbb200",
+ "editorWhitespace.foreground": "#7c6f6420",
+ "editorRuler.foreground": "#7c6f6440",
+ "editorCodeLens.foreground": "#7c6f6490",
+ "editorBracketMatch.border": "#f9f5d700",
+ "editorBracketMatch.background": "#92837480",
+ "editorHoverWidget.background": "#f9f5d7",
+ "editorHoverWidget.border": "#ebdbb2",
+ "editorOverviewRuler.border": "#f9f5d700",
+ "editorOverviewRuler.findMatchForeground": "#665c54",
+ "editorOverviewRuler.rangeHighlightForeground": "#665c54",
+ "editorOverviewRuler.selectionHighlightForeground": "#bdae93",
+ "editorOverviewRuler.wordHighlightForeground": "#bdae93",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#bdae93",
+ "editorOverviewRuler.modifiedForeground": "#076678",
+ "editorOverviewRuler.addedForeground": "#076678",
+ "editorOverviewRuler.deletedForeground": "#076678",
+ "editorOverviewRuler.errorForeground": "#9d0006",
+ "editorOverviewRuler.warningForeground": "#d79921",
+ "editorOverviewRuler.infoForeground": "#8f3f71",
+ "editorGutter.background": "#f9f5d700",
+ "editorGutter.modifiedBackground": "#076678",
+ "editorGutter.addedBackground": "#79740e",
+ "editorGutter.deletedBackground": "#9d0006",
+ "editorError.foreground": "#cc241d",
+ "editorWarning.foreground": "#d79921",
+ "editorInfo.foreground": "#458588",
+
+ "editorBracketHighlight.foreground1": "#b16286",
+ "editorBracketHighlight.foreground2": "#458588",
+ "editorBracketHighlight.foreground3": "#689d6a",
+ "editorBracketHighlight.foreground4": "#98971a",
+ "editorBracketHighlight.foreground5": "#d79921",
+ "editorBracketHighlight.foreground6": "#d65d0e",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#cc241d",
+
+ "diffEditor.insertedTextBackground": "#79740e30",
+ "diffEditor.removedTextBackground": "#9d000630",
+
+ "editorWidget.background": "#f9f5d7",
+ "editorWidget.border": "#ebdbb2",
+ "editorSuggestWidget.background": "#f9f5d7",
+ "editorSuggestWidget.foreground": "#3c3836",
+ "editorSuggestWidget.highlightForeground": "#689d6a",
+ "editorSuggestWidget.selectedBackground": "#ebdbb260",
+ "editorSuggestWidget.border": "#ebdbb2",
+
+ "peekView.border": "#ebdbb2",
+ "peekViewEditor.background": "#ebdbb270",
+ "peekViewEditor.matchHighlightBackground": "#d5c4a1",
+ "peekViewEditorGutter.background": "#ebdbb270",
+ "peekViewResult.background": "#ebdbb270",
+ "peekViewResult.fileForeground": "#3c3836",
+ "peekViewResult.selectionBackground": "#45858820",
+ "peekViewResult.selectionForeground": "#3c3836",
+ "peekViewResult.lineForeground": "#3c3836",
+ "peekViewResult.matchHighlightBackground": "#d5c4a1",
+ "peekViewTitle.background": "#ebdbb270",
+ "peekViewTitleDescription.foreground": "#665c54",
+ "peekViewTitleLabel.foreground": "#3c3836",
+
+ "merge.currentHeaderBackground": "#45858840",
+ "merge.currentContentBackground": "#45858820",
+ "merge.incomingHeaderBackground": "#689d6a40",
+ "merge.incomingContentBackground": "#689d6a20",
+ "merge.border": "#f9f5d700",
+ "editorOverviewRuler.currentContentForeground": "#458588",
+ "editorOverviewRuler.incomingContentForeground": "#689d6a",
+ "editorOverviewRuler.commonContentForeground": "#928374",
+
+ "panel.border": "#ebdbb2",
+ "panelTitle.activeForeground": "#3c3836",
+
+ "statusBar.background": "#f9f5d7",
+ "statusBar.border": "#ebdbb2",
+ "statusBar.foreground": "#3c3836",
+ "statusBar.debuggingBackground": "#af3a03",
+ "statusBar.debuggingForeground": "#f9f5d7",
+ "statusBar.debuggingBorder": "#f9f5d700",
+ "statusBar.noFolderBackground": "#f9f5d7",
+ "statusBar.noFolderBorder": "#f9f5d700",
+
+ "terminal.ansiBlack": "#ebdbb2",
+ "terminal.ansiBrightBlack": "#928374",
+ "terminal.ansiRed": "#cc241d",
+ "terminal.ansiBrightRed": "#9d0006",
+ "terminal.ansiGreen": "#98971a",
+ "terminal.ansiBrightGreen": "#79740e",
+ "terminal.ansiYellow": "#d79921",
+ "terminal.ansiBrightYellow": "#b57614",
+ "terminal.ansiBlue": "#458588",
+ "terminal.ansiBrightBlue": "#076678",
+ "terminal.ansiMagenta": "#b16286",
+ "terminal.ansiBrightMagenta": "#8f3f71",
+ "terminal.ansiCyan": "#689d6a",
+ "terminal.ansiBrightCyan": "#427b58",
+ "terminal.ansiWhite": "#7c6f64",
+ "terminal.ansiBrightWhite": "#3c3836",
+ "terminal.foreground": "#3c3836",
+ "terminal.background": "#f9f5d7",
+
+ "titleBar.activeBackground": "#f9f5d7",
+ "titleBar.activeForeground": "#3c3836",
+ "titleBar.inactiveBackground": "#f9f5d7",
+
+ "gitDecoration.modifiedResourceForeground": "#d79921",
+ "gitDecoration.deletedResourceForeground": "#cc241d",
+ "gitDecoration.untrackedResourceForeground": "#98971a",
+ "gitDecoration.ignoredResourceForeground": "#a89984",
+ "gitDecoration.conflictingResourceForeground": "#b16286",
+
+ "menu.border": "#ebdbb2",
+ "menu.separatorBackground": "#ebdbb2",
+
+ "notebook.cellEditorBackground": "#fbf1c7",
+ "notebook.focusedCellBorder": "#7c6f64",
+ "notebook.cellBorderColor": "#d5c4a1",
+ "notebook.focusedEditorBorder": "#d5c4a1",
+
+ "extensionButton.prominentBackground": "#79740e80",
+ "extensionButton.prominentHoverBackground": "#79740e30",
+
+ "textLink.foreground": "#076678",
+ "textLink.activeForeground": "#458588",
+ "debugToolBar.background": "#f9f5d7"
+ },
+ "semanticTokenColors": {
+ "constant.builtin": "#8f3f71",
+ "property": "#076678",
+ "property:python": "#3c3836",
+ "parameter": "#076678",
+ "variable": "#3c3836",
+ "function": "#427b58",
+ "function.builtin": "#af3a03",
+ "method": "#427b58"
+ }
+}
diff --git a/assets/themes/src/vscode/gruvbox/gruvbox-light-medium.json b/assets/themes/src/vscode/gruvbox/gruvbox-light-medium.json
new file mode 100644
index 0000000000..6cd742090e
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/gruvbox-light-medium.json
@@ -0,0 +1,1073 @@
+{
+ "$schema": "vscode://schemas/color-theme",
+ "name": "Gruvbox Light Medium",
+ "semanticHighlighting": true,
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "emphasis",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "strong",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "header",
+ "settings": {
+ "foreground": "#458588"
+ }
+ },
+ {
+ "scope": ["comment", "punctuation.definition.comment"],
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant", "support.constant", "variable.arguments"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": "constant.rgb-value",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "entity.name.selector",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["entity.name.tag", "punctuation.tag"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#cc241d"
+ }
+ },
+ {
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#b16286"
+ }
+ },
+ {
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "meta.preprocessor",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.string",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.numeric",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "meta.header.diff",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "storage",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "string",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.tag",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.value",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "string.escape",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "string.quasi",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "string.entity",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "object",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "module.node",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": "support.type.property-name",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "keyword.control.module",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "keyword.control.less",
+ "settings": {
+ "foreground": "#d79921"
+ }
+ },
+ {
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "keyword.operator.new",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "metatag.php",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "support.function.git-rebase",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "constant.sha.git-rebase",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "Types declaration and references",
+ "scope": [
+ "meta.type.name",
+ "meta.return.type",
+ "meta.return-type",
+ "meta.cast",
+ "meta.type.annotation",
+ "support.type",
+ "storage.type.cs",
+ "variable.class"
+ ],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["variable.this", "support.variable"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": [
+ "entity.name",
+ "entity.static",
+ "entity.name.class.static.function",
+ "entity.name.function",
+ "entity.name.class",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "name": "Function declarations",
+ "scope": ["entity.function", "entity.name.function.static"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "entity.name.function.function-call",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "support.function.builtin",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.method",
+ "entity.name.method.function-call",
+ "entity.name.static.function-call"
+ ],
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "brace",
+ "settings": {
+ "foreground": "#504945"
+ }
+ },
+ {
+ "name": "variables",
+ "scope": [
+ "meta.parameter.type.variable",
+ "variable.parameter",
+ "variable.name",
+ "variable.other",
+ "variable",
+ "string.constant.other.placeholder"
+ ],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": "prototype",
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#7c6f64"
+ }
+ },
+ {
+ "scope": "punctuation.quoted",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "punctuation.quasi",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "URL",
+ "scope": ["*url*", "*link*", "*uri*"],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+
+ {
+ "name": "Python function",
+ "scope": ["meta.function.python", "entity.name.function.python"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "Python Function and Class definition keywords",
+ "scope": [
+ "storage.type.function.python",
+ "storage.modifier.declaration",
+ "storage.type.class.python",
+ "storage.type.string.python"
+ ],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "Async keyword",
+ "scope": ["storage.type.function.async.python"],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": "meta.function-call.generic",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "Python Function Arguments",
+ "scope": "meta.function-call.arguments",
+ "settings": {
+ "foreground": "#504945"
+ }
+ },
+ {
+ "name": "Python Function decorator",
+ "scope": "entity.name.function.decorator",
+ "settings": {
+ "foreground": "#b57614",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Python ALL CAPS",
+ "scope": "constant.other.caps",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "punctuation.definition.logical-expression",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": ["string.interpolated.dollar.shell", "string.interpolated.backtick.shell"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+
+ {
+ "scope": "keyword.control.directive",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "support.function.C99",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+
+ {
+ "name": "C# functions & namespace",
+ "scope": [
+ "meta.function.cs",
+ "entity.name.function.cs",
+ "entity.name.type.namespace.cs"
+ ],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "C# Variables",
+ "scope": [
+ "keyword.other.using.cs",
+ "entity.name.variable.field.cs",
+ "entity.name.variable.local.cs",
+ "variable.other.readwrite.cs"
+ ],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "C# This",
+ "scope": ["keyword.other.this.cs", "keyword.other.base.cs"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+
+ {
+ "scope": "meta.scope.prerequisites",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": "entity.name.function.target",
+ "settings": {
+ "foreground": "#79740e",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "name": "coloring of the Java import and package identifiers",
+ "scope": ["storage.modifier.import.java", "storage.modifier.package.java"],
+ "settings": {
+ "foreground": "#665c54"
+ }
+ },
+ {
+ "scope": ["keyword.other.import.java", "keyword.other.package.java"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "storage.type.java",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": "storage.type.annotation",
+ "settings": {
+ "foreground": "#076678",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "keyword.other.documentation.javadoc",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "comment.block.javadoc variable.parameter.java",
+ "settings": {
+ "foreground": "#79740e",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": [
+ "source.java variable.other.object",
+ "source.java variable.other.definition.java"
+ ],
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+
+ {
+ "name": "Lisp optional function parameters",
+ "scope": "meta.function-parameters.lisp",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+
+ {
+ "scope": "markup.underline",
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "string.other.link.title.markdown",
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "markup.underline.link",
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": "markup.bold",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.italic",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "markup.inserted",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "markup.deleted",
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": "markup.changed",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.punctuation.quote.beginning",
+ "settings": {
+ "foreground": "#98971a"
+ }
+ },
+ {
+ "scope": "markup.punctuation.list.beginning",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["markup.inline.raw", "markup.fenced_code.block"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+
+ {
+ "scope": "string.quoted.double.json",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "JSON Level 0",
+ "scope": ["source.json meta.structure.dictionary.json support.type.property-name.json"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "JSON Level 1",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "JSON Level 2",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "name": "JSON Level 3",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+
+ {
+ "scope": "entity.other.attribute-name.css",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "source.css meta.selector",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "support.type.property-name.css",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name.class",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": [
+ "source.css support.function.transform",
+ "source.css support.function.timing-function",
+ "source.css support.function.misc"
+ ],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "CSS property value",
+ "scope": [
+ "support.property-value",
+ "constant.rgb-value",
+ "support.property-value.scss",
+ "constant.rgb-value.scss"
+ ],
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": ["entity.name.tag.css"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["text.html entity.name.tag", "text.html punctuation.tag"],
+ "settings": {
+ "foreground": "#427b58",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": ["source.js variable.language"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "scope": ["source.ts variable.language"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "scope": ["source.go storage.type"],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.import"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": ["source.go keyword.package", "source.go keyword.import"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": ["source.go keyword.interface", "source.go keyword.struct"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.type"],
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.function"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+
+ {
+ "scope": ["keyword.control.cucumber.table"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+
+ {
+ "name": "ReasonML String",
+ "scope": ["source.reason string.double", "source.reason string.regexp"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "ReasonML equals sign",
+ "scope": ["source.reason keyword.control.less"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "ReasonML variable",
+ "scope": ["source.reason entity.name.function"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "ReasonML property",
+ "scope": ["source.reason support.property-value", "source.reason entity.name.filename"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "name": "Powershell member",
+ "scope": ["source.powershell variable.other.member.powershell"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "name": "Powershell function",
+ "scope": ["source.powershell support.function.powershell"],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "name": "Powershell function attribute",
+ "scope": ["source.powershell support.function.attribute.powershell"],
+ "settings": {
+ "foreground": "#665c54"
+ }
+ },
+ {
+ "name": "Powershell hashtable member",
+ "scope": [
+ "source.powershell meta.hashtable.assignment.powershell variable.other.readwrite.powershell"
+ ],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ }
+ ],
+ "colors": {
+ "focusBorder": "#ebdbb2",
+ "foreground": "#3c3836",
+ "widget.shadow": "#fbf1c730",
+ "selection.background": "#689d6a80",
+ "errorForeground": "#9d0006",
+
+ "button.background": "#45858880",
+ "button.foreground": "#3c3836",
+ "button.hoverBackground": "#45858860",
+
+ "dropdown.background": "#fbf1c7",
+ "dropdown.border": "#ebdbb2",
+ "dropdown.foreground": "#3c3836",
+
+ "input.background": "#3c383605",
+ "input.border": "#ebdbb2",
+ "input.foreground": "#3c3836",
+ "input.placeholderForeground": "#3c383660",
+ "inputValidation.errorBorder": "#9d0006",
+ "inputValidation.errorBackground": "#cc241d80",
+ "inputValidation.infoBorder": "#076678",
+ "inputValidation.infoBackground": "#45858880",
+ "inputValidation.warningBorder": "#b57614",
+ "inputValidation.warningBackground": "#d7992180",
+ "inputOption.activeBorder": "#3c383660",
+
+ "scrollbar.shadow": "#fbf1c7",
+ "scrollbarSlider.activeBackground": "#689d6a",
+ "scrollbarSlider.hoverBackground": "#bdae93",
+ "scrollbarSlider.background": "#d5c4a199",
+
+ "badge.background": "#8f3f71",
+ "badge.foreground": "#fbf1c7",
+
+ "progressBar.background": "#689d6a",
+
+ "list.activeSelectionBackground": "#ebdbb280",
+ "list.activeSelectionForeground": "#af3a03",
+ "list.hoverBackground": "#ebdbb280",
+ "list.hoverForeground": "#504945",
+ "list.focusBackground": "#ebdbb2",
+ "list.focusForeground": "#3c3836",
+ "list.inactiveSelectionForeground": "#d65d0e",
+ "list.inactiveSelectionBackground": "#ebdbb280",
+ "list.dropBackground": "#ebdbb2",
+ "list.highlightForeground": "#689d6a",
+
+ "sideBar.background": "#fbf1c7",
+ "sideBar.foreground": "#504945",
+ "sideBar.border": "#ebdbb2",
+ "sideBarTitle.foreground": "#3c3836",
+ "sideBarSectionHeader.background": "#fbf1c700",
+ "sideBarSectionHeader.foreground": "#3c3836",
+
+ "activityBar.background": "#fbf1c7",
+ "activityBar.foreground": "#3c3836",
+ "activityBar.border": "#ebdbb2",
+ "activityBarBadge.background": "#458588",
+ "activityBarBadge.foreground": "#ebdbb2",
+
+ "editorGroup.border": "#ebdbb2",
+ "editorGroup.dropBackground": "#ebdbb260",
+ "editorGroupHeader.noTabsBackground": "#ebdbb2",
+ "editorGroupHeader.tabsBackground": "#fbf1c7",
+ "editorGroupHeader.tabsBorder": "#ebdbb2",
+
+ "tab.border": "#fbf1c700",
+ "tab.activeBackground": "#ebdbb2",
+ "tab.activeBorder": "#d65d0e",
+ "tab.activeForeground": "#3c3836",
+ "tab.inactiveForeground": "#7c6f64",
+ "tab.inactiveBackground": "#fbf1c7",
+ "tab.unfocusedActiveForeground": "#7c6f64",
+ "tab.unfocusedActiveBorder": "#fbf1c700",
+ "tab.unfocusedInactiveForeground": "#928374",
+
+ "editor.background": "#fbf1c7",
+ "editor.foreground": "#3c3836",
+ "editorLineNumber.foreground": "#bdae93",
+ "editorCursor.foreground": "#3c3836",
+ "editor.selectionBackground": "#689d6a40",
+ "editor.selectionHighlightBackground": "#b5761440",
+ "editor.hoverHighlightBackground": "#689d6a50",
+ "editorLink.activeForeground": "#3c3836",
+ "editor.findMatchBackground": "#07667870",
+ "editor.findMatchHighlightBackground": "#af3a0330",
+ "editor.findRangeHighlightBackground": "#07667870",
+ "editor.lineHighlightBackground": "#ebdbb260",
+ "editor.lineHighlightBorder": "#ebdbb200",
+ "editorWhitespace.foreground": "#7c6f6420",
+ "editorRuler.foreground": "#7c6f6440",
+ "editorCodeLens.foreground": "#7c6f6490",
+ "editorBracketMatch.border": "#fbf1c700",
+ "editorBracketMatch.background": "#92837480",
+ "editorHoverWidget.background": "#fbf1c7",
+ "editorHoverWidget.border": "#ebdbb2",
+ "editorOverviewRuler.border": "#fbf1c700",
+ "editorOverviewRuler.findMatchForeground": "#665c54",
+ "editorOverviewRuler.rangeHighlightForeground": "#665c54",
+ "editorOverviewRuler.selectionHighlightForeground": "#bdae93",
+ "editorOverviewRuler.wordHighlightForeground": "#bdae93",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#bdae93",
+ "editorOverviewRuler.modifiedForeground": "#076678",
+ "editorOverviewRuler.addedForeground": "#076678",
+ "editorOverviewRuler.deletedForeground": "#076678",
+ "editorOverviewRuler.errorForeground": "#9d0006",
+ "editorOverviewRuler.warningForeground": "#d79921",
+ "editorOverviewRuler.infoForeground": "#8f3f71",
+ "editorGutter.background": "#fbf1c700",
+ "editorGutter.modifiedBackground": "#076678",
+ "editorGutter.addedBackground": "#79740e",
+ "editorGutter.deletedBackground": "#9d0006",
+ "editorError.foreground": "#cc241d",
+ "editorWarning.foreground": "#d79921",
+ "editorInfo.foreground": "#458588",
+
+ "editorBracketHighlight.foreground1": "#b16286",
+ "editorBracketHighlight.foreground2": "#458588",
+ "editorBracketHighlight.foreground3": "#689d6a",
+ "editorBracketHighlight.foreground4": "#98971a",
+ "editorBracketHighlight.foreground5": "#d79921",
+ "editorBracketHighlight.foreground6": "#d65d0e",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#cc241d",
+
+ "diffEditor.insertedTextBackground": "#79740e30",
+ "diffEditor.removedTextBackground": "#9d000630",
+
+ "editorWidget.background": "#fbf1c7",
+ "editorWidget.border": "#ebdbb2",
+ "editorSuggestWidget.background": "#fbf1c7",
+ "editorSuggestWidget.foreground": "#3c3836",
+ "editorSuggestWidget.highlightForeground": "#689d6a",
+ "editorSuggestWidget.selectedBackground": "#ebdbb260",
+ "editorSuggestWidget.border": "#ebdbb2",
+
+ "peekView.border": "#ebdbb2",
+ "peekViewEditor.background": "#ebdbb270",
+ "peekViewEditor.matchHighlightBackground": "#d5c4a1",
+ "peekViewEditorGutter.background": "#ebdbb270",
+ "peekViewResult.background": "#ebdbb270",
+ "peekViewResult.fileForeground": "#3c3836",
+ "peekViewResult.selectionBackground": "#45858820",
+ "peekViewResult.selectionForeground": "#3c3836",
+ "peekViewResult.lineForeground": "#3c3836",
+ "peekViewResult.matchHighlightBackground": "#d5c4a1",
+ "peekViewTitle.background": "#ebdbb270",
+ "peekViewTitleDescription.foreground": "#665c54",
+ "peekViewTitleLabel.foreground": "#3c3836",
+
+ "merge.currentHeaderBackground": "#45858840",
+ "merge.currentContentBackground": "#45858820",
+ "merge.incomingHeaderBackground": "#689d6a40",
+ "merge.incomingContentBackground": "#689d6a20",
+ "merge.border": "#fbf1c700",
+ "editorOverviewRuler.currentContentForeground": "#458588",
+ "editorOverviewRuler.incomingContentForeground": "#689d6a",
+ "editorOverviewRuler.commonContentForeground": "#928374",
+
+ "panel.border": "#ebdbb2",
+ "panelTitle.activeForeground": "#3c3836",
+
+ "statusBar.background": "#fbf1c7",
+ "statusBar.border": "#ebdbb2",
+ "statusBar.foreground": "#3c3836",
+ "statusBar.debuggingBackground": "#af3a03",
+ "statusBar.debuggingForeground": "#fbf1c7",
+ "statusBar.debuggingBorder": "#fbf1c700",
+ "statusBar.noFolderBackground": "#fbf1c7",
+ "statusBar.noFolderBorder": "#fbf1c700",
+
+ "terminal.ansiBlack": "#ebdbb2",
+ "terminal.ansiBrightBlack": "#928374",
+ "terminal.ansiRed": "#cc241d",
+ "terminal.ansiBrightRed": "#9d0006",
+ "terminal.ansiGreen": "#98971a",
+ "terminal.ansiBrightGreen": "#79740e",
+ "terminal.ansiYellow": "#d79921",
+ "terminal.ansiBrightYellow": "#b57614",
+ "terminal.ansiBlue": "#458588",
+ "terminal.ansiBrightBlue": "#076678",
+ "terminal.ansiMagenta": "#b16286",
+ "terminal.ansiBrightMagenta": "#8f3f71",
+ "terminal.ansiCyan": "#689d6a",
+ "terminal.ansiBrightCyan": "#427b58",
+ "terminal.ansiWhite": "#7c6f64",
+ "terminal.ansiBrightWhite": "#3c3836",
+ "terminal.foreground": "#3c3836",
+ "terminal.background": "#fbf1c7",
+
+ "titleBar.activeBackground": "#fbf1c7",
+ "titleBar.activeForeground": "#3c3836",
+ "titleBar.inactiveBackground": "#fbf1c7",
+
+ "gitDecoration.modifiedResourceForeground": "#d79921",
+ "gitDecoration.deletedResourceForeground": "#cc241d",
+ "gitDecoration.untrackedResourceForeground": "#98971a",
+ "gitDecoration.ignoredResourceForeground": "#a89984",
+ "gitDecoration.conflictingResourceForeground": "#b16286",
+
+ "menu.border": "#ebdbb2",
+ "menu.separatorBackground": "#ebdbb2",
+
+ "notebook.cellEditorBackground": "#f2e5bc",
+ "notebook.focusedCellBorder": "#665c54",
+ "notebook.cellBorderColor": "#bdae93",
+ "notebook.focusedEditorBorder": "#bdae93",
+
+ "extensionButton.prominentBackground": "#79740e80",
+ "extensionButton.prominentHoverBackground": "#79740e30",
+
+ "textLink.foreground": "#076678",
+ "textLink.activeForeground": "#458588",
+ "debugToolBar.background": "#fbf1c7"
+ },
+ "semanticTokenColors": {
+ "constant.builtin": "#8f3f71",
+ "property": "#076678",
+ "property:python": "#3c3836",
+ "parameter": "#076678",
+ "variable": "#3c3836",
+ "function": "#427b58",
+ "function.builtin": "#af3a03",
+ "method": "#427b58"
+ }
+}
diff --git a/assets/themes/src/vscode/gruvbox/gruvbox-light-soft.json b/assets/themes/src/vscode/gruvbox/gruvbox-light-soft.json
new file mode 100644
index 0000000000..a101704eed
--- /dev/null
+++ b/assets/themes/src/vscode/gruvbox/gruvbox-light-soft.json
@@ -0,0 +1,1073 @@
+{
+ "$schema": "vscode://schemas/color-theme",
+ "name": "Gruvbox Light Soft",
+ "semanticHighlighting": true,
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "emphasis",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "strong",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "header",
+ "settings": {
+ "foreground": "#458588"
+ }
+ },
+ {
+ "scope": ["comment", "punctuation.definition.comment"],
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant", "support.constant", "variable.arguments"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": "constant.rgb-value",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "entity.name.selector",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["entity.name.tag", "punctuation.tag"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#cc241d"
+ }
+ },
+ {
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#b16286"
+ }
+ },
+ {
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "meta.preprocessor",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.string",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "meta.preprocessor.numeric",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "meta.header.diff",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "storage",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "string",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.tag",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.value",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "string.escape",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "string.quasi",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "string.entity",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "object",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "module.node",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": "support.type.property-name",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "keyword.control.module",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "keyword.control.less",
+ "settings": {
+ "foreground": "#d79921"
+ }
+ },
+ {
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "keyword.operator.new",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "metatag.php",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "support.function.git-rebase",
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "constant.sha.git-rebase",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "Types declaration and references",
+ "scope": [
+ "meta.type.name",
+ "meta.return.type",
+ "meta.return-type",
+ "meta.cast",
+ "meta.type.annotation",
+ "support.type",
+ "storage.type.cs",
+ "variable.class"
+ ],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["variable.this", "support.variable"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": [
+ "entity.name",
+ "entity.static",
+ "entity.name.class.static.function",
+ "entity.name.function",
+ "entity.name.class",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "name": "Function declarations",
+ "scope": ["entity.function", "entity.name.function.static"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "entity.name.function.function-call",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "support.function.builtin",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.method",
+ "entity.name.method.function-call",
+ "entity.name.static.function-call"
+ ],
+ "settings": {
+ "foreground": "#689d6a"
+ }
+ },
+ {
+ "scope": "brace",
+ "settings": {
+ "foreground": "#504945"
+ }
+ },
+ {
+ "name": "variables",
+ "scope": [
+ "meta.parameter.type.variable",
+ "variable.parameter",
+ "variable.name",
+ "variable.other",
+ "variable",
+ "string.constant.other.placeholder"
+ ],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": "prototype",
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#7c6f64"
+ }
+ },
+ {
+ "scope": "punctuation.quoted",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "punctuation.quasi",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "URL",
+ "scope": ["*url*", "*link*", "*uri*"],
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+
+ {
+ "name": "Python function",
+ "scope": ["meta.function.python", "entity.name.function.python"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "Python Function and Class definition keywords",
+ "scope": [
+ "storage.type.function.python",
+ "storage.modifier.declaration",
+ "storage.type.class.python",
+ "storage.type.string.python"
+ ],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "Async keyword",
+ "scope": ["storage.type.function.async.python"],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": "meta.function-call.generic",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "Python Function Arguments",
+ "scope": "meta.function-call.arguments",
+ "settings": {
+ "foreground": "#504945"
+ }
+ },
+ {
+ "name": "Python Function decorator",
+ "scope": "entity.name.function.decorator",
+ "settings": {
+ "foreground": "#b57614",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Python ALL CAPS",
+ "scope": "constant.other.caps",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "scope": "punctuation.definition.logical-expression",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": ["string.interpolated.dollar.shell", "string.interpolated.backtick.shell"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+
+ {
+ "scope": "keyword.control.directive",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "support.function.C99",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+
+ {
+ "name": "C# functions & namespace",
+ "scope": [
+ "meta.function.cs",
+ "entity.name.function.cs",
+ "entity.name.type.namespace.cs"
+ ],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "C# Variables",
+ "scope": [
+ "keyword.other.using.cs",
+ "entity.name.variable.field.cs",
+ "entity.name.variable.local.cs",
+ "variable.other.readwrite.cs"
+ ],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "C# This",
+ "scope": ["keyword.other.this.cs", "keyword.other.base.cs"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+
+ {
+ "scope": "meta.scope.prerequisites",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": "entity.name.function.target",
+ "settings": {
+ "foreground": "#79740e",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "name": "coloring of the Java import and package identifiers",
+ "scope": ["storage.modifier.import.java", "storage.modifier.package.java"],
+ "settings": {
+ "foreground": "#665c54"
+ }
+ },
+ {
+ "scope": ["keyword.other.import.java", "keyword.other.package.java"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "storage.type.java",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": "storage.type.annotation",
+ "settings": {
+ "foreground": "#076678",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "keyword.other.documentation.javadoc",
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": "comment.block.javadoc variable.parameter.java",
+ "settings": {
+ "foreground": "#79740e",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": [
+ "source.java variable.other.object",
+ "source.java variable.other.definition.java"
+ ],
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+
+ {
+ "name": "Lisp optional function parameters",
+ "scope": "meta.function-parameters.lisp",
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+
+ {
+ "scope": "markup.underline",
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "string.other.link.title.markdown",
+ "settings": {
+ "foreground": "#928374",
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "scope": "markup.underline.link",
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "scope": "markup.bold",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.italic",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "markup.inserted",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": "markup.deleted",
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": "markup.changed",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "markup.punctuation.quote.beginning",
+ "settings": {
+ "foreground": "#98971a"
+ }
+ },
+ {
+ "scope": "markup.punctuation.list.beginning",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["markup.inline.raw", "markup.fenced_code.block"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+
+ {
+ "scope": "string.quoted.double.json",
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "JSON Level 0",
+ "scope": ["source.json meta.structure.dictionary.json support.type.property-name.json"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "JSON Level 1",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "JSON Level 2",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+ {
+ "name": "JSON Level 3",
+ "scope": [
+ "source.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json meta.structure.dictionary.value.json meta.structure.dictionary.json support.type.property-name.json"
+ ],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+
+ {
+ "scope": "entity.other.attribute-name.css",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "source.css meta.selector",
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": "support.type.property-name.css",
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "scope": "entity.other.attribute-name.class",
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": [
+ "source.css support.function.transform",
+ "source.css support.function.timing-function",
+ "source.css support.function.misc"
+ ],
+ "settings": {
+ "foreground": "#9d0006"
+ }
+ },
+ {
+ "name": "CSS property value",
+ "scope": [
+ "support.property-value",
+ "constant.rgb-value",
+ "support.property-value.scss",
+ "constant.rgb-value.scss"
+ ],
+ "settings": {
+ "foreground": "#d65d0e"
+ }
+ },
+ {
+ "scope": ["entity.name.tag.css"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["text.html entity.name.tag", "text.html punctuation.tag"],
+ "settings": {
+ "foreground": "#427b58",
+ "fontStyle": "bold"
+ }
+ },
+
+ {
+ "scope": ["source.js variable.language"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "scope": ["source.ts variable.language"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "scope": ["source.go storage.type"],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.import"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "scope": ["source.go keyword.package", "source.go keyword.import"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "scope": ["source.go keyword.interface", "source.go keyword.struct"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.type"],
+ "settings": {
+ "foreground": "#3c3836"
+ }
+ },
+ {
+ "scope": ["source.go entity.name.function"],
+ "settings": {
+ "foreground": "#8f3f71"
+ }
+ },
+
+ {
+ "scope": ["keyword.control.cucumber.table"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+
+ {
+ "name": "ReasonML String",
+ "scope": ["source.reason string.double", "source.reason string.regexp"],
+ "settings": {
+ "foreground": "#79740e"
+ }
+ },
+ {
+ "name": "ReasonML equals sign",
+ "scope": ["source.reason keyword.control.less"],
+ "settings": {
+ "foreground": "#427b58"
+ }
+ },
+ {
+ "name": "ReasonML variable",
+ "scope": ["source.reason entity.name.function"],
+ "settings": {
+ "foreground": "#076678"
+ }
+ },
+ {
+ "name": "ReasonML property",
+ "scope": ["source.reason support.property-value", "source.reason entity.name.filename"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+
+ {
+ "name": "Powershell member",
+ "scope": ["source.powershell variable.other.member.powershell"],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ },
+ {
+ "name": "Powershell function",
+ "scope": ["source.powershell support.function.powershell"],
+ "settings": {
+ "foreground": "#b57614"
+ }
+ },
+ {
+ "name": "Powershell function attribute",
+ "scope": ["source.powershell support.function.attribute.powershell"],
+ "settings": {
+ "foreground": "#665c54"
+ }
+ },
+ {
+ "name": "Powershell hashtable member",
+ "scope": [
+ "source.powershell meta.hashtable.assignment.powershell variable.other.readwrite.powershell"
+ ],
+ "settings": {
+ "foreground": "#af3a03"
+ }
+ }
+ ],
+ "colors": {
+ "focusBorder": "#ebdbb2",
+ "foreground": "#3c3836",
+ "widget.shadow": "#f2e5bc30",
+ "selection.background": "#689d6a80",
+ "errorForeground": "#9d0006",
+
+ "button.background": "#45858880",
+ "button.foreground": "#3c3836",
+ "button.hoverBackground": "#45858860",
+
+ "dropdown.background": "#f2e5bc",
+ "dropdown.border": "#ebdbb2",
+ "dropdown.foreground": "#3c3836",
+
+ "input.background": "#3c383605",
+ "input.border": "#ebdbb2",
+ "input.foreground": "#3c3836",
+ "input.placeholderForeground": "#3c383660",
+ "inputValidation.errorBorder": "#9d0006",
+ "inputValidation.errorBackground": "#cc241d80",
+ "inputValidation.infoBorder": "#076678",
+ "inputValidation.infoBackground": "#45858880",
+ "inputValidation.warningBorder": "#b57614",
+ "inputValidation.warningBackground": "#d7992180",
+ "inputOption.activeBorder": "#3c383660",
+
+ "scrollbar.shadow": "#f2e5bc",
+ "scrollbarSlider.activeBackground": "#689d6a",
+ "scrollbarSlider.hoverBackground": "#bdae93",
+ "scrollbarSlider.background": "#d5c4a199",
+
+ "badge.background": "#8f3f71",
+ "badge.foreground": "#f2e5bc",
+
+ "progressBar.background": "#689d6a",
+
+ "list.activeSelectionBackground": "#ebdbb280",
+ "list.activeSelectionForeground": "#af3a03",
+ "list.hoverBackground": "#ebdbb280",
+ "list.hoverForeground": "#504945",
+ "list.focusBackground": "#ebdbb2",
+ "list.focusForeground": "#3c3836",
+ "list.inactiveSelectionForeground": "#d65d0e",
+ "list.inactiveSelectionBackground": "#ebdbb280",
+ "list.dropBackground": "#ebdbb2",
+ "list.highlightForeground": "#689d6a",
+
+ "sideBar.background": "#f2e5bc",
+ "sideBar.foreground": "#504945",
+ "sideBar.border": "#ebdbb2",
+ "sideBarTitle.foreground": "#3c3836",
+ "sideBarSectionHeader.background": "#f2e5bc00",
+ "sideBarSectionHeader.foreground": "#3c3836",
+
+ "activityBar.background": "#f2e5bc",
+ "activityBar.foreground": "#3c3836",
+ "activityBar.border": "#ebdbb2",
+ "activityBarBadge.background": "#458588",
+ "activityBarBadge.foreground": "#ebdbb2",
+
+ "editorGroup.border": "#ebdbb2",
+ "editorGroup.dropBackground": "#ebdbb260",
+ "editorGroupHeader.noTabsBackground": "#ebdbb2",
+ "editorGroupHeader.tabsBackground": "#f2e5bc",
+ "editorGroupHeader.tabsBorder": "#ebdbb2",
+
+ "tab.border": "#f2e5bc00",
+ "tab.activeBackground": "#d5c4a1",
+ "tab.activeBorder": "#d65d0e",
+ "tab.activeForeground": "#3c3836",
+ "tab.inactiveForeground": "#7c6f64",
+ "tab.inactiveBackground": "#f2e5bc",
+ "tab.unfocusedActiveForeground": "#7c6f64",
+ "tab.unfocusedActiveBorder": "#f2e5bc00",
+ "tab.unfocusedInactiveForeground": "#928374",
+
+ "editor.background": "#f2e5bc",
+ "editor.foreground": "#3c3836",
+ "editorLineNumber.foreground": "#bdae93",
+ "editorCursor.foreground": "#3c3836",
+ "editor.selectionBackground": "#689d6a40",
+ "editor.selectionHighlightBackground": "#b5761440",
+ "editor.hoverHighlightBackground": "#689d6a50",
+ "editorLink.activeForeground": "#3c3836",
+ "editor.findMatchBackground": "#07667870",
+ "editor.findMatchHighlightBackground": "#af3a0330",
+ "editor.findRangeHighlightBackground": "#07667870",
+ "editor.lineHighlightBackground": "#ebdbb260",
+ "editor.lineHighlightBorder": "#ebdbb200",
+ "editorWhitespace.foreground": "#7c6f6420",
+ "editorRuler.foreground": "#7c6f6440",
+ "editorCodeLens.foreground": "#7c6f6490",
+ "editorBracketMatch.border": "#f2e5bc00",
+ "editorBracketMatch.background": "#92837480",
+ "editorHoverWidget.background": "#f2e5bc",
+ "editorHoverWidget.border": "#ebdbb2",
+ "editorOverviewRuler.border": "#f2e5bc00",
+ "editorOverviewRuler.findMatchForeground": "#665c54",
+ "editorOverviewRuler.rangeHighlightForeground": "#665c54",
+ "editorOverviewRuler.selectionHighlightForeground": "#bdae93",
+ "editorOverviewRuler.wordHighlightForeground": "#bdae93",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#bdae93",
+ "editorOverviewRuler.modifiedForeground": "#076678",
+ "editorOverviewRuler.addedForeground": "#076678",
+ "editorOverviewRuler.deletedForeground": "#076678",
+ "editorOverviewRuler.errorForeground": "#9d0006",
+ "editorOverviewRuler.warningForeground": "#d79921",
+ "editorOverviewRuler.infoForeground": "#8f3f71",
+ "editorGutter.background": "#f2e5bc00",
+ "editorGutter.modifiedBackground": "#076678",
+ "editorGutter.addedBackground": "#79740e",
+ "editorGutter.deletedBackground": "#9d0006",
+ "editorError.foreground": "#cc241d",
+ "editorWarning.foreground": "#d79921",
+ "editorInfo.foreground": "#458588",
+
+ "editorBracketHighlight.foreground1": "#b16286",
+ "editorBracketHighlight.foreground2": "#458588",
+ "editorBracketHighlight.foreground3": "#689d6a",
+ "editorBracketHighlight.foreground4": "#98971a",
+ "editorBracketHighlight.foreground5": "#d79921",
+ "editorBracketHighlight.foreground6": "#d65d0e",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#cc241d",
+
+ "diffEditor.insertedTextBackground": "#79740e30",
+ "diffEditor.removedTextBackground": "#9d000630",
+
+ "editorWidget.background": "#f2e5bc",
+ "editorWidget.border": "#ebdbb2",
+ "editorSuggestWidget.background": "#f2e5bc",
+ "editorSuggestWidget.foreground": "#3c3836",
+ "editorSuggestWidget.highlightForeground": "#689d6a",
+ "editorSuggestWidget.selectedBackground": "#ebdbb260",
+ "editorSuggestWidget.border": "#ebdbb2",
+
+ "peekView.border": "#ebdbb2",
+ "peekViewEditor.background": "#ebdbb270",
+ "peekViewEditor.matchHighlightBackground": "#d5c4a1",
+ "peekViewEditorGutter.background": "#ebdbb270",
+ "peekViewResult.background": "#ebdbb270",
+ "peekViewResult.fileForeground": "#3c3836",
+ "peekViewResult.selectionBackground": "#45858820",
+ "peekViewResult.selectionForeground": "#3c3836",
+ "peekViewResult.lineForeground": "#3c3836",
+ "peekViewResult.matchHighlightBackground": "#d5c4a1",
+ "peekViewTitle.background": "#ebdbb270",
+ "peekViewTitleDescription.foreground": "#665c54",
+ "peekViewTitleLabel.foreground": "#3c3836",
+
+ "merge.currentHeaderBackground": "#45858840",
+ "merge.currentContentBackground": "#45858820",
+ "merge.incomingHeaderBackground": "#689d6a40",
+ "merge.incomingContentBackground": "#689d6a20",
+ "merge.border": "#f2e5bc00",
+ "editorOverviewRuler.currentContentForeground": "#458588",
+ "editorOverviewRuler.incomingContentForeground": "#689d6a",
+ "editorOverviewRuler.commonContentForeground": "#928374",
+
+ "panel.border": "#ebdbb2",
+ "panelTitle.activeForeground": "#3c3836",
+
+ "statusBar.background": "#f2e5bc",
+ "statusBar.border": "#ebdbb2",
+ "statusBar.foreground": "#3c3836",
+ "statusBar.debuggingBackground": "#af3a03",
+ "statusBar.debuggingForeground": "#f2e5bc",
+ "statusBar.debuggingBorder": "#f2e5bc00",
+ "statusBar.noFolderBackground": "#f2e5bc",
+ "statusBar.noFolderBorder": "#f2e5bc00",
+
+ "terminal.ansiBlack": "#ebdbb2",
+ "terminal.ansiBrightBlack": "#928374",
+ "terminal.ansiRed": "#cc241d",
+ "terminal.ansiBrightRed": "#9d0006",
+ "terminal.ansiGreen": "#98971a",
+ "terminal.ansiBrightGreen": "#79740e",
+ "terminal.ansiYellow": "#d79921",
+ "terminal.ansiBrightYellow": "#b57614",
+ "terminal.ansiBlue": "#458588",
+ "terminal.ansiBrightBlue": "#076678",
+ "terminal.ansiMagenta": "#b16286",
+ "terminal.ansiBrightMagenta": "#8f3f71",
+ "terminal.ansiCyan": "#689d6a",
+ "terminal.ansiBrightCyan": "#427b58",
+ "terminal.ansiWhite": "#7c6f64",
+ "terminal.ansiBrightWhite": "#3c3836",
+ "terminal.foreground": "#3c3836",
+ "terminal.background": "#f2e5bc",
+
+ "titleBar.activeBackground": "#f2e5bc",
+ "titleBar.activeForeground": "#3c3836",
+ "titleBar.inactiveBackground": "#f2e5bc",
+
+ "gitDecoration.modifiedResourceForeground": "#d79921",
+ "gitDecoration.deletedResourceForeground": "#cc241d",
+ "gitDecoration.untrackedResourceForeground": "#98971a",
+ "gitDecoration.ignoredResourceForeground": "#a89984",
+ "gitDecoration.conflictingResourceForeground": "#b16286",
+
+ "menu.border": "#ebdbb2",
+ "menu.separatorBackground": "#ebdbb2",
+
+ "notebook.cellEditorBackground": "#ebdbb2",
+ "notebook.focusedCellBorder": "#665c54",
+ "notebook.cellBorderColor": "#a89984",
+ "notebook.focusedEditorBorder": "#a89984",
+
+ "extensionButton.prominentBackground": "#79740e80",
+ "extensionButton.prominentHoverBackground": "#79740e30",
+
+ "textLink.foreground": "#076678",
+ "textLink.activeForeground": "#458588",
+ "debugToolBar.background": "#f2e5bc"
+ },
+ "semanticTokenColors": {
+ "constant.builtin": "#8f3f71",
+ "property": "#076678",
+ "property:python": "#3c3836",
+ "parameter": "#076678",
+ "variable": "#3c3836",
+ "function": "#427b58",
+ "function.builtin": "#af3a03",
+ "method": "#427b58"
+ }
+}
diff --git a/assets/themes/src/vscode/night-owl/LICENSE b/assets/themes/src/vscode/night-owl/LICENSE
new file mode 100644
index 0000000000..e1de2ebbb6
--- /dev/null
+++ b/assets/themes/src/vscode/night-owl/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2018 Sarah Drasner
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/assets/themes/src/vscode/night-owl/family.json b/assets/themes/src/vscode/night-owl/family.json
new file mode 100644
index 0000000000..81c6ca7534
--- /dev/null
+++ b/assets/themes/src/vscode/night-owl/family.json
@@ -0,0 +1,16 @@
+{
+ "name": "Night Owl",
+ "author": "Sarah Drasner (sdras)",
+ "themes": [
+ {
+ "name": "Night Owl",
+ "file_name": "night-owl.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Night Owl Light",
+ "file_name": "night-owl-light.json",
+ "appearance": "light"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/night-owl/night-owl-light.json b/assets/themes/src/vscode/night-owl/night-owl-light.json
new file mode 100644
index 0000000000..81e0fc0092
--- /dev/null
+++ b/assets/themes/src/vscode/night-owl/night-owl-light.json
@@ -0,0 +1,1723 @@
+{
+ "name": "Night Owl Light",
+ "type": "light",
+ "semanticHighlighting": false,
+ "colors": {
+ "foreground": "#403f53",
+ "focusBorder": "#93A1A1",
+ "errorForeground": "#403f53",
+ "selection.background": "#7a8181ad",
+ "descriptionForeground": "#403f53",
+ "widget.shadow": "#d9d9d9",
+ "titleBar.activeBackground": "#F0F0F0",
+
+ "notifications.background": "#F0F0F0",
+ "notifications.foreground": "#403f53",
+ "notificationLink.foreground": "#994cc3",
+ "notifications.border": "#CCCCCC",
+ "notificationCenter.border": "#CCCCCC",
+ "notificationToast.border": "#CCCCCC",
+ "notificationCenterHeader.foreground": "#403f53",
+ "notificationCenterHeader.background": "#F0F0F0",
+
+ "button.background": "#2AA298",
+ "button.foreground": "#F0F0F0",
+
+ "dropdown.background": "#F0F0F0",
+ "dropdown.foreground": "#403f53",
+ "dropdown.border": "#d9d9d9",
+
+ "input.background": "#F0F0F0",
+ "input.foreground": "#403f53",
+ "input.border": "#d9d9d9",
+ "input.placeholderForeground": "#93A1A1",
+ "inputOption.activeBorder": "#2AA298",
+ "inputValidation.infoBorder": "#D0D0D0",
+ "inputValidation.infoBackground": "#F0F0F0",
+ "inputValidation.warningBackground": "#daaa01",
+ "inputValidation.warningBorder": "#E0AF02",
+ "inputValidation.errorBackground": "#f76e6e",
+ "inputValidation.errorBorder": "#de3d3b",
+
+ "badge.background": "#2AA298",
+ "badge.foreground": "#F0F0F0",
+
+ "progressBar.background": "#2AA298",
+
+ "list.activeSelectionBackground": "#d3e8f8",
+ "list.activeSelectionForeground": "#403f53",
+ "list.inactiveSelectionBackground": "#E0E7EA",
+ "list.inactiveSelectionForeground": "#403f53",
+ "list.focusBackground": "#d3e8f8",
+ "list.hoverBackground": "#d3e8f8",
+ "list.focusForeground": "#403f53",
+ "list.hoverForeground": "#403f53",
+ "list.highlightForeground": "#403f53",
+ "list.errorForeground": "#E64D49",
+ "list.warningForeground": "#daaa01",
+
+ "activityBar.background": "#F0F0F0",
+ "activityBar.foreground": "#403f53",
+ "activityBar.dropBackground": "#D0D0D0",
+ "activityBarBadge.background": "#403f53",
+ "activityBarBadge.foreground": "#F0F0F0",
+ "activityBar.border": "#F0F0F0",
+
+ "sideBar.background": "#F0F0F0",
+ "sideBar.foreground": "#403f53",
+ "sideBarTitle.foreground": "#403f53",
+ "sideBar.border": "#F0F0F0",
+
+ "scrollbar.shadow": "#CCCCCC",
+
+ "tab.border": "#F0F0F0",
+ "tab.activeBackground": "#F6F6F6",
+ "tab.activeForeground": "#403f53",
+ "tab.inactiveForeground": "#403f53",
+ "tab.inactiveBackground": "#F0F0F0",
+ "editorGroup.border": "#F0F0F0",
+ "editorGroup.background": "#F6F6F6",
+ "editorGroupHeader.tabsBackground": "#F0F0F0",
+ "editorGroupHeader.tabsBorder": "#F0F0F0",
+ "editorGroupHeader.noTabsBackground": "#F0F0F0",
+ "tab.activeModifiedBorder": "#2AA298",
+ "tab.inactiveModifiedBorder": "#93A1A1",
+ "tab.unfocusedActiveModifiedBorder": "#93A1A1",
+ "tab.unfocusedInactiveModifiedBorder": "#93A1A1",
+
+ "editor.background": "#FBFBFB",
+ "editor.foreground": "#403f53",
+ "editorCursor.foreground": "#90A7B2",
+ "editorLineNumber.foreground": "#90A7B2",
+ "editorLineNumber.activeForeground": "#403f53",
+ "editor.selectionBackground": "#E0E0E0",
+ "editor.selectionHighlightBackground": "#339cec33",
+ "editor.wordHighlightBackground": "#339cec33",
+ "editor.wordHighlightStrongBackground": "#007dd659",
+ "editor.findMatchBackground": "#93A1A16c",
+ "editor.findMatchHighlightBackground": "#93a1a16c",
+ "editor.findRangeHighlightBackground": "#7497a633",
+ "editor.hoverHighlightBackground": "#339cec33",
+ "editor.lineHighlightBackground": "#F0F0F0",
+ "editor.rangeHighlightBackground": "#7497a633",
+ "editorWhitespace.foreground": "#d9d9d9",
+ "editorIndentGuide.background": "#d9d9d9",
+ "editorCodeLens.foreground": "#403f53",
+ "editorBracketMatch.background": "#d3e8f8",
+ "editorBracketMatch.border": "#2AA298",
+ "editorError.foreground": "#E64D49",
+ "editorError.border": "#FBFBFB",
+ "editorWarning.foreground": "#daaa01",
+ "editorWarning.border": "#daaa01",
+ "editorGutter.addedBackground": "#49d0c5",
+ "editorGutter.modifiedBackground": "#6fbef6",
+ "editorGutter.deletedBackground": "#f76e6e",
+ "editorRuler.foreground": "#d9d9d9",
+ "editorOverviewRuler.errorForeground": "#E64D49",
+ "editorOverviewRuler.warningForeground": "#daaa01",
+
+ "editorWidget.background": "#F0F0F0",
+ "editorWidget.border": "#d9d9d9",
+ "editorSuggestWidget.background": "#F0F0F0",
+ "editorSuggestWidget.foreground": "#403f53",
+ "editorSuggestWidget.highlightForeground": "#403f53",
+ "editorSuggestWidget.selectedBackground": "#d3e8f8",
+ "editorSuggestWidget.border": "#d9d9d9",
+ "editorHoverWidget.background": "#F0F0F0",
+ "editorHoverWidget.border": "#d9d9d9",
+ "debugExceptionWidget.background": "#F0F0F0",
+ "debugExceptionWidget.border": "#d9d9d9",
+ "editorMarkerNavigation.background": "#D0D0D0",
+ "editorMarkerNavigationError.background": "#f76e6e",
+ "editorMarkerNavigationWarning.background": "#daaa01",
+
+ "debugToolBar.background": "#F0F0F0",
+
+ "pickerGroup.border": "#d9d9d9",
+ "pickerGroup.foreground": "#403f53",
+
+ "extensionButton.prominentBackground": "#2AA298",
+ "extensionButton.prominentForeground": "#F0F0F0",
+
+ "statusBar.background": "#F0F0F0",
+ "statusBar.border": "#F0F0F0",
+ "statusBar.debuggingBackground": "#F0F0F0",
+ "statusBar.debuggingForeground": "#403f53",
+ "statusBar.foreground": "#403f53",
+ "statusBar.noFolderBackground": "#F0F0F0",
+ "statusBar.noFolderForeground": "#403f53",
+
+ "panel.background": "#F0F0F0",
+ "panel.border": "#d9d9d9",
+
+ "peekView.border": "#d9d9d9",
+ "peekViewEditor.background": "#F6F6F6",
+ "peekViewEditorGutter.background": "#F6F6F6",
+ "peekViewEditor.matchHighlightBackground": "#49d0c5",
+ "peekViewResult.background": "#F0F0F0",
+ "peekViewResult.fileForeground": "#403f53",
+ "peekViewResult.lineForeground": "#403f53",
+ "peekViewResult.matchHighlightBackground": "#49d0c5",
+ "peekViewResult.selectionBackground": "#E0E7EA",
+ "peekViewResult.selectionForeground": "#403f53",
+ "peekViewTitle.background": "#F0F0F0",
+ "peekViewTitleLabel.foreground": "#403f53",
+ "peekViewTitleDescription.foreground": "#403f53",
+
+ "terminal.ansiBrightBlack": "#403f53",
+ "terminal.ansiBlack": "#403f53",
+ "terminal.ansiBrightBlue": "#288ed7",
+ "terminal.ansiBlue": "#288ed7",
+ "terminal.ansiBrightCyan": "#2AA298",
+ "terminal.ansiCyan": "#2AA298",
+ "terminal.ansiBrightGreen": "#08916a",
+ "terminal.ansiGreen": "#08916a",
+ "terminal.ansiBrightMagenta": "#d6438a",
+ "terminal.ansiMagenta": "#d6438a",
+ "terminal.ansiBrightRed": "#de3d3b",
+ "terminal.ansiRed": "#de3d3b",
+ "terminal.ansiBrightWhite": "#F0F0F0",
+ "terminal.ansiWhite": "#F0F0F0",
+ "terminal.ansiBrightYellow": "#daaa01",
+ "terminal.ansiYellow": "#E0AF02",
+ "terminal.background": "#F6F6F6",
+ "terminal.foreground": "#403f53"
+ },
+ "tokenColors": [
+ {
+ "name": "Changed",
+ "scope": [
+ "markup.changed",
+ "meta.diff.header.git",
+ "meta.diff.header.from-file",
+ "meta.diff.header.to-file"
+ ],
+ "settings": {
+ "foreground": "#a2bffc",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Deleted",
+ "scope": "markup.deleted.diff",
+ "settings": {
+ "foreground": "#EF535090",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Inserted",
+ "scope": "markup.inserted.diff",
+ "settings": {
+ "foreground": "#4876d6ff",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Global settings",
+ "settings": {
+ "background": "#011627",
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "foreground": "#989fb1",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "String Quoted",
+ "scope": ["string.quoted", "variable.other.readwrite.js"],
+ "settings": {
+ "foreground": "#c96765"
+ }
+ },
+ {
+ "name": "Support Constant Math",
+ "scope": "support.constant.math",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": ["constant.numeric", "constant.character.numeric"],
+ "settings": {
+ "foreground": "#aa0982",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Built-in constant",
+ "scope": [
+ "constant.language",
+ "punctuation.definition.constant",
+ "variable.other.constant"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "User-defined constant",
+ "scope": ["constant.character", "constant.other"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Constant Character Escape",
+ "scope": "constant.character.escape",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "RegExp String",
+ "scope": ["string.regexp", "string.regexp keyword.other"],
+ "settings": {
+ "foreground": "#5ca7e4"
+ }
+ },
+ {
+ "name": "Comma in functions",
+ "scope": "meta.function punctuation.separator.comma",
+ "settings": {
+ "foreground": "#5f7e97"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": "variable",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": ["punctuation.accessor", "keyword"],
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage",
+ "meta.var.expr",
+ "meta.class meta.method.declaration meta.var.expr storage.type.js",
+ "storage.type.property.js",
+ "storage.type.property.ts",
+ "storage.type.property.tsx"
+ ],
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Storage type",
+ "scope": "storage.type",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "Storage type",
+ "scope": "storage.type.function.arrow.js",
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Class name",
+ "scope": ["entity.name.class", "meta.class entity.name.type.class"],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Meta Tag",
+ "scope": ["punctuation.definition.tag", "meta.tag"],
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "HTML Tag names",
+ "scope": [
+ "entity.name.tag",
+ "meta.tag.other.html",
+ "meta.tag.other.js",
+ "meta.tag.other.tsx",
+ "entity.name.tag.tsx",
+ "entity.name.tag.js",
+ "entity.name.tag",
+ "meta.tag.js",
+ "meta.tag.tsx",
+ "meta.tag.html"
+ ],
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Entity Name Tag Custom",
+ "scope": "entity.name.tag.custom",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Library (function & constant)",
+ "scope": ["support.function", "support.constant"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Support Constant Property Value meta",
+ "scope": "support.constant.meta.property-value",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": ["support.type", "support.class"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Support Variable DOM",
+ "scope": "support.variable.dom",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": "invalid",
+ "settings": {
+ "foreground": "#ff2c83"
+ }
+ },
+ {
+ "name": "Invalid deprecated",
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Keyword Operator",
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#0c969b",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Keyword Operator Relational",
+ "scope": "keyword.operator.relational",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Keyword Operator Assignment",
+ "scope": "keyword.operator.assignment",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "Keyword Operator Arithmetic",
+ "scope": "keyword.operator.arithmetic",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "Keyword Operator Bitwise",
+ "scope": "keyword.operator.bitwise",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "Keyword Operator Increment",
+ "scope": "keyword.operator.increment",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "Keyword Operator Ternary",
+ "scope": "keyword.operator.ternary",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "Double-Slashed Comment",
+ "scope": "comment.line.double-slash",
+ "settings": {
+ "foreground": "#939dbb"
+ }
+ },
+ {
+ "name": "Object",
+ "scope": "object",
+ "settings": {
+ "foreground": "#cdebf7"
+ }
+ },
+ {
+ "name": "Null",
+ "scope": "constant.language.null",
+ "settings": {
+ "foreground": "#bc5454"
+ }
+ },
+ {
+ "name": "Meta Brace",
+ "scope": "meta.brace",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Meta Delimiter Period",
+ "scope": "meta.delimiter.period",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Punctuation Definition String",
+ "scope": "punctuation.definition.string",
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Punctuation Definition String Markdown",
+ "scope": "punctuation.definition.string.begin.markdown",
+ "settings": {
+ "foreground": "#bc5454"
+ }
+ },
+ {
+ "name": "Boolean",
+ "scope": "constant.language.boolean",
+ "settings": {
+ "foreground": "#bc5454"
+ }
+ },
+ {
+ "name": "Object Comma",
+ "scope": "object.comma",
+ "settings": {
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Variable Parameter Function",
+ "scope": "variable.parameter.function",
+ "settings": {
+ "foreground": "#0c969b",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Support Type Property Name & entity name tags",
+ "scope": [
+ "support.type.vendor.property-name",
+ "support.constant.vendor.property-value",
+ "support.type.property-name",
+ "meta.property-list entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#0c969b",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Entity Name tag reference in stylesheets",
+ "scope": "meta.property-list entity.name.tag.reference",
+ "settings": {
+ "foreground": "#57eaf1"
+ }
+ },
+ {
+ "name": "Constant Other Color RGB Value Punctuation Definition Constant",
+ "scope": "constant.other.color.rgb-value punctuation.definition.constant",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Constant Other Color",
+ "scope": "constant.other.color",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Keyword Other Unit",
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Meta Selector",
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Entity Other Attribute Name Id",
+ "scope": "entity.other.attribute-name.id",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Meta Property Name",
+ "scope": "meta.property-name",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Doctypes",
+ "scope": ["entity.name.tag.doctype", "meta.tag.sgml.doctype"],
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Punctuation Definition Parameters",
+ "scope": "punctuation.definition.parameters",
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Keyword Control Operator",
+ "scope": "keyword.control.operator",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Keyword Operator Logical",
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Variable Instances",
+ "scope": [
+ "variable.instance",
+ "variable.other.instance",
+ "variable.readwrite.instance",
+ "variable.other.readwrite.instance",
+ "variable.other.property"
+ ],
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Variable Property Other object property",
+ "scope": ["variable.other.object.property"],
+ "settings": {
+ "foreground": "#111111",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Variable Property Other object",
+ "scope": ["variable.other.object.js"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Entity Name Function",
+ "scope": ["entity.name.function"],
+ "settings": {
+ "foreground": "#4876d6",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Keyword Operator Comparison, imports, returns and Keyword Operator Ruby",
+ "scope": [
+ "keyword.operator.comparison",
+ "keyword.control.flow.js",
+ "keyword.control.flow.ts",
+ "keyword.control.flow.tsx",
+ "keyword.control.ruby",
+ "keyword.control.module.ruby",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.control.loop.js",
+ "keyword.control.loop.ts",
+ "keyword.control.import.js",
+ "keyword.control.import.ts",
+ "keyword.control.import.tsx",
+ "keyword.control.from.js",
+ "keyword.control.from.ts",
+ "keyword.control.from.tsx",
+ "keyword.operator.instanceof.js",
+ "keyword.operator.expression.instanceof.ts",
+ "keyword.operator.expression.instanceof.tsx"
+ ],
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Keyword Control Conditional",
+ "scope": [
+ "keyword.control.conditional.js",
+ "keyword.control.conditional.ts",
+ "keyword.control.switch.js",
+ "keyword.control.switch.ts"
+ ],
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Support Constant, `new` keyword, Special Method Keyword, `debugger`, other keywords",
+ "scope": [
+ "support.constant",
+ "keyword.other.special-method",
+ "keyword.other.new",
+ "keyword.other.debugger",
+ "keyword.control"
+ ],
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Support Function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Invalid Broken",
+ "scope": "invalid.broken",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Invalid Unimplemented",
+ "scope": "invalid.unimplemented",
+ "settings": {
+ "foreground": "#8BD649"
+ }
+ },
+ {
+ "name": "Invalid Illegal",
+ "scope": "invalid.illegal",
+ "settings": {
+ "foreground": "#c96765"
+ }
+ },
+ {
+ "name": "Language Variable",
+ "scope": "variable.language",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Support Variable Property",
+ "scope": "support.variable.property",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Variable Function",
+ "scope": "variable.function",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Variable Interpolation",
+ "scope": "variable.interpolation",
+ "settings": {
+ "foreground": "#ec5f67"
+ }
+ },
+ {
+ "name": "Meta Function Call",
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Punctuation Section Embedded",
+ "scope": "punctuation.section.embedded",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Punctuation Tweaks",
+ "scope": [
+ "punctuation.terminator.expression",
+ "punctuation.definition.arguments",
+ "punctuation.definition.array",
+ "punctuation.section.array",
+ "meta.array"
+ ],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "More Punctuation Tweaks",
+ "scope": [
+ "punctuation.definition.list.begin",
+ "punctuation.definition.list.end",
+ "punctuation.separator.arguments",
+ "punctuation.definition.list"
+ ],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Template Strings",
+ "scope": "string.template meta.template.expression",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Backtics(``) in Template Strings",
+ "scope": "string.template punctuation.definition.string",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Italics",
+ "scope": "italic",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Bold",
+ "scope": "bold",
+ "settings": {
+ "foreground": "#4876d6",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Quote",
+ "scope": "quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Raw Code",
+ "scope": "raw",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "CoffeScript Variable Assignment",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#31e1eb"
+ }
+ },
+ {
+ "name": "CoffeScript Parameter Function",
+ "scope": "variable.parameter.function.coffee",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "CoffeeScript Assignments",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "C# Readwrite Variables",
+ "scope": "variable.other.readwrite.cs",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "C# Classes & Storage types",
+ "scope": ["entity.name.type.class.cs", "storage.type.cs"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "C# Namespaces",
+ "scope": "entity.name.type.namespace.cs",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Tag names in Stylesheets",
+ "scope": [
+ "entity.name.tag.css",
+ "entity.name.tag.less",
+ "entity.name.tag.custom.css",
+ "support.constant.property-value.css"
+ ],
+ "settings": {
+ "foreground": "#c96765",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Wildcard(*) selector in Stylesheets",
+ "scope": [
+ "entity.name.tag.wildcard.css",
+ "entity.name.tag.wildcard.less",
+ "entity.name.tag.wildcard.scss",
+ "entity.name.tag.wildcard.sass"
+ ],
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "CSS Keyword Other Unit",
+ "scope": "keyword.other.unit.css",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Attribute Name for CSS",
+ "scope": [
+ "meta.attribute-selector.css entity.other.attribute-name.attribute",
+ "variable.other.readwrite.js"
+ ],
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Elixir Classes",
+ "scope": [
+ "source.elixir support.type.elixir",
+ "source.elixir meta.module.elixir entity.name.class.elixir"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Elixir Functions",
+ "scope": "source.elixir entity.name.function",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Elixir Constants",
+ "scope": [
+ "source.elixir constant.other.symbol.elixir",
+ "source.elixir constant.other.keywords.elixir"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Elixir String Punctuations",
+ "scope": "source.elixir punctuation.definition.string",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Elixir",
+ "scope": [
+ "source.elixir variable.other.readwrite.module.elixir",
+ "source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Elixir Binary Punctuations",
+ "scope": "source.elixir .punctuation.binary.elixir",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Closure Constant Keyword",
+ "scope": "constant.keyword.clojure",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Go Function Calls",
+ "scope": "source.go meta.function-call.go",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Go Keywords",
+ "scope": [
+ "source.go keyword.package.go",
+ "source.go keyword.import.go",
+ "source.go keyword.function.go",
+ "source.go keyword.type.go",
+ "source.go keyword.struct.go",
+ "source.go keyword.interface.go",
+ "source.go keyword.const.go",
+ "source.go keyword.var.go",
+ "source.go keyword.map.go",
+ "source.go keyword.channel.go",
+ "source.go keyword.control.go"
+ ],
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Go Constants e.g. nil, string format (%s, %d, etc.)",
+ "scope": ["source.go constant.language.go", "source.go constant.other.placeholder.go"],
+ "settings": {
+ "foreground": "#bc5454"
+ }
+ },
+ {
+ "name": "C++ Functions",
+ "scope": ["entity.name.function.preprocessor.cpp", "entity.scope.name.cpp"],
+ "settings": {
+ "foreground": "#0c969bff"
+ }
+ },
+ {
+ "name": "C++ Meta Namespace",
+ "scope": ["meta.namespace-block.cpp"],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "C++ Language Primitive Storage",
+ "scope": ["storage.type.language.primitive.cpp"],
+ "settings": {
+ "foreground": "#bc5454"
+ }
+ },
+ {
+ "name": "C++ Preprocessor Macro",
+ "scope": ["meta.preprocessor.macro.cpp"],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "C++ Variable Parameter",
+ "scope": ["variable.parameter"],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Powershell Variables",
+ "scope": ["variable.other.readwrite.powershell"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Powershell Function",
+ "scope": ["support.function.powershell"],
+ "settings": {
+ "foreground": "#0c969bff"
+ }
+ },
+ {
+ "name": "ID Attribute Name in HTML",
+ "scope": "entity.other.attribute-name.id.html",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "HTML Punctuation Definition Tag",
+ "scope": "punctuation.definition.tag.html",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "HTML Doctype",
+ "scope": "meta.tag.sgml.doctype.html",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "JavaScript Classes",
+ "scope": "meta.class entity.name.type.class.js",
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "JavaScript Method Declaration e.g. `constructor`",
+ "scope": "meta.method.declaration storage.type.js",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "JavaScript Terminator",
+ "scope": "terminator.js",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "JavaScript Meta Punctuation Definition",
+ "scope": "meta.js punctuation.definition.js",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Entity Names in Code Documentations",
+ "scope": ["entity.name.type.instance.jsdoc", "entity.name.type.instance.phpdoc"],
+ "settings": {
+ "foreground": "#5f7e97"
+ }
+ },
+ {
+ "name": "Other Variables in Code Documentations",
+ "scope": ["variable.other.jsdoc", "variable.other.phpdoc"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "JavaScript module imports and exports",
+ "scope": [
+ "variable.other.meta.import.js",
+ "meta.import.js variable.other",
+ "variable.other.meta.export.js",
+ "meta.export.js variable.other"
+ ],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "JavaScript Variable Parameter Function",
+ "scope": "variable.parameter.function.js",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "JavaScript[React] Variable Other Object",
+ "scope": [
+ "variable.other.object.js",
+ "variable.other.object.jsx",
+ "variable.object.property.js",
+ "variable.object.property.jsx"
+ ],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "JavaScript Variables",
+ "scope": ["variable.js", "variable.other.js"],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "JavaScript Entity Name Type",
+ "scope": ["entity.name.type.js", "entity.name.type.module.js"],
+ "settings": {
+ "foreground": "#111111",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "JavaScript Support Classes",
+ "scope": "support.class.js",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "JSON Property Names",
+ "scope": "support.type.property-name.json",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "JSON Support Constants",
+ "scope": "support.constant.json",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "JSON Property values (string)",
+ "scope": "meta.structure.dictionary.value.json string.quoted.double",
+ "settings": {
+ "foreground": "#c789d6"
+ }
+ },
+ {
+ "name": "Strings in JSON values",
+ "scope": "string.quoted.double.json punctuation.definition.string.json",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Specific JSON Property values like null",
+ "scope": "meta.structure.dictionary.json meta.structure.dictionary.value constant.language",
+ "settings": {
+ "foreground": "#bc5454"
+ }
+ },
+ {
+ "name": "JavaScript Other Variable",
+ "scope": "variable.other.object.js",
+ "settings": {
+ "foreground": "#0c969b",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Ruby Variables",
+ "scope": ["variable.other.ruby"],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Ruby Class",
+ "scope": ["entity.name.type.class.ruby"],
+ "settings": {
+ "foreground": "#c96765"
+ }
+ },
+ {
+ "name": "Ruby Hashkeys",
+ "scope": "constant.language.symbol.hashkey.ruby",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Ruby Symbols",
+ "scope": "constant.language.symbol.ruby",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "LESS Tag names",
+ "scope": "entity.name.tag.less",
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "LESS Keyword Other Unit",
+ "scope": "keyword.other.unit.css",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Attribute Name for LESS",
+ "scope": "meta.attribute-selector.less entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Markdown Headings",
+ "scope": [
+ "markup.heading.markdown",
+ "markup.heading.setext.1.markdown",
+ "markup.heading.setext.2.markdown"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Markdown Italics",
+ "scope": "markup.italic.markdown",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown Bold",
+ "scope": "markup.bold.markdown",
+ "settings": {
+ "foreground": "#4876d6",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markdown Quote + others",
+ "scope": "markup.quote.markdown",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown Raw Code + others",
+ "scope": "markup.inline.raw.markdown",
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Markdown Links",
+ "scope": ["markup.underline.link.markdown", "markup.underline.link.image.markdown"],
+ "settings": {
+ "foreground": "#ff869a"
+ }
+ },
+ {
+ "name": "Markdown Link Title and Description",
+ "scope": ["string.other.link.title.markdown", "string.other.link.description.markdown"],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Markdown Punctuation",
+ "scope": [
+ "punctuation.definition.string.markdown",
+ "punctuation.definition.string.begin.markdown",
+ "punctuation.definition.string.end.markdown",
+ "meta.link.inline.markdown punctuation.definition.string"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Markdown MetaData Punctuation",
+ "scope": ["punctuation.definition.metadata.markdown"],
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Markdown List Punctuation",
+ "scope": ["beginning.punctuation.definition.list.markdown"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Markdown Inline Raw String",
+ "scope": "markup.inline.raw.string.markdown",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "PHP Variables",
+ "scope": ["variable.other.php", "variable.other.property.php"],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Support Classes in PHP",
+ "scope": "support.class.php",
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Punctuations in PHP function calls",
+ "scope": "meta.function-call.php punctuation",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "PHP Global Variables",
+ "scope": "variable.other.global.php",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Declaration Punctuation in PHP Global Variables",
+ "scope": "variable.other.global.php punctuation.definition.variable",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Language Constants in Python",
+ "scope": "constant.language.python",
+ "settings": {
+ "foreground": "#bc5454"
+ }
+ },
+ {
+ "name": "Python Function Parameter and Arguments",
+ "scope": ["variable.parameter.function.python", "meta.function-call.arguments.python"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": ["meta.function-call.python", "meta.function-call.generic.python"],
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "Punctuations in Python",
+ "scope": "punctuation.python",
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Decorator Functions in Python",
+ "scope": "entity.name.function.decorator.python",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Python Language Variable",
+ "scope": "source.python variable.language.special",
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Python import control keyword",
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#994cc3",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "SCSS Variable",
+ "scope": [
+ "variable.scss",
+ "variable.sass",
+ "variable.parameter.url.scss",
+ "variable.parameter.url.sass"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "Attribute Name for SASS",
+ "scope": [
+ "meta.attribute-selector.scss entity.other.attribute-name.attribute",
+ "meta.attribute-selector.sass entity.other.attribute-name.attribute"
+ ],
+ "settings": {
+ "foreground": "#aa0982"
+ }
+ },
+ {
+ "name": "Tag names in SASS",
+ "scope": ["entity.name.tag.scss", "entity.name.tag.sass"],
+ "settings": {
+ "foreground": "#0c969b"
+ }
+ },
+ {
+ "name": "SASS Keyword Other Unit",
+ "scope": ["keyword.other.unit.scss", "keyword.other.unit.sass"],
+ "settings": {
+ "foreground": "#994cc3"
+ }
+ },
+ {
+ "name": "TypeScript[React] Variables and Object Properties",
+ "scope": [
+ "variable.other.readwrite.alias.ts",
+ "variable.other.readwrite.alias.tsx",
+ "variable.other.readwrite.ts",
+ "variable.other.readwrite.tsx",
+ "variable.other.object.ts",
+ "variable.other.object.tsx",
+ "variable.object.property.ts",
+ "variable.object.property.tsx",
+ "variable.other.ts",
+ "variable.other.tsx",
+ "variable.tsx",
+ "variable.ts"
+ ],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types",
+ "scope": ["entity.name.type.ts", "entity.name.type.tsx"],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "TypeScript[React] Node Classes",
+ "scope": ["support.class.node.ts", "support.class.node.tsx"],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types as Parameters",
+ "scope": [
+ "meta.type.parameters.ts entity.name.type",
+ "meta.type.parameters.tsx entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#5f7e97"
+ }
+ },
+ {
+ "name": "TypeScript[React] Import/Export Punctuations",
+ "scope": [
+ "meta.import.ts punctuation.definition.block",
+ "meta.import.tsx punctuation.definition.block",
+ "meta.export.ts punctuation.definition.block",
+ "meta.export.tsx punctuation.definition.block"
+ ],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": [
+ "meta.decorator punctuation.decorator.ts",
+ "meta.decorator punctuation.decorator.tsx"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": "meta.tag.js meta.jsx.children.tsx",
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "YAML Entity Name Tags",
+ "scope": "entity.name.tag.yaml",
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "JavaScript Variable Other ReadWrite",
+ "scope": ["variable.other.readwrite.js", "variable.parameter"],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "Support Class Component",
+ "scope": ["support.class.component.js", "support.class.component.tsx"],
+ "settings": {
+ "foreground": "#aa0982",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Text nested in React tags",
+ "scope": ["meta.jsx.children", "meta.jsx.children.js", "meta.jsx.children.tsx"],
+ "settings": {
+ "foreground": "#403f53"
+ }
+ },
+ {
+ "name": "TypeScript Classes",
+ "scope": "meta.class entity.name.type.class.tsx",
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "TypeScript Entity Name Type",
+ "scope": ["entity.name.type.tsx", "entity.name.type.module.tsx"],
+ "settings": {
+ "foreground": "#111111"
+ }
+ },
+ {
+ "name": "TypeScript Class Variable Keyword",
+ "scope": [
+ "meta.class.ts meta.var.expr.ts storage.type.ts",
+ "meta.class.tsx meta.var.expr.tsx storage.type.tsx"
+ ],
+ "settings": {
+ "foreground": "#994CC3"
+ }
+ },
+ {
+ "name": "TypeScript Method Declaration e.g. `constructor`",
+ "scope": [
+ "meta.method.declaration storage.type.ts",
+ "meta.method.declaration storage.type.tsx"
+ ],
+ "settings": {
+ "foreground": "#4876d6"
+ }
+ },
+ {
+ "name": "normalize font style of certain components",
+ "scope": [
+ "meta.property-list.css meta.property-value.css variable.other.less",
+ "meta.property-list.scss variable.scss",
+ "meta.property-list.sass variable.sass",
+ "meta.brace",
+ "keyword.operator.operator",
+ "keyword.operator.or.regexp",
+ "keyword.operator.expression.in",
+ "keyword.operator.relational",
+ "keyword.operator.assignment",
+ "keyword.operator.comparison",
+ "keyword.operator.type",
+ "keyword.operator",
+ "keyword",
+ "punctuation.definintion.string",
+ "punctuation",
+ "variable.other.readwrite.js",
+ "storage.type",
+ "source.css",
+ "string.quoted"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/night-owl/night-owl.json b/assets/themes/src/vscode/night-owl/night-owl.json
new file mode 100644
index 0000000000..6d41b6299b
--- /dev/null
+++ b/assets/themes/src/vscode/night-owl/night-owl.json
@@ -0,0 +1,1832 @@
+{
+ "name": "Night Owl",
+ "type": "dark",
+ "semanticHighlighting": false,
+ "colors": {
+ "contrastBorder": "#122d42",
+ "focusBorder": "#122d42",
+ "foreground": "#d6deeb",
+ "widget.shadow": "#011627",
+ "selection.background": "#4373c2",
+ "errorForeground": "#EF5350",
+ "button.background": "#7e57c2cc",
+ "button.foreground": "#ffffffcc",
+ "button.hoverBackground": "#7e57c2",
+ "dropdown.background": "#011627",
+ "dropdown.border": "#5f7e97",
+ "dropdown.foreground": "#ffffffcc",
+ "input.background": "#0b253a",
+ "input.border": "#5f7e97",
+ "input.foreground": "#ffffffcc",
+ "input.placeholderForeground": "#5f7e97",
+ "inputOption.activeBorder": "#ffffffcc",
+ "punctuation.definition.generic.begin.html": "#ef5350f2",
+ "inputValidation.errorBackground": "#AB0300F2",
+ "inputValidation.errorBorder": "#EF5350",
+ "inputValidation.infoBackground": "#00589EF2",
+ "inputValidation.infoBorder": "#64B5F6",
+ "inputValidation.warningBackground": "#675700F2",
+ "inputValidation.warningBorder": "#FFCA28",
+ "scrollbar.shadow": "#010b14",
+ "scrollbarSlider.activeBackground": "#084d8180",
+ "scrollbarSlider.background": "#084d8180",
+ "scrollbarSlider.hoverBackground": "#084d8180",
+ "badge.background": "#5f7e97",
+ "badge.foreground": "#ffffff",
+ "progress.background": "#7e57c2",
+ "breadcrumb.foreground": "#A599E9",
+ "breadcrumb.focusForeground": "#ffffff",
+ "breadcrumb.activeSelectionForeground": "#FFFFFF",
+ "breadcrumbPicker.background": "#001122",
+ "list.activeSelectionBackground": "#234d708c",
+ "list.activeSelectionForeground": "#ffffff",
+ "list.invalidItemForeground": "#975f94",
+ "list.dropBackground": "#011627",
+ "list.focusBackground": "#010d18",
+ "list.focusForeground": "#ffffff",
+ "list.highlightForeground": "#ffffff",
+ "list.hoverBackground": "#011627",
+ "list.hoverForeground": "#ffffff",
+ "list.inactiveSelectionBackground": "#0e293f",
+ "list.inactiveSelectionForeground": "#5f7e97",
+ "activityBar.background": "#011627",
+ "activityBar.dropBackground": "#5f7e97",
+ "activityBar.foreground": "#5f7e97",
+ "activityBar.border": "#011627",
+ "activityBarBadge.background": "#44596b",
+ "activityBarBadge.foreground": "#ffffff",
+ "sideBar.background": "#011627",
+ "sideBar.foreground": "#89a4bb",
+ "sideBar.border": "#011627",
+ "sideBarTitle.foreground": "#5f7e97",
+ "sideBarSectionHeader.background": "#011627",
+ "sideBarSectionHeader.foreground": "#5f7e97",
+ "editorGroup.emptyBackground": "#011627",
+ "editorGroup.border": "#011627",
+ "editorGroup.dropBackground": "#7e57c273",
+ "editorGroupHeader.noTabsBackground": "#011627",
+ "editorGroupHeader.tabsBackground": "#011627",
+ "editorGroupHeader.tabsBorder": "#262A39",
+ "tab.activeBackground": "#0b2942",
+ "tab.activeForeground": "#d2dee7",
+ "tab.border": "#272B3B",
+ "tab.activeBorder": "#262A39",
+ "tab.unfocusedActiveBorder": "#262A39",
+ "tab.inactiveBackground": "#01111d",
+ "tab.inactiveForeground": "#5f7e97",
+ "tab.unfocusedActiveForeground": "#5f7e97",
+ "tab.unfocusedInactiveForeground": "#5f7e97",
+ "editor.background": "#011627",
+ "editor.foreground": "#d6deeb",
+ "editorLineNumber.foreground": "#4b6479",
+ "editorLineNumber.activeForeground": "#C5E4FD",
+ "editorCursor.foreground": "#80a4c2",
+ "editor.selectionBackground": "#1d3b53",
+ "editor.selectionHighlightBackground": "#5f7e9779",
+ "editor.inactiveSelectionBackground": "#7e57c25a",
+ "editor.wordHighlightBackground": "#f6bbe533",
+ "editor.wordHighlightStrongBackground": "#e2a2f433",
+ "editor.findMatchBackground": "#5f7e9779",
+ "editor.findMatchHighlightBackground": "#1085bb5d",
+ "editor.findRangeHighlightBackground": null,
+ "editor.hoverHighlightBackground": "#7e57c25a",
+ "editor.lineHighlightBackground": "#0003",
+ "editor.lineHighlightBorder": null,
+ "editorLink.activeForeground": null,
+ "editor.rangeHighlightBackground": "#7e57c25a",
+ "editorWhitespace.foreground": null,
+ "editorIndentGuide.background": "#5e81ce52",
+ "editorIndentGuide.activeBackground": "#7E97AC",
+ "editorRuler.foreground": "#5e81ce52",
+ "editorCodeLens.foreground": "#5e82ceb4",
+ "editorBracketMatch.background": "#5f7e974d",
+ "editorBracketMatch.border": null,
+ "editorOverviewRuler.currentContentForeground": "#7e57c2",
+ "editorOverviewRuler.incomingContentForeground": "#7e57c2",
+ "editorOverviewRuler.commonContentForeground": "#7e57c2",
+ "editorError.foreground": "#EF5350",
+ "editorError.border": null,
+ "editorWarning.foreground": "#b39554",
+ "editorWarning.border": null,
+ "editorGutter.background": "#011627",
+ "editorGutter.modifiedBackground": "#e2b93d",
+ "editorGutter.addedBackground": "#9CCC65",
+ "editorGutter.deletedBackground": "#EF5350",
+ "diffEditor.insertedTextBackground": "#99b76d23",
+ "diffEditor.insertedTextBorder": "#c5e47833",
+ "diffEditor.removedTextBackground": "#ef535033",
+ "diffEditor.removedTextBorder": "#ef53504d",
+ "editorWidget.background": "#021320",
+ "editorWidget.border": "#5f7e97",
+ "editorSuggestWidget.background": "#2C3043",
+ "editorSuggestWidget.border": "#2B2F40",
+ "editorSuggestWidget.foreground": "#d6deeb",
+ "editorSuggestWidget.highlightForeground": "#ffffff",
+ "editorSuggestWidget.selectedBackground": "#5f7e97",
+ "editorHoverWidget.background": "#011627",
+ "editorHoverWidget.border": "#5f7e97",
+ "debugExceptionWidget.background": "#011627",
+ "debugExceptionWidget.border": "#5f7e97",
+ "editorMarkerNavigation.background": "#0b2942",
+ "editorMarkerNavigationError.background": "#EF5350",
+ "editorMarkerNavigationWarning.background": "#FFCA28",
+ "peekView.border": "#5f7e97",
+ "peekViewEditor.background": "#011627",
+ "peekViewEditor.matchHighlightBackground": "#7e57c25a",
+ "peekViewResult.background": "#011627",
+ "peekViewResult.fileForeground": "#5f7e97",
+ "peekViewResult.lineForeground": "#5f7e97",
+ "peekViewResult.matchHighlightBackground": "#ffffffcc",
+ "peekViewResult.selectionBackground": "#2E3250",
+ "peekViewResult.selectionForeground": "#5f7e97",
+ "peekViewTitle.background": "#011627",
+ "peekViewTitleDescription.foreground": "#697098",
+ "peekViewTitleLabel.foreground": "#5f7e97",
+ "merge.currentHeaderBackground": "#5f7e97",
+ "merge.currentContentBackground": null,
+ "merge.incomingHeaderBackground": "#7e57c25a",
+ "merge.incomingContentBackground": null,
+ "merge.border": null,
+ "panel.background": "#011627",
+ "panel.border": "#5f7e97",
+ "panelTitle.activeBorder": "#5f7e97",
+ "panelTitle.activeForeground": "#ffffffcc",
+ "panelTitle.inactiveForeground": "#d6deeb80",
+ "statusBar.background": "#011627",
+ "statusBar.foreground": "#5f7e97",
+ "statusBar.border": "#262A39",
+ "statusBar.debuggingBackground": "#202431",
+ "statusBar.debuggingForeground": null,
+ "statusBar.debuggingBorder": "#1F2330",
+ "statusBar.noFolderForeground": null,
+ "statusBar.noFolderBackground": "#011627",
+ "statusBar.noFolderBorder": "#25293A",
+ "statusBarItem.activeBackground": "#202431",
+ "statusBarItem.hoverBackground": "#202431",
+ "statusBarItem.prominentBackground": "#202431",
+ "statusBarItem.prominentHoverBackground": "#202431",
+ "titleBar.activeBackground": "#011627",
+ "titleBar.activeForeground": "#eeefff",
+ "titleBar.inactiveBackground": "#010e1a",
+ "titleBar.inactiveForeground": null,
+ "notifications.background": "#01111d",
+ "notifications.border": "#262a39",
+ "notificationCenter.border": "#262a39",
+ "notificationToast.border": "#262a39",
+ "notifications.foreground": "#ffffffcc",
+ "notificationLink.foreground": "#80CBC4",
+ "extensionButton.prominentForeground": "#ffffffcc",
+ "extensionButton.prominentBackground": "#7e57c2cc",
+ "extensionButton.prominentHoverBackground": "#7e57c2",
+ "pickerGroup.foreground": "#d1aaff",
+ "pickerGroup.border": "#011627",
+ "terminal.ansiWhite": "#ffffff",
+ "terminal.ansiBlack": "#011627",
+ "terminal.ansiBlue": "#82AAFF",
+ "terminal.ansiCyan": "#21c7a8",
+ "terminal.ansiGreen": "#22da6e",
+ "terminal.ansiMagenta": "#C792EA",
+ "terminal.ansiRed": "#EF5350",
+ "terminal.ansiYellow": "#c5e478",
+ "terminal.ansiBrightWhite": "#ffffff",
+ "terminal.ansiBrightBlack": "#575656",
+ "terminal.ansiBrightBlue": "#82AAFF",
+ "terminal.ansiBrightCyan": "#7fdbca",
+ "terminal.ansiBrightGreen": "#22da6e",
+ "terminal.ansiBrightMagenta": "#C792EA",
+ "terminal.ansiBrightRed": "#EF5350",
+ "terminal.ansiBrightYellow": "#ffeb95",
+ "terminal.selectionBackground": "#1b90dd4d",
+ "terminalCursor.background": "#234d70",
+ "textCodeBlock.background": "#4f4f4f",
+ "debugToolBar.background": "#011627",
+ "welcomePage.buttonBackground": "#011627",
+ "welcomePage.buttonHoverBackground": "#011627",
+ "walkThrough.embeddedEditorBackground": "#011627",
+ "gitDecoration.modifiedResourceForeground": "#a2bffc",
+ "gitDecoration.deletedResourceForeground": "#EF535090",
+ "gitDecoration.untrackedResourceForeground": "#c5e478ff",
+ "gitDecoration.ignoredResourceForeground": "#395a75",
+ "gitDecoration.conflictingResourceForeground": "#ffeb95cc",
+ "source.elm": "#5f7e97",
+ "string.quoted.single.js": "#ffffff",
+ "meta.objectliteral.js": "#82AAFF"
+ },
+ "tokenColors": [
+ {
+ "name": "Changed",
+ "scope": [
+ "markup.changed",
+ "meta.diff.header.git",
+ "meta.diff.header.from-file",
+ "meta.diff.header.to-file"
+ ],
+ "settings": {
+ "foreground": "#a2bffc",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Deleted",
+ "scope": "markup.deleted.diff",
+ "settings": {
+ "foreground": "#EF535090",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Inserted",
+ "scope": "markup.inserted.diff",
+ "settings": {
+ "foreground": "#c5e478ff",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Global settings",
+ "settings": {
+ "background": "#011627",
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "foreground": "#637777",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#ecc48d"
+ }
+ },
+ {
+ "name": "String Quoted",
+ "scope": ["string.quoted", "variable.other.readwrite.js"],
+ "settings": {
+ "foreground": "#ecc48d"
+ }
+ },
+ {
+ "name": "Support Constant Math",
+ "scope": "support.constant.math",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": ["constant.numeric", "constant.character.numeric"],
+ "settings": {
+ "foreground": "#F78C6C",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Built-in constant",
+ "scope": [
+ "constant.language",
+ "punctuation.definition.constant",
+ "variable.other.constant"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "User-defined constant",
+ "scope": ["constant.character", "constant.other"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Constant Character Escape",
+ "scope": "constant.character.escape",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "RegExp String",
+ "scope": ["string.regexp", "string.regexp keyword.other"],
+ "settings": {
+ "foreground": "#5ca7e4"
+ }
+ },
+ {
+ "name": "Comma in functions",
+ "scope": "meta.function punctuation.separator.comma",
+ "settings": {
+ "foreground": "#5f7e97"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": "variable",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": ["punctuation.accessor", "keyword"],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage",
+ "meta.var.expr",
+ "meta.class meta.method.declaration meta.var.expr storage.type.js",
+ "storage.type.property.js",
+ "storage.type.property.ts",
+ "storage.type.property.tsx"
+ ],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Storage type",
+ "scope": "storage.type",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Storage type",
+ "scope": "storage.type.function.arrow.js",
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Class name",
+ "scope": ["entity.name.class", "meta.class entity.name.type.class"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Meta Tag",
+ "scope": ["punctuation.definition.tag", "meta.tag"],
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "HTML Tag names",
+ "scope": [
+ "entity.name.tag",
+ "meta.tag.other.html",
+ "meta.tag.other.js",
+ "meta.tag.other.tsx",
+ "entity.name.tag.tsx",
+ "entity.name.tag.js",
+ "entity.name.tag",
+ "meta.tag.js",
+ "meta.tag.tsx",
+ "meta.tag.html"
+ ],
+ "settings": {
+ "foreground": "#caece6",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Entity Name Tag Custom",
+ "scope": "entity.name.tag.custom",
+ "settings": {
+ "foreground": "#f78c6c"
+ }
+ },
+ {
+ "name": "Library (function & constant)",
+ "scope": ["support.function", "support.constant"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Support Constant Property Value meta",
+ "scope": "support.constant.meta.property-value",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": ["support.type", "support.class"],
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Support Variable DOM",
+ "scope": "support.variable.dom",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": "invalid",
+ "settings": {
+ "background": "#ff2c83",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid deprecated",
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#d3423e"
+ }
+ },
+ {
+ "name": "Keyword Operator",
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#7fdbca",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Keyword Operator Relational",
+ "scope": "keyword.operator.relational",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Keyword Operator Assignment",
+ "scope": "keyword.operator.assignment",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Keyword Operator Arithmetic",
+ "scope": "keyword.operator.arithmetic",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Keyword Operator Bitwise",
+ "scope": "keyword.operator.bitwise",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Keyword Operator Increment",
+ "scope": "keyword.operator.increment",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Keyword Operator Ternary",
+ "scope": "keyword.operator.ternary",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Double-Slashed Comment",
+ "scope": "comment.line.double-slash",
+ "settings": {
+ "foreground": "#637777"
+ }
+ },
+ {
+ "name": "Object",
+ "scope": "object",
+ "settings": {
+ "foreground": "#cdebf7"
+ }
+ },
+ {
+ "name": "Null",
+ "scope": "constant.language.null",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Meta Brace",
+ "scope": "meta.brace",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "Meta Delimiter Period",
+ "scope": "meta.delimiter.period",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Punctuation Definition String",
+ "scope": "punctuation.definition.string",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Punctuation Definition String Markdown",
+ "scope": "punctuation.definition.string.begin.markdown",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Boolean",
+ "scope": "constant.language.boolean",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Object Comma",
+ "scope": "object.comma",
+ "settings": {
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Variable Parameter Function",
+ "scope": "variable.parameter.function",
+ "settings": {
+ "foreground": "#7fdbca",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Support Type Property Name & entity name tags",
+ "scope": [
+ "support.type.vendor.property-name",
+ "support.constant.vendor.property-value",
+ "support.type.property-name",
+ "meta.property-list entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#80CBC4",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Entity Name tag reference in stylesheets",
+ "scope": "meta.property-list entity.name.tag.reference",
+ "settings": {
+ "foreground": "#57eaf1"
+ }
+ },
+ {
+ "name": "Constant Other Color RGB Value Punctuation Definition Constant",
+ "scope": "constant.other.color.rgb-value punctuation.definition.constant",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Constant Other Color",
+ "scope": "constant.other.color",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Keyword Other Unit",
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Meta Selector",
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Entity Other Attribute Name Id",
+ "scope": "entity.other.attribute-name.id",
+ "settings": {
+ "foreground": "#FAD430"
+ }
+ },
+ {
+ "name": "Meta Property Name",
+ "scope": "meta.property-name",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Doctypes",
+ "scope": ["entity.name.tag.doctype", "meta.tag.sgml.doctype"],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Punctuation Definition Parameters",
+ "scope": "punctuation.definition.parameters",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Keyword Control Operator",
+ "scope": "keyword.control.operator",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Keyword Operator Logical",
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Variable Instances",
+ "scope": [
+ "variable.instance",
+ "variable.other.instance",
+ "variable.readwrite.instance",
+ "variable.other.readwrite.instance",
+ "variable.other.property"
+ ],
+ "settings": {
+ "foreground": "#baebe2"
+ }
+ },
+ {
+ "name": "Variable Property Other object property",
+ "scope": ["variable.other.object.property"],
+ "settings": {
+ "foreground": "#faf39f",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Variable Property Other object",
+ "scope": ["variable.other.object.js"],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Entity Name Function",
+ "scope": ["entity.name.function"],
+ "settings": {
+ "foreground": "#82AAFF",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Keyword Operator Comparison, imports, returns and Keyword Operator Ruby",
+ "scope": [
+ "keyword.operator.comparison",
+ "keyword.control.flow.js",
+ "keyword.control.flow.ts",
+ "keyword.control.flow.tsx",
+ "keyword.control.ruby",
+ "keyword.control.module.ruby",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.control.loop.js",
+ "keyword.control.loop.ts",
+ "keyword.control.import.js",
+ "keyword.control.import.ts",
+ "keyword.control.import.tsx",
+ "keyword.control.from.js",
+ "keyword.control.from.ts",
+ "keyword.control.from.tsx",
+ "keyword.operator.instanceof.js",
+ "keyword.operator.expression.instanceof.ts",
+ "keyword.operator.expression.instanceof.tsx"
+ ],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Keyword Control Conditional",
+ "scope": [
+ "keyword.control.conditional.js",
+ "keyword.control.conditional.ts",
+ "keyword.control.switch.js",
+ "keyword.control.switch.ts"
+ ],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Support Constant, `new` keyword, Special Method Keyword, `debugger`, other keywords",
+ "scope": [
+ "support.constant",
+ "keyword.other.special-method",
+ "keyword.other.new",
+ "keyword.other.debugger",
+ "keyword.control"
+ ],
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Support Function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Invalid Broken",
+ "scope": "invalid.broken",
+ "settings": {
+ "foreground": "#020e14",
+ "background": "#F78C6C"
+ }
+ },
+ {
+ "name": "Invalid Unimplemented",
+ "scope": "invalid.unimplemented",
+ "settings": {
+ "background": "#8BD649",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid Illegal",
+ "scope": "invalid.illegal",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#ec5f67"
+ }
+ },
+ {
+ "name": "Language Variable",
+ "scope": "variable.language",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Support Variable Property",
+ "scope": "support.variable.property",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Variable Function",
+ "scope": "variable.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variable Interpolation",
+ "scope": "variable.interpolation",
+ "settings": {
+ "foreground": "#ec5f67"
+ }
+ },
+ {
+ "name": "Meta Function Call",
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Punctuation Section Embedded",
+ "scope": "punctuation.section.embedded",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Punctuation Tweaks",
+ "scope": [
+ "punctuation.terminator.expression",
+ "punctuation.definition.arguments",
+ "punctuation.definition.array",
+ "punctuation.section.array",
+ "meta.array"
+ ],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "More Punctuation Tweaks",
+ "scope": [
+ "punctuation.definition.list.begin",
+ "punctuation.definition.list.end",
+ "punctuation.separator.arguments",
+ "punctuation.definition.list"
+ ],
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Template Strings",
+ "scope": "string.template meta.template.expression",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Backtics(``) in Template Strings",
+ "scope": "string.template punctuation.definition.string",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "Italics",
+ "scope": "italic",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Bold",
+ "scope": "bold",
+ "settings": {
+ "foreground": "#c5e478",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Quote",
+ "scope": "quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Raw Code",
+ "scope": "raw",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "CoffeScript Variable Assignment",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#31e1eb"
+ }
+ },
+ {
+ "name": "CoffeScript Parameter Function",
+ "scope": "variable.parameter.function.coffee",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "CoffeeScript Assignments",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "C# Readwrite Variables",
+ "scope": "variable.other.readwrite.cs",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "C# Classes & Storage types",
+ "scope": ["entity.name.type.class.cs", "storage.type.cs"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "C# Namespaces",
+ "scope": "entity.name.type.namespace.cs",
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "C# Unquoted String Zone",
+ "scope": "string.unquoted.preprocessor.message.cs",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "C# Region",
+ "scope": [
+ "punctuation.separator.hash.cs",
+ "keyword.preprocessor.region.cs",
+ "keyword.preprocessor.endregion.cs"
+ ],
+ "settings": {
+ "foreground": "#ffcb8b",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "C# Other Variables",
+ "scope": "variable.other.object.cs",
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "C# Enum",
+ "scope": "entity.name.type.enum.cs",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Dart String",
+ "scope": [
+ "string.interpolated.single.dart",
+ "string.interpolated.double.dart"
+ ],
+ "settings": {
+ "foreground": "#FFCB8B"
+ }
+ },
+ {
+ "name": "Dart Class",
+ "scope": "support.class.dart",
+ "settings": {
+ "foreground": "#FFCB8B"
+ }
+ },
+ {
+ "name": "Tag names in Stylesheets",
+ "scope": [
+ "entity.name.tag.css",
+ "entity.name.tag.less",
+ "entity.name.tag.custom.css",
+ "support.constant.property-value.css"
+ ],
+ "settings": {
+ "foreground": "#ff6363",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Wildcard(*) selector in Stylesheets",
+ "scope": [
+ "entity.name.tag.wildcard.css",
+ "entity.name.tag.wildcard.less",
+ "entity.name.tag.wildcard.scss",
+ "entity.name.tag.wildcard.sass"
+ ],
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "CSS Keyword Other Unit",
+ "scope": "keyword.other.unit.css",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Attribute Name for CSS",
+ "scope": [
+ "meta.attribute-selector.css entity.other.attribute-name.attribute",
+ "variable.other.readwrite.js"
+ ],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Elixir Classes",
+ "scope": [
+ "source.elixir support.type.elixir",
+ "source.elixir meta.module.elixir entity.name.class.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir Functions",
+ "scope": "source.elixir entity.name.function",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Elixir Constants",
+ "scope": [
+ "source.elixir constant.other.symbol.elixir",
+ "source.elixir constant.other.keywords.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir String Punctuations",
+ "scope": "source.elixir punctuation.definition.string",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Elixir",
+ "scope": [
+ "source.elixir variable.other.readwrite.module.elixir",
+ "source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"
+ ],
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Elixir Binary Punctuations",
+ "scope": "source.elixir .punctuation.binary.elixir",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Closure Constant Keyword",
+ "scope": "constant.keyword.clojure",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Go Function Calls",
+ "scope": "source.go meta.function-call.go",
+ "settings": {
+ "foreground": "#DDDDDD"
+ }
+ },
+ {
+ "name": "Go Keywords",
+ "scope": [
+ "source.go keyword.package.go",
+ "source.go keyword.import.go",
+ "source.go keyword.function.go",
+ "source.go keyword.type.go",
+ "source.go keyword.struct.go",
+ "source.go keyword.interface.go",
+ "source.go keyword.const.go",
+ "source.go keyword.var.go",
+ "source.go keyword.map.go",
+ "source.go keyword.channel.go",
+ "source.go keyword.control.go"
+ ],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Go Constants e.g. nil, string format (%s, %d, etc.)",
+ "scope": [
+ "source.go constant.language.go",
+ "source.go constant.other.placeholder.go"
+ ],
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "C++ Functions",
+ "scope": [
+ "entity.name.function.preprocessor.cpp",
+ "entity.scope.name.cpp"
+ ],
+ "settings": {
+ "foreground": "#7fdbcaff"
+ }
+ },
+ {
+ "name": "C++ Meta Namespace",
+ "scope": ["meta.namespace-block.cpp"],
+ "settings": {
+ "foreground": "#e0dec6"
+ }
+ },
+ {
+ "name": "C++ Language Primitive Storage",
+ "scope": ["storage.type.language.primitive.cpp"],
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "C++ Preprocessor Macro",
+ "scope": ["meta.preprocessor.macro.cpp"],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "C++ Variable Parameter",
+ "scope": ["variable.parameter"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "Powershell Variables",
+ "scope": ["variable.other.readwrite.powershell"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Powershell Function",
+ "scope": ["support.function.powershell"],
+ "settings": {
+ "foreground": "#7fdbcaff"
+ }
+ },
+ {
+ "name": "ID Attribute Name in HTML",
+ "scope": "entity.other.attribute-name.id.html",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "HTML Punctuation Definition Tag",
+ "scope": "punctuation.definition.tag.html",
+ "settings": {
+ "foreground": "#6ae9f0"
+ }
+ },
+ {
+ "name": "HTML Doctype",
+ "scope": "meta.tag.sgml.doctype.html",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "JavaScript Classes",
+ "scope": "meta.class entity.name.type.class.js",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "JavaScript Method Declaration e.g. `constructor`",
+ "scope": "meta.method.declaration storage.type.js",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "JavaScript Terminator",
+ "scope": "terminator.js",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "JavaScript Meta Punctuation Definition",
+ "scope": "meta.js punctuation.definition.js",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "Entity Names in Code Documentations",
+ "scope": [
+ "entity.name.type.instance.jsdoc",
+ "entity.name.type.instance.phpdoc"
+ ],
+ "settings": {
+ "foreground": "#5f7e97"
+ }
+ },
+ {
+ "name": "Other Variables in Code Documentations",
+ "scope": ["variable.other.jsdoc", "variable.other.phpdoc"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "JavaScript module imports and exports",
+ "scope": [
+ "variable.other.meta.import.js",
+ "meta.import.js variable.other",
+ "variable.other.meta.export.js",
+ "meta.export.js variable.other"
+ ],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "JavaScript Variable Parameter Function",
+ "scope": "variable.parameter.function.js",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "JavaScript[React] Variable Other Object",
+ "scope": [
+ "variable.other.object.js",
+ "variable.other.object.jsx",
+ "variable.object.property.js",
+ "variable.object.property.jsx"
+ ],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "JavaScript Variables",
+ "scope": ["variable.js", "variable.other.js"],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "JavaScript Entity Name Type",
+ "scope": ["entity.name.type.js", "entity.name.type.module.js"],
+ "settings": {
+ "foreground": "#ffcb8b",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "JavaScript Support Classes",
+ "scope": "support.class.js",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "JSON Property Names",
+ "scope": "support.type.property-name.json",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "JSON Support Constants",
+ "scope": "support.constant.json",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "JSON Property values (string)",
+ "scope": "meta.structure.dictionary.value.json string.quoted.double",
+ "settings": {
+ "foreground": "#c789d6"
+ }
+ },
+ {
+ "name": "Strings in JSON values",
+ "scope": "string.quoted.double.json punctuation.definition.string.json",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Specific JSON Property values like null",
+ "scope": "meta.structure.dictionary.json meta.structure.dictionary.value constant.language",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "JavaScript Other Variable",
+ "scope": "variable.other.object.js",
+ "settings": {
+ "foreground": "#7fdbca",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Ruby Variables",
+ "scope": ["variable.other.ruby"],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "Ruby Class",
+ "scope": ["entity.name.type.class.ruby"],
+ "settings": {
+ "foreground": "#ecc48d"
+ }
+ },
+ {
+ "name": "Ruby Hashkeys",
+ "scope": "constant.language.symbol.hashkey.ruby",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Ruby Symbols",
+ "scope": "constant.language.symbol.ruby",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "LESS Tag names",
+ "scope": "entity.name.tag.less",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "LESS Keyword Other Unit",
+ "scope": "keyword.other.unit.css",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Attribute Name for LESS",
+ "scope": "meta.attribute-selector.less entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Markdown Headings",
+ "scope": [
+ "markup.heading.markdown",
+ "markup.heading.setext.1.markdown",
+ "markup.heading.setext.2.markdown"
+ ],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markdown Italics",
+ "scope": "markup.italic.markdown",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown Bold",
+ "scope": "markup.bold.markdown",
+ "settings": {
+ "foreground": "#c5e478",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markdown Quote + others",
+ "scope": "markup.quote.markdown",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown Raw Code + others",
+ "scope": "markup.inline.raw.markdown",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Markdown Links",
+ "scope": [
+ "markup.underline.link.markdown",
+ "markup.underline.link.image.markdown"
+ ],
+ "settings": {
+ "foreground": "#ff869a"
+ }
+ },
+ {
+ "name": "Markdown Link Title and Description",
+ "scope": [
+ "string.other.link.title.markdown",
+ "string.other.link.description.markdown"
+ ],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "Markdown Punctuation",
+ "scope": [
+ "punctuation.definition.string.markdown",
+ "punctuation.definition.string.begin.markdown",
+ "punctuation.definition.string.end.markdown",
+ "meta.link.inline.markdown punctuation.definition.string"
+ ],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markdown MetaData Punctuation",
+ "scope": ["punctuation.definition.metadata.markdown"],
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "Markdown List Punctuation",
+ "scope": ["beginning.punctuation.definition.list.markdown"],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markdown Inline Raw String",
+ "scope": "markup.inline.raw.string.markdown",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "PHP Variables",
+ "scope": ["variable.other.php", "variable.other.property.php"],
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Support Classes in PHP",
+ "scope": "support.class.php",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "Punctuations in PHP function calls",
+ "scope": "meta.function-call.php punctuation",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "PHP Global Variables",
+ "scope": "variable.other.global.php",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Declaration Punctuation in PHP Global Variables",
+ "scope": "variable.other.global.php punctuation.definition.variable",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Language Constants in Python",
+ "scope": "constant.language.python",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Python Function Parameter and Arguments",
+ "scope": [
+ "variable.parameter.function.python",
+ "meta.function-call.arguments.python"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": [
+ "meta.function-call.python",
+ "meta.function-call.generic.python"
+ ],
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "Punctuations in Python",
+ "scope": "punctuation.python",
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "Decorator Functions in Python",
+ "scope": "entity.name.function.decorator.python",
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Python Language Variable",
+ "scope": "source.python variable.language.special",
+ "settings": {
+ "foreground": "#8EACE3"
+ }
+ },
+ {
+ "name": "Python import control keyword",
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "SCSS Variable",
+ "scope": [
+ "variable.scss",
+ "variable.sass",
+ "variable.parameter.url.scss",
+ "variable.parameter.url.sass"
+ ],
+ "settings": {
+ "foreground": "#c5e478"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Attribute Name for SASS",
+ "scope": [
+ "meta.attribute-selector.scss entity.other.attribute-name.attribute",
+ "meta.attribute-selector.sass entity.other.attribute-name.attribute"
+ ],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Tag names in SASS",
+ "scope": ["entity.name.tag.scss", "entity.name.tag.sass"],
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "SASS Keyword Other Unit",
+ "scope": ["keyword.other.unit.scss", "keyword.other.unit.sass"],
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "TypeScript[React] Variables and Object Properties",
+ "scope": [
+ "variable.other.readwrite.alias.ts",
+ "variable.other.readwrite.alias.tsx",
+ "variable.other.readwrite.ts",
+ "variable.other.readwrite.tsx",
+ "variable.other.object.ts",
+ "variable.other.object.tsx",
+ "variable.object.property.ts",
+ "variable.object.property.tsx",
+ "variable.other.ts",
+ "variable.other.tsx",
+ "variable.tsx",
+ "variable.ts"
+ ],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types",
+ "scope": ["entity.name.type.ts", "entity.name.type.tsx"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "TypeScript[React] Node Classes",
+ "scope": ["support.class.node.ts", "support.class.node.tsx"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types as Parameters",
+ "scope": [
+ "meta.type.parameters.ts entity.name.type",
+ "meta.type.parameters.tsx entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#5f7e97"
+ }
+ },
+ {
+ "name": "TypeScript[React] Import/Export Punctuations",
+ "scope": [
+ "meta.import.ts punctuation.definition.block",
+ "meta.import.tsx punctuation.definition.block",
+ "meta.export.ts punctuation.definition.block",
+ "meta.export.tsx punctuation.definition.block"
+ ],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": [
+ "meta.decorator punctuation.decorator.ts",
+ "meta.decorator punctuation.decorator.tsx"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": "meta.tag.js meta.jsx.children.tsx",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "YAML Entity Name Tags",
+ "scope": "entity.name.tag.yaml",
+ "settings": {
+ "foreground": "#7fdbca"
+ }
+ },
+ {
+ "name": "JavaScript Variable Other ReadWrite",
+ "scope": ["variable.other.readwrite.js", "variable.parameter"],
+ "settings": {
+ "foreground": "#d7dbe0"
+ }
+ },
+ {
+ "name": "Support Class Component",
+ "scope": ["support.class.component.js", "support.class.component.tsx"],
+ "settings": {
+ "foreground": "#f78c6c",
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "Text nested in React tags",
+ "scope": [
+ "meta.jsx.children",
+ "meta.jsx.children.js",
+ "meta.jsx.children.tsx"
+ ],
+ "settings": {
+ "foreground": "#d6deeb"
+ }
+ },
+ {
+ "name": "TypeScript Classes",
+ "scope": "meta.class entity.name.type.class.tsx",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "TypeScript Entity Name Type",
+ "scope": ["entity.name.type.tsx", "entity.name.type.module.tsx"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "TypeScript Class Variable Keyword",
+ "scope": [
+ "meta.class.ts meta.var.expr.ts storage.type.ts",
+ "meta.class.tsx meta.var.expr.tsx storage.type.tsx"
+ ],
+ "settings": {
+ "foreground": "#C792EA"
+ }
+ },
+ {
+ "name": "TypeScript Method Declaration e.g. `constructor`",
+ "scope": [
+ "meta.method.declaration storage.type.ts",
+ "meta.method.declaration storage.type.tsx"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "normalize font style of certain components",
+ "scope": [
+ "meta.property-list.css meta.property-value.css variable.other.less",
+ "meta.property-list.scss variable.scss",
+ "meta.property-list.sass variable.sass",
+ "meta.brace",
+ "keyword.operator.operator",
+ "keyword.operator.or.regexp",
+ "keyword.operator.expression.in",
+ "keyword.operator.relational",
+ "keyword.operator.assignment",
+ "keyword.operator.comparison",
+ "keyword.operator.type",
+ "keyword.operator",
+ "keyword",
+ "punctuation.definintion.string",
+ "punctuation",
+ "variable.other.readwrite.js",
+ "storage.type",
+ "source.css",
+ "string.quoted"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/noctis/LICENSE b/assets/themes/src/vscode/noctis/LICENSE
new file mode 100644
index 0000000000..44dde44047
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/LICENSE
@@ -0,0 +1,9 @@
+MIT License
+
+Copyright (c) 2018 Liviu Schera
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/assets/themes/src/vscode/noctis/azureus.json b/assets/themes/src/vscode/noctis/azureus.json
new file mode 100644
index 0000000000..d550e74811
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/azureus.json
@@ -0,0 +1,1113 @@
+{
+ "name": "Noctis Azureus",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#1679b6cc",
+ "descriptionForeground": "#61a6d1",
+ "errorForeground": "#e34e1c",
+ "widget.shadow": "#00000044",
+ "editor.background": "#07273b",
+ "editor.foreground": "#becfda",
+ "editorLineNumber.foreground": "#4d6c80",
+ "editorLineNumber.activeForeground": "#61a6d1",
+ "editorCursor.foreground": "#b3e2ff",
+ "badge.background": "#49ace9",
+ "badge.foreground": "#0f1315",
+ "activityBar.background": "#07273b",
+ "activityBar.dropBackground": "#61a6d165",
+ "activityBar.border": "#0f1315",
+ "activityBar.foreground": "#1679b6",
+ "activityBar.inactiveForeground": "#1679b677",
+ "activityBarBadge.background": "#49ace9",
+ "activityBarBadge.foreground": "#0f1315",
+ "activityBar.activeBackground": "#49ace933",
+ "activityBar.activeBorder": "#49ace9",
+ "sideBar.background": "#062132",
+ "sideBar.dropBackground": "#062132",
+ "sideBar.border": "#0f1315",
+ "sideBar.foreground": "#9fb6c6",
+ "sideBarSectionHeader.background": "#09334e",
+ "sideBarSectionHeader.foreground": "#9fb6c6",
+ "sideBarTitle.foreground": "#9fb6c6",
+ "sideBarSectionHeader.border": "#0f1315",
+ "statusBar.foreground": "#1679b6",
+ "statusBar.background": "#07273b",
+ "statusBar.border": "#0f1315",
+ "statusBar.debuggingBackground": "#07273b",
+ "statusBar.debuggingForeground": "#ff80ac50",
+ "statusBar.debuggingBorder": "#ff80acaf",
+ "statusBar.noFolderForeground": "#879dab",
+ "statusBar.noFolderBackground": "#07273b",
+ "statusBar.noFolderBorder": "#07273b",
+ "statusBarItem.activeBackground": "#007ecc59",
+ "statusBarItem.hoverBackground": "#0a3652",
+ "statusBarItem.prominentBackground": "#051e2e",
+ "statusBarItem.prominentHoverBackground": "#002f4d",
+ "button.background": "#007f99",
+ "button.foreground": "#ebf7ff",
+ "button.hoverBackground": "#0ac",
+ "dropdown.background": "#09334e",
+ "dropdown.border": "#09334e",
+ "dropdown.foreground": "#61a6d1",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#e34e1c",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#07273b",
+ "editorError.foreground": "#e34e1c",
+ "editorWarning.border": "#07273b",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#07273b",
+ "editorInfo.foreground": "#49ace9",
+ "editorHint.border": "#49e9a600",
+ "editorHint.foreground": "#49e9a6",
+ "editorGroup.emptyBackground": "#4d6c8033",
+ "editorGroup.border": "#0f1315",
+ "editorGroup.dropBackground": "#4d6c8033",
+ "editorGroupHeader.noTabsBackground": "#09334e",
+ "editorGroupHeader.tabsBackground": "#09334e",
+ "editorGroupHeader.tabsBorder": "#09334e",
+ "tab.activeBackground": "#07273b",
+ "tab.unfocusedActiveBackground": "#002c47",
+ "tab.activeForeground": "#49ace9",
+ "tab.border": "#0f1315",
+ "tab.inactiveBackground": "#09334e",
+ "tab.inactiveForeground": "#9fb6c6",
+ "tab.unfocusedActiveForeground": "#9fb6c6",
+ "tab.unfocusedInactiveForeground": "#9fb6c6",
+ "tab.activeBorderTop": "#49ace9",
+ "tab.activeModifiedBorder": "#49e9a6",
+ "tab.activeBorder": "#07273b",
+ "tab.unfocusedActiveBorder": "#07273b",
+ "tab.unfocusedHoverBackground": "#1679b621",
+ "textBlockQuote.background": "#07273b",
+ "textBlockQuote.border": "#1679b6",
+ "textCodeBlock.background": "#07273b",
+ "textLink.activeForeground": "#49ace9",
+ "textLink.foreground": "#49ace9",
+ "textPreformat.foreground": "#ffc180",
+ "textSeparator.foreground": "#07273b",
+ "walkThrough.embeddedEditorBackground": "#07273b",
+ "welcomePage.buttonBackground": "#051b29",
+ "welcomePage.buttonHoverBackground": "#09334e",
+ "input.background": "#051b29",
+ "input.border": "#002f4d",
+ "input.foreground": "#CDD3DE",
+ "input.placeholderForeground": "#879dab",
+ "inputOption.activeBorder": "#1679b6",
+ "inputValidation.errorForeground": "#ff4000",
+ "inputValidation.errorBackground": "#501502ee",
+ "inputValidation.errorBorder": "#691c02",
+ "inputValidation.infoForeground": "#40d4e7",
+ "inputValidation.infoBackground": "#0f6e7bee",
+ "inputValidation.infoBorder": "#148f9f",
+ "inputValidation.warningForeground": "#e69533",
+ "inputValidation.warningBackground": "#82694acc",
+ "inputValidation.warningBorder": "#a88457",
+ "editorWidget.background": "#09334e",
+ "editorWidget.border": "#0f1315",
+ "editorHoverWidget.background": "#002942",
+ "editorHoverWidget.border": "#0f1315",
+ "editorSuggestWidget.background": "#002942",
+ "editorSuggestWidget.border": "#0f1315",
+ "editorSuggestWidget.foreground": "#9fb6c6",
+ "editorSuggestWidget.highlightForeground": "#49ace9",
+ "editorSuggestWidget.selectedBackground": "#0c3f5f",
+ "editorGutter.background": "#07273b",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#e34e1c",
+ "editorGutter.modifiedBackground": "#ffc180",
+ "editor.selectionBackground": "#1679b655",
+ "editor.selectionHighlightBackground": "#49ace933",
+ "editor.inactiveSelectionBackground": "#1679b633",
+ "editor.wordHighlightStrongBackground": "#cc990033",
+ "editor.wordHighlightBackground": "#e4b78133",
+ "editor.findMatchBackground": "#40bf6a11",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#49e9a622",
+ "editor.hoverHighlightBackground": "#1679b63f",
+ "editor.lineHighlightBackground": "#003c61ee",
+ "editor.lineHighlightBorder": "#003c61",
+ "editor.rangeHighlightBackground": "#49d6e922",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#ffffff21",
+ "editorIndentGuide.background": "#183c53",
+ "editorIndentGuide.activeBackground": "#28658a",
+ "editorBracketMatch.background": "#1679b622",
+ "editorBracketMatch.border": "#1679b6",
+ "editorRuler.foreground": "#1a425b",
+ "editorCodeLens.foreground": "#5b858b",
+ "terminal.ansiBlack": "#28353e",
+ "terminal.ansiRed": "#e66533",
+ "terminal.ansiGreen": "#49e9a6",
+ "terminal.ansiYellow": "#e4b781",
+ "terminal.ansiBlue": "#49ace9",
+ "terminal.ansiMagenta": "#df769b",
+ "terminal.ansiCyan": "#49d6e9",
+ "terminal.ansiWhite": "#aec3d0",
+ "terminal.ansiBrightBlack": "#475e6c",
+ "terminal.ansiBrightRed": "#e97749",
+ "terminal.ansiBrightGreen": "#60ebb1",
+ "terminal.ansiBrightYellow": "#e69533",
+ "terminal.ansiBrightBlue": "#60b6eb",
+ "terminal.ansiBrightMagenta": "#e798b3",
+ "terminal.ansiBrightCyan": "#60dbeb",
+ "terminal.ansiBrightWhite": "#becfda",
+ "terminal.background": "#051b29",
+ "terminal.foreground": "#becfda",
+ "terminalCursor.background": "#051b29",
+ "terminalCursor.foreground": "#becfda",
+ "merge.border": "#07273b00",
+ "merge.currentContentBackground": "#85f1ff22",
+ "merge.currentHeaderBackground": "#85f1ff44",
+ "merge.incomingContentBackground": "#9d92f222",
+ "merge.incomingHeaderBackground": "#9d92f244",
+ "merge.commonContentBackground": "#ffc18022",
+ "merge.commonHeaderBackground": "#ffc18044",
+ "editorOverviewRuler.currentContentForeground": "#85f1ff44",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f244",
+ "editorOverviewRuler.commonContentForeground": "#ffc18044",
+ "editorOverviewRuler.border": "#07273b",
+ "notificationCenter.border": "#09334e",
+ "notificationCenterHeader.foreground": "#879dab",
+ "notificationCenterHeader.background": "#09334e",
+ "notificationToast.border": "#09334e",
+ "notifications.foreground": "#CDD3DE",
+ "notifications.background": "#09334e",
+ "notifications.border": "#09334e",
+ "notificationLink.foreground": "#879dab",
+ "diffEditor.insertedTextBackground": "#16b67327",
+ "diffEditor.removedTextBackground": "#e6653341",
+ "debugToolBar.background": "#07273b",
+ "debugExceptionWidget.background": "#07273b",
+ "debugExceptionWidget.border": "#1679b6",
+ "extensionButton.prominentBackground": "#008c99",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#00bbcc",
+ "focusBorder": "#09334e",
+ "foreground": "#becfda",
+ "panel.background": "#051b29",
+ "panel.border": "#1679b6",
+ "panelTitle.activeBorder": "#1679b6",
+ "panelTitle.activeForeground": "#49ace9",
+ "panelTitle.inactiveForeground": "#507b95",
+ "peekView.border": "#1679b6",
+ "peekViewEditor.background": "#001f33",
+ "peekViewEditor.matchHighlightBackground": "#005b9433",
+ "peekViewEditor.matchHighlightBorder": "#007ecc",
+ "peekViewEditorGutter.background": "#001f33",
+ "peekViewResult.background": "#002338",
+ "peekViewResult.fileForeground": "#ffc180",
+ "peekViewResult.lineForeground": "#879dab",
+ "peekViewResult.matchHighlightBackground": "#09334e",
+ "peekViewResult.selectionBackground": "#09334e",
+ "peekViewResult.selectionForeground": "#879dab",
+ "peekViewTitle.background": "#002338",
+ "peekViewTitleDescription.foreground": "#879dab",
+ "peekViewTitleLabel.foreground": "#ffc180",
+ "progressBar.background": "#49ace9",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#008ee677",
+ "scrollbarSlider.background": "#008ee633",
+ "scrollbarSlider.hoverBackground": "#008ee655",
+ "gitDecoration.addedResourceForeground": "#16b673",
+ "gitDecoration.modifiedResourceForeground": "#49e9a6",
+ "gitDecoration.deletedResourceForeground": "#e34e1c",
+ "gitDecoration.untrackedResourceForeground": "#40d4e7",
+ "gitDecoration.ignoredResourceForeground": "#5b788b",
+ "gitDecoration.conflictingResourceForeground": "#ffc180",
+ "pickerGroup.border": "#1679b6",
+ "pickerGroup.foreground": "#49ace9",
+ "list.activeSelectionBackground": "#0c3f5f",
+ "list.activeSelectionForeground": "#ebf7ff",
+ "list.dropBackground": "#002a4d",
+ "list.focusBackground": "#0b3c5b",
+ "list.focusForeground": "#ebf7ff",
+ "list.highlightForeground": "#49ace9",
+ "list.hoverBackground": "#00558a65",
+ "list.hoverForeground": "#ebf7ff",
+ "list.inactiveFocusBackground": "#082d44",
+ "list.inactiveSelectionBackground": "#09334e",
+ "list.inactiveSelectionForeground": "#becfda",
+ "list.errorForeground": "#e34e1c",
+ "list.warningForeground": "#ffa857",
+ "listFilterWidget.background": "#002a4d",
+ "listFilterWidget.outline": "#49e9a6",
+ "listFilterWidget.noMatchesOutline": "#e34e1c",
+ "tree.indentGuidesStroke": "#4d6c80",
+ "settings.headerForeground": "#becfda",
+ "settings.modifiedItemIndicator": "#15ac31",
+ "settings.dropdownListBorder": "#0051a877",
+ "settings.dropdownBackground": "#09334e",
+ "settings.dropdownForeground": "#0ac",
+ "settings.dropdownBorder": "#09334e",
+ "settings.checkboxBackground": "#09334e",
+ "settings.checkboxForeground": "#0ac",
+ "settings.checkboxBorder": "#09334e",
+ "settings.textInputBackground": "#09334e",
+ "settings.textInputForeground": "#0ac",
+ "settings.textInputBorder": "#09334e",
+ "settings.numberInputBackground": "#051b29",
+ "settings.numberInputForeground": "#7060eb",
+ "settings.numberInputBorder": "#051b29",
+ "breadcrumb.foreground": "#9fb6c6",
+ "breadcrumb.background": "#07273b",
+ "breadcrumb.focusForeground": "#49ace9",
+ "breadcrumb.activeSelectionForeground": "#ebf7ff",
+ "breadcrumbPicker.background": "#09334e",
+ "titleBar.activeBackground": "#07273b",
+ "titleBar.activeForeground": "#becfda",
+ "titleBar.inactiveBackground": "#07273b",
+ "titleBar.inactiveForeground": "#9fb6c6",
+ "menu.background": "#09334e",
+ "menu.foreground": "#9fb6c6",
+ "menu.selectionBackground": "#0b3c5b",
+ "menu.selectionForeground": "#49ace9",
+ "menu.selectionBorder": "#0b3c5b",
+ "menu.separatorBackground": "#49ace9",
+ "menubar.selectionBackground": "#0b3c5b",
+ "menubar.selectionForeground": "#49ace9",
+ "menubar.selectionBorder": "#0b3c5b",
+ "editor.snippetTabstopHighlightBackground": "#051b29",
+ "editor.snippetTabstopHighlightBorder": "#062132",
+ "editor.snippetFinalTabstopHighlightBackground": "#051b29",
+ "editor.snippetFinalTabstopHighlightBorder": "#062132",
+ "minimap.findMatchHighlight": "#49ace9ee",
+ "minimap.errorHighlight": "#e34e1cee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#16b673",
+ "minimapGutter.modifiedBackground": "#49e9a6",
+ "minimapGutter.deletedBackground": "#e34e1c",
+ "minimap.background": "#07273b99"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#5988a6"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#becfda"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#df769b"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#e4b781"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#d67e5c"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#d5971a"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e66533"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#49e9a6"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#16b673"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7060eb"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#16a3b6"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#49d6e9"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#49ace9"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": [
+ "invalid",
+ "invalid.illegal"
+ ],
+ "settings": {
+ "foreground": "#e3541c"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": [
+ "markup.strikethrough"
+ ],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/noctis/bordo.json b/assets/themes/src/vscode/noctis/bordo.json
new file mode 100644
index 0000000000..a6c4853c3b
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/bordo.json
@@ -0,0 +1,1112 @@
+{
+ "name": "Noctis Bordo",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#88445cbb",
+ "descriptionForeground": "#bb778f",
+ "errorForeground": "#e34e1c",
+ "widget.shadow": "#00000044",
+ "editor.background": "#322a2d",
+ "editor.foreground": "#cbbec2",
+ "editorLineNumber.foreground": "#715b63",
+ "editorLineNumber.activeForeground": "#bb778f",
+ "editorCursor.foreground": "#ffb3cd",
+ "badge.background": "#f18eb0",
+ "badge.foreground": "#1f191b",
+ "activityBar.background": "#322a2d",
+ "activityBar.dropBackground": "#bb778f65",
+ "activityBar.border": "#1f191b",
+ "activityBar.foreground": "#997582",
+ "activityBar.inactiveForeground": "#99758277",
+ "activityBarBadge.background": "#f18eb0",
+ "activityBarBadge.foreground": "#1f191b",
+ "activityBar.activeBackground": "#f18eb033",
+ "activityBar.activeBorder": "#f18eb0",
+ "sideBar.background": "#2c2528",
+ "sideBar.dropBackground": "#2c2528",
+ "sideBar.border": "#1f191b",
+ "sideBar.foreground": "#bbaab0",
+ "sideBarSectionHeader.background": "#413036",
+ "sideBarSectionHeader.foreground": "#bbaab0",
+ "sideBarTitle.foreground": "#bbaab0",
+ "sideBarSectionHeader.border": "#1f191b",
+ "statusBar.foreground": "#997582",
+ "statusBar.background": "#322a2d",
+ "statusBar.border": "#1f191b",
+ "statusBar.debuggingBackground": "#322a2d",
+ "statusBar.debuggingForeground": "#ff80ac50",
+ "statusBar.debuggingBorder": "#ff80acaf",
+ "statusBar.noFolderForeground": "#a48e96",
+ "statusBar.noFolderBackground": "#322a2d",
+ "statusBar.noFolderBorder": "#322a2d",
+ "statusBarItem.activeBackground": "#8f566a77",
+ "statusBarItem.hoverBackground": "#8f566a33",
+ "statusBarItem.prominentBackground": "#272022",
+ "statusBarItem.prominentHoverBackground": "#43142488",
+ "button.background": "#007f99",
+ "button.foreground": "#edebff",
+ "button.hoverBackground": "#0ac",
+ "dropdown.background": "#413036",
+ "dropdown.border": "#413036",
+ "dropdown.foreground": "#bb778f",
+ "editorMarkerNavigation.background": "#5f3a4729",
+ "editorMarkerNavigationError.background": "#e34e1c",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#322a2d",
+ "editorError.foreground": "#e34e1c",
+ "editorWarning.border": "#322a2d",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#322a2d",
+ "editorInfo.foreground": "#40d4e7",
+ "editorHint.border": "#49e9a600",
+ "editorHint.foreground": "#49e9a6",
+ "editorGroup.emptyBackground": "#715b6333",
+ "editorGroup.border": "#1f191b",
+ "editorGroup.dropBackground": "#715b6333",
+ "editorGroupHeader.noTabsBackground": "#413036",
+ "editorGroupHeader.tabsBackground": "#413036",
+ "editorGroupHeader.tabsBorder": "#413036",
+ "tab.activeBackground": "#322a2d",
+ "tab.unfocusedActiveBackground": "#38232b",
+ "tab.activeForeground": "#f18eb0",
+ "tab.border": "#1f191b",
+ "tab.inactiveBackground": "#413036",
+ "tab.inactiveForeground": "#bbaab0",
+ "tab.unfocusedActiveForeground": "#bbaab0",
+ "tab.unfocusedInactiveForeground": "#bbaab0",
+ "tab.activeBorderTop": "#f18eb0",
+ "tab.activeModifiedBorder": "#49e9a6",
+ "tab.activeBorder": "#322a2d",
+ "tab.unfocusedActiveBorder": "#322a2d",
+ "tab.unfocusedHoverBackground": "#f18eb021",
+ "textBlockQuote.background": "#322a2d",
+ "textBlockQuote.border": "#997582",
+ "textCodeBlock.background": "#322a2d",
+ "textLink.activeForeground": "#f18eb0",
+ "textLink.foreground": "#f18eb0",
+ "textPreformat.foreground": "#ffc180",
+ "textSeparator.foreground": "#322a2d",
+ "walkThrough.embeddedEditorBackground": "#322a2d",
+ "welcomePage.buttonBackground": "#272022",
+ "welcomePage.buttonHoverBackground": "#413036",
+ "input.background": "#272022",
+ "input.border": "#412a32",
+ "input.foreground": "#ddd5d7",
+ "input.placeholderForeground": "#a48e96",
+ "inputOption.activeBorder": "#997582",
+ "inputValidation.errorForeground": "#ff4000",
+ "inputValidation.errorBackground": "#501502ee",
+ "inputValidation.errorBorder": "#691c02",
+ "inputValidation.infoForeground": "#40d4e7",
+ "inputValidation.infoBackground": "#0f6e7bee",
+ "inputValidation.infoBorder": "#148f9f",
+ "inputValidation.warningForeground": "#e69533",
+ "inputValidation.warningBackground": "#82694acc",
+ "inputValidation.warningBorder": "#a88457",
+ "editorWidget.background": "#413036",
+ "editorWidget.border": "#1f191b",
+ "editorHoverWidget.background": "#3e2e33",
+ "editorHoverWidget.border": "#1f191b",
+ "editorSuggestWidget.background": "#3e2e33",
+ "editorSuggestWidget.border": "#1f191b",
+ "editorSuggestWidget.foreground": "#bbaab0",
+ "editorSuggestWidget.highlightForeground": "#f18eb0",
+ "editorSuggestWidget.selectedBackground": "#563440",
+ "editorGutter.background": "#322a2d",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#e34e1c",
+ "editorGutter.modifiedBackground": "#ffc180",
+ "editor.selectionBackground": "#99758255",
+ "editor.selectionHighlightBackground": "#7f536299",
+ "editor.inactiveSelectionBackground": "#99758233",
+ "editor.wordHighlightStrongBackground": "#cc990033",
+ "editor.wordHighlightBackground": "#e4b78133",
+ "editor.findMatchBackground": "#40bf6a11",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#49e9a622",
+ "editor.hoverHighlightBackground": "#9975823f",
+ "editor.lineHighlightBackground": "#453138aa",
+ "editor.lineHighlightBorder": "#45313899",
+ "editor.rangeHighlightBackground": "#49d6e922",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#ffccde21",
+ "editorIndentGuide.background": "#48373d",
+ "editorIndentGuide.activeBackground": "#7f5362",
+ "editorBracketMatch.background": "#99758222",
+ "editorBracketMatch.border": "#997582",
+ "editorRuler.foreground": "#593a46",
+ "editorCodeLens.foreground": "#776284",
+ "terminal.ansiBlack": "#47393e",
+ "terminal.ansiRed": "#e66533",
+ "terminal.ansiGreen": "#49e9a6",
+ "terminal.ansiYellow": "#e4b781",
+ "terminal.ansiBlue": "#49ace9",
+ "terminal.ansiMagenta": "#df769b",
+ "terminal.ansiCyan": "#49d6e9",
+ "terminal.ansiWhite": "#b9acb0",
+ "terminal.ansiBrightBlack": "#69545b",
+ "terminal.ansiBrightRed": "#e97749",
+ "terminal.ansiBrightGreen": "#60ebb1",
+ "terminal.ansiBrightYellow": "#e69533",
+ "terminal.ansiBrightBlue": "#60b6eb",
+ "terminal.ansiBrightMagenta": "#e798b3",
+ "terminal.ansiBrightCyan": "#60dbeb",
+ "terminal.ansiBrightWhite": "#cbbec2",
+ "terminal.background": "#272022",
+ "terminal.foreground": "#cbbec2",
+ "terminalCursor.background": "#272022",
+ "terminalCursor.foreground": "#cbbec2",
+ "merge.border": "#322a2d00",
+ "merge.currentContentBackground": "#85f1ff22",
+ "merge.currentHeaderBackground": "#85f1ff44",
+ "merge.incomingContentBackground": "#9d92f222",
+ "merge.incomingHeaderBackground": "#9d92f244",
+ "merge.commonContentBackground": "#ffc18022",
+ "merge.commonHeaderBackground": "#ffc18044",
+ "editorOverviewRuler.currentContentForeground": "#85f1ff44",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f244",
+ "editorOverviewRuler.commonContentForeground": "#ffc18044",
+ "editorOverviewRuler.border": "#322a2d",
+ "notificationCenter.border": "#413036",
+ "notificationCenterHeader.foreground": "#a48e96",
+ "notificationCenterHeader.background": "#413036",
+ "notificationToast.border": "#413036",
+ "notifications.foreground": "#ddd5d7",
+ "notifications.background": "#413036",
+ "notifications.border": "#413036",
+ "notificationLink.foreground": "#a48e96",
+ "diffEditor.insertedTextBackground": "#16b67327",
+ "diffEditor.removedTextBackground": "#e6653341",
+ "debugToolBar.background": "#322a2d",
+ "debugExceptionWidget.background": "#322a2d",
+ "debugExceptionWidget.border": "#997582",
+ "extensionButton.prominentBackground": "#008c99",
+ "extensionButton.prominentForeground": "#e4e2f9",
+ "extensionButton.prominentHoverBackground": "#00bbcc",
+ "focusBorder": "#413036",
+ "foreground": "#cbbec2",
+ "panel.background": "#272022",
+ "panel.border": "#997582",
+ "panelTitle.activeBorder": "#997582",
+ "panelTitle.activeForeground": "#f18eb0",
+ "panelTitle.inactiveForeground": "#936c7a",
+ "peekView.border": "#997582",
+ "peekViewEditor.background": "#2c2125",
+ "peekViewEditor.matchHighlightBackground": "#88445c55",
+ "peekViewEditorGutter.background": "#2c2125",
+ "peekViewResult.background": "#322529",
+ "peekViewResult.fileForeground": "#ffc180",
+ "peekViewResult.lineForeground": "#a48e96",
+ "peekViewResult.matchHighlightBackground": "#47393e",
+ "peekViewResult.selectionBackground": "#47393e",
+ "peekViewResult.selectionForeground": "#a48e96",
+ "peekViewTitle.background": "#322529",
+ "peekViewTitleDescription.foreground": "#a48e96",
+ "peekViewTitleLabel.foreground": "#ffc180",
+ "progressBar.background": "#f18eb0",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#eb609155",
+ "scrollbarSlider.background": "#eb609133",
+ "scrollbarSlider.hoverBackground": "#eb609144",
+ "gitDecoration.addedResourceForeground": "#16b673",
+ "gitDecoration.modifiedResourceForeground": "#49e9a6",
+ "gitDecoration.deletedResourceForeground": "#e34e1c",
+ "gitDecoration.untrackedResourceForeground": "#40d4e7",
+ "gitDecoration.ignoredResourceForeground": "#5b788b",
+ "gitDecoration.conflictingResourceForeground": "#ffc180",
+ "pickerGroup.border": "#997582",
+ "pickerGroup.foreground": "#f18eb0",
+ "list.activeSelectionBackground": "#5c2e3e99",
+ "list.activeSelectionForeground": "#edebff",
+ "list.dropBackground": "#38292e",
+ "list.focusBackground": "#824a5e66",
+ "list.focusForeground": "#edebff",
+ "list.highlightForeground": "#f18eb0",
+ "list.hoverBackground": "#533641",
+ "list.hoverForeground": "#edebff",
+ "list.inactiveFocusBackground": "#2c2528",
+ "list.inactiveSelectionBackground": "#3b2b31",
+ "list.inactiveSelectionForeground": "#cbbec2",
+ "list.errorForeground": "#e34e1c",
+ "list.warningForeground": "#ffa857",
+ "listFilterWidget.background": "#202040",
+ "listFilterWidget.outline": "#49e9a6",
+ "listFilterWidget.noMatchesOutline": "#e34e1c",
+ "tree.indentGuidesStroke": "#715b63",
+ "settings.headerForeground": "#cbbec2",
+ "settings.modifiedItemIndicator": "#15ac31",
+ "settings.dropdownListBorder": "#824a5e77",
+ "settings.dropdownBackground": "#413036",
+ "settings.dropdownForeground": "#0ac",
+ "settings.dropdownBorder": "#413036",
+ "settings.checkboxBackground": "#413036",
+ "settings.checkboxForeground": "#0ac",
+ "settings.checkboxBorder": "#413036",
+ "settings.textInputBackground": "#413036",
+ "settings.textInputForeground": "#0ac",
+ "settings.textInputBorder": "#413036",
+ "settings.numberInputBackground": "#272022",
+ "settings.numberInputForeground": "#7060eb",
+ "settings.numberInputBorder": "#272022",
+ "breadcrumb.foreground": "#bbaab0",
+ "breadcrumb.background": "#322a2d",
+ "breadcrumb.focusForeground": "#f18eb0",
+ "breadcrumb.activeSelectionForeground": "#edebff",
+ "breadcrumbPicker.background": "#413036",
+ "titleBar.activeBackground": "#322a2d",
+ "titleBar.activeForeground": "#cbbec2",
+ "titleBar.inactiveBackground": "#322a2d",
+ "titleBar.inactiveForeground": "#bbaab0",
+ "menu.background": "#413036",
+ "menu.foreground": "#bbaab0",
+ "menu.selectionBackground": "#824a5e66",
+ "menu.selectionForeground": "#f18eb0",
+ "menu.selectionBorder": "#824a5e66",
+ "menu.separatorBackground": "#f18eb0",
+ "menubar.selectionBackground": "#824a5e66",
+ "menubar.selectionForeground": "#f18eb0",
+ "menubar.selectionBorder": "#824a5e66",
+ "editor.snippetTabstopHighlightBackground": "#272022",
+ "editor.snippetTabstopHighlightBorder": "#2c2528",
+ "editor.snippetFinalTabstopHighlightBackground": "#272022",
+ "editor.snippetFinalTabstopHighlightBorder": "#2c2528",
+ "minimap.findMatchHighlight": "#f18eb0ee",
+ "minimap.errorHighlight": "#e34e1cee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#16b673",
+ "minimapGutter.modifiedBackground": "#49e9a6",
+ "minimapGutter.deletedBackground": "#e34e1c",
+ "minimap.background": "#322a2d99"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#8b747c"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#cbbec2"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#df769b"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#e4b781"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#d67e5c"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#d5971a"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e66533"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#49e9a6"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#16b673"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7060eb"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#16a3b6"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#49d6e9"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#49ace9"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": [
+ "invalid",
+ "invalid.illegal"
+ ],
+ "settings": {
+ "foreground": "#e3541c"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": [
+ "markup.strikethrough"
+ ],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/noctis/family.json b/assets/themes/src/vscode/noctis/family.json
new file mode 100644
index 0000000000..26aba7e213
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/family.json
@@ -0,0 +1,61 @@
+{
+ "name": "Notctis",
+ "author": "Liviu Schera (liviuschera)",
+ "themes": [
+ {
+ "name": "Noctis Azureus",
+ "file_name": "azureus.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctis Bordo",
+ "file_name": "bordo.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctus Hibernus",
+ "file_name": "hibernus.json",
+ "appearance": "light"
+ },
+ {
+ "name": "Noctis Lilac",
+ "file_name": "lilac.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctis Lux",
+ "file_name": "lux.json",
+ "appearance": "light"
+ },
+ {
+ "name": "Noctis Minimus",
+ "file_name": "minimus.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctis",
+ "file_name": "noctis.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctis Obscuro",
+ "file_name": "obscuro.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctis Sereno",
+ "file_name": "obscuro.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctis Uva",
+ "file_name": "uva.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Noctis Viola",
+ "file_name": "viola.json",
+ "appearance": "dark"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/noctis/hibernus.json b/assets/themes/src/vscode/noctis/hibernus.json
new file mode 100644
index 0000000000..a20a19289e
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/hibernus.json
@@ -0,0 +1,1108 @@
+{
+ "name": "Noctis Hibernus",
+ "type": "light",
+ "colors": {
+ "selection.background": "#169fb177",
+ "descriptionForeground": "#929ea0",
+ "errorForeground": "#ff4000",
+ "widget.shadow": "#00000055",
+ "editor.background": "#f4f6f6",
+ "editor.foreground": "#005661",
+ "editorLineNumber.foreground": "#a0abac",
+ "editorLineNumber.activeForeground": "#0099ad",
+ "editorCursor.foreground": "#0092a8",
+ "badge.background": "#0099ad",
+ "badge.foreground": "#f4f6f6",
+ "activityBar.background": "#f4f6f6",
+ "activityBar.dropBackground": "#0099ad65",
+ "activityBar.foreground": "#0099ad",
+ "activityBar.border": "#ece2c600",
+ "activityBarBadge.background": "#0099ad",
+ "activityBarBadge.foreground": "#f4f6f6",
+ "activityBar.activeBackground": "#0099ad33",
+ "activityBar.activeBorder": "#0099ad",
+ "sideBar.background": "#e7f2f3",
+ "sideBar.foreground": "#71838e",
+ "sideBar.border": "#ece2c600",
+ "sideBar.dropBackground": "#e7f2f3",
+ "sideBarTitle.foreground": "#71838e",
+ "sideBarSectionHeader.background": "#c1def0",
+ "sideBarSectionHeader.foreground": "#71838e",
+ "statusBar.background": "#caedf2",
+ "statusBar.foreground": "#0099ad",
+ "statusBar.border": "#ece2c600",
+ "statusBar.debuggingBackground": "#e7f2f3",
+ "statusBar.debuggingForeground": "#e9498150",
+ "statusBar.debuggingBorder": "#e94981af",
+ "statusBar.noFolderForeground": "#87a7ab",
+ "statusBar.noFolderBackground": "#e7f2f3",
+ "statusBar.noFolderBorder": "#e7f2f3",
+ "statusBarItem.activeBackground": "#dfeff1",
+ "statusBarItem.hoverBackground": "#d1e8eb",
+ "statusBarItem.prominentBackground": "#c1d4d7",
+ "statusBarItem.prominentHoverBackground": "#bfdee3",
+ "button.background": "#099099",
+ "button.foreground": "#f1f1f1",
+ "button.hoverBackground": "#0cc",
+ "dropdown.background": "#f4f6f6",
+ "dropdown.border": "#f4f6f6",
+ "dropdown.foreground": "#005661",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#ff4000",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#f4f6f6",
+ "editorError.foreground": "#ff4000",
+ "editorWarning.border": "#f4f6f6",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#f4f6f6",
+ "editorInfo.foreground": "#00c6e0",
+ "editorHint.border": "#58cc6d00",
+ "editorHint.foreground": "#58cc6d",
+ "editorGroup.emptyBackground": "#93b4b833",
+ "editorGroup.border": "#d0edf1",
+ "editorGroup.dropBackground": "#93b4b833",
+ "editorGroupHeader.noTabsBackground": "#caedf2",
+ "editorGroupHeader.tabsBackground": "#caedf2",
+ "editorGroupHeader.tabsBorder": "#caedf200",
+ "tab.activeBackground": "#f4f6f6",
+ "tab.unfocusedActiveBackground": "#e3f5f7",
+ "tab.activeForeground": "#0099ad",
+ "tab.border": "#b2d2e6",
+ "tab.inactiveBackground": "#caedf2",
+ "tab.inactiveForeground": "#71838e",
+ "tab.unfocusedActiveForeground": "#71838e",
+ "tab.unfocusedInactiveForeground": "#71838e",
+ "tab.activeBorderTop": "#00c6e0",
+ "tab.activeModifiedBorder": "#00b368",
+ "tab.activeBorder": "#f4f6f6",
+ "tab.unfocusedActiveBorder": "#f4f6f600",
+ "tab.unfocusedHoverBackground": "#0099ad21",
+ "textBlockQuote.background": "#e7f2f3",
+ "textBlockQuote.border": "#00899e",
+ "textCodeBlock.background": "#e7f2f3",
+ "textLink.activeForeground": "#00c6e0",
+ "textLink.foreground": "#00c6e0",
+ "textPreformat.foreground": "#e9a149",
+ "textSeparator.foreground": "#e7f2f3",
+ "walkThrough.embeddedEditorBackground": "#e7f2f3",
+ "welcomePage.buttonBackground": "#e7f2f3",
+ "welcomePage.buttonHoverBackground": "#caedf2",
+ "input.background": "#f4f6f6",
+ "input.border": "#e0eff1",
+ "input.foreground": "#6a7a7c",
+ "input.placeholderForeground": "#9fabad",
+ "inputOption.activeBorder": "#0099ad",
+ "inputValidation.errorBackground": "#ff400041",
+ "inputValidation.errorBorder": "#ff4000",
+ "inputValidation.infoBackground": "#00c6e0cc",
+ "inputValidation.infoBorder": "#00c6e0",
+ "inputValidation.warningBackground": "#ffa587cc",
+ "inputValidation.warningBorder": "#ffa487",
+ "editorWidget.background": "#e0eff1",
+ "editorWidget.border": "#ece2c600",
+ "editorHoverWidget.background": "#e0eff1",
+ "editorHoverWidget.border": "#ece2c600",
+ "editorSuggestWidget.background": "#e0eff1",
+ "editorSuggestWidget.border": "#ece2c600",
+ "editorSuggestWidget.foreground": "#6a7a7c",
+ "editorSuggestWidget.highlightForeground": "#0099ad",
+ "editorSuggestWidget.selectedBackground": "#bbe0f7",
+ "editorGutter.background": "#f4f6f6",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#ff4000",
+ "editorGutter.modifiedBackground": "#e9a149",
+ "editor.selectionBackground": "#ade2eb77",
+ "editor.selectionHighlightBackground": "#14a5ff33",
+ "editor.selectionHighlightBorder": "#14a5ff00",
+ "editor.inactiveSelectionBackground": "#ade2eb55",
+ "editor.wordHighlightStrongBackground": "#b5890027",
+ "editor.wordHighlightStrongBorder": "#b5890000",
+ "editor.wordHighlightBackground": "#e9a14922",
+ "editor.wordHighlightBorder": "#e9a14900",
+ "editor.findMatchBackground": "#8ce99a60",
+ "editor.findMatchBorder": "#8ce99a00",
+ "editor.findMatchHighlightBackground": "#148f9f33",
+ "editor.findMatchHighlightBorder": "#148f9f00",
+ "editor.findRangeHighlightBackground": "#99e62a55",
+ "editor.findRangeHighlightBorder": "#58CC6D00",
+ "editor.hoverHighlightBackground": "#0099ad3f",
+ "editor.lineHighlightBackground": "#d1ebefcc",
+ "editor.lineHighlightBorder": "#d1ebef00",
+ "editor.rangeHighlightBackground": "#f1e9d5a1",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#c1d4d7bb",
+ "editorIndentGuide.background": "#c1d4d7aa",
+ "editorIndentGuide.activeBackground": "#88bcc3",
+ "editorBracketMatch.background": "#0099ad20",
+ "editorBracketMatch.border": "#0099ad",
+ "editorRuler.foreground": "#d0edf1",
+ "editorCodeLens.foreground": "#77aaca",
+ "terminal.ansiBlack": "#003b42",
+ "terminal.ansiRed": "#e34e1c",
+ "terminal.ansiGreen": "#00b368",
+ "terminal.ansiYellow": "#f49725",
+ "terminal.ansiBlue": "#0094f0",
+ "terminal.ansiMagenta": "#ff5792",
+ "terminal.ansiCyan": "#00bdd6",
+ "terminal.ansiWhite": "#8ca6a6",
+ "terminal.ansiBrightBlack": "#004d57",
+ "terminal.ansiBrightRed": "#ff4000",
+ "terminal.ansiBrightGreen": "#00d17a",
+ "terminal.ansiBrightYellow": "#ff8c00",
+ "terminal.ansiBrightBlue": "#0fa3ff",
+ "terminal.ansiBrightMagenta": "#ff6b9f",
+ "terminal.ansiBrightCyan": "#00cbe6",
+ "terminal.ansiBrightWhite": "#bbc3c4",
+ "terminal.background": "#e1eeef",
+ "terminal.foreground": "#005661",
+ "terminalCursor.background": "#e1eeef",
+ "terminalCursor.foreground": "#005661",
+ "merge.border": "#f4f6f600",
+ "merge.currentContentBackground": "#33e7ff33",
+ "merge.currentHeaderBackground": "#33e7ff55",
+ "merge.incomingContentBackground": "#9d92f233",
+ "merge.incomingHeaderBackground": "#9d92f255",
+ "merge.commonContentBackground": "#ffc18033",
+ "merge.commonHeaderBackground": "#ffc18055",
+ "editorOverviewRuler.currentContentForeground": "#33e7ff55",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f255",
+ "editorOverviewRuler.commonContentForeground": "#ffc18055",
+ "editorOverviewRuler.border": "#f4f6f6",
+ "notificationCenter.border": "#e0eff1",
+ "notificationCenterHeader.foreground": "#005661",
+ "notificationCenterHeader.background": "#e0eff1",
+ "notificationToast.border": "#e0eff1",
+ "notifications.foreground": "#005661",
+ "notifications.background": "#e0eff1",
+ "notifications.border": "#e0eff1",
+ "notificationLink.foreground": "#005661",
+ "diffEditor.insertedTextBackground": "#14b83230",
+ "diffEditor.removedTextBackground": "#BB1F0522",
+ "debugToolBar.background": "#e7f2f3",
+ "debugExceptionWidget.background": "#e7f2f3",
+ "debugExceptionWidget.border": "#00899e",
+ "extensionButton.prominentBackground": "#099099",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#0cc",
+ "focusBorder": "#e0eff1",
+ "foreground": "#005661",
+ "panel.background": "#e1eeef",
+ "panel.border": "#00c6e0",
+ "panelTitle.activeBorder": "#00c6e0",
+ "panelTitle.activeForeground": "#0099ad",
+ "panelTitle.inactiveForeground": "#71838e",
+ "peekView.border": "#0099ad",
+ "peekViewEditor.background": "#e5fcff",
+ "peekViewEditor.matchHighlightBackground": "#148f9f33",
+ "peekViewEditor.matchHighlightBorder": "#148f9f79",
+ "peekViewEditorGutter.background": "#e5fcff",
+ "peekViewResult.background": "#e7f2f3",
+ "peekViewResult.fileForeground": "#e9a149",
+ "peekViewResult.lineForeground": "#87a7ab",
+ "peekViewResult.matchHighlightBackground": "#e0eff1",
+ "peekViewResult.selectionBackground": "#e0eff1",
+ "peekViewResult.selectionForeground": "#6a7a7c",
+ "peekViewTitle.background": "#e7f2f3",
+ "peekViewTitleDescription.foreground": "#87a7ab",
+ "peekViewTitleLabel.foreground": "#e9a149",
+ "progressBar.background": "#00c6e0",
+ "scrollbar.shadow": "#00000055",
+ "scrollbarSlider.activeBackground": "#0099adad",
+ "scrollbarSlider.background": "#6a90955b",
+ "scrollbarSlider.hoverBackground": "#0099ad62",
+ "gitDecoration.addedResourceForeground": "#009456",
+ "gitDecoration.modifiedResourceForeground": "#14b832",
+ "gitDecoration.deletedResourceForeground": "#ff4000",
+ "gitDecoration.untrackedResourceForeground": "#00c6e0",
+ "gitDecoration.ignoredResourceForeground": "#a8a28faa",
+ "gitDecoration.conflictingResourceForeground": "#e9a149",
+ "pickerGroup.border": "#00c6e0",
+ "pickerGroup.foreground": "#0099ad",
+ "list.activeSelectionBackground": "#b6e1e7",
+ "list.activeSelectionForeground": "#005661",
+ "list.dropBackground": "#b2cacd",
+ "list.focusBackground": "#bed9ea",
+ "list.focusForeground": "#005661",
+ "list.highlightForeground": "#0099ad",
+ "list.hoverBackground": "#d1eafa",
+ "list.hoverForeground": "#005661",
+ "list.inactiveFocusBackground": "#c9eaed",
+ "list.inactiveSelectionBackground": "#c6e7ec",
+ "list.inactiveSelectionForeground": "#949384",
+ "list.errorForeground": "#c9481d",
+ "list.warningForeground": "#e07a52",
+ "listFilterWidget.background": "#d5eef1",
+ "listFilterWidget.outline": "#14b832",
+ "listFilterWidget.noMatchesOutline": "#ff4000",
+ "tree.indentGuidesStroke": "#d3cec5",
+ "settings.headerForeground": "#004d57",
+ "settings.modifiedItemIndicator": "#00bd23",
+ "settings.dropdownListBorder": "#ade2eb88",
+ "settings.dropdownBackground": "#e0eff1",
+ "settings.dropdownForeground": "#0bb",
+ "settings.dropdownBorder": "#e0eff1",
+ "settings.checkboxBackground": "#e0eff1",
+ "settings.checkboxForeground": "#0bb",
+ "settings.checkboxBorder": "#e0eff1",
+ "settings.textInputBackground": "#e0eff1",
+ "settings.textInputForeground": "#0bb",
+ "settings.textInputBorder": "#e0eff1",
+ "settings.numberInputBackground": "#d0edf1",
+ "settings.numberInputForeground": "#5842ff",
+ "settings.numberInputBorder": "#d0edf1",
+ "breadcrumb.foreground": "#71838e",
+ "breadcrumb.background": "#f4f6f6",
+ "breadcrumb.focusForeground": "#0099ad",
+ "breadcrumb.activeSelectionForeground": "#005661",
+ "breadcrumbPicker.background": "#e0eff1",
+ "titleBar.activeBackground": "#e7f2f3",
+ "titleBar.activeForeground": "#005661",
+ "titleBar.inactiveBackground": "#e7f2f3",
+ "titleBar.inactiveForeground": "#71838e",
+ "menu.background": "#e0eff1",
+ "menu.foreground": "#71838e",
+ "menu.selectionBackground": "#d1eafa",
+ "menu.selectionForeground": "#0099ad",
+ "menu.selectionBorder": "#d1eafa",
+ "menubar.selectionBackground": "#d1eafa",
+ "menubar.selectionForeground": "#0099ad",
+ "menubar.selectionBorder": "#d1eafa",
+ "editor.snippetTabstopHighlightBackground": "#abe4ed77",
+ "editor.snippetTabstopHighlightBorder": "#d6f1f5",
+ "editor.snippetFinalTabstopHighlightBackground": "#abe4ed77",
+ "editor.snippetFinalTabstopHighlightBorder": "#d6f1f5",
+ "minimap.findMatchHighlight": "#0099adaa",
+ "minimap.errorHighlight": "#ff4000ee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#009456",
+ "minimapGutter.modifiedBackground": "#14b832",
+ "minimapGutter.deletedBackground": "#ff4000",
+ "minimap.background": "#f4f6f699"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#8ca6a6"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#004d57"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#ff5792"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#fa8900"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#b3694d"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#a88c00"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e64100"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#00b368"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#009456"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#5842ff"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#0095a8"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#00bdd6"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#0094f0"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#ff530f"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": ["markup.strikethrough"],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/noctis/lilac.json b/assets/themes/src/vscode/noctis/lilac.json
new file mode 100644
index 0000000000..26e0fe4223
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/lilac.json
@@ -0,0 +1,1113 @@
+{
+ "name": "Noctis Lilac",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#b4adebbb",
+ "descriptionForeground": "#908ea4",
+ "errorForeground": "#ff4000",
+ "widget.shadow": "#00000055",
+ "editor.background": "#f2f1f8",
+ "editor.foreground": "#0c006b",
+ "editorLineNumber.foreground": "#9d9ab1",
+ "editorLineNumber.activeForeground": "#7060eb",
+ "editorCursor.foreground": "#5c49e9",
+ "badge.background": "#7060eb",
+ "badge.foreground": "#f2f1f8",
+ "activityBar.background": "#f2f1f8",
+ "activityBar.dropBackground": "#7060eb65",
+ "activityBar.foreground": "#7060eb",
+ "activityBar.border": "#ece2c600",
+ "activityBarBadge.background": "#7060eb",
+ "activityBarBadge.foreground": "#f2f1f8",
+ "activityBar.activeBackground": "#7060eb33",
+ "activityBar.activeBorder": "#7060eb",
+ "sideBar.background": "#edecf8",
+ "sideBar.foreground": "#75718e",
+ "sideBar.border": "#ece2c600",
+ "sideBar.dropBackground": "#edecf8",
+ "sideBarTitle.foreground": "#75718e",
+ "sideBarSectionHeader.background": "#dedbf5",
+ "sideBarSectionHeader.foreground": "#75718e",
+ "statusBar.background": "#e2dff6",
+ "statusBar.foreground": "#7060eb",
+ "statusBar.border": "#ece2c600",
+ "statusBar.debuggingBackground": "#edecf8",
+ "statusBar.debuggingForeground": "#e9498150",
+ "statusBar.debuggingBorder": "#e94981af",
+ "statusBar.noFolderForeground": "#8b87ab",
+ "statusBar.noFolderBackground": "#edecf8",
+ "statusBar.noFolderBorder": "#edecf8",
+ "statusBarItem.activeBackground": "#c1bbec",
+ "statusBarItem.hoverBackground": "#c9c2f9",
+ "statusBarItem.prominentBackground": "#a9a4e544",
+ "statusBarItem.prominentHoverBackground": "#a9a4e599",
+ "button.background": "#8e80ff",
+ "button.foreground": "#f1f1f1",
+ "button.hoverBackground": "#a599ff",
+ "dropdown.background": "#f2f1f8",
+ "dropdown.border": "#f2f1f8",
+ "dropdown.foreground": "#0c006b",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#ff4000",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#f2f1f8",
+ "editorError.foreground": "#ff4000",
+ "editorWarning.border": "#f2f1f8",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#f2f1f8",
+ "editorInfo.foreground": "#00c6e0",
+ "editorHint.border": "#58cc6d00",
+ "editorHint.foreground": "#58cc6d",
+ "editorGroup.emptyBackground": "#958fbc33",
+ "editorGroup.border": "#d4d0f1",
+ "editorGroup.dropBackground": "#958fbc33",
+ "editorGroupHeader.noTabsBackground": "#e2dff6",
+ "editorGroupHeader.tabsBackground": "#e2dff6",
+ "editorGroupHeader.tabsBorder": "#e2dff600",
+ "tab.activeBackground": "#f2f1f8",
+ "tab.unfocusedActiveBackground": "#e9e7f3",
+ "tab.activeForeground": "#7060eb",
+ "tab.border": "#b5adeb",
+ "tab.inactiveBackground": "#e2dff6",
+ "tab.inactiveForeground": "#75718e",
+ "tab.unfocusedActiveForeground": "#75718e",
+ "tab.unfocusedInactiveForeground": "#75718e",
+ "tab.activeBorderTop": "#00c6e0",
+ "tab.activeModifiedBorder": "#00b368",
+ "tab.activeBorder": "#f2f1f8",
+ "tab.unfocusedActiveBorder": "#f2f1f800",
+ "tab.unfocusedHoverBackground": "#7060eb21",
+ "textBlockQuote.background": "#edecf8",
+ "textBlockQuote.border": "#00899e",
+ "textCodeBlock.background": "#edecf8",
+ "textLink.activeForeground": "#00c6e0",
+ "textLink.foreground": "#00c6e0",
+ "textPreformat.foreground": "#e9a149",
+ "textSeparator.foreground": "#edecf8",
+ "walkThrough.embeddedEditorBackground": "#edecf8",
+ "welcomePage.buttonBackground": "#edecf8",
+ "welcomePage.buttonHoverBackground": "#e2dff6",
+ "input.background": "#f2f1f8",
+ "input.border": "#dedbf5",
+ "input.foreground": "#666284",
+ "input.placeholderForeground": "#9391a6",
+ "inputOption.activeBorder": "#7060eb",
+ "inputValidation.errorBackground": "#ff400041",
+ "inputValidation.errorBorder": "#ff4000",
+ "inputValidation.infoBackground": "#00c6ea599ff",
+ "inputValidation.infoBorder": "#00c6e0",
+ "inputValidation.warningBackground": "#ffa587cc",
+ "inputValidation.warningBorder": "#ffa487",
+ "editorWidget.background": "#dedbf5",
+ "editorWidget.border": "#ece2c600",
+ "editorHoverWidget.background": "#dedbf5",
+ "editorHoverWidget.border": "#ece2c600",
+ "editorSuggestWidget.background": "#dedbf5",
+ "editorSuggestWidget.border": "#ece2c600",
+ "editorSuggestWidget.foreground": "#666284",
+ "editorSuggestWidget.highlightForeground": "#7060eb",
+ "editorSuggestWidget.selectedBackground": "#cac4f3",
+ "editorGutter.background": "#f2f1f8",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#ff4000",
+ "editorGutter.modifiedBackground": "#e9a149",
+ "editor.selectionBackground": "#b4adeb77",
+ "editor.selectionHighlightBackground": "#14a5ff33",
+ "editor.selectionHighlightBorder": "#14a5ff00",
+ "editor.inactiveSelectionBackground": "#b4adeb55",
+ "editor.wordHighlightStrongBackground": "#b5890027",
+ "editor.wordHighlightStrongBorder": "#b5890000",
+ "editor.wordHighlightBackground": "#e9a14922",
+ "editor.wordHighlightBorder": "#e9a14900",
+ "editor.findMatchBackground": "#8ce99a60",
+ "editor.findMatchBorder": "#8ce99a00",
+ "editor.findMatchHighlightBackground": "#148f9f33",
+ "editor.findMatchHighlightBorder": "#148f9f00",
+ "editor.findRangeHighlightBackground": "#99e62a55",
+ "editor.findRangeHighlightBorder": "#58CC6D00",
+ "editor.hoverHighlightBackground": "#7060eb3f",
+ "editor.lineHighlightBackground": "#d5d2ef99",
+ "editor.lineHighlightBorder": "#d5d2ef00",
+ "editor.rangeHighlightBackground": "#f1e9d5a1",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#c3c1d7bb",
+ "editorIndentGuide.background": "#c3c1d7aa",
+ "editorIndentGuide.activeBackground": "#9f99cc",
+ "editorBracketMatch.background": "#7060eb20",
+ "editorBracketMatch.border": "#7060eb",
+ "editorRuler.foreground": "#d4d0f1",
+ "editorCodeLens.foreground": "#77aaca",
+ "terminal.ansiBlack": "#0c006b",
+ "terminal.ansiRed": "#e34e1c",
+ "terminal.ansiGreen": "#00b368",
+ "terminal.ansiYellow": "#f49725",
+ "terminal.ansiBlue": "#0094f0",
+ "terminal.ansiMagenta": "#ff5792",
+ "terminal.ansiCyan": "#00bdd6",
+ "terminal.ansiWhite": "#8ca6a6",
+ "terminal.ansiBrightBlack": "#0f0080",
+ "terminal.ansiBrightRed": "#ff4000",
+ "terminal.ansiBrightGreen": "#00d17a",
+ "terminal.ansiBrightYellow": "#ff8c00",
+ "terminal.ansiBrightBlue": "#0fa3ff",
+ "terminal.ansiBrightMagenta": "#ff6b9f",
+ "terminal.ansiBrightCyan": "#00cbe6",
+ "terminal.ansiBrightWhite": "#bbc3c4",
+ "terminal.background": "#e9e7f3",
+ "terminal.foreground": "#0c006b",
+ "terminalCursor.background": "#e9e7f3",
+ "terminalCursor.foreground": "#0c006b",
+ "merge.border": "#f2f1f800",
+ "merge.currentContentBackground": "#33e7ff33",
+ "merge.currentHeaderBackground": "#33e7ff55",
+ "merge.incomingContentBackground": "#9d92f233",
+ "merge.incomingHeaderBackground": "#9d92f255",
+ "merge.commonContentBackground": "#ffc18033",
+ "merge.commonHeaderBackground": "#ffc18055",
+ "editorOverviewRuler.currentContentForeground": "#33e7ff55",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f255",
+ "editorOverviewRuler.commonContentForeground": "#ffc18055",
+ "editorOverviewRuler.border": "#f2f1f8",
+ "notificationCenter.border": "#dedbf5",
+ "notificationCenterHeader.foreground": "#0c006b",
+ "notificationCenterHeader.background": "#dedbf5",
+ "notificationToast.border": "#dedbf5",
+ "notifications.foreground": "#0c006b",
+ "notifications.background": "#dedbf5",
+ "notifications.border": "#dedbf5",
+ "notificationLink.foreground": "#0c006b",
+ "diffEditor.insertedTextBackground": "#14b83230",
+ "diffEditor.removedTextBackground": "#BB1F0522",
+ "debugToolBar.background": "#edecf8",
+ "debugExceptionWidget.background": "#edecf8",
+ "debugExceptionWidget.border": "#00899e",
+ "extensionButton.prominentBackground": "#8e80ff",
+ "extensionButton.prominentForeground": "#e4e2f9",
+ "extensionButton.prominentHoverBackground": "#a599ff",
+ "focusBorder": "#dedbf5",
+ "foreground": "#0c006b",
+ "panel.background": "#e9e7f3",
+ "panel.border": "#aea4f4",
+ "panelTitle.activeBorder": "#aea4f4",
+ "panelTitle.activeForeground": "#7060eb",
+ "panelTitle.inactiveForeground": "#75718e",
+ "peekView.border": "#7060eb",
+ "peekViewEditor.background": "#eae7fd",
+ "peekViewEditor.matchHighlightBackground": "#148f9f33",
+ "peekViewEditor.matchHighlightBorder": "#148f9f79",
+ "peekViewEditorGutter.background": "#eae7fd",
+ "peekViewResult.background": "#edecf8",
+ "peekViewResult.fileForeground": "#e9a149",
+ "peekViewResult.lineForeground": "#8b87ab",
+ "peekViewResult.matchHighlightBackground": "#dedbf5",
+ "peekViewResult.selectionBackground": "#dedbf5",
+ "peekViewResult.selectionForeground": "#666284",
+ "peekViewTitle.background": "#edecf8",
+ "peekViewTitleDescription.foreground": "#8b87ab",
+ "peekViewTitleLabel.foreground": "#e9a149",
+ "progressBar.background": "#00c6e0",
+ "scrollbar.shadow": "#00000055",
+ "scrollbarSlider.activeBackground": "#7060ebad",
+ "scrollbarSlider.background": "#6a90955b",
+ "scrollbarSlider.hoverBackground": "#7060eb62",
+ "gitDecoration.addedResourceForeground": "#009456",
+ "gitDecoration.modifiedResourceForeground": "#14b832",
+ "gitDecoration.deletedResourceForeground": "#ff4000",
+ "gitDecoration.untrackedResourceForeground": "#00c6e0",
+ "gitDecoration.ignoredResourceForeground": "#a8a28faa",
+ "gitDecoration.conflictingResourceForeground": "#e9a149",
+ "pickerGroup.border": "#aea4f4",
+ "pickerGroup.foreground": "#7060eb",
+ "list.activeSelectionBackground": "#bcb6e7",
+ "list.activeSelectionForeground": "#0c006b",
+ "list.dropBackground": "#afaad4aa",
+ "list.focusBackground": "#c3beea",
+ "list.focusForeground": "#0c006b",
+ "list.highlightForeground": "#7060eb",
+ "list.hoverBackground": "#d2ccff",
+ "list.hoverForeground": "#0c006b",
+ "list.inactiveFocusBackground": "#cec9ed",
+ "list.inactiveSelectionBackground": "#d7d3f3",
+ "list.inactiveSelectionForeground": "#838099",
+ "list.errorForeground": "#c9481d",
+ "list.warningForeground": "#e07a52",
+ "listFilterWidget.background": "#d7d3f3",
+ "listFilterWidget.outline": "#14b832",
+ "listFilterWidget.noMatchesOutline": "#ff4000",
+ "tree.indentGuidesStroke": "#c3c1d7",
+ "settings.headerForeground": "#0c006b",
+ "settings.modifiedItemIndicator": "#00bd23",
+ "settings.dropdownListBorder": "#b4adeb88",
+ "settings.dropdownBackground": "#dedbf5",
+ "settings.dropdownForeground": "#0bb",
+ "settings.dropdownBorder": "#dedbf5",
+ "settings.checkboxBackground": "#dedbf5",
+ "settings.checkboxForeground": "#0bb",
+ "settings.checkboxBorder": "#dedbf5",
+ "settings.textInputBackground": "#dedbf5",
+ "settings.textInputForeground": "#0bb",
+ "settings.textInputBorder": "#dedbf5",
+ "settings.numberInputBackground": "#d4d0f1",
+ "settings.numberInputForeground": "#5842ff",
+ "settings.numberInputBorder": "#d4d0f1",
+ "breadcrumb.foreground": "#75718e",
+ "breadcrumb.background": "#f2f1f8",
+ "breadcrumb.focusForeground": "#7060eb",
+ "breadcrumb.activeSelectionForeground": "#0c006b",
+ "breadcrumbPicker.background": "#dedbf5",
+ "titleBar.activeBackground": "#edecf8",
+ "titleBar.activeForeground": "#0c006b",
+ "titleBar.inactiveBackground": "#edecf8",
+ "titleBar.inactiveForeground": "#75718e",
+ "menu.background": "#dedbf5",
+ "menu.foreground": "#75718e",
+ "menu.selectionBackground": "#d6d1fa",
+ "menu.selectionForeground": "#7060eb",
+ "menu.selectionBorder": "#d6d1fa",
+ "menubar.selectionBackground": "#d6d1fa",
+ "menubar.selectionForeground": "#7060eb",
+ "menubar.selectionBorder": "#d6d1fa",
+ "editor.snippetTabstopHighlightBackground": "#b3abed77",
+ "editor.snippetTabstopHighlightBorder": "#dad6f5",
+ "editor.snippetFinalTabstopHighlightBackground": "#b3abed77",
+ "editor.snippetFinalTabstopHighlightBorder": "#dad6f5",
+ "minimap.findMatchHighlight": "#7060ebaa",
+ "minimap.errorHighlight": "#ff4000ee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#009456",
+ "minimapGutter.modifiedBackground": "#14b832",
+ "minimapGutter.deletedBackground": "#ff4000",
+ "minimap.background": "#f2f1f899"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#9995b7"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#0c006b"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#ff5792"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#fa8900"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#b3694d"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#a88c00"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e64100"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#00b368"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#009456"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#5842ff"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#0095a8"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#00bdd6"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#0094f0"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": [
+ "invalid",
+ "invalid.illegal"
+ ],
+ "settings": {
+ "foreground": "#ff530f"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": [
+ "markup.strikethrough"
+ ],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/noctis/lux.json b/assets/themes/src/vscode/noctis/lux.json
new file mode 100644
index 0000000000..1f72b0e59c
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/lux.json
@@ -0,0 +1,1108 @@
+{
+ "name": "Noctis Lux",
+ "type": "light",
+ "colors": {
+ "selection.background": "#169fb155",
+ "descriptionForeground": "#929ea0",
+ "errorForeground": "#ff4000",
+ "widget.shadow": "#00000055",
+ "editor.background": "#fef8ec",
+ "editor.foreground": "#005661",
+ "editorLineNumber.foreground": "#a0abac",
+ "editorLineNumber.activeForeground": "#0099ad",
+ "editorCursor.foreground": "#0092a8",
+ "badge.background": "#0099ad",
+ "badge.foreground": "#fef8ec",
+ "activityBar.background": "#fef8ec",
+ "activityBar.dropBackground": "#0099ad65",
+ "activityBar.foreground": "#0099ad",
+ "activityBar.border": "#ece2c600",
+ "activityBarBadge.background": "#0099ad",
+ "activityBarBadge.foreground": "#fef8ec",
+ "activityBar.activeBackground": "#0099ad33",
+ "activityBar.activeBorder": "#0099ad",
+ "sideBar.background": "#f9f1e1",
+ "sideBar.foreground": "#888477",
+ "sideBar.border": "#ece2c600",
+ "sideBar.dropBackground": "#f9f1e1",
+ "sideBarTitle.foreground": "#888477",
+ "sideBarSectionHeader.background": "#f2e7ca",
+ "sideBarSectionHeader.foreground": "#888477",
+ "statusBar.background": "#f0e9d6",
+ "statusBar.foreground": "#0099ad",
+ "statusBar.border": "#ece2c600",
+ "statusBar.debuggingBackground": "#f9f1e1",
+ "statusBar.debuggingForeground": "#e9498150",
+ "statusBar.debuggingBorder": "#e94981af",
+ "statusBar.noFolderForeground": "#87a7ab",
+ "statusBar.noFolderBackground": "#f9f1e1",
+ "statusBar.noFolderBorder": "#f9f1e1",
+ "statusBarItem.activeBackground": "#dfeff1",
+ "statusBarItem.hoverBackground": "#d1e8eb",
+ "statusBarItem.prominentBackground": "#c1d4d7",
+ "statusBarItem.prominentHoverBackground": "#bfdee3",
+ "button.background": "#099099",
+ "button.foreground": "#f1f1f1",
+ "button.hoverBackground": "#0cc",
+ "dropdown.background": "#fef8ec",
+ "dropdown.border": "#fef8ec",
+ "dropdown.foreground": "#005661",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#ff4000",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#fef8ec",
+ "editorError.foreground": "#ff4000",
+ "editorWarning.border": "#fef8ec",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#fef8ec",
+ "editorInfo.foreground": "#00c6e0",
+ "editorHint.border": "#58cc6d00",
+ "editorHint.foreground": "#58cc6d",
+ "editorGroup.emptyBackground": "#b8ae9333",
+ "editorGroup.border": "#f0e7d1",
+ "editorGroup.dropBackground": "#b8ae9333",
+ "editorGroupHeader.noTabsBackground": "#f0e9d6",
+ "editorGroupHeader.tabsBackground": "#f0e9d6",
+ "editorGroupHeader.tabsBorder": "#f0e9d600",
+ "tab.activeBackground": "#fef8ec",
+ "tab.unfocusedActiveBackground": "#f7f2e3",
+ "tab.activeForeground": "#0099ad",
+ "tab.border": "#e6d7b2",
+ "tab.inactiveBackground": "#f0e9d6",
+ "tab.inactiveForeground": "#888477",
+ "tab.unfocusedActiveForeground": "#888477",
+ "tab.unfocusedInactiveForeground": "#888477",
+ "tab.activeBorderTop": "#00c6e0",
+ "tab.activeModifiedBorder": "#00b368",
+ "tab.activeBorder": "#fef8ec",
+ "tab.unfocusedActiveBorder": "#fef8ec00",
+ "tab.unfocusedHoverBackground": "#0099ad21",
+ "textBlockQuote.background": "#f9f1e1",
+ "textBlockQuote.border": "#00899e",
+ "textCodeBlock.background": "#f9f1e1",
+ "textLink.activeForeground": "#00c6e0",
+ "textLink.foreground": "#00c6e0",
+ "textPreformat.foreground": "#e9a149",
+ "textSeparator.foreground": "#f9f1e1",
+ "walkThrough.embeddedEditorBackground": "#f9f1e1",
+ "welcomePage.buttonBackground": "#f9f1e1",
+ "welcomePage.buttonHoverBackground": "#e1e0d0",
+ "input.background": "#fef8ec",
+ "input.border": "#f2edde",
+ "input.foreground": "#6a7a7c",
+ "input.placeholderForeground": "#9fabad",
+ "inputOption.activeBorder": "#0099ad",
+ "inputValidation.errorBackground": "#ff400041",
+ "inputValidation.errorBorder": "#ff4000",
+ "inputValidation.infoBackground": "#00c6e0cc",
+ "inputValidation.infoBorder": "#00c6e0",
+ "inputValidation.warningBackground": "#ffa587cc",
+ "inputValidation.warningBorder": "#ffa487",
+ "editorWidget.background": "#f2edde",
+ "editorWidget.border": "#ece2c600",
+ "editorHoverWidget.background": "#f2edde",
+ "editorHoverWidget.border": "#ece2c600",
+ "editorSuggestWidget.background": "#f2edde",
+ "editorSuggestWidget.border": "#ece2c600",
+ "editorSuggestWidget.foreground": "#6a7a7c",
+ "editorSuggestWidget.highlightForeground": "#0099ad",
+ "editorSuggestWidget.selectedBackground": "#dbfaff",
+ "editorGutter.background": "#fef8ec",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#ff4000",
+ "editorGutter.modifiedBackground": "#e9a149",
+ "editor.selectionBackground": "#ade2eb77",
+ "editor.selectionHighlightBackground": "#14a5ff33",
+ "editor.selectionHighlightBorder": "#14a5ff00",
+ "editor.inactiveSelectionBackground": "#ade2eb55",
+ "editor.wordHighlightStrongBackground": "#b5890027",
+ "editor.wordHighlightStrongBorder": "#b5890000",
+ "editor.wordHighlightBackground": "#e9a14922",
+ "editor.wordHighlightBorder": "#e9a14900",
+ "editor.findMatchBackground": "#8ce99a55",
+ "editor.findMatchBorder": "#8ce99a00",
+ "editor.findMatchHighlightBackground": "#148f9f33",
+ "editor.findMatchHighlightBorder": "#148f9f00",
+ "editor.findRangeHighlightBackground": "#99e62a55",
+ "editor.findRangeHighlightBorder": "#58CC6D00",
+ "editor.hoverHighlightBackground": "#0099ad3f",
+ "editor.lineHighlightBackground": "#d1ebefcc",
+ "editor.lineHighlightBorder": "#d1ebef00",
+ "editor.rangeHighlightBackground": "#f1e9d5a1",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#d3cec5bb",
+ "editorIndentGuide.background": "#d3cec5aa",
+ "editorIndentGuide.activeBackground": "#88adc3",
+ "editorBracketMatch.background": "#0099ad20",
+ "editorBracketMatch.border": "#0099ad",
+ "editorRuler.foreground": "#f1e6d0",
+ "editorCodeLens.foreground": "#77aaca",
+ "terminal.ansiBlack": "#003b42",
+ "terminal.ansiRed": "#e34e1c",
+ "terminal.ansiGreen": "#00b368",
+ "terminal.ansiYellow": "#f49725",
+ "terminal.ansiBlue": "#0094f0",
+ "terminal.ansiMagenta": "#ff5792",
+ "terminal.ansiCyan": "#00bdd6",
+ "terminal.ansiWhite": "#8ca6a6",
+ "terminal.ansiBrightBlack": "#004d57",
+ "terminal.ansiBrightRed": "#ff4000",
+ "terminal.ansiBrightGreen": "#00d17a",
+ "terminal.ansiBrightYellow": "#ff8c00",
+ "terminal.ansiBrightBlue": "#0fa3ff",
+ "terminal.ansiBrightMagenta": "#ff6b9f",
+ "terminal.ansiBrightCyan": "#00cbe6",
+ "terminal.ansiBrightWhite": "#bbc3c4",
+ "terminal.background": "#f6edda",
+ "terminal.foreground": "#005661",
+ "terminalCursor.background": "#f6edda",
+ "terminalCursor.foreground": "#005661",
+ "merge.border": "#fef8ec00",
+ "merge.currentContentBackground": "#33e7ff33",
+ "merge.currentHeaderBackground": "#33e7ff55",
+ "merge.incomingContentBackground": "#9d92f233",
+ "merge.incomingHeaderBackground": "#9d92f255",
+ "merge.commonContentBackground": "#ffc18033",
+ "merge.commonHeaderBackground": "#ffc18055",
+ "editorOverviewRuler.currentContentForeground": "#33e7ff55",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f255",
+ "editorOverviewRuler.commonContentForeground": "#ffc18055",
+ "editorOverviewRuler.border": "#fef8ec",
+ "notificationCenter.border": "#f2edde",
+ "notificationCenterHeader.foreground": "#005661",
+ "notificationCenterHeader.background": "#f2edde",
+ "notificationToast.border": "#f2edde",
+ "notifications.foreground": "#005661",
+ "notifications.background": "#f2edde",
+ "notifications.border": "#f2edde",
+ "notificationLink.foreground": "#005661",
+ "diffEditor.insertedTextBackground": "#14b83230",
+ "diffEditor.removedTextBackground": "#BB1F0522",
+ "debugToolBar.background": "#f9f1e1",
+ "debugExceptionWidget.background": "#f9f1e1",
+ "debugExceptionWidget.border": "#00899e",
+ "extensionButton.prominentBackground": "#099099",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#0cc",
+ "focusBorder": "#f2edde",
+ "foreground": "#005661",
+ "panel.background": "#f6edda",
+ "panel.border": "#00c6e0",
+ "panelTitle.activeBorder": "#00c6e0",
+ "panelTitle.activeForeground": "#0099ad",
+ "panelTitle.inactiveForeground": "#888477",
+ "peekView.border": "#0099ad",
+ "peekViewEditor.background": "#fff7e5",
+ "peekViewEditor.matchHighlightBackground": "#148f9f33",
+ "peekViewEditor.matchHighlightBorder": "#148f9f79",
+ "peekViewEditorGutter.background": "#fff7e5",
+ "peekViewResult.background": "#f9f1e1",
+ "peekViewResult.fileForeground": "#e9a149",
+ "peekViewResult.lineForeground": "#87a7ab",
+ "peekViewResult.matchHighlightBackground": "#f2edde",
+ "peekViewResult.selectionBackground": "#f2edde",
+ "peekViewResult.selectionForeground": "#6a7a7c",
+ "peekViewTitle.background": "#f9f1e1",
+ "peekViewTitleDescription.foreground": "#87a7ab",
+ "peekViewTitleLabel.foreground": "#e9a149",
+ "progressBar.background": "#00c6e0",
+ "scrollbar.shadow": "#00000055",
+ "scrollbarSlider.activeBackground": "#0099adad",
+ "scrollbarSlider.background": "#6a90955b",
+ "scrollbarSlider.hoverBackground": "#0099ad62",
+ "gitDecoration.addedResourceForeground": "#009456",
+ "gitDecoration.modifiedResourceForeground": "#14b832",
+ "gitDecoration.deletedResourceForeground": "#ff4000",
+ "gitDecoration.untrackedResourceForeground": "#00c6e0",
+ "gitDecoration.ignoredResourceForeground": "#a8a28faa",
+ "gitDecoration.conflictingResourceForeground": "#e9a149",
+ "pickerGroup.border": "#00c6e0",
+ "pickerGroup.foreground": "#0099ad",
+ "list.activeSelectionBackground": "#b6e1e7",
+ "list.activeSelectionForeground": "#005661",
+ "list.dropBackground": "#cdcbb2",
+ "list.focusBackground": "#bee3ea",
+ "list.focusForeground": "#005661",
+ "list.highlightForeground": "#0099ad",
+ "list.hoverBackground": "#d2f3f9",
+ "list.hoverForeground": "#005661",
+ "list.inactiveFocusBackground": "#c9eaed",
+ "list.inactiveSelectionBackground": "#d5eef1",
+ "list.inactiveSelectionForeground": "#949384",
+ "list.errorForeground": "#c9481d",
+ "list.warningForeground": "#e07a52",
+ "listFilterWidget.background": "#d5eef1",
+ "listFilterWidget.outline": "#14b832",
+ "listFilterWidget.noMatchesOutline": "#ff4000",
+ "tree.indentGuidesStroke": "#d3cec5",
+ "settings.headerForeground": "#004d57",
+ "settings.modifiedItemIndicator": "#00bd23",
+ "settings.dropdownListBorder": "#ade2eb88",
+ "settings.dropdownBackground": "#f2edde",
+ "settings.dropdownForeground": "#0bb",
+ "settings.dropdownBorder": "#f2edde",
+ "settings.checkboxBackground": "#f2edde",
+ "settings.checkboxForeground": "#0bb",
+ "settings.checkboxBorder": "#f2edde",
+ "settings.textInputBackground": "#f2edde",
+ "settings.textInputForeground": "#0bb",
+ "settings.textInputBorder": "#f2edde",
+ "settings.numberInputBackground": "#f0e7d1",
+ "settings.numberInputForeground": "#5842ff",
+ "settings.numberInputBorder": "#f0e7d1",
+ "breadcrumb.foreground": "#888477",
+ "breadcrumb.background": "#fef8ec",
+ "breadcrumb.focusForeground": "#0099ad",
+ "breadcrumb.activeSelectionForeground": "#005661",
+ "breadcrumbPicker.background": "#f2edde",
+ "titleBar.activeBackground": "#f9f1e1",
+ "titleBar.activeForeground": "#005661",
+ "titleBar.inactiveBackground": "#f9f1e1",
+ "titleBar.inactiveForeground": "#888477",
+ "menu.background": "#f2edde",
+ "menu.foreground": "#888477",
+ "menu.selectionBackground": "#d2f3f9",
+ "menu.selectionForeground": "#0099ad",
+ "menu.selectionBorder": "#d2f3f9",
+ "menubar.selectionBackground": "#d2f3f9",
+ "menubar.selectionForeground": "#0099ad",
+ "menubar.selectionBorder": "#d2f3f9",
+ "editor.snippetTabstopHighlightBackground": "#fdefd3",
+ "editor.snippetTabstopHighlightBorder": "#fdf3dd",
+ "editor.snippetFinalTabstopHighlightBackground": "#fdefd3",
+ "editor.snippetFinalTabstopHighlightBorder": "#fdf3dd",
+ "minimap.findMatchHighlight": "#0099adaa",
+ "minimap.errorHighlight": "#ff4000ee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#009456",
+ "minimapGutter.modifiedBackground": "#14b832",
+ "minimapGutter.deletedBackground": "#ff4000",
+ "minimap.background": "#fef8ec99"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#8ca6a6"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#004d57"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#ff5792"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#fa8900"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#b3694d"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#a88c00"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e64100"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#00b368"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#009456"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#5842ff"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#0095a8"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#00bdd6"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#0094f0"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#ff530f"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": ["markup.strikethrough"],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/noctis/minimus.json b/assets/themes/src/vscode/noctis/minimus.json
new file mode 100644
index 0000000000..88493d99d5
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/minimus.json
@@ -0,0 +1,1113 @@
+{
+ "name": "Noctis Minimus",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#5998c077",
+ "descriptionForeground": "#6496b4",
+ "errorForeground": "#b96346",
+ "widget.shadow": "#00000044",
+ "editor.background": "#1b2932",
+ "editor.foreground": "#c5cdd3",
+ "editorLineNumber.foreground": "#5d6e79",
+ "editorLineNumber.activeForeground": "#6496b4",
+ "editorCursor.foreground": "#b3d2e6",
+ "badge.background": "#5998c0",
+ "badge.foreground": "#101213",
+ "activityBar.background": "#1b2932",
+ "activityBar.dropBackground": "#6496b465",
+ "activityBar.border": "#101213",
+ "activityBar.foreground": "#496d83",
+ "activityBar.inactiveForeground": "#496d8377",
+ "activityBarBadge.background": "#5998c0",
+ "activityBarBadge.foreground": "#101213",
+ "activityBar.activeBackground": "#5998c033",
+ "activityBar.activeBorder": "#5998c0",
+ "sideBar.background": "#17232b",
+ "sideBar.dropBackground": "#17232b",
+ "sideBar.border": "#101213",
+ "sideBar.foreground": "#96a8b6",
+ "sideBarSectionHeader.background": "#202e37",
+ "sideBarSectionHeader.foreground": "#96a8b6",
+ "sideBarTitle.foreground": "#96a8b6",
+ "sideBarSectionHeader.border": "#101213",
+ "statusBar.foreground": "#496d83",
+ "statusBar.background": "#1b2932",
+ "statusBar.border": "#101213",
+ "statusBar.debuggingBackground": "#1b2932",
+ "statusBar.debuggingForeground": "#d2799850",
+ "statusBar.debuggingBorder": "#d27998af",
+ "statusBar.noFolderForeground": "#98a6ae",
+ "statusBar.noFolderBackground": "#1b2932",
+ "statusBar.noFolderBorder": "#1b2932",
+ "statusBarItem.activeBackground": "#3d708f66",
+ "statusBarItem.hoverBackground": "#243742",
+ "statusBarItem.prominentBackground": "#152128",
+ "statusBarItem.prominentHoverBackground": "#102837",
+ "button.background": "#2e616b",
+ "button.foreground": "#ebf7ff",
+ "button.hoverBackground": "#3d818f",
+ "dropdown.background": "#202e37",
+ "dropdown.border": "#202e37",
+ "dropdown.foreground": "#6496b4",
+ "editorMarkerNavigation.background": "#43435629",
+ "editorMarkerNavigationError.background": "#b96346",
+ "editorMarkerNavigationWarning.background": "#c09159",
+ "editorError.border": "#1b2932",
+ "editorError.foreground": "#b96346",
+ "editorWarning.border": "#1b2932",
+ "editorWarning.foreground": "#c09159",
+ "editorInfo.border": "#1b2932",
+ "editorInfo.foreground": "#5998c0",
+ "editorHint.border": "#72c09f00",
+ "editorHint.foreground": "#72c09f",
+ "editorGroup.emptyBackground": "#5d6e7933",
+ "editorGroup.border": "#101213",
+ "editorGroup.dropBackground": "#5d6e7933",
+ "editorGroupHeader.noTabsBackground": "#202e37",
+ "editorGroupHeader.tabsBackground": "#24333d",
+ "editorGroupHeader.tabsBorder": "#202e37",
+ "tab.activeBackground": "#1b2932",
+ "tab.unfocusedActiveBackground": "#1e2b33",
+ "tab.activeForeground": "#5998c0",
+ "tab.border": "#101213",
+ "tab.inactiveBackground": "#202e37",
+ "tab.inactiveForeground": "#96a8b6",
+ "tab.unfocusedActiveForeground": "#96a8b6",
+ "tab.unfocusedInactiveForeground": "#96a8b6",
+ "tab.activeBorderTop": "#5998c0",
+ "tab.activeModifiedBorder": "#72c09f",
+ "tab.activeBorder": "#1b2932",
+ "tab.unfocusedActiveBorder": "#1b2932",
+ "tab.unfocusedHoverBackground": "#5998c021",
+ "textBlockQuote.background": "#1b2932",
+ "textBlockQuote.border": "#496d83",
+ "textCodeBlock.background": "#1b2932",
+ "textLink.activeForeground": "#5998c0",
+ "textLink.foreground": "#5998c0",
+ "textPreformat.foreground": "#dfc09f",
+ "textSeparator.foreground": "#1b2932",
+ "walkThrough.embeddedEditorBackground": "#1b2932",
+ "welcomePage.buttonBackground": "#0e1920",
+ "welcomePage.buttonHoverBackground": "#202e37",
+ "input.background": "#0e1920",
+ "input.border": "#1a2f3d",
+ "input.foreground": "#CDD3DE",
+ "input.placeholderForeground": "#98a6ae",
+ "inputOption.activeBorder": "#496d83",
+ "inputValidation.errorForeground": "#b96346",
+ "inputValidation.errorBackground": "#3b2016ee",
+ "inputValidation.errorBorder": "#4e291d",
+ "inputValidation.infoForeground": "#6fb0b8",
+ "inputValidation.infoBackground": "#2d575cee",
+ "inputValidation.infoBorder": "#3b7178",
+ "inputValidation.warningForeground": "#c09159",
+ "inputValidation.warningBackground": "#736759cc",
+ "inputValidation.warningBorder": "#94826b",
+ "editorWidget.background": "#202e37",
+ "editorWidget.border": "#101213",
+ "editorHoverWidget.background": "#14242e",
+ "editorHoverWidget.border": "#101213",
+ "editorSuggestWidget.background": "#14242e",
+ "editorSuggestWidget.border": "#101213",
+ "editorSuggestWidget.foreground": "#96a8b6",
+ "editorSuggestWidget.highlightForeground": "#5998c0",
+ "editorSuggestWidget.selectedBackground": "#2c414e",
+ "editorGutter.background": "#1b2932",
+ "editorGutter.addedBackground": "#a0d4a8",
+ "editorGutter.deletedBackground": "#b96346",
+ "editorGutter.modifiedBackground": "#dfc09f",
+ "editor.selectionBackground": "#496d8355",
+ "editor.selectionHighlightBackground": "#5998c033",
+ "editor.inactiveSelectionBackground": "#496d8333",
+ "editor.wordHighlightStrongBackground": "#b3994d33",
+ "editor.wordHighlightBackground": "#d3b69233",
+ "editor.findMatchBackground": "#72c09f25",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#72c09f22",
+ "editor.hoverHighlightBackground": "#496d833f",
+ "editor.lineHighlightBackground": "#1d3544ee",
+ "editor.lineHighlightBorder": "#1d3544",
+ "editor.rangeHighlightBackground": "#72b7c022",
+ "editorLink.activeForeground": "#649fc4",
+ "editorWhitespace.foreground": "#ffffff21",
+ "editorIndentGuide.background": "#2f404b",
+ "editorIndentGuide.activeBackground": "#405f72",
+ "editorBracketMatch.background": "#496d8322",
+ "editorBracketMatch.border": "#496d83",
+ "editorRuler.foreground": "#334652",
+ "editorCodeLens.foreground": "#667c7f",
+ "terminal.ansiBlack": "#182a35",
+ "terminal.ansiRed": "#c08872",
+ "terminal.ansiGreen": "#72c09f",
+ "terminal.ansiYellow": "#c8a984",
+ "terminal.ansiBlue": "#6196b8",
+ "terminal.ansiMagenta": "#c28097",
+ "terminal.ansiCyan": "#72b7c0",
+ "terminal.ansiWhite": "#c5cdd3",
+ "terminal.ansiBrightBlack": "#425866",
+ "terminal.ansiBrightRed": "#ca8468",
+ "terminal.ansiBrightGreen": "#84c8ab",
+ "terminal.ansiBrightYellow": "#d1aa7b",
+ "terminal.ansiBrightBlue": "#68a4ca",
+ "terminal.ansiBrightMagenta": "#c88da2",
+ "terminal.ansiBrightCyan": "#84c0c8",
+ "terminal.ansiBrightWhite": "#c5d1d3",
+ "terminal.background": "#0e1920",
+ "terminal.foreground": "#c5cdd3",
+ "terminalCursor.background": "#0e1920",
+ "terminalCursor.foreground": "#c5cdd3",
+ "merge.border": "#1b293200",
+ "merge.currentContentBackground": "#a6d7dd22",
+ "merge.currentHeaderBackground": "#a6d7dd44",
+ "merge.incomingContentBackground": "#aea8dc22",
+ "merge.incomingHeaderBackground": "#aea8dc44",
+ "merge.commonContentBackground": "#dfc09f22",
+ "merge.commonHeaderBackground": "#dfc09f44",
+ "editorOverviewRuler.currentContentForeground": "#a6d7dd44",
+ "editorOverviewRuler.incomingContentForeground": "#cac4f544",
+ "editorOverviewRuler.commonContentForeground": "#dfc09f44",
+ "editorOverviewRuler.border": "#1b2932",
+ "notificationCenter.border": "#202e37",
+ "notificationCenterHeader.foreground": "#98a6ae",
+ "notificationCenterHeader.background": "#202e37",
+ "notificationToast.border": "#202e37",
+ "notifications.foreground": "#CDD3DE",
+ "notifications.background": "#202e37",
+ "notifications.border": "#202e37",
+ "notificationLink.foreground": "#98a6ae",
+ "diffEditor.insertedTextBackground": "#72c09f25",
+ "diffEditor.removedTextBackground": "#c3745530",
+ "debugToolBar.background": "#1b2932",
+ "debugExceptionWidget.background": "#1b2932",
+ "debugExceptionWidget.border": "#496d83",
+ "extensionButton.prominentBackground": "#28828a",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#39bac6",
+ "focusBorder": "#202e37",
+ "foreground": "#c5cdd3",
+ "panel.background": "#0e1920",
+ "panel.border": "#496d83",
+ "panelTitle.activeBorder": "#496d83",
+ "panelTitle.activeForeground": "#5998c0",
+ "panelTitle.inactiveForeground": "#5e7887",
+ "peekView.border": "#496d83",
+ "peekViewEditor.background": "#0e1c25",
+ "peekViewEditor.matchHighlightBackground": "#26526d33",
+ "peekViewEditor.matchHighlightBorder": "#3d708f",
+ "peekViewEditorGutter.background": "#0e1c25",
+ "peekViewResult.background": "#0d202b",
+ "peekViewResult.fileForeground": "#dfc09f",
+ "peekViewResult.lineForeground": "#98a6ae",
+ "peekViewResult.matchHighlightBackground": "#202e37",
+ "peekViewResult.selectionBackground": "#202e37",
+ "peekViewResult.selectionForeground": "#98a6ae",
+ "peekViewTitle.background": "#0d202b",
+ "peekViewTitleDescription.foreground": "#98a6ae",
+ "peekViewTitleLabel.foreground": "#dfc09f",
+ "progressBar.background": "#5998c0",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#3f7fa677",
+ "scrollbarSlider.background": "#3f7fa633",
+ "scrollbarSlider.hoverBackground": "#3f7fa655",
+ "gitDecoration.addedResourceForeground": "#3f8d6c",
+ "gitDecoration.modifiedResourceForeground": "#72c09f",
+ "gitDecoration.deletedResourceForeground": "#b96346",
+ "gitDecoration.untrackedResourceForeground": "#6fb0b8",
+ "gitDecoration.ignoredResourceForeground": "#5b788b",
+ "gitDecoration.conflictingResourceForeground": "#dfc09f",
+ "pickerGroup.border": "#496d83",
+ "pickerGroup.foreground": "#5998c0",
+ "list.activeSelectionBackground": "#2c414e",
+ "list.activeSelectionForeground": "#ebf7ff",
+ "list.dropBackground": "#152837",
+ "list.focusBackground": "#213745",
+ "list.focusForeground": "#ebf7ff",
+ "list.highlightForeground": "#5998c0",
+ "list.hoverBackground": "#00558a",
+ "list.hoverForeground": "#ebf7ff",
+ "list.inactiveFocusBackground": "#1e2b33",
+ "list.inactiveSelectionBackground": "#22313a",
+ "list.inactiveSelectionForeground": "#c5cdd3",
+ "list.errorForeground": "#b96346",
+ "list.warningForeground": "#ffa857",
+ "listFilterWidget.background": "#152837",
+ "listFilterWidget.outline": "#72c09f",
+ "listFilterWidget.noMatchesOutline": "#b96346",
+ "tree.indentGuidesStroke": "#5d6e79",
+ "settings.headerForeground": "#c5cdd3",
+ "settings.modifiedItemIndicator": "#3f8d6c",
+ "settings.dropdownListBorder": "#2964a377",
+ "settings.dropdownBackground": "#202e37",
+ "settings.dropdownForeground": "#3d818f",
+ "settings.dropdownBorder": "#202e37",
+ "settings.checkboxBackground": "#202e37",
+ "settings.checkboxForeground": "#3d818f",
+ "settings.checkboxBorder": "#202e37",
+ "settings.textInputBackground": "#202e37",
+ "settings.textInputForeground": "#3d818f",
+ "settings.textInputBorder": "#202e37",
+ "settings.numberInputBackground": "#0e1920",
+ "settings.numberInputForeground": "#7068b1",
+ "settings.numberInputBorder": "#0e1920",
+ "breadcrumb.foreground": "#96a8b6",
+ "breadcrumb.background": "#1b2932",
+ "breadcrumb.focusForeground": "#5998c0",
+ "breadcrumb.activeSelectionForeground": "#ebf7ff",
+ "breadcrumbPicker.background": "#202e37",
+ "titleBar.activeBackground": "#1b2932",
+ "titleBar.activeForeground": "#c5cdd3",
+ "titleBar.inactiveBackground": "#1b2932",
+ "titleBar.inactiveForeground": "#96a8b6",
+ "menu.background": "#202e37",
+ "menu.foreground": "#96a8b6",
+ "menu.selectionBackground": "#213745",
+ "menu.selectionForeground": "#5998c0",
+ "menu.selectionBorder": "#213745",
+ "menu.separatorBackground": "#5998c0",
+ "menubar.selectionBackground": "#213745",
+ "menubar.selectionForeground": "#5998c0",
+ "menubar.selectionBorder": "#213745",
+ "editor.snippetTabstopHighlightBackground": "#0e1920",
+ "editor.snippetTabstopHighlightBorder": "#17232b",
+ "editor.snippetFinalTabstopHighlightBackground": "#0e1920",
+ "editor.snippetFinalTabstopHighlightBorder": "#17232b",
+ "minimap.findMatchHighlight": "#5998c0ee",
+ "minimap.errorHighlight": "#b96346ee",
+ "minimap.warningHighlight": "#c09159ee",
+ "minimapGutter.addedBackground": "#3f8d6c",
+ "minimapGutter.modifiedBackground": "#72c09f",
+ "minimapGutter.deletedBackground": "#b96346",
+ "minimap.background": "#1b293299"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#5e7887"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#c5cdd3"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#c88da2"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#d3b692"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#be856f"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#a88c00"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#c37455"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#72c09f"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#3f8d6c"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7068b1"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#3f848d"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#72b7c0"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#5998c0"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": [
+ "invalid",
+ "invalid.illegal"
+ ],
+ "settings": {
+ "foreground": "#b16a4e"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": [
+ "markup.strikethrough"
+ ],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/noctis/noctis.json b/assets/themes/src/vscode/noctis/noctis.json
new file mode 100644
index 0000000000..cc270fe526
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/noctis.json
@@ -0,0 +1,1108 @@
+{
+ "name": "Noctis",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#107684",
+ "descriptionForeground": "#929ea0",
+ "errorForeground": "#e34e1c",
+ "widget.shadow": "#00000044",
+ "editor.background": "#052529",
+ "editor.foreground": "#b2cacd",
+ "editorLineNumber.foreground": "#4e6b6e",
+ "editorLineNumber.activeForeground": "#169fb1",
+ "editorCursor.foreground": "#85efff",
+ "badge.background": "#40d4e7",
+ "badge.foreground": "#0f1415",
+ "activityBar.background": "#052529",
+ "activityBar.dropBackground": "#929ea065",
+ "activityBar.foreground": "#169fb1",
+ "activityBar.inactiveForeground": "#169fb177",
+ "activityBar.border": "#0f1415",
+ "activityBarBadge.background": "#40d4e7",
+ "activityBarBadge.foreground": "#0f1415",
+ "activityBar.activeBackground": "#40d4e733",
+ "activityBar.activeBorder": "#40d4e7",
+ "sideBar.background": "#041d20",
+ "sideBar.foreground": "#a5b5b5",
+ "sideBar.border": "#0f1415",
+ "sideBar.dropBackground": "#041d20",
+ "sideBarTitle.foreground": "#a5b5b5",
+ "sideBarSectionHeader.background": "#083d44",
+ "sideBarSectionHeader.foreground": "#a5b5b5",
+ "sideBarSectionHeader.border": "#0f1415",
+ "statusBar.background": "#041d20",
+ "statusBar.foreground": "#169fb1",
+ "statusBar.border": "#0f1415",
+ "statusBar.debuggingBackground": "#041d20",
+ "statusBar.debuggingForeground": "#df769b50",
+ "statusBar.debuggingBorder": "#df769baf",
+ "statusBar.noFolderForeground": "#87a7ab",
+ "statusBar.noFolderBackground": "#041d20",
+ "statusBar.noFolderBorder": "#041d20",
+ "statusBarItem.activeBackground": "#19bacc45",
+ "statusBarItem.hoverBackground": "#062e32",
+ "statusBarItem.prominentBackground": "#020c0e",
+ "statusBarItem.prominentHoverBackground": "#00292e",
+ "button.background": "#099099",
+ "button.foreground": "#ebfdff",
+ "button.hoverBackground": "#0cc",
+ "dropdown.background": "#073940",
+ "dropdown.border": "#073940",
+ "dropdown.foreground": "#87a7ab",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#e34e1c",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#052529",
+ "editorError.foreground": "#e34e1c",
+ "editorWarning.border": "#052529",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#052529",
+ "editorInfo.foreground": "#40d4e7",
+ "editorHint.border": "#49e9a600",
+ "editorHint.foreground": "#49e9a6",
+ "editorGroup.emptyBackground": "#5f6b6d33",
+ "editorGroup.border": "#0f1415",
+ "editorGroup.dropBackground": "#5f6b6d33",
+ "editorGroupHeader.noTabsBackground": "#062e32",
+ "editorGroupHeader.tabsBackground": "#062e32",
+ "editorGroupHeader.tabsBorder": "#062e32",
+ "tab.activeBackground": "#052529",
+ "tab.unfocusedActiveBackground": "#0e1e20",
+ "tab.activeForeground": "#40d4e7",
+ "tab.border": "#0f1415",
+ "tab.inactiveBackground": "#062e32",
+ "tab.inactiveForeground": "#87a7ab",
+ "tab.unfocusedActiveForeground": "#87a7ab",
+ "tab.unfocusedInactiveForeground": "#87a7ab",
+ "tab.activeBorderTop": "#40d4e7",
+ "tab.activeModifiedBorder": "#49e9a6",
+ "tab.activeBorder": "#052529",
+ "tab.unfocusedActiveBorder": "#052529",
+ "tab.unfocusedHoverBackground": "#169fb121",
+ "textBlockQuote.background": "#041d20",
+ "textBlockQuote.border": "#16a3b6",
+ "textCodeBlock.background": "#041d20",
+ "textLink.activeForeground": "#40d4e7",
+ "textLink.foreground": "#40d4e7",
+ "textPreformat.foreground": "#e4b781",
+ "textSeparator.foreground": "#041d20",
+ "walkThrough.embeddedEditorBackground": "#041d20",
+ "welcomePage.buttonBackground": "#041d20",
+ "welcomePage.buttonHoverBackground": "#003742",
+ "input.background": "#052529",
+ "input.border": "#073940",
+ "input.foreground": "#CDD3DE",
+ "input.placeholderForeground": "#87a7ab",
+ "inputOption.activeBorder": "#169fb1",
+ "inputValidation.errorForeground": "#ff4000",
+ "inputValidation.errorBackground": "#501502ee",
+ "inputValidation.errorBorder": "#691c02",
+ "inputValidation.infoForeground": "#40d4e7",
+ "inputValidation.infoBackground": "#0f6e7bee",
+ "inputValidation.infoBorder": "#148f9f",
+ "inputValidation.warningForeground": "#e69533",
+ "inputValidation.warningBackground": "#82694acc",
+ "inputValidation.warningBorder": "#a88457",
+ "editorWidget.background": "#073940",
+ "editorWidget.border": "#0f1415",
+ "editorHoverWidget.background": "#073940",
+ "editorHoverWidget.border": "#0f1415",
+ "editorSuggestWidget.background": "#073940",
+ "editorSuggestWidget.border": "#0f1415",
+ "editorSuggestWidget.foreground": "#87a7ab",
+ "editorSuggestWidget.highlightForeground": "#40d4e7",
+ "editorSuggestWidget.selectedBackground": "#0e6671",
+ "editorGutter.background": "#052529",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#e34e1c",
+ "editorGutter.modifiedBackground": "#e0c184",
+ "editor.selectionBackground": "#169fb144",
+ "editor.selectionHighlightBackground": "#49ace944",
+ "editor.inactiveSelectionBackground": "#0e657155",
+ "editor.wordHighlightStrongBackground": "#cc990033",
+ "editor.wordHighlightBackground": "#e4b78133",
+ "editor.findMatchBackground": "#40bf6a11",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#49e9a633",
+ "editor.hoverHighlightBackground": "#169fb13f",
+ "editor.lineHighlightBackground": "#083d44ee",
+ "editor.lineHighlightBorder": "#083d44",
+ "editor.rangeHighlightBackground": "#083d44a1",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#ffffff21",
+ "editorIndentGuide.background": "#223b3f",
+ "editorIndentGuide.activeBackground": "#3e6f74",
+ "editorBracketMatch.background": "#169fb122",
+ "editorBracketMatch.border": "#169fb1",
+ "editorRuler.foreground": "#29484c",
+ "editorCodeLens.foreground": "#507b95",
+ "terminal.ansiBlack": "#324a4d",
+ "terminal.ansiRed": "#e66533",
+ "terminal.ansiGreen": "#49e9a6",
+ "terminal.ansiYellow": "#e4b781",
+ "terminal.ansiBlue": "#49ace9",
+ "terminal.ansiMagenta": "#df769b",
+ "terminal.ansiCyan": "#49d6e9",
+ "terminal.ansiWhite": "#b2cacd",
+ "terminal.ansiBrightBlack": "#47686c",
+ "terminal.ansiBrightRed": "#e97749",
+ "terminal.ansiBrightGreen": "#60ebb1",
+ "terminal.ansiBrightYellow": "#e69533",
+ "terminal.ansiBrightBlue": "#60b6eb",
+ "terminal.ansiBrightMagenta": "#e798b3",
+ "terminal.ansiBrightCyan": "#60dbeb",
+ "terminal.ansiBrightWhite": "#c1d4d7",
+ "terminal.background": "#03191b",
+ "terminal.foreground": "#b2cacd",
+ "terminalCursor.background": "#03191b",
+ "terminalCursor.foreground": "#b2cacd",
+ "merge.border": "#05252900",
+ "merge.currentContentBackground": "#85f1ff22",
+ "merge.currentHeaderBackground": "#85f1ff44",
+ "merge.incomingContentBackground": "#9d92f222",
+ "merge.incomingHeaderBackground": "#9d92f244",
+ "merge.commonContentBackground": "#ffc18022",
+ "merge.commonHeaderBackground": "#ffc18044",
+ "editorOverviewRuler.currentContentForeground": "#85f1ff44",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f244",
+ "editorOverviewRuler.commonContentForeground": "#ffc18044",
+ "editorOverviewRuler.border": "#052529",
+ "notificationCenter.border": "#073940",
+ "notificationCenterHeader.foreground": "#87a7ab",
+ "notificationCenterHeader.background": "#073940",
+ "notificationToast.border": "#073940",
+ "notifications.foreground": "#CDD3DE",
+ "notifications.background": "#073940",
+ "notifications.border": "#073940",
+ "notificationLink.foreground": "#87a7ab",
+ "diffEditor.insertedTextBackground": "#16b67327",
+ "diffEditor.removedTextBackground": "#e6653341",
+ "debugToolBar.background": "#041d20",
+ "debugExceptionWidget.background": "#041d20",
+ "debugExceptionWidget.border": "#16a3b6",
+ "extensionButton.prominentBackground": "#099099",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#0cc",
+ "focusBorder": "#073940",
+ "foreground": "#b2cacd",
+ "panel.background": "#03191b",
+ "panel.border": "#0e6671",
+ "panelTitle.activeBorder": "#0e6671",
+ "panelTitle.activeForeground": "#40d4e7",
+ "panelTitle.inactiveForeground": "#87a7ab",
+ "peekView.border": "#169fb1",
+ "peekViewEditor.background": "#002124",
+ "peekViewEditor.matchHighlightBackground": "#00718079",
+ "peekViewEditor.matchHighlightBorder": "#007180cc",
+ "peekViewEditorGutter.background": "#002124",
+ "peekViewResult.background": "#041d20",
+ "peekViewResult.fileForeground": "#e4b781",
+ "peekViewResult.lineForeground": "#87a7ab",
+ "peekViewResult.matchHighlightBackground": "#073940",
+ "peekViewResult.selectionBackground": "#073940",
+ "peekViewResult.selectionForeground": "#87a7ab",
+ "peekViewTitle.background": "#041d20",
+ "peekViewTitleDescription.foreground": "#87a7ab",
+ "peekViewTitleLabel.foreground": "#e4b781",
+ "progressBar.background": "#40d4e7",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#169fb1ad",
+ "scrollbarSlider.background": "#6a90955b",
+ "scrollbarSlider.hoverBackground": "#169fb162",
+ "gitDecoration.addedResourceForeground": "#16b673",
+ "gitDecoration.modifiedResourceForeground": "#49e9a6",
+ "gitDecoration.deletedResourceForeground": "#e34e1c",
+ "gitDecoration.untrackedResourceForeground": "#40d4e7",
+ "gitDecoration.ignoredResourceForeground": "#5b858b",
+ "gitDecoration.conflictingResourceForeground": "#e4b781",
+ "pickerGroup.border": "#0e6671",
+ "pickerGroup.foreground": "#169fb1",
+ "list.activeSelectionBackground": "#0e6671",
+ "list.activeSelectionForeground": "#ebfdff",
+ "list.dropBackground": "#00404d",
+ "list.focusBackground": "#00404d",
+ "list.focusForeground": "#ebfdff",
+ "list.highlightForeground": "#40d4e7",
+ "list.hoverBackground": "#0b515b",
+ "list.hoverForeground": "#ebfdff",
+ "list.inactiveFocusBackground": "#062d32",
+ "list.inactiveSelectionBackground": "#07353b",
+ "list.inactiveSelectionForeground": "#b2cacd",
+ "list.errorForeground": "#e34e1c",
+ "list.warningForeground": "#ffa487",
+ "listFilterWidget.background": "#00404d",
+ "listFilterWidget.outline": "#49e9a6",
+ "listFilterWidget.noMatchesOutline": "#e34e1c",
+ "tree.indentGuidesStroke": "#3e6f74",
+ "settings.headerForeground": "#b2cacd",
+ "settings.modifiedItemIndicator": "#15ac31",
+ "settings.dropdownListBorder": "#0e657188",
+ "settings.dropdownBackground": "#073940",
+ "settings.dropdownForeground": "#0cc",
+ "settings.dropdownBorder": "#073940",
+ "settings.checkboxBackground": "#073940",
+ "settings.checkboxForeground": "#0cc",
+ "settings.checkboxBorder": "#073940",
+ "settings.textInputBackground": "#073940",
+ "settings.textInputForeground": "#0cc",
+ "settings.textInputBorder": "#073940",
+ "settings.numberInputBackground": "#041d20",
+ "settings.numberInputForeground": "#7060eb",
+ "settings.numberInputBorder": "#041d20",
+ "breadcrumb.foreground": "#87a7ab",
+ "breadcrumb.background": "#052529",
+ "breadcrumb.focusForeground": "#40d4e7",
+ "breadcrumb.activeSelectionForeground": "#ebfdff",
+ "breadcrumbPicker.background": "#073940",
+ "titleBar.activeBackground": "#041d20",
+ "titleBar.activeForeground": "#b2cacd",
+ "titleBar.inactiveBackground": "#041d20",
+ "titleBar.inactiveForeground": "#87a7ab",
+ "menu.background": "#073940",
+ "menu.foreground": "#87a7ab",
+ "menu.selectionBackground": "#0b515b",
+ "menu.selectionForeground": "#40d4e7",
+ "menu.selectionBorder": "#0b515b",
+ "menu.separatorBackground": "#40d4e7",
+ "menubar.selectionBackground": "#0b515b",
+ "menubar.selectionForeground": "#40d4e7",
+ "menubar.selectionBorder": "#0b515b",
+ "editor.snippetTabstopHighlightBackground": "#03181b",
+ "editor.snippetTabstopHighlightBorder": "#042124",
+ "editor.snippetFinalTabstopHighlightBackground": "#03181b",
+ "editor.snippetFinalTabstopHighlightBorder": "#042124",
+ "minimap.findMatchHighlight": "#49d6e9ee",
+ "minimap.errorHighlight": "#e34e1cee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#16b673",
+ "minimapGutter.modifiedBackground": "#49e9a6",
+ "minimapGutter.deletedBackground": "#e34e1c",
+ "minimap.background": "#05252999"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#5b858b"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#b2cacd"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#df769b"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#e4b781"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#d67e5c"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#d5971a"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e66533"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#49e9a6"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#16b673"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7060eb"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#16a3b6"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#49d6e9"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#49ace9"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#e3541c"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": ["markup.strikethrough"],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/noctis/obscuro.json b/assets/themes/src/vscode/noctis/obscuro.json
new file mode 100644
index 0000000000..26d1a02de8
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/obscuro.json
@@ -0,0 +1,1108 @@
+{
+ "name": "Noctis Obscuro",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#107684",
+ "descriptionForeground": "#929ea0",
+ "errorForeground": "#e34e1c",
+ "widget.shadow": "#00000044",
+ "editor.background": "#031417",
+ "editor.foreground": "#b2cacd",
+ "editorLineNumber.foreground": "#4e6b6e",
+ "editorLineNumber.activeForeground": "#169fb1",
+ "editorCursor.foreground": "#85efff",
+ "badge.background": "#169fb1",
+ "badge.foreground": "#0f1415",
+ "activityBar.background": "#031417",
+ "activityBar.dropBackground": "#929ea065",
+ "activityBar.border": "#0f1415",
+ "activityBar.foreground": "#169fb1",
+ "activityBar.inactiveForeground": "#169fb177",
+ "activityBarBadge.background": "#169fb1",
+ "activityBarBadge.foreground": "#0f1415",
+ "activityBar.activeBackground": "#40d4e733",
+ "activityBar.activeBorder": "#40d4e7",
+ "sideBar.background": "#021012",
+ "sideBar.dropBackground": "#042124",
+ "sideBar.border": "#0f1415",
+ "sideBar.foreground": "#a5b5b5",
+ "sideBarSectionHeader.background": "#083d44",
+ "sideBarSectionHeader.foreground": "#a5b5b5",
+ "sideBarTitle.foreground": "#a5b5b5",
+ "sideBarSectionHeader.border": "#0f1415",
+ "statusBar.foreground": "#169fb1",
+ "statusBar.background": "#031417",
+ "statusBar.border": "#0f1415",
+ "statusBar.debuggingBackground": "#031417",
+ "statusBar.debuggingForeground": "#df769b50",
+ "statusBar.debuggingBorder": "#df769baf",
+ "statusBar.noFolderForeground": "#87a7ab",
+ "statusBar.noFolderBackground": "#031417",
+ "statusBar.noFolderBorder": "#031417",
+ "statusBarItem.activeBackground": "#19bacc45",
+ "statusBarItem.hoverBackground": "#062e32",
+ "statusBarItem.prominentBackground": "#020c0e",
+ "statusBarItem.prominentHoverBackground": "#00292e",
+ "button.background": "#099099",
+ "button.foreground": "#ebfdff",
+ "button.hoverBackground": "#0cc",
+ "dropdown.background": "#031417",
+ "dropdown.border": "#031417",
+ "dropdown.foreground": "#87a7ab",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#e34e1c",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#031417",
+ "editorError.foreground": "#e34e1c",
+ "editorWarning.border": "#031417",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#031417",
+ "editorInfo.foreground": "#40d4e7",
+ "editorHint.border": "#49e9a600",
+ "editorHint.foreground": "#49e9a6",
+ "editorGroup.emptyBackground": "#5f6b6d33",
+ "editorGroup.border": "#0f1415",
+ "editorGroup.dropBackground": "#5f6b6d33",
+ "editorGroupHeader.noTabsBackground": "#062e32",
+ "editorGroupHeader.tabsBackground": "#062e32",
+ "editorGroupHeader.tabsBorder": "#062e32",
+ "tab.activeBackground": "#031417",
+ "tab.unfocusedActiveBackground": "#0b1819",
+ "tab.activeForeground": "#ebfdff",
+ "tab.border": "#0f1415",
+ "tab.inactiveBackground": "#062e32",
+ "tab.inactiveForeground": "#87a7ab",
+ "tab.unfocusedActiveForeground": "#87a7ab",
+ "tab.unfocusedInactiveForeground": "#87a7ab",
+ "tab.activeBorderTop": "#40d4e7",
+ "tab.activeModifiedBorder": "#49e9a6",
+ "tab.activeBorder": "#031417",
+ "tab.unfocusedActiveBorder": "#031417",
+ "tab.unfocusedHoverBackground": "#169fb121",
+ "textBlockQuote.background": "#031417",
+ "textBlockQuote.border": "#16a3b6",
+ "textCodeBlock.background": "#031417",
+ "textLink.activeForeground": "#40d4e7",
+ "textLink.foreground": "#40d4e7",
+ "textPreformat.foreground": "#e4b781",
+ "textSeparator.foreground": "#031417",
+ "walkThrough.embeddedEditorBackground": "#031417",
+ "welcomePage.buttonBackground": "#052529",
+ "welcomePage.buttonHoverBackground": "#062e32",
+ "input.background": "#052529",
+ "input.border": "#083f44",
+ "input.foreground": "#CDD3DE",
+ "input.placeholderForeground": "#87a7ab",
+ "inputOption.activeBorder": "#169fb1",
+ "inputValidation.errorForeground": "#ff4000",
+ "inputValidation.errorBackground": "#501502ee",
+ "inputValidation.errorBorder": "#691c02",
+ "inputValidation.infoForeground": "#40d4e7",
+ "inputValidation.infoBackground": "#0f6e7bee",
+ "inputValidation.infoBorder": "#148f9f",
+ "inputValidation.warningForeground": "#e69533",
+ "inputValidation.warningBackground": "#82694acc",
+ "inputValidation.warningBorder": "#a88457",
+ "editorWidget.background": "#062e32",
+ "editorWidget.border": "#0f1415",
+ "editorHoverWidget.background": "#062e32",
+ "editorHoverWidget.border": "#0f1415",
+ "editorSuggestWidget.background": "#062e32",
+ "editorSuggestWidget.border": "#0f1415",
+ "editorSuggestWidget.foreground": "#87a7ab",
+ "editorSuggestWidget.highlightForeground": "#40d4e7",
+ "editorSuggestWidget.selectedBackground": "#0e6671",
+ "editorGutter.background": "#031417",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#e34e1c",
+ "editorGutter.modifiedBackground": "#e4b781",
+ "editor.selectionBackground": "#169fb144",
+ "editor.selectionHighlightBackground": "#49ace944",
+ "editor.inactiveSelectionBackground": "#0e657155",
+ "editor.wordHighlightStrongBackground": "#cc990033",
+ "editor.wordHighlightBackground": "#e4b78133",
+ "editor.findMatchBackground": "#40bf6a11",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#49e9a633",
+ "editor.hoverHighlightBackground": "#169fb13f",
+ "editor.lineHighlightBackground": "#083d44ee",
+ "editor.lineHighlightBorder": "#083d44",
+ "editor.rangeHighlightBackground": "#083d44a1",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#ffffff21",
+ "editorIndentGuide.background": "#223b3f",
+ "editorIndentGuide.activeBackground": "#3e6f74",
+ "editorBracketMatch.background": "#169fb122",
+ "editorBracketMatch.border": "#169fb1",
+ "editorRuler.foreground": "#243f42",
+ "editorCodeLens.foreground": "#507b95",
+ "terminal.ansiBlack": "#324a4d",
+ "terminal.ansiRed": "#e66533",
+ "terminal.ansiGreen": "#49e9a6",
+ "terminal.ansiYellow": "#e4b781",
+ "terminal.ansiBlue": "#49ace9",
+ "terminal.ansiMagenta": "#df769b",
+ "terminal.ansiCyan": "#49d6e9",
+ "terminal.ansiWhite": "#b2cacd",
+ "terminal.ansiBrightBlack": "#47686c",
+ "terminal.ansiBrightRed": "#e97749",
+ "terminal.ansiBrightGreen": "#60ebb1",
+ "terminal.ansiBrightYellow": "#e69533",
+ "terminal.ansiBrightBlue": "#60b6eb",
+ "terminal.ansiBrightMagenta": "#e798b3",
+ "terminal.ansiBrightCyan": "#60dbeb",
+ "terminal.ansiBrightWhite": "#c1d4d7",
+ "terminal.background": "#020c0e",
+ "terminal.foreground": "#b2cacd",
+ "terminalCursor.background": "#020c0e",
+ "terminalCursor.foreground": "#b2cacd",
+ "merge.border": "#03141700",
+ "merge.currentContentBackground": "#85f1ff22",
+ "merge.currentHeaderBackground": "#85f1ff44",
+ "merge.incomingContentBackground": "#9d92f222",
+ "merge.incomingHeaderBackground": "#9d92f244",
+ "merge.commonContentBackground": "#ffc18022",
+ "merge.commonHeaderBackground": "#ffc18044",
+ "editorOverviewRuler.currentContentForeground": "#85f1ff44",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f244",
+ "editorOverviewRuler.commonContentForeground": "#ffc18044",
+ "editorOverviewRuler.border": "#031417",
+ "notificationCenter.border": "#062e32",
+ "notificationCenterHeader.foreground": "#87a7ab",
+ "notificationCenterHeader.background": "#062e32",
+ "notificationToast.border": "#062e32",
+ "notifications.foreground": "#CDD3DE",
+ "notifications.background": "#062e32",
+ "notifications.border": "#062e32",
+ "notificationLink.foreground": "#87a7ab",
+ "diffEditor.insertedTextBackground": "#16b67327",
+ "diffEditor.removedTextBackground": "#e6653341",
+ "debugToolBar.background": "#031417",
+ "debugExceptionWidget.background": "#031417",
+ "debugExceptionWidget.border": "#16a3b6",
+ "extensionButton.prominentBackground": "#099099",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#0cc",
+ "focusBorder": "#062e32",
+ "foreground": "#b2cacd",
+ "panel.background": "#020c0e",
+ "panel.border": "#0e6671",
+ "panelTitle.activeBorder": "#0e6671",
+ "panelTitle.activeForeground": "#40d4e7",
+ "panelTitle.inactiveForeground": "#87a7ab",
+ "peekView.border": "#169fb1",
+ "peekViewEditor.background": "#002124",
+ "peekViewEditor.matchHighlightBackground": "#00718079",
+ "peekViewEditor.matchHighlightBorder": "#007180cc",
+ "peekViewEditorGutter.background": "#002124",
+ "peekViewResult.background": "#031417",
+ "peekViewResult.fileForeground": "#e4b781",
+ "peekViewResult.lineForeground": "#87a7ab",
+ "peekViewResult.matchHighlightBackground": "#062e32",
+ "peekViewResult.selectionBackground": "#062e32",
+ "peekViewResult.selectionForeground": "#87a7ab",
+ "peekViewTitle.background": "#031417",
+ "peekViewTitleDescription.foreground": "#87a7ab",
+ "peekViewTitleLabel.foreground": "#e4b781",
+ "progressBar.background": "#40d4e7",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#169fb1ad",
+ "scrollbarSlider.background": "#6a90955b",
+ "scrollbarSlider.hoverBackground": "#169fb162",
+ "gitDecoration.addedResourceForeground": "#16b673",
+ "gitDecoration.modifiedResourceForeground": "#49e9a6",
+ "gitDecoration.deletedResourceForeground": "#e34e1c",
+ "gitDecoration.untrackedResourceForeground": "#40d4e7",
+ "gitDecoration.ignoredResourceForeground": "#647e82",
+ "gitDecoration.conflictingResourceForeground": "#e4b781",
+ "pickerGroup.border": "#0e6671",
+ "pickerGroup.foreground": "#169fb1",
+ "list.activeSelectionBackground": "#0e6671",
+ "list.activeSelectionForeground": "#ebfdff",
+ "list.dropBackground": "#00404d",
+ "list.focusBackground": "#00404d",
+ "list.focusForeground": "#ebfdff",
+ "list.highlightForeground": "#40d4e7",
+ "list.hoverBackground": "#0b515b",
+ "list.hoverForeground": "#ebfdff",
+ "list.inactiveFocusBackground": "#062d32",
+ "list.inactiveSelectionBackground": "#07353b",
+ "list.inactiveSelectionForeground": "#b2cacd",
+ "list.errorForeground": "#e34e1c",
+ "list.warningForeground": "#ffa487",
+ "listFilterWidget.background": "#00404d",
+ "listFilterWidget.outline": "#49e9a6",
+ "listFilterWidget.noMatchesOutline": "#e34e1c",
+ "tree.indentGuidesStroke": "#3e6f74",
+ "settings.headerForeground": "#b2cacd",
+ "settings.modifiedItemIndicator": "#15ac31",
+ "settings.dropdownListBorder": "#0e657188",
+ "settings.dropdownBackground": "#073940",
+ "settings.dropdownForeground": "#0cc",
+ "settings.dropdownBorder": "#073940",
+ "settings.checkboxBackground": "#073940",
+ "settings.checkboxForeground": "#0cc",
+ "settings.checkboxBorder": "#073940",
+ "settings.textInputBackground": "#073940",
+ "settings.textInputForeground": "#0cc",
+ "settings.textInputBorder": "#073940",
+ "settings.numberInputBackground": "#062e32",
+ "settings.numberInputForeground": "#7060eb",
+ "settings.numberInputBorder": "#062e32",
+ "breadcrumb.foreground": "#87a7ab",
+ "breadcrumb.background": "#031417",
+ "breadcrumb.focusForeground": "#40d4e7",
+ "breadcrumb.activeSelectionForeground": "#ebfdff",
+ "breadcrumbPicker.background": "#062e32",
+ "titleBar.activeBackground": "#031417",
+ "titleBar.activeForeground": "#b2cacd",
+ "titleBar.inactiveBackground": "#031417",
+ "titleBar.inactiveForeground": "#87a7ab",
+ "menu.background": "#062e32",
+ "menu.foreground": "#87a7ab",
+ "menu.selectionBackground": "#0b515b",
+ "menu.selectionForeground": "#40d4e7",
+ "menu.selectionBorder": "#0b515b",
+ "menu.separatorBackground": "#40d4e7",
+ "menubar.selectionBackground": "#0b515b",
+ "menubar.selectionForeground": "#40d4e7",
+ "menubar.selectionBorder": "#0b515b",
+ "editor.snippetTabstopHighlightBackground": "#06292d",
+ "editor.snippetTabstopHighlightBorder": "#073136",
+ "editor.snippetFinalTabstopHighlightBackground": "#06292d",
+ "editor.snippetFinalTabstopHighlightBorder": "#073136",
+ "minimap.findMatchHighlight": "#49d6e9ee",
+ "minimap.errorHighlight": "#e34e1cee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#16b673",
+ "minimapGutter.modifiedBackground": "#49e9a6",
+ "minimapGutter.deletedBackground": "#e34e1c",
+ "minimap.background": "#03141799"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#5b858b"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#b2cacd"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#df769b"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#e4b781"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#d67e5c"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#d5971a"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e66533"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#49e9a6"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#16b673"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7060eb"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#16a3b6"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#49d6e9"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#49ace9"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#e3541c"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": ["markup.strikethrough"],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/noctis/sereno.json b/assets/themes/src/vscode/noctis/sereno.json
new file mode 100644
index 0000000000..05768aff35
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/sereno.json
@@ -0,0 +1,1108 @@
+{
+ "name": "Noctis Sereno",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#107684",
+ "descriptionForeground": "#929ea0",
+ "errorForeground": "#e34e1c",
+ "widget.shadow": "#00000044",
+ "editor.background": "#062e32",
+ "editor.foreground": "#b2cacd",
+ "editorLineNumber.foreground": "#4e6b6e",
+ "editorLineNumber.activeForeground": "#169fb1",
+ "editorCursor.foreground": "#85efff",
+ "badge.background": "#40d4e7",
+ "badge.foreground": "#0f1415",
+ "activityBar.background": "#062e32",
+ "activityBar.dropBackground": "#929ea065",
+ "activityBar.border": "#0f1415",
+ "activityBar.foreground": "#169fb1",
+ "activityBar.inactiveForeground": "#169fb177",
+ "activityBarBadge.background": "#40d4e7",
+ "activityBarBadge.foreground": "#0f1415",
+ "activityBar.activeBackground": "#40d4e733",
+ "activityBar.activeBorder": "#40d4e7",
+ "sideBar.background": "#052629",
+ "sideBar.dropBackground": "#052629dd",
+ "sideBar.border": "#0f1415",
+ "sideBar.foreground": "#a5b5b5",
+ "sideBarSectionHeader.background": "#083d44",
+ "sideBarSectionHeader.foreground": "#a5b5b5",
+ "sideBarSectionHeader.border": "#0f1415",
+ "sideBarTitle.foreground": "#a5b5b5",
+ "statusBar.background": "#052629",
+ "statusBar.foreground": "#169fb1",
+ "statusBar.border": "#0f1415",
+ "statusBar.debuggingBackground": "#052629",
+ "statusBar.debuggingForeground": "#df769b50",
+ "statusBar.debuggingBorder": "#df769baf",
+ "statusBar.noFolderForeground": "#87a7ab",
+ "statusBar.noFolderBackground": "#052629",
+ "statusBar.noFolderBorder": "#052629",
+ "statusBarItem.activeBackground": "#19bacc45",
+ "statusBarItem.hoverBackground": "#07373b",
+ "statusBarItem.prominentBackground": "#03191b",
+ "statusBarItem.prominentHoverBackground": "#003338",
+ "button.background": "#099099",
+ "button.foreground": "#ebfdff",
+ "button.hoverBackground": "#0cc",
+ "dropdown.background": "#083f44",
+ "dropdown.border": "#083f44",
+ "dropdown.foreground": "#87a7ab",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#e34e1c",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#062e32",
+ "editorError.foreground": "#e34e1c",
+ "editorWarning.border": "#062e32",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#062e32",
+ "editorInfo.foreground": "#40d4e7",
+ "editorHint.border": "#49e9a600",
+ "editorHint.foreground": "#49e9a6",
+ "editorGroup.emptyBackground": "#5f6b6d33",
+ "editorGroup.border": "#0f1415",
+ "editorGroup.dropBackground": "#5f6b6d33",
+ "editorGroupHeader.noTabsBackground": "#062e32",
+ "editorGroupHeader.tabsBackground": "#062e32",
+ "editorGroupHeader.tabsBorder": "#062e32",
+ "tab.activeBackground": "#062e32",
+ "tab.unfocusedActiveBackground": "#112527",
+ "tab.activeForeground": "#40d4e7",
+ "tab.border": "#0f1415",
+ "tab.inactiveBackground": "#062e32",
+ "tab.inactiveForeground": "#87a7ab",
+ "tab.unfocusedActiveForeground": "#87a7ab",
+ "tab.unfocusedInactiveForeground": "#87a7ab",
+ "tab.activeBorderTop": "#40d4e7",
+ "tab.activeModifiedBorder": "#49e9a6",
+ "tab.activeBorder": "#062e32",
+ "tab.unfocusedActiveBorder": "#062e32",
+ "tab.unfocusedHoverBackground": "#169fb121",
+ "textBlockQuote.background": "#052629",
+ "textBlockQuote.border": "#16a3b6",
+ "textCodeBlock.background": "#052629",
+ "textLink.activeForeground": "#40d4e7",
+ "textLink.foreground": "#40d4e7",
+ "textPreformat.foreground": "#e4b781",
+ "textSeparator.foreground": "#052629",
+ "walkThrough.embeddedEditorBackground": "#052629",
+ "welcomePage.buttonBackground": "#052629",
+ "welcomePage.buttonHoverBackground": "#003742",
+ "input.background": "#062e32",
+ "input.border": "#083d44",
+ "input.foreground": "#CDD3DE",
+ "input.placeholderForeground": "#87a7ab",
+ "inputOption.activeBorder": "#169fb1",
+ "inputValidation.errorForeground": "#ff4000",
+ "inputValidation.errorBackground": "#501502ee",
+ "inputValidation.errorBorder": "#691c02",
+ "inputValidation.infoForeground": "#40d4e7",
+ "inputValidation.infoBackground": "#0f6e7bee",
+ "inputValidation.infoBorder": "#148f9f",
+ "inputValidation.warningForeground": "#e69533",
+ "inputValidation.warningBackground": "#82694acc",
+ "inputValidation.warningBorder": "#a88457",
+ "editorWidget.background": "#083d44",
+ "editorWidget.border": "#0f1415",
+ "editorHoverWidget.background": "#083d44",
+ "editorHoverWidget.border": "#0f1415",
+ "editorSuggestWidget.background": "#083d44",
+ "editorSuggestWidget.border": "#0f1415",
+ "editorSuggestWidget.foreground": "#87a7ab",
+ "editorSuggestWidget.highlightForeground": "#40d4e7",
+ "editorSuggestWidget.selectedBackground": "#0e6671",
+ "editorGutter.background": "#062e32",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#e34e1c",
+ "editorGutter.modifiedBackground": "#e0c184",
+ "editor.selectionBackground": "#169fb144",
+ "editor.selectionHighlightBackground": "#49ace944",
+ "editor.inactiveSelectionBackground": "#0e657155",
+ "editor.wordHighlightStrongBackground": "#cc990033",
+ "editor.wordHighlightBackground": "#e4b78133",
+ "editor.findMatchBackground": "#40bf6a11",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#49e9a633",
+ "editor.hoverHighlightBackground": "#169fb13f",
+ "editor.lineHighlightBackground": "#083d44ee",
+ "editor.lineHighlightBorder": "#083d44",
+ "editor.rangeHighlightBackground": "#083d44a1",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#ffffff21",
+ "editorIndentGuide.background": "#223b3f",
+ "editorIndentGuide.activeBackground": "#3e6f74",
+ "editorBracketMatch.background": "#169fb122",
+ "editorBracketMatch.border": "#169fb1",
+ "editorRuler.foreground": "#29484c",
+ "editorCodeLens.foreground": "#507b95",
+ "terminal.ansiBlack": "#324a4d",
+ "terminal.ansiRed": "#e66533",
+ "terminal.ansiGreen": "#49e9a6",
+ "terminal.ansiYellow": "#e4b781",
+ "terminal.ansiBlue": "#49ace9",
+ "terminal.ansiMagenta": "#df769b",
+ "terminal.ansiCyan": "#49d6e9",
+ "terminal.ansiWhite": "#b2cacd",
+ "terminal.ansiBrightBlack": "#47686c",
+ "terminal.ansiBrightRed": "#e97749",
+ "terminal.ansiBrightGreen": "#60ebb1",
+ "terminal.ansiBrightYellow": "#e69533",
+ "terminal.ansiBrightBlue": "#60b6eb",
+ "terminal.ansiBrightMagenta": "#e798b3",
+ "terminal.ansiBrightCyan": "#60dbeb",
+ "terminal.ansiBrightWhite": "#c1d4d7",
+ "terminal.background": "#041d20",
+ "terminal.foreground": "#b2cacd",
+ "terminalCursor.background": "#041d20",
+ "terminalCursor.foreground": "#b2cacd",
+ "merge.border": "#062e3200",
+ "merge.currentContentBackground": "#85f1ff22",
+ "merge.currentHeaderBackground": "#85f1ff44",
+ "merge.incomingContentBackground": "#9d92f222",
+ "merge.incomingHeaderBackground": "#9d92f244",
+ "merge.commonContentBackground": "#ffc18022",
+ "merge.commonHeaderBackground": "#ffc18044",
+ "editorOverviewRuler.currentContentForeground": "#85f1ff44",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f244",
+ "editorOverviewRuler.commonContentForeground": "#ffc18044",
+ "editorOverviewRuler.border": "#062e32",
+ "notificationCenter.border": "#083d44",
+ "notificationCenterHeader.foreground": "#87a7ab",
+ "notificationCenterHeader.background": "#083d44",
+ "notificationToast.border": "#083d44",
+ "notifications.foreground": "#CDD3DE",
+ "notifications.background": "#083d44",
+ "notifications.border": "#083d44",
+ "notificationLink.foreground": "#87a7ab",
+ "diffEditor.insertedTextBackground": "#16b67327",
+ "diffEditor.removedTextBackground": "#e6653341",
+ "debugToolBar.background": "#052629",
+ "debugExceptionWidget.background": "#052629",
+ "debugExceptionWidget.border": "#16a3b6",
+ "extensionButton.prominentBackground": "#099099",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#0cc",
+ "focusBorder": "#083d44",
+ "foreground": "#b2cacd",
+ "panel.background": "#041d20",
+ "panel.border": "#169fb1",
+ "panelTitle.activeBorder": "#169fb1",
+ "panelTitle.activeForeground": "#40d4e7",
+ "panelTitle.inactiveForeground": "#87a7ab",
+ "peekView.border": "#169fb1",
+ "peekViewEditor.background": "#002124",
+ "peekViewEditor.matchHighlightBackground": "#00718079",
+ "peekViewEditor.matchHighlightBorder": "#007180cc",
+ "peekViewEditorGutter.background": "#002124",
+ "peekViewResult.background": "#052629",
+ "peekViewResult.fileForeground": "#e4b781",
+ "peekViewResult.lineForeground": "#87a7ab",
+ "peekViewResult.matchHighlightBackground": "#083d44",
+ "peekViewResult.selectionBackground": "#083d44",
+ "peekViewResult.selectionForeground": "#87a7ab",
+ "peekViewTitle.background": "#052629",
+ "peekViewTitleDescription.foreground": "#87a7ab",
+ "peekViewTitleLabel.foreground": "#e4b781",
+ "progressBar.background": "#40d4e7",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#169fb1ad",
+ "scrollbarSlider.background": "#6a90955b",
+ "scrollbarSlider.hoverBackground": "#169fb162",
+ "gitDecoration.addedResourceForeground": "#16b673",
+ "gitDecoration.modifiedResourceForeground": "#49e9a6",
+ "gitDecoration.deletedResourceForeground": "#e34e1c",
+ "gitDecoration.untrackedResourceForeground": "#40d4e7",
+ "gitDecoration.ignoredResourceForeground": "#647e82",
+ "gitDecoration.conflictingResourceForeground": "#e4b781",
+ "pickerGroup.border": "#0e6671",
+ "pickerGroup.foreground": "#169fb1",
+ "list.activeSelectionBackground": "#0e6671",
+ "list.activeSelectionForeground": "#ebfdff",
+ "list.dropBackground": "#00404d",
+ "list.focusBackground": "#00404d",
+ "list.focusForeground": "#ebfdff",
+ "list.highlightForeground": "#40d4e7",
+ "list.hoverBackground": "#0b515b",
+ "list.hoverForeground": "#ebfdff",
+ "list.inactiveFocusBackground": "#062d32",
+ "list.inactiveSelectionBackground": "#07353b",
+ "list.inactiveSelectionForeground": "#b2cacd",
+ "list.errorForeground": "#e34e1c",
+ "list.warningForeground": "#ffa487",
+ "listFilterWidget.background": "#00404d",
+ "listFilterWidget.outline": "#49e9a6",
+ "listFilterWidget.noMatchesOutline": "#e34e1c",
+ "tree.indentGuidesStroke": "#3e6f74",
+ "settings.headerForeground": "#b2cacd",
+ "settings.modifiedItemIndicator": "#15ac31",
+ "settings.dropdownListBorder": "#0e657188",
+ "settings.dropdownBackground": "#083d44",
+ "settings.dropdownForeground": "#0cc",
+ "settings.dropdownBorder": "#083d44",
+ "settings.checkboxBackground": "#083d44",
+ "settings.checkboxForeground": "#0cc",
+ "settings.checkboxBorder": "#083d44",
+ "settings.textInputBackground": "#083d44",
+ "settings.textInputForeground": "#0cc",
+ "settings.textInputBorder": "#083d44",
+ "settings.numberInputBackground": "#052629",
+ "settings.numberInputForeground": "#7060eb",
+ "settings.numberInputBorder": "#052629",
+ "breadcrumb.foreground": "#87a7ab",
+ "breadcrumb.background": "#062e32",
+ "breadcrumb.focusForeground": "#40d4e7",
+ "breadcrumb.activeSelectionForeground": "#ebfdff",
+ "breadcrumbPicker.background": "#083d44",
+ "titleBar.activeBackground": "#052629",
+ "titleBar.activeForeground": "#b2cacd",
+ "titleBar.inactiveBackground": "#052629",
+ "titleBar.inactiveForeground": "#87a7ab",
+ "menu.background": "#083d44",
+ "menu.foreground": "#87a7ab",
+ "menu.selectionBackground": "#0b515b",
+ "menu.selectionForeground": "#40d4e7",
+ "menu.selectionBorder": "#0b515b",
+ "menu.separatorBackground": "#40d4e7",
+ "menubar.selectionBackground": "#0b515b",
+ "menubar.selectionForeground": "#40d4e7",
+ "menubar.selectionBorder": "#0b515b",
+ "editor.snippetTabstopHighlightBackground": "#052629",
+ "editor.snippetTabstopHighlightBorder": "#062f32",
+ "editor.snippetFinalTabstopHighlightBackground": "#052629",
+ "editor.snippetFinalTabstopHighlightBorder": "#062f32",
+ "minimap.findMatchHighlight": "#49d6e9ee",
+ "minimap.errorHighlight": "#e34e1cee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#16b673",
+ "minimapGutter.modifiedBackground": "#49e9a6",
+ "minimapGutter.deletedBackground": "#e34e1c",
+ "minimap.background": "#062e3299"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#5b858b"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#b2cacd"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#df769b"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#e4b781"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#d67e5c"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#d5971a"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e66533"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#49e9a6"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#16b673"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7060eb"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#16a3b6"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#49d6e9"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#49ace9"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": ["invalid", "invalid.illegal"],
+ "settings": {
+ "foreground": "#e3541c"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": ["markup.strikethrough"],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/noctis/uva.json b/assets/themes/src/vscode/noctis/uva.json
new file mode 100644
index 0000000000..6ccbff372b
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/uva.json
@@ -0,0 +1,1112 @@
+{
+ "name": "Noctis Uva",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#7a70c277",
+ "descriptionForeground": "#7a70c2",
+ "errorForeground": "#e34e1c",
+ "widget.shadow": "#00000044",
+ "editor.background": "#292640",
+ "editor.foreground": "#c5c2d6",
+ "editorLineNumber.foreground": "#5c5973",
+ "editorLineNumber.activeForeground": "#7a70c2",
+ "editorCursor.foreground": "#bbb3ff",
+ "badge.background": "#998ef1",
+ "badge.foreground": "#171523",
+ "activityBar.background": "#292640",
+ "activityBar.dropBackground": "#7a70c265",
+ "activityBar.border": "#171523",
+ "activityBar.foreground": "#6e67a8",
+ "activityBar.inactiveForeground": "#6e67a877",
+ "activityBarBadge.background": "#998ef1",
+ "activityBarBadge.foreground": "#171523",
+ "activityBar.activeBackground": "#998ef133",
+ "activityBar.activeBorder": "#998ef1",
+ "sideBar.background": "#232136",
+ "sideBar.dropBackground": "#232136",
+ "sideBar.border": "#171523",
+ "sideBar.foreground": "#a9a5c0",
+ "sideBarSectionHeader.background": "#2f2c49",
+ "sideBarSectionHeader.foreground": "#a9a5c0",
+ "sideBarTitle.foreground": "#a9a5c0",
+ "sideBarSectionHeader.border": "#171523",
+ "statusBar.foreground": "#6e67a8",
+ "statusBar.background": "#292640",
+ "statusBar.border": "#171523",
+ "statusBar.debuggingBackground": "#292640",
+ "statusBar.debuggingForeground": "#ff80ac50",
+ "statusBar.debuggingBorder": "#ff80acaf",
+ "statusBar.noFolderForeground": "#8787ab",
+ "statusBar.noFolderBackground": "#292640",
+ "statusBar.noFolderBorder": "#292640",
+ "statusBarItem.activeBackground": "#564d9977",
+ "statusBarItem.hoverBackground": "#363253",
+ "statusBarItem.prominentBackground": "#1f1d30",
+ "statusBarItem.prominentHoverBackground": "#1b1641",
+ "button.background": "#007f99",
+ "button.foreground": "#edebff",
+ "button.hoverBackground": "#0ac",
+ "dropdown.background": "#2f2c49",
+ "dropdown.border": "#2f2c49",
+ "dropdown.foreground": "#7a70c2",
+ "editorMarkerNavigation.background": "#3a3a5e29",
+ "editorMarkerNavigationError.background": "#e34e1c",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#292640",
+ "editorError.foreground": "#e34e1c",
+ "editorWarning.border": "#292640",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#292640",
+ "editorInfo.foreground": "#998ef1",
+ "editorHint.border": "#49e9a600",
+ "editorHint.foreground": "#49e9a6",
+ "editorGroup.emptyBackground": "#5c597333",
+ "editorGroup.border": "#171523",
+ "editorGroup.dropBackground": "#5c597333",
+ "editorGroupHeader.noTabsBackground": "#2f2c49",
+ "editorGroupHeader.tabsBackground": "#2f2c49",
+ "editorGroupHeader.tabsBorder": "#2f2c49",
+ "tab.activeBackground": "#292640",
+ "tab.unfocusedActiveBackground": "#2d2b3b",
+ "tab.activeForeground": "#998ef1",
+ "tab.border": "#171523",
+ "tab.inactiveBackground": "#2f2c49",
+ "tab.inactiveForeground": "#a9a5c0",
+ "tab.unfocusedActiveForeground": "#a9a5c0",
+ "tab.unfocusedInactiveForeground": "#a9a5c0",
+ "tab.activeBorderTop": "#998ef1",
+ "tab.activeModifiedBorder": "#49e9a6",
+ "tab.activeBorder": "#292640",
+ "tab.unfocusedActiveBorder": "#292640",
+ "tab.unfocusedHoverBackground": "#998ef121",
+ "textBlockQuote.background": "#292640",
+ "textBlockQuote.border": "#6e67a8",
+ "textCodeBlock.background": "#292640",
+ "textLink.activeForeground": "#998ef1",
+ "textLink.foreground": "#998ef1",
+ "textPreformat.foreground": "#ffc180",
+ "textSeparator.foreground": "#292640",
+ "walkThrough.embeddedEditorBackground": "#292640",
+ "welcomePage.buttonBackground": "#1f1d30",
+ "welcomePage.buttonHoverBackground": "#2f2c49",
+ "input.background": "#1f1d30",
+ "input.border": "#27274e",
+ "input.foreground": "#CDD3DE",
+ "input.placeholderForeground": "#8787ab",
+ "inputOption.activeBorder": "#6e67a8",
+ "inputValidation.errorForeground": "#ff4000",
+ "inputValidation.errorBackground": "#501502ee",
+ "inputValidation.errorBorder": "#691c02",
+ "inputValidation.infoForeground": "#40d4e7",
+ "inputValidation.infoBackground": "#0f6e7bee",
+ "inputValidation.infoBorder": "#148f9f",
+ "inputValidation.warningForeground": "#e69533",
+ "inputValidation.warningBackground": "#82694acc",
+ "inputValidation.warningBorder": "#a88457",
+ "editorWidget.background": "#2f2c49",
+ "editorWidget.border": "#171523",
+ "editorHoverWidget.background": "#322d52",
+ "editorHoverWidget.border": "#171523",
+ "editorSuggestWidget.background": "#322d52",
+ "editorSuggestWidget.border": "#171523",
+ "editorSuggestWidget.foreground": "#a9a5c0",
+ "editorSuggestWidget.highlightForeground": "#998ef1",
+ "editorSuggestWidget.selectedBackground": "#453f73",
+ "editorGutter.background": "#292640",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#e34e1c",
+ "editorGutter.modifiedBackground": "#ffc180",
+ "editor.selectionBackground": "#6e67a855",
+ "editor.selectionHighlightBackground": "#49ace933",
+ "editor.inactiveSelectionBackground": "#6e67a833",
+ "editor.wordHighlightStrongBackground": "#cc990033",
+ "editor.wordHighlightBackground": "#e4b78133",
+ "editor.findMatchBackground": "#40bf6a11",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#49e9a622",
+ "editor.hoverHighlightBackground": "#6e67a83f",
+ "editor.lineHighlightBackground": "#35305aee",
+ "editor.lineHighlightBorder": "#35305a",
+ "editor.rangeHighlightBackground": "#49d6e922",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#ffffff21",
+ "editorIndentGuide.background": "#383450",
+ "editorIndentGuide.activeBackground": "#595289",
+ "editorBracketMatch.background": "#6e67a822",
+ "editorBracketMatch.border": "#6e67a8",
+ "editorRuler.foreground": "#473856",
+ "editorCodeLens.foreground": "#776284",
+ "terminal.ansiBlack": "#302f3d",
+ "terminal.ansiRed": "#e66533",
+ "terminal.ansiGreen": "#49e9a6",
+ "terminal.ansiYellow": "#e4b781",
+ "terminal.ansiBlue": "#49ace9",
+ "terminal.ansiMagenta": "#df769b",
+ "terminal.ansiCyan": "#49d6e9",
+ "terminal.ansiWhite": "#b6b3cc",
+ "terminal.ansiBrightBlack": "#504e65",
+ "terminal.ansiBrightRed": "#e97749",
+ "terminal.ansiBrightGreen": "#60ebb1",
+ "terminal.ansiBrightYellow": "#e69533",
+ "terminal.ansiBrightBlue": "#60b6eb",
+ "terminal.ansiBrightMagenta": "#e798b3",
+ "terminal.ansiBrightCyan": "#60dbeb",
+ "terminal.ansiBrightWhite": "#c5c2d6",
+ "terminal.background": "#1f1d30",
+ "terminal.foreground": "#c5c2d6",
+ "terminalCursor.background": "#1f1d30",
+ "terminalCursor.foreground": "#c5c2d6",
+ "merge.border": "#29264000",
+ "merge.currentContentBackground": "#85f1ff22",
+ "merge.currentHeaderBackground": "#85f1ff44",
+ "merge.incomingContentBackground": "#9d92f222",
+ "merge.incomingHeaderBackground": "#9d92f244",
+ "merge.commonContentBackground": "#ffc18022",
+ "merge.commonHeaderBackground": "#ffc18044",
+ "editorOverviewRuler.currentContentForeground": "#85f1ff44",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f244",
+ "editorOverviewRuler.commonContentForeground": "#ffc18044",
+ "editorOverviewRuler.border": "#292640",
+ "notificationCenter.border": "#2f2c49",
+ "notificationCenterHeader.foreground": "#8787ab",
+ "notificationCenterHeader.background": "#2f2c49",
+ "notificationToast.border": "#2f2c49",
+ "notifications.foreground": "#CDD3DE",
+ "notifications.background": "#2f2c49",
+ "notifications.border": "#2f2c49",
+ "notificationLink.foreground": "#8787ab",
+ "diffEditor.insertedTextBackground": "#16b67327",
+ "diffEditor.removedTextBackground": "#e6653341",
+ "debugToolBar.background": "#292640",
+ "debugExceptionWidget.background": "#292640",
+ "debugExceptionWidget.border": "#6e67a8",
+ "extensionButton.prominentBackground": "#008c99",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#00bbcc",
+ "focusBorder": "#2f2c49",
+ "foreground": "#c5c2d6",
+ "panel.background": "#1f1d30",
+ "panel.border": "#6e67a8",
+ "panelTitle.activeBorder": "#6e67a8",
+ "panelTitle.activeForeground": "#998ef1",
+ "panelTitle.inactiveForeground": "#716c93",
+ "peekView.border": "#6e67a8",
+ "peekViewEditor.background": "#201d3a",
+ "peekViewEditor.matchHighlightBackground": "#4c448899",
+ "peekViewEditorGutter.background": "#201d3a",
+ "peekViewResult.background": "#221f3d",
+ "peekViewResult.fileForeground": "#ffc180",
+ "peekViewResult.lineForeground": "#8787ab",
+ "peekViewResult.matchHighlightBackground": "#343050",
+ "peekViewResult.selectionBackground": "#343050",
+ "peekViewResult.selectionForeground": "#8787ab",
+ "peekViewTitle.background": "#221f3d",
+ "peekViewTitleDescription.foreground": "#8787ab",
+ "peekViewTitleLabel.foreground": "#ffc180",
+ "progressBar.background": "#998ef1",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#7060eb77",
+ "scrollbarSlider.background": "#7060eb33",
+ "scrollbarSlider.hoverBackground": "#7060eb55",
+ "gitDecoration.addedResourceForeground": "#16b673",
+ "gitDecoration.modifiedResourceForeground": "#49e9a6",
+ "gitDecoration.deletedResourceForeground": "#e34e1c",
+ "gitDecoration.untrackedResourceForeground": "#40d4e7",
+ "gitDecoration.ignoredResourceForeground": "#5b788b",
+ "gitDecoration.conflictingResourceForeground": "#ffc180",
+ "pickerGroup.border": "#6e67a8",
+ "pickerGroup.foreground": "#998ef1",
+ "list.activeSelectionBackground": "#332e5c",
+ "list.activeSelectionForeground": "#edebff",
+ "list.dropBackground": "#202040",
+ "list.focusBackground": "#3a3a78",
+ "list.focusForeground": "#edebff",
+ "list.highlightForeground": "#998ef1",
+ "list.hoverBackground": "#383866",
+ "list.hoverForeground": "#edebff",
+ "list.inactiveFocusBackground": "#2b2843",
+ "list.inactiveSelectionBackground": "#2f2c49",
+ "list.inactiveSelectionForeground": "#c5c2d6",
+ "list.errorForeground": "#e34e1c",
+ "list.warningForeground": "#ffa857",
+ "listFilterWidget.background": "#202040",
+ "listFilterWidget.outline": "#49e9a6",
+ "listFilterWidget.noMatchesOutline": "#e34e1c",
+ "tree.indentGuidesStroke": "#5c5973",
+ "settings.headerForeground": "#c5c2d6",
+ "settings.modifiedItemIndicator": "#15ac31",
+ "settings.dropdownListBorder": "#49408c77",
+ "settings.dropdownBackground": "#2f2c49",
+ "settings.dropdownForeground": "#0ac",
+ "settings.dropdownBorder": "#2f2c49",
+ "settings.checkboxBackground": "#2f2c49",
+ "settings.checkboxForeground": "#0ac",
+ "settings.checkboxBorder": "#2f2c49",
+ "settings.textInputBackground": "#2f2c49",
+ "settings.textInputForeground": "#0ac",
+ "settings.textInputBorder": "#2f2c49",
+ "settings.numberInputBackground": "#1f1d30",
+ "settings.numberInputForeground": "#7060eb",
+ "settings.numberInputBorder": "#1f1d30",
+ "breadcrumb.foreground": "#a9a5c0",
+ "breadcrumb.background": "#292640",
+ "breadcrumb.focusForeground": "#998ef1",
+ "breadcrumb.activeSelectionForeground": "#edebff",
+ "breadcrumbPicker.background": "#2f2c49",
+ "titleBar.activeBackground": "#292640",
+ "titleBar.activeForeground": "#c5c2d6",
+ "titleBar.inactiveBackground": "#292640",
+ "titleBar.inactiveForeground": "#a9a5c0",
+ "menu.background": "#2f2c49",
+ "menu.foreground": "#a9a5c0",
+ "menu.selectionBackground": "#3a3a78",
+ "menu.selectionForeground": "#998ef1",
+ "menu.selectionBorder": "#3a3a78",
+ "menu.separatorBackground": "#998ef1",
+ "menubar.selectionBackground": "#3a3a78",
+ "menubar.selectionForeground": "#998ef1",
+ "menubar.selectionBorder": "#3a3a78",
+ "editor.snippetTabstopHighlightBackground": "#211f33",
+ "editor.snippetTabstopHighlightBorder": "#2b2843",
+ "editor.snippetFinalTabstopHighlightBackground": "#211f33",
+ "editor.snippetFinalTabstopHighlightBorder": "#2b2843",
+ "minimap.findMatchHighlight": "#998ef1ee",
+ "minimap.errorHighlight": "#e34e1cee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#16b673",
+ "minimapGutter.modifiedBackground": "#49e9a6",
+ "minimapGutter.deletedBackground": "#e34e1c",
+ "minimap.background": "#29264099"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#716c93"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#c5c2d6"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#df769b"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#e4b781"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#d67e5c"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#d5971a"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e66533"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#49e9a6"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#16b673"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7060eb"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#16a3b6"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#49d6e9"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#49ace9"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": [
+ "invalid",
+ "invalid.illegal"
+ ],
+ "settings": {
+ "foreground": "#e3541c"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": [
+ "markup.strikethrough"
+ ],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/noctis/viola.json b/assets/themes/src/vscode/noctis/viola.json
new file mode 100644
index 0000000000..4d474ad311
--- /dev/null
+++ b/assets/themes/src/vscode/noctis/viola.json
@@ -0,0 +1,1112 @@
+{
+ "name": "Noctis Viola",
+ "type": "dark",
+ "colors": {
+ "selection.background": "#bf8ef166",
+ "descriptionForeground": "#996bc7",
+ "errorForeground": "#e34e1c",
+ "widget.shadow": "#00000044",
+ "editor.background": "#30243d",
+ "editor.foreground": "#ccbfd9",
+ "editorLineNumber.foreground": "#665973",
+ "editorLineNumber.activeForeground": "#996bc7",
+ "editorCursor.foreground": "#d9b3ff",
+ "badge.background": "#bf8ef1",
+ "badge.foreground": "#1c1226",
+ "activityBar.background": "#30243d",
+ "activityBar.dropBackground": "#996bc765",
+ "activityBar.border": "#1c1226",
+ "activityBar.foreground": "#8767a8",
+ "activityBar.inactiveForeground": "#8767a877",
+ "activityBarBadge.background": "#bf8ef1",
+ "activityBarBadge.foreground": "#1c1226",
+ "activityBar.activeBackground": "#bf8ef133",
+ "activityBar.activeBorder": "#bf8ef1",
+ "sideBar.background": "#2b2136",
+ "sideBar.dropBackground": "#2b2136",
+ "sideBar.border": "#1c1226",
+ "sideBar.foreground": "#b3a5c0",
+ "sideBarSectionHeader.background": "#3d2e4d",
+ "sideBarSectionHeader.foreground": "#b3a5c0",
+ "sideBarTitle.foreground": "#b3a5c0",
+ "sideBarSectionHeader.border": "#1c1226",
+ "statusBar.foreground": "#8767a8",
+ "statusBar.background": "#30243d",
+ "statusBar.border": "#1c1226",
+ "statusBar.debuggingBackground": "#30243d",
+ "statusBar.debuggingForeground": "#ff80ac50",
+ "statusBar.debuggingBorder": "#ff80acaf",
+ "statusBar.noFolderForeground": "#9987ab",
+ "statusBar.noFolderBackground": "#30243d",
+ "statusBar.noFolderBorder": "#30243d",
+ "statusBarItem.activeBackground": "#734b9b88",
+ "statusBarItem.hoverBackground": "#422b5a",
+ "statusBarItem.prominentBackground": "#21162d",
+ "statusBarItem.prominentHoverBackground": "#2b1145",
+ "button.background": "#007f99",
+ "button.foreground": "#edebff",
+ "button.hoverBackground": "#0ac",
+ "dropdown.background": "#3d2e4d",
+ "dropdown.border": "#3d2e4d",
+ "dropdown.foreground": "#996bc7",
+ "editorMarkerNavigation.background": "#4c326729",
+ "editorMarkerNavigationError.background": "#e34e1c",
+ "editorMarkerNavigationWarning.background": "#e69533",
+ "editorError.border": "#30243d",
+ "editorError.foreground": "#e34e1c",
+ "editorWarning.border": "#30243d",
+ "editorWarning.foreground": "#e69533",
+ "editorInfo.border": "#30243d",
+ "editorInfo.foreground": "#bf8ef1",
+ "editorHint.border": "#49e9a600",
+ "editorHint.foreground": "#49e9a6",
+ "editorGroup.emptyBackground": "#66597333",
+ "editorGroup.border": "#1c1226",
+ "editorGroup.dropBackground": "#66597333",
+ "editorGroupHeader.noTabsBackground": "#3d2e4d",
+ "editorGroupHeader.tabsBackground": "#3d2e4d",
+ "editorGroupHeader.tabsBorder": "#3d2e4d",
+ "tab.activeBackground": "#30243d",
+ "tab.unfocusedActiveBackground": "#302b36",
+ "tab.activeForeground": "#bf8ef1",
+ "tab.border": "#1c1226",
+ "tab.inactiveBackground": "#3d2e4d",
+ "tab.inactiveForeground": "#b3a5c0",
+ "tab.unfocusedActiveForeground": "#b3a5c0",
+ "tab.unfocusedInactiveForeground": "#b3a5c0",
+ "tab.activeBorderTop": "#bf8ef1",
+ "tab.activeModifiedBorder": "#49e9a6",
+ "tab.activeBorder": "#30243d",
+ "tab.unfocusedActiveBorder": "#30243d",
+ "tab.unfocusedHoverBackground": "#996bc721",
+ "textBlockQuote.background": "#30243d",
+ "textBlockQuote.border": "#8767a8",
+ "textCodeBlock.background": "#30243d",
+ "textLink.activeForeground": "#bf8ef1",
+ "textLink.foreground": "#bf8ef1",
+ "textPreformat.foreground": "#ffc180",
+ "textSeparator.foreground": "#30243d",
+ "walkThrough.embeddedEditorBackground": "#30243d",
+ "welcomePage.buttonBackground": "#291d35",
+ "welcomePage.buttonHoverBackground": "#3d2e4d",
+ "input.background": "#291d35",
+ "input.border": "#402956",
+ "input.foreground": "#CDD3DE",
+ "input.placeholderForeground": "#9987ab",
+ "inputOption.activeBorder": "#8767a8",
+ "inputValidation.errorForeground": "#ff4000",
+ "inputValidation.errorBackground": "#501502ee",
+ "inputValidation.errorBorder": "#691c02",
+ "inputValidation.infoForeground": "#40d4e7",
+ "inputValidation.infoBackground": "#0f6e7bee",
+ "inputValidation.infoBorder": "#148f9f",
+ "inputValidation.warningForeground": "#e69533",
+ "inputValidation.warningBackground": "#82694acc",
+ "inputValidation.warningBorder": "#a88457",
+ "editorWidget.background": "#3d2e4d",
+ "editorWidget.border": "#1c1226",
+ "editorHoverWidget.background": "#462d5d",
+ "editorHoverWidget.border": "#1c1226",
+ "editorSuggestWidget.background": "#462d5d",
+ "editorSuggestWidget.border": "#1c1226",
+ "editorSuggestWidget.foreground": "#b3a5c0",
+ "editorSuggestWidget.highlightForeground": "#bf8ef1",
+ "editorSuggestWidget.selectedBackground": "#593a78",
+ "editorGutter.background": "#30243d",
+ "editorGutter.addedBackground": "#8ce99a",
+ "editorGutter.deletedBackground": "#e34e1c",
+ "editorGutter.modifiedBackground": "#ffc180",
+ "editor.selectionBackground": "#8767a855",
+ "editor.selectionHighlightBackground": "#49ace933",
+ "editor.inactiveSelectionBackground": "#8767a833",
+ "editor.wordHighlightStrongBackground": "#cc990033",
+ "editor.wordHighlightBackground": "#e4b78133",
+ "editor.findMatchBackground": "#40bf6a11",
+ "editor.findMatchHighlightBackground": "#0e667179",
+ "editor.findRangeHighlightBackground": "#49e9a622",
+ "editor.hoverHighlightBackground": "#8767a83f",
+ "editor.lineHighlightBackground": "#402d53ee",
+ "editor.lineHighlightBorder": "#402d53",
+ "editor.rangeHighlightBackground": "#49d6e922",
+ "editorLink.activeForeground": "#14a5ff",
+ "editorWhitespace.foreground": "#ffffff21",
+ "editorIndentGuide.background": "#422e56",
+ "editorIndentGuide.activeBackground": "#595289",
+ "editorBracketMatch.background": "#8767a822",
+ "editorBracketMatch.border": "#8767a8",
+ "editorRuler.foreground": "#473856",
+ "editorCodeLens.foreground": "#776284",
+ "terminal.ansiBlack": "#362f3d",
+ "terminal.ansiRed": "#e66533",
+ "terminal.ansiGreen": "#49e9a6",
+ "terminal.ansiYellow": "#e4b781",
+ "terminal.ansiBlue": "#49ace9",
+ "terminal.ansiMagenta": "#df769b",
+ "terminal.ansiCyan": "#49d6e9",
+ "terminal.ansiWhite": "#bfafcf",
+ "terminal.ansiBrightBlack": "#594e65",
+ "terminal.ansiBrightRed": "#e97749",
+ "terminal.ansiBrightGreen": "#60ebb1",
+ "terminal.ansiBrightYellow": "#e69533",
+ "terminal.ansiBrightBlue": "#60b6eb",
+ "terminal.ansiBrightMagenta": "#e798b3",
+ "terminal.ansiBrightCyan": "#60dbeb",
+ "terminal.ansiBrightWhite": "#ccbfd9",
+ "terminal.background": "#291d35",
+ "terminal.foreground": "#ccbfd9",
+ "terminalCursor.background": "#291d35",
+ "terminalCursor.foreground": "#ccbfd9",
+ "merge.border": "#30243d00",
+ "merge.currentContentBackground": "#85f1ff22",
+ "merge.currentHeaderBackground": "#85f1ff44",
+ "merge.incomingContentBackground": "#9d92f222",
+ "merge.incomingHeaderBackground": "#9d92f244",
+ "merge.commonContentBackground": "#ffc18022",
+ "merge.commonHeaderBackground": "#ffc18044",
+ "editorOverviewRuler.currentContentForeground": "#85f1ff44",
+ "editorOverviewRuler.incomingContentForeground": "#9d92f244",
+ "editorOverviewRuler.commonContentForeground": "#ffc18044",
+ "editorOverviewRuler.border": "#30243d",
+ "notificationCenter.border": "#3d2e4d",
+ "notificationCenterHeader.foreground": "#9987ab",
+ "notificationCenterHeader.background": "#3d2e4d",
+ "notificationToast.border": "#3d2e4d",
+ "notifications.foreground": "#CDD3DE",
+ "notifications.background": "#3d2e4d",
+ "notifications.border": "#3d2e4d",
+ "notificationLink.foreground": "#9987ab",
+ "diffEditor.insertedTextBackground": "#16b67327",
+ "diffEditor.removedTextBackground": "#e6653341",
+ "debugToolBar.background": "#30243d",
+ "debugExceptionWidget.background": "#30243d",
+ "debugExceptionWidget.border": "#8767a8",
+ "extensionButton.prominentBackground": "#008c99",
+ "extensionButton.prominentForeground": "#e5f5f5",
+ "extensionButton.prominentHoverBackground": "#00bbcc",
+ "focusBorder": "#3d2e4d",
+ "foreground": "#ccbfd9",
+ "panel.background": "#291d35",
+ "panel.border": "#8767a8",
+ "panelTitle.activeBorder": "#8767a8",
+ "panelTitle.activeForeground": "#bf8ef1",
+ "panelTitle.inactiveForeground": "#725b8b",
+ "peekView.border": "#8767a8",
+ "peekViewEditor.background": "#2b1d3a",
+ "peekViewEditor.matchHighlightBackground": "#63438499",
+ "peekViewEditorGutter.background": "#2b1d3a",
+ "peekViewResult.background": "#2e1f3d",
+ "peekViewResult.fileForeground": "#ffc180",
+ "peekViewResult.lineForeground": "#9987ab",
+ "peekViewResult.matchHighlightBackground": "#343050",
+ "peekViewResult.selectionBackground": "#343050",
+ "peekViewResult.selectionForeground": "#9987ab",
+ "peekViewTitle.background": "#2e1f3d",
+ "peekViewTitleDescription.foreground": "#9987ab",
+ "peekViewTitleLabel.foreground": "#ffc180",
+ "progressBar.background": "#bf8ef1",
+ "scrollbar.shadow": "#00000044",
+ "scrollbarSlider.activeBackground": "#a660eb77",
+ "scrollbarSlider.background": "#a660eb33",
+ "scrollbarSlider.hoverBackground": "#a660eb55",
+ "gitDecoration.addedResourceForeground": "#16b673",
+ "gitDecoration.modifiedResourceForeground": "#49e9a6",
+ "gitDecoration.deletedResourceForeground": "#e34e1c",
+ "gitDecoration.untrackedResourceForeground": "#40d4e7",
+ "gitDecoration.ignoredResourceForeground": "#5b788b",
+ "gitDecoration.conflictingResourceForeground": "#ffc180",
+ "pickerGroup.border": "#8767a8",
+ "pickerGroup.foreground": "#bf8ef1",
+ "list.activeSelectionBackground": "#472e60",
+ "list.activeSelectionForeground": "#edebff",
+ "list.dropBackground": "#302040",
+ "list.focusBackground": "#593a78",
+ "list.focusForeground": "#edebff",
+ "list.highlightForeground": "#bf8ef1",
+ "list.hoverBackground": "#6a448d",
+ "list.hoverForeground": "#edebff",
+ "list.inactiveFocusBackground": "#362546",
+ "list.inactiveSelectionBackground": "#3d2e4d",
+ "list.inactiveSelectionForeground": "#ccbfd9",
+ "list.errorForeground": "#e34e1c",
+ "list.warningForeground": "#ffa857",
+ "listFilterWidget.background": "#302040",
+ "listFilterWidget.outline": "#49e9a6",
+ "listFilterWidget.noMatchesOutline": "#e34e1c",
+ "tree.indentGuidesStroke": "#665973",
+ "settings.headerForeground": "#ccbfd9",
+ "settings.modifiedItemIndicator": "#15ac31",
+ "settings.dropdownListBorder": "#66408c77",
+ "settings.dropdownBackground": "#3d2e4d",
+ "settings.dropdownForeground": "#0ac",
+ "settings.dropdownBorder": "#3d2e4d",
+ "settings.checkboxBackground": "#3d2e4d",
+ "settings.checkboxForeground": "#0ac",
+ "settings.checkboxBorder": "#3d2e4d",
+ "settings.textInputBackground": "#3d2e4d",
+ "settings.textInputForeground": "#0ac",
+ "settings.textInputBorder": "#3d2e4d",
+ "settings.numberInputBackground": "#291d35",
+ "settings.numberInputForeground": "#a660eb",
+ "settings.numberInputBorder": "#291d35",
+ "breadcrumb.foreground": "#b3a5c0",
+ "breadcrumb.background": "#30243d",
+ "breadcrumb.focusForeground": "#bf8ef1",
+ "breadcrumb.activeSelectionForeground": "#edebff",
+ "breadcrumbPicker.background": "#3d2e4d",
+ "titleBar.activeBackground": "#30243d",
+ "titleBar.activeForeground": "#ccbfd9",
+ "titleBar.inactiveBackground": "#30243d",
+ "titleBar.inactiveForeground": "#b3a5c0",
+ "menu.background": "#3d2e4d",
+ "menu.foreground": "#b3a5c0",
+ "menu.selectionBackground": "#593a78",
+ "menu.selectionForeground": "#bf8ef1",
+ "menu.selectionBorder": "#593a78",
+ "menu.separatorBackground": "#bf8ef1",
+ "menubar.selectionBackground": "#593a78",
+ "menubar.selectionForeground": "#bf8ef1",
+ "menubar.selectionBorder": "#593a78",
+ "editor.snippetTabstopHighlightBackground": "#21162d",
+ "editor.snippetTabstopHighlightBorder": "#30243d",
+ "editor.snippetFinalTabstopHighlightBackground": "#21162d",
+ "editor.snippetFinalTabstopHighlightBorder": "#30243d",
+ "minimap.findMatchHighlight": "#bf8ef1aa",
+ "minimap.errorHighlight": "#e34e1cee",
+ "minimap.warningHighlight": "#e69533ee",
+ "minimapGutter.addedBackground": "#16b673",
+ "minimapGutter.modifiedBackground": "#49e9a6",
+ "minimapGutter.deletedBackground": "#e34e1c",
+ "minimap.background": "#30243d99"
+ },
+ "tokenColors": [
+ {
+ "name": "COMMENT",
+ "scope": [
+ "comment",
+ "punctuation.definition.comment",
+ "punctuation.definition.tag",
+ "comment.block.documentation punctuation.definition.bracket",
+ "source.ocaml comment constant.regexp meta.separator",
+ "markup.other.anchor support.constant",
+ "markup.fenced_code",
+ "markup.fenced_code punctuation.definition",
+ "punctuation.definition.heading",
+ "punctuation.definition.bold.markdown",
+ "punctuation.definition.italic.markdown",
+ "punctuation.definition.strikethrough.markdown"
+ ],
+ "settings": {
+ "foreground": "#7f659a"
+ }
+ },
+ {
+ "name": "TEXT",
+ "scope": [
+ "constant.character",
+ "constant.escape",
+ "text.html.markdown",
+ "punctuation.definition.list_item",
+ "keyword.begin.tag.ejs",
+ "constant.name.attribute.tag.pug",
+ "source.clojure meta.symbol",
+ "constant.other.description.jsdoc",
+ "keyword.other.array.phpdoc.php",
+ "keyword.operator.other.powershell",
+ "meta.link.inline punctuation.definition.string",
+ "source.sql",
+ "source meta.brace",
+ "source punctuation",
+ "text.html punctuation",
+ "markup meta punctuation.definition",
+ "meta.bracket.julia",
+ "meta.array.julia",
+ "entity.name.footnote",
+ "source.ocaml punctuation.definition.tag",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "entity.other.attribute-name strong",
+ "binding.fsharp keyword.symbol.fsharp",
+ "entity.name.record.field.elm",
+ "entity.name.record.field.accessor.elm",
+ "storage.modifier.array.bracket",
+ "source.css entity.other",
+ "meta.attribute-selector punctuation.definition.entity",
+ "markup.other.anchor string",
+ "punctuation.separator",
+ "punctuation.section",
+ "punctuation.terminator"
+ ],
+ "settings": {
+ "foreground": "#ccbfd9"
+ }
+ },
+ {
+ "name": "KEYWORD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.modifier",
+ "meta.tag.sgml",
+ "punctuation.accessor",
+ "constant.other.color",
+ "entity.name.section",
+ "markup.heading",
+ "markup.heading punctuation.definition",
+ "entity.other.attribute-name.pseudo-class",
+ "entity.other.attribute-name.pseudo-element",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "storage.type.function.pug",
+ "text.pug storage.type",
+ "text.pug meta.tag.other",
+ "source.clojure storage.control",
+ "meta.expression.clojure",
+ "punctuation.separator.slice.python",
+ "punctuation.separator.question-mark.cs",
+ "punctuation.definition.parameters.varargs",
+ "source.go keyword.operator",
+ "punctuation.separator.pointer-access",
+ "punctuation.separator.other.ruby",
+ "keyword.package",
+ "keyword.import",
+ "punctuation.definition.keyword",
+ "punctuation.separator.hash.cs",
+ "entity.other.attribute-name.pseudo-class.css punctuation.definition.entity.css",
+ "entity.other.attribute-name.pseudo-element.css punctuation.definition.entity.css",
+ "source.kotlin storage.type.import",
+ "source.kotlin storage.type.package",
+ "constant.string.documentation.powershell",
+ "punctuation.section.directive",
+ "storage.type.rust",
+ "punctuation.definition.attribute",
+ "punctuation.definition.preprocessor",
+ "punctuation.separator.namespace",
+ "punctuation.separator.method",
+ "keyword.control punctuation.definition.function",
+ "source.ocaml variable.interpolation string",
+ "source.reason variable.interpolation",
+ "punctuation.definition.directive",
+ "storage.type.modifier",
+ "keyword.other.class.fileds",
+ "source.toml entity.other.attribute-name",
+ "source.css entity.name.tag.custom",
+ "sharing.modifier",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby"
+ ],
+ "settings": {
+ "foreground": "#df769b"
+ }
+ },
+ {
+ "name": "VARIABLE",
+ "scope": [
+ "variable",
+ "variable.object",
+ "variable.other",
+ "variable.parameter",
+ "support",
+ "entity.name.module",
+ "variable.import.parameter",
+ "variable.other.class",
+ "meta.toc-list.id.html",
+ "source.json meta.structure.dictionary.json support.type.property-name.json",
+ "meta.var.clojure",
+ "entity.name.variable",
+ "source.java meta.class.body.java",
+ "entity.name.package.go",
+ "source.c",
+ "source.cpp",
+ "source.go",
+ "source.python",
+ "meta.function-call.arguments.python",
+ "source.ruby",
+ "source.coffee.embedded.source",
+ "source.coffee",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "storage.type.annotation",
+ "punctuation.definition.annotation",
+ "source.groovy.embedded.source",
+ "punctuation.definition.variable",
+ "source.powershell",
+ "string.quoted.interpolated.vala constant.character.escape.vala",
+ "source.apacheconf",
+ "source.objc",
+ "source.crystal",
+ "string.quoted.double.kotlin entity.string.template.element.kotlin",
+ "entity.name.package.kotlin",
+ "meta.template.expression.kotlin",
+ "parameter.variable.function",
+ "variable.other.constant.elixir",
+ "source.elixir.embedded.source",
+ "source.sql.embedded",
+ "punctuation.definition.placeholder",
+ "source.swift",
+ "source.julia",
+ "source.shell",
+ "variable.other.normal punctuation.definition.variable.shell",
+ "source.reason variable.language",
+ "source.reason variable.language string.other.link",
+ "source.elm meta.value",
+ "source.elm meta.declaration.module",
+ "meta.embedded.block variable punctuation.definition.variable.php",
+ "string.quoted.double.class.other",
+ "source.toml keyword",
+ "support.type.nim",
+ "source.tf meta.template.expression",
+ "source.scala entity.name.import",
+ "markup.code",
+ "markup.fenced_code.block"
+ ],
+ "settings": {
+ "foreground": "#e4b781"
+ }
+ },
+ {
+ "name": "ANNOTATION",
+ "scope": [
+ "support.variable.property",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "entity.other.attribute-name.id",
+ "entity.other.attribute-name.id punctuation.definition.entity",
+ "entity.name.type.annotation.kotlin",
+ "support.type.primitive",
+ "meta.type.parameters entity.name.type",
+ "meta.type.annotation entity.name.type",
+ "punctuation.definition.typeparameters",
+ "source.python support.type.python",
+ "comment.block.documentation.phpdoc.php keyword.other.type.php",
+ "storage.type.php",
+ "keyword.type",
+ "storage.type.cs",
+ "storage.type.c",
+ "storage.type.objc",
+ "punctuation.definition.storage.type.objc",
+ "markup punctuation.definition",
+ "storage.type.powershell",
+ "comment.block.documentation entity.name.type",
+ "source.java storage.type",
+ "storage.type.primitive",
+ "source.groovy storage.type",
+ "storage.type.r",
+ "source.haskell storage.type",
+ "punctuation.separator.clause-head-body",
+ "source.go storage.type",
+ "storage.type.core.rust",
+ "storage.class.std.rust",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "support.type.vb",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "constant.other.reference",
+ "source.graphql support.type",
+ "source.reason support.type string",
+ "entity.name.type.fsharp",
+ "source.elm storage.type",
+ "storage.type.user-defined",
+ "storage.type.built-in",
+ "support.type.builtin",
+ "source.swift support.type",
+ "support.class.crystal",
+ "storage.type.integral",
+ "source.cpp storage.type.cpp",
+ "source.vala storage.type",
+ "source.hlsl storage.type.basic",
+ "source.hlsl support.type.other",
+ "source.apex storage.type",
+ "source.nim storage.type",
+ "source.cpp entity.name.type",
+ "support.class.builtin",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "markup.raw.monospace",
+ "markup.mark",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric"
+ ],
+ "settings": {
+ "foreground": "#d67e5c"
+ }
+ },
+ {
+ "name": "CONSTANT",
+ "scope": [
+ "constant",
+ "variable.other.constant",
+ "support.constant",
+ "punctuation.definition.entity",
+ "constant.character.entity",
+ "support.variable.magic",
+ "markup.quote",
+ "entity.name.type.type-parameter.cs",
+ "punctuation.bracket.angle",
+ "entity.name.function.preprocessor.c",
+ "storage.type.scala",
+ "entity.helper.apacheconf",
+ "variable.language.crystal",
+ "punctuation.definition.constant",
+ "support.constant punctuation.definition.variable",
+ "constant.character.math",
+ "support.class.math",
+ "source.graphql constant.character",
+ "source.reason constant.language.list",
+ "source.cpp variable.other.enummember",
+ "support.variable.class.hideshow",
+ "entity.other.attribute-name.class",
+ "meta.attribute.id entity.other.attribute-name",
+ "text.html entity.other.attribute-name",
+ "meta.tag.attributes entity.other.attribute-name",
+ "text.xml entity.other.attribute-name",
+ "source.cs entity.other.attribute-name",
+ "constant.character.format.placeholder",
+ "constant.other.placeholder",
+ "source.vue entity.other.attribute-name",
+ "entity.other.attribute-name.mjml",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "meta.definition.attribute-entry punctuation.separator"
+ ],
+ "settings": {
+ "foreground": "#d5971a"
+ }
+ },
+ {
+ "name": "TAG",
+ "scope": [
+ "variable.language",
+ "variable.parameter.function.language.special",
+ "punctuation.definition.italic",
+ "punctuation.definition.bold",
+ "entity.name.tag",
+ "variable.language punctuation.definition.variable",
+ "keyword.control.clojure",
+ "support.type.exception.python",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "keyword.other.var.cs",
+ "storage.modifier.super",
+ "source.go keyword",
+ "keyword.function.go",
+ "meta.separator",
+ "keyword.other.fn.rust",
+ "storage.modifier.static.rust",
+ "source.r meta.function.r keyword.control.r",
+ "storage.type.def",
+ "meta.class.identifier storage.modifier",
+ "source.scala keyword.declaration",
+ "storage.type",
+ "comment.block.documentation punctuation.definition.block.tag",
+ "comment.block.documentation punctuation.definition.inline.tag",
+ "entity.tag.apacheconf",
+ "keyword.other.julia",
+ "source.julia storage.modifier",
+ "constant.language.empty-list.haskell",
+ "meta.function.powershell storage.type.powershell",
+ "keyword.control.fun",
+ "punctuation.terminator.function",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml storage.type markup.underline",
+ "binding.fsharp keyword",
+ "function.anonymous keyword",
+ "function.anonymous keyword.symbol.fsharp",
+ "meta.embedded.block variable.language punctuation.definition.variable.php",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other.class",
+ "source.wsd keyword.other.linebegin",
+ "keyword.other.skinparam.keyword",
+ "keyword.other.nim",
+ "markup.deleted.diff",
+ "source.tf support.class.variable",
+ "meta.function.lua keyword.control.lua",
+ "markup.block entity.name.tag",
+ "markup.meta.attribute-list",
+ "source.zig keyword.default",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "foreground": "#e66533"
+ }
+ },
+ {
+ "name": "STRING",
+ "scope": [
+ "string",
+ "punctuation.definition.string",
+ "source.css support.constant",
+ "entity.name.import.go",
+ "markup.raw.texttt",
+ "markup.inserted.diff",
+ "source.scala punctuation.definition.character",
+ "constant.character.literal.scala",
+ "source.tf entity.name"
+ ],
+ "settings": {
+ "foreground": "#49e9a6"
+ }
+ },
+ {
+ "name": "STRINGINTERPOLATED",
+ "scope": [
+ "string.template",
+ "punctuation.definition.string.template",
+ "string.interpolated.python string.quoted.single.python",
+ "string.quoted.double.heredoc",
+ "string.quoted.interpolated.vala",
+ "string.quoted.interpolated.vala punctuation.definition.string",
+ "string.regexp.apacheconf",
+ "markup.inline.raw.string",
+ "markup.inline.raw punctuation.definition.raw",
+ "string.quoted.double.interpolated.crystal",
+ "string.quoted.double.interpolated.crystal punctuation.definition.string",
+ "text.tex markup.raw"
+ ],
+ "settings": {
+ "foreground": "#16b673"
+ }
+ },
+ {
+ "name": "NUMBER",
+ "scope": [
+ "constant.numeric",
+ "constant.language",
+ "punctuation.separator.decimal.period.php",
+ "keyword.operator.null-conditional.cs",
+ "punctuation.separator.question-mark.cs",
+ "constant.integer.apacheconf",
+ "keyword.operator.nullable-type",
+ "constant.language punctuation.definition.variable",
+ "constant.others.fsharp",
+ "keyword.other.unit",
+ "string.quoted.double.skinparam.value",
+ "source.toml constant",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "foreground": "#7060eb"
+ }
+ },
+ {
+ "name": "FUNCTION",
+ "scope": [
+ "variable.function",
+ "support.type.property-name",
+ "entity.name.function",
+ "string.other.link",
+ "markup.link",
+ "support.type.vendored",
+ "support.other.variable",
+ "meta.function-call.generic.python",
+ "meta.method-call.groovy meta.method.groovy",
+ "meta.class.body.groovy meta.method.body.java storage.type.groovy",
+ "punctuation.definition.decorator",
+ "support.function.any-method",
+ "text.tex support.function",
+ "text.tex punctuation.definition.function",
+ "entity.name.section.fsharp entity.name.section.fsharp",
+ "support.variable.class.function",
+ "keyword.control.cucumber.table",
+ "punctuation.decorator",
+ "source.tf support.class"
+ ],
+ "settings": {
+ "foreground": "#16a3b6"
+ }
+ },
+ {
+ "name": "SUPPORT",
+ "scope": [
+ "entity.name",
+ "entity.other",
+ "support.orther.namespace.use.php",
+ "meta.use.php",
+ "support.other.namespace.php",
+ "support.type",
+ "support.class",
+ "punctuation.definition.parameters",
+ "support.function",
+ "support.function.construct",
+ "markup.changed.git_gutter",
+ "markup.underline.link",
+ "markup.underline.link.image",
+ "markup.underline",
+ "meta.symbol.namespace.clojure",
+ "entity.mime-type.apacheconf",
+ "keyword.operator.function.infix",
+ "entity.name.function.infix",
+ "entity.name.function.call.kotlin",
+ "text.tex support.function.verb",
+ "text.tex support.function.texttt",
+ "source.reason constant.language.unit",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "constant.language.unit.fsharp",
+ "source.wsd support.class.preprocessings",
+ "keyword.language.gherkin.feature.scenario",
+ "source.nim keyword.other.common.function",
+ "entity.name.type.namespace",
+ "entity.name.scope-resolution.function.call"
+ ],
+ "settings": {
+ "foreground": "#49d6e9"
+ }
+ },
+ {
+ "name": "MISC",
+ "scope": [
+ "source.js constant.other.object.key.js string.unquoted.label.js",
+ "source.js punctuation.section.embedded",
+ "punctuation.definition.template-expression",
+ "support.class",
+ "storage.type.string.python",
+ "string.interpolated.pug",
+ "support.constant.handlebars",
+ "source.clojure punctuation.section.set",
+ "source.clojure punctuation.section.metadata",
+ "entity.global.clojure",
+ "source.python meta.function-call.python support.type.python",
+ "entity.other.inherited-class.python",
+ "punctuation.definition.interpolation",
+ "punctuation.section.embedded.begin.ruby",
+ "punctuation.section.embedded.end.ruby source.ruby",
+ "support.constant.math",
+ "entity.namespace.r",
+ "meta.method-call.groovy storage.type.groovy",
+ "source.scala entity.name.class.declaration",
+ "constant.character.escape",
+ "support.function.macro.julia",
+ "string.replacement.apacheconf",
+ "storage.modifier.using.vala",
+ "constant.other.haskell",
+ "source.objc entity.name.tag",
+ "string.quoted.other.literal.upper.crystal punctuation.definition.string",
+ "meta.embedded.line.crystal punctuation.section.embedded",
+ "meta.embedded.line.crystal punctuation.section.embedded source.crystal",
+ "punctuation.section.embedded",
+ "punctuation.section.tag",
+ "punctuation.section.embedded source.swift",
+ "variable.other.bracket punctuation.definition.variable",
+ "string.interpolated.dollar punctuation.definition.string",
+ "constant.character.escape punctuation.definition.keyword",
+ "source.ocaml entity.name.class constant.numeric",
+ "source.reason entity.name.class",
+ "keyword.format.specifier.fsharp",
+ "support.module.elm",
+ "meta.embedded.block.php punctuation.definition.variable.php",
+ "source.vala storage.type",
+ "support.variable.class.group",
+ "entity.name.type.class",
+ "source.tf meta.keyword.list",
+ "source.tf meta.keyword.map",
+ "entity.name.class.lua",
+ "markup.substitution"
+ ],
+ "settings": {
+ "foreground": "#49ace9"
+ }
+ },
+ {
+ "name": "INVALID",
+ "scope": [
+ "invalid",
+ "invalid.illegal"
+ ],
+ "settings": {
+ "foreground": "#e3541c"
+ }
+ },
+ {
+ "name": "ITALIC",
+ "scope": [
+ "comment",
+ "storage.modifier",
+ "punctuation.definition.comment",
+ "entity.other",
+ "variable.language",
+ "support.type.vendored",
+ "support.constant.vendored",
+ "markup.quote",
+ "markup.italic",
+ "tag.decorator.js entity.name.tag.js",
+ "tag.decorator.js punctuation.definition.tag.js",
+ "keyword.control.clojure",
+ "source.clojure meta.symbol.dynamic",
+ "keyword.other.this.cs",
+ "keyword.other.base.cs",
+ "variable.other.member.c",
+ "support.type.core.rust",
+ "variable.other.object.property",
+ "variable.other.property",
+ "source.r meta.function.r keyword.control.r",
+ "comment.line.roxygen.r keyword",
+ "comment.line.roxygen.r variable.parameter.r",
+ "keyword.control.inheritance.coffee",
+ "comment.block.documentation.phpdoc.php keyword",
+ "keyword.other.array.phpdoc.php",
+ "storage.type.modifier",
+ "comment.block.javadoc.java keyword",
+ "comment.block.javadoc.java variable.parameter.java",
+ "keyword.operator.documentation.powershell",
+ "storage.type.scala",
+ "variable.parameter.function.language.special",
+ "comment.block.documentation.scala keyword",
+ "comment.block.documentation.scala variable.parameter",
+ "support.function.builtin.go",
+ "constant.other.symbol.hashkey.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.ruby",
+ "source.vala storage.type.generic",
+ "constant.other.table-name",
+ "constant.other.placeholder",
+ "variable.other.field",
+ "entity.alias.import.go",
+ "source.swift keyword.other.declaration-specifier",
+ "support.variable.swift",
+ "keyword.other.capture-specifier",
+ "text.tex support.function.emph",
+ "constant.other.math",
+ "support.function.textit",
+ "entity.name.footnote",
+ "entity.name.function.directive.graphql",
+ "source.graphql support.type.enum",
+ "source.ocaml entity.name.filename",
+ "source.reason entity.name.filename",
+ "abstract.definition.fsharp keyword",
+ "abstract.definition.fsharp entity",
+ "function.anonymous keyword",
+ "entity.name.record.field.accessor.elm",
+ "support.type.primitive",
+ "support.type.builtin",
+ "keyword.type.cs",
+ "storage.type.built-in",
+ "storage.type.primitive",
+ "source.python support.type.python",
+ "storage.type.core.rust",
+ "source.swift support.type",
+ "source.go storage.type",
+ "storage.type.php",
+ "storage.type.function.kotlin",
+ "entity.name.type.kotlin",
+ "support.type.julia",
+ "variable.other.member",
+ "keyword.other.import",
+ "keyword.package",
+ "keyword.import",
+ "source.wsd keyword.control.diagram",
+ "keyword.language.gherkin.feature.step",
+ "source.hlsl storage.type.basic",
+ "source.apex keyword.type",
+ "sharing.modifier",
+ "source.nim storage.type.concrete",
+ "meta.preprocessor.pragma.nim",
+ "storage.type.integral",
+ "entity.name.scope-resolution.function.call",
+ "support.class.builtin",
+ "comment.block.documentation storage.type.class",
+ "source.tf meta.keyword.string",
+ "source.tf meta.keyword.number",
+ "source.scala entity.name.class",
+ "meta.import keyword.control",
+ "keyword.control.export",
+ "source.vue meta.directive punctuation.separator.key-value",
+ "keyword.local.lua",
+ "markup.mark.constrained markup.mark",
+ "markup.block.open",
+ "entity.name.type.primitive",
+ "entity.name.type.numeric",
+ "source.zig keyword.type",
+ "source.zig keyword.storage",
+ "source.zig keyword.structure"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "BOLD",
+ "scope": [
+ "keyword",
+ "keyword.control",
+ "keyword.operator",
+ "keyword.other.template",
+ "keyword.other.substitution",
+ "storage.type.function.arrow",
+ "constant.other.color",
+ "punctuation.accessor",
+ "entity.name.section",
+ "markdown.heading",
+ "markup.inline.raw punctuation.definition.raw",
+ "markup.heading",
+ "storage.type.function.pug",
+ "storage.type.function.python",
+ "storage.type.annotation",
+ "punctuation.bracket.angle",
+ "keyword.other.new",
+ "storage.type.generic.wildcard",
+ "source.go keyword.operator",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "variable.parameter",
+ "support.function.builtin.rust",
+ "storage.type.function.coffee",
+ "entity.name.variable.parameter",
+ "punctuation.separator.hash.cs",
+ "constant.other.symbol.ruby punctuation.definition.constant.ruby",
+ "constant.other.symbol.hashkey.ruby punctuation.definition.constant.ruby",
+ "meta.function.parameters variable.other",
+ "entity.name.type.annotation.kotlin",
+ "storage.type.objc",
+ "parameter.variable.function",
+ "markup punctuation.definition",
+ "punctuation.section.directive",
+ "punctuation.definition.preprocessor",
+ "source.ruby punctuation.definition.variable",
+ "support.function.textbf",
+ "source.graphql support.type.builtin",
+ "source.ocaml variable.interpolation string",
+ "entity.name.function.definition.special.constructor",
+ "entity.name.function.definition.special.member.destructor.",
+ "meta.function.parameters variable punctuation.definition.variable.php",
+ "source.wsd keyword.other.activity",
+ "keyword.control.class.ruby",
+ "keyword.control.def.ruby",
+ "keyword.function.go",
+ "keyword.other.fn.rust",
+ "markup.other.anchor",
+ "markup.list.bullet",
+ "markup.list punctuation.definition",
+ "keyword.control.default",
+ "punctuation.section",
+ "punctuation.separator",
+ "punctuation.terminator",
+ "markup.bold.markdown",
+ "source.zig storage.type.function"
+ ],
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "BOLD-ITALIC",
+ "scope": [
+ "markup.quote markup.bold",
+ "text.html punctuation.section.embedded",
+ "variable.other.c",
+ "storage.modifier.lifetime.rust",
+ "entity.name.lifetime.rust",
+ "source.rust meta.attribute.rust",
+ "meta.attribute.id entity.other.attribute-name",
+ "source.ocaml punctuation.definition.tag emphasis",
+ "source.tf entity.name",
+ "markup.quote punctuation.definition",
+ "markup.fenced_code punctuation.definition",
+ "fenced_code.block.language"
+ ],
+ "settings": {
+ "fontStyle": "bold italic"
+ }
+ },
+ {
+ "name": "NORMAL",
+ "scope": [
+ "keyword.begin.tag.ejs",
+ "source.python meta.function.decorator.python support.type.python",
+ "source.cs keyword.other",
+ "keyword.other.var.cs",
+ "source.go keyword",
+ "storage.modifier.static.rust",
+ "variable.parameter.r",
+ "variable.parameter.handlebars",
+ "storage.modifier.import",
+ "storage.modifier.package",
+ "meta.class.identifier storage.modifier",
+ "keyword.operator.other.powershell",
+ "source.css variable.parameter",
+ "string.interpolated variable.parameter",
+ "source.apacheconf keyword",
+ "keyword.other.julia",
+ "storage.modifier.using.vala",
+ "source.objc keyword.other.property.attribute",
+ "source.sql keyword.other",
+ "keyword.other.using.vala",
+ "keyword.operator.function.infix",
+ "keyword.control.directive",
+ "keyword.other.rust",
+ "keyword.other.declaration-specifier.swift",
+ "entity.name.function.swift",
+ "keyword.control.class",
+ "keyword.control.def",
+ "punctuation.definition.variable",
+ "entity.name.section.latex",
+ "source.ocaml keyword markup.underline",
+ "source.ocaml constant.language constant.numeric entity.other.attribute-name.id.css",
+ "source.reason entity.other.attribute-name constant.language constant.numeric",
+ "keyword.format.specifier.fsharp",
+ "entity.name.section.fsharp",
+ "binding.fsharp keyword",
+ "binding.fsharp keyword.symbol",
+ "record.fsharp keyword",
+ "keyword.symbol.fsharp",
+ "entity.name.section.fsharp keyword",
+ "namespace.open.fsharp keyword",
+ "namespace.open.fsharp entity",
+ "storage.type",
+ "source.cpp keyword.other",
+ "source.c keyword.other",
+ "keyword.other.unit",
+ "storage.modifier.array.bracket",
+ "meta.import.haskell keyword",
+ "keyword.declaration.dart",
+ "source.wsd keyword.other",
+ "keyword.other.skinparam",
+ "source.css keyword.control",
+ "source.css keyword.operator",
+ "keyword.language.gherkin.feature.scenario",
+ "keyword.control.cucumber.table",
+ "source.toml entity.other.attribute-name",
+ "source.toml keyword",
+ "keyword.other.nim",
+ "source.nim keyword.other.common.function",
+ "source.nim keyword.other",
+ "source.scala keyword.declaration",
+ "source.scala entity.name.class.declaration",
+ "keyword.control.lua",
+ "source.css punctuation.section",
+ "punctuation.section.embedded",
+ "source.c punctuation.section",
+ "source.cpp punctuation.section",
+ "source.java punctuation.section",
+ "source.php punctuation.section",
+ "source.powershell punctuation.section",
+ "source.r punctuation.section",
+ "source.ruby punctuation.section",
+ "source.swift punctuation.section",
+ "source.objc punctuation.section",
+ "source.zig keyword.constant.bool",
+ "source.zig keyword.default",
+ "source.zig keyword.statement",
+ "source.zig keyword.constant.default"
+ ],
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "name": "STRIKETHROUGH",
+ "scope": [
+ "markup.strikethrough"
+ ],
+ "settings": {
+ "fontStyle": "strikethrough"
+ }
+ }
+ ]
+}
\ No newline at end of file
diff --git a/assets/themes/src/vscode/nord/LICENSE b/assets/themes/src/vscode/nord/LICENSE
new file mode 100644
index 0000000000..996f8fb612
--- /dev/null
+++ b/assets/themes/src/vscode/nord/LICENSE
@@ -0,0 +1,21 @@
+MIT License (MIT)
+
+Copyright (c) 2016-present Sven Greb (https://www.svengreb.de)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/assets/themes/src/vscode/nord/family.json b/assets/themes/src/vscode/nord/family.json
new file mode 100644
index 0000000000..eb0e94d202
--- /dev/null
+++ b/assets/themes/src/vscode/nord/family.json
@@ -0,0 +1,11 @@
+{
+ "name": "Nord",
+ "author": "Sven Greb (svengreb)",
+ "themes": [
+ {
+ "name": "Nord",
+ "file_name": "nord.json",
+ "appearance": "dark"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/nord/nord.json b/assets/themes/src/vscode/nord/nord.json
new file mode 100644
index 0000000000..bb300297c1
--- /dev/null
+++ b/assets/themes/src/vscode/nord/nord.json
@@ -0,0 +1,1368 @@
+{
+ "name": "Nord",
+ "type": "dark",
+ "semanticHighlighting": true,
+ "colors": {
+ "focusBorder": "#3b4252",
+ "foreground": "#d8dee9",
+ "activityBar.background": "#2e3440",
+ "activityBar.dropBackground": "#3b4252",
+ "activityBar.foreground": "#d8dee9",
+ "activityBar.activeBorder": "#88c0d0",
+ "activityBar.activeBackground": "#3b4252",
+ "activityBarBadge.background": "#88c0d0",
+ "activityBarBadge.foreground": "#2e3440",
+ "badge.foreground": "#2e3440",
+ "badge.background": "#88c0d0",
+ "button.background": "#88c0d0ee",
+ "button.foreground": "#2e3440",
+ "button.hoverBackground": "#88c0d0",
+ "button.secondaryBackground": "#434c5e",
+ "button.secondaryForeground": "#d8dee9",
+ "button.secondaryHoverBackground": "#4c566a",
+ "charts.red": "#bf616a",
+ "charts.blue": "#81a1c1",
+ "charts.yellow": "#ebcb8b",
+ "charts.orange": "#d08770",
+ "charts.green": "#a3be8c",
+ "charts.purple": "#b48ead",
+ "charts.foreground": "#d8dee9",
+ "charts.lines": "#88c0d0",
+ "debugConsole.infoForeground": "#88c0d0",
+ "debugConsole.warningForeground": "#ebcb8b",
+ "debugConsole.errorForeground": "#bf616a",
+ "debugConsole.sourceForeground": "#616e88",
+ "debugConsoleInputIcon.foreground": "#81a1c1",
+ "debugExceptionWidget.background": "#4c566a",
+ "debugExceptionWidget.border": "#2e3440",
+ "debugToolBar.background": "#3b4252",
+ "descriptionForeground": "#d8dee9e6",
+ "diffEditor.insertedTextBackground": "#81a1c133",
+ "diffEditor.removedTextBackground": "#bf616a4d",
+ "dropdown.background": "#3b4252",
+ "dropdown.border": "#3b4252",
+ "dropdown.foreground": "#d8dee9",
+ "editorActiveLineNumber.foreground": "#d8dee9cc",
+ "editorCursor.foreground": "#d8dee9",
+ "editorHint.border": "#ebcb8b00",
+ "editorHint.foreground": "#ebcb8b",
+ "editorIndentGuide.background": "#434c5eb3",
+ "editorIndentGuide.activeBackground": "#4c566a",
+ "editorInlayHint.background": "#434c5e",
+ "editorInlayHint.foreground": "#d8dee9",
+ "editorLineNumber.foreground": "#4c566a",
+ "editorLineNumber.activeForeground": "#d8dee9",
+ "editorWhitespace.foreground": "#4c566ab3",
+ "editorWidget.background": "#2e3440",
+ "editorWidget.border": "#3b4252",
+ "editor.background": "#2e3440",
+ "editor.foreground": "#d8dee9",
+ "editor.hoverHighlightBackground": "#3b4252",
+ "editor.findMatchBackground": "#88c0d066",
+ "editor.findMatchHighlightBackground": "#88c0d033",
+ "editor.findRangeHighlightBackground": "#88c0d033",
+ "editor.lineHighlightBackground": "#3b4252",
+ "editor.lineHighlightBorder": "#3b4252",
+ "editor.inactiveSelectionBackground": "#434c5ecc",
+ "editor.inlineValuesBackground": "#4c566a",
+ "editor.inlineValuesForeground": "#eceff4",
+ "editor.selectionBackground": "#434c5ecc",
+ "editor.selectionHighlightBackground": "#434c5ecc",
+ "editor.rangeHighlightBackground": "#434c5e52",
+ "editor.wordHighlightBackground": "#81a1c166",
+ "editor.wordHighlightStrongBackground": "#81a1c199",
+ "editor.stackFrameHighlightBackground": "#5e81ac",
+ "editor.focusedStackFrameHighlightBackground": "#5e81ac",
+ "editorError.foreground": "#bf616a",
+ "editorError.border": "#bf616a00",
+ "editorWarning.foreground": "#ebcb8b",
+ "editorWarning.border": "#ebcb8b00",
+ "editorBracketMatch.background": "#2e344000",
+ "editorBracketMatch.border": "#88c0d0",
+ "editorBracketHighlight.foreground1": "#8fbcbb",
+ "editorBracketHighlight.foreground2": "#88c0d0",
+ "editorBracketHighlight.foreground3": "#81a1c1",
+ "editorBracketHighlight.foreground4": "#5e81ac",
+ "editorBracketHighlight.foreground5": "#8fbcbb",
+ "editorBracketHighlight.foreground6": "#88c0d0",
+ "editorBracketHighlight.unexpectedBracket.foreground": "#bf616a",
+ "editorCodeLens.foreground": "#4c566a",
+ "editorGroup.background": "#2e3440",
+ "editorGroup.border": "#3b425201",
+ "editorGroup.dropBackground": "#3b425299",
+ "editorGroupHeader.border": "#3b425200",
+ "editorGroupHeader.noTabsBackground": "#2e3440",
+ "editorGroupHeader.tabsBackground": "#2e3440",
+ "editorGroupHeader.tabsBorder": "#3b425200",
+ "editorGutter.background": "#2e3440",
+ "editorGutter.modifiedBackground": "#ebcb8b",
+ "editorGutter.addedBackground": "#a3be8c",
+ "editorGutter.deletedBackground": "#bf616a",
+ "editorHoverWidget.background": "#3b4252",
+ "editorHoverWidget.border": "#3b4252",
+ "editorLink.activeForeground": "#88c0d0",
+ "editorMarkerNavigation.background": "#5e81acc0",
+ "editorMarkerNavigationError.background": "#bf616ac0",
+ "editorMarkerNavigationWarning.background": "#ebcb8bc0",
+ "editorOverviewRuler.border": "#3b4252",
+ "editorOverviewRuler.currentContentForeground": "#3b4252",
+ "editorOverviewRuler.incomingContentForeground": "#3b4252",
+ "editorOverviewRuler.findMatchForeground": "#88c0d066",
+ "editorOverviewRuler.rangeHighlightForeground": "#88c0d066",
+ "editorOverviewRuler.selectionHighlightForeground": "#88c0d066",
+ "editorOverviewRuler.wordHighlightForeground": "#88c0d066",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#88c0d066",
+ "editorOverviewRuler.modifiedForeground": "#ebcb8b",
+ "editorOverviewRuler.addedForeground": "#a3be8c",
+ "editorOverviewRuler.deletedForeground": "#bf616a",
+ "editorOverviewRuler.errorForeground": "#bf616a",
+ "editorOverviewRuler.warningForeground": "#ebcb8b",
+ "editorOverviewRuler.infoForeground": "#81a1c1",
+ "editorRuler.foreground": "#434c5e",
+ "editorSuggestWidget.background": "#2e3440",
+ "editorSuggestWidget.border": "#3b4252",
+ "editorSuggestWidget.foreground": "#d8dee9",
+ "editorSuggestWidget.focusHighlightForeground": "#88c0d0",
+ "editorSuggestWidget.highlightForeground": "#88c0d0",
+ "editorSuggestWidget.selectedBackground": "#434c5e",
+ "editorSuggestWidget.selectedForeground": "#d8dee9",
+ "extensionButton.prominentForeground": "#d8dee9",
+ "extensionButton.prominentBackground": "#434c5e",
+ "extensionButton.prominentHoverBackground": "#4c566a",
+ "errorForeground": "#bf616a",
+ "gitDecoration.modifiedResourceForeground": "#ebcb8b",
+ "gitDecoration.deletedResourceForeground": "#bf616a",
+ "gitDecoration.untrackedResourceForeground": "#a3be8c",
+ "gitDecoration.ignoredResourceForeground": "#d8dee966",
+ "gitDecoration.conflictingResourceForeground": "#5e81ac",
+ "gitDecoration.submoduleResourceForeground": "#8fbcbb",
+ "gitDecoration.stageDeletedResourceForeground": "#bf616a",
+ "gitDecoration.stageModifiedResourceForeground": "#ebcb8b",
+ "input.background": "#3b4252",
+ "input.foreground": "#d8dee9",
+ "input.placeholderForeground": "#d8dee999",
+ "input.border": "#3b4252",
+ "inputOption.activeBackground": "#5e81ac",
+ "inputOption.activeBorder": "#5e81ac",
+ "inputOption.activeForeground": "#eceff4",
+ "inputValidation.errorBackground": "#bf616a",
+ "inputValidation.errorBorder": "#bf616a",
+ "inputValidation.infoBackground": "#81a1c1",
+ "inputValidation.infoBorder": "#81a1c1",
+ "inputValidation.warningBackground": "#d08770",
+ "inputValidation.warningBorder": "#d08770",
+ "keybindingLabel.background": "#4c566a",
+ "keybindingLabel.border": "#4c566a",
+ "keybindingLabel.bottomBorder": "#4c566a",
+ "keybindingLabel.foreground": "#d8dee9",
+ "list.activeSelectionBackground": "#88c0d0",
+ "list.activeSelectionForeground": "#2e3440",
+ "list.inactiveSelectionBackground": "#434c5e",
+ "list.inactiveSelectionForeground": "#d8dee9",
+ "list.inactiveFocusBackground": "#434c5ecc",
+ "list.hoverForeground": "#eceff4",
+ "list.focusForeground": "#d8dee9",
+ "list.focusBackground": "#88c0d099",
+ "list.focusHighlightForeground": "#eceff4",
+ "list.hoverBackground": "#3b4252",
+ "list.dropBackground": "#88c0d099",
+ "list.highlightForeground": "#88c0d0",
+ "list.errorForeground": "#bf616a",
+ "list.warningForeground": "#ebcb8b",
+ "merge.currentHeaderBackground": "#81a1c166",
+ "merge.currentContentBackground": "#81a1c14d",
+ "merge.incomingHeaderBackground": "#8fbcbb66",
+ "merge.incomingContentBackground": "#8fbcbb4d",
+ "merge.border": "#3b425200",
+ "minimap.background": "#2e3440",
+ "minimap.errorHighlight": "#bf616acc",
+ "minimap.findMatchHighlight": "#88c0d0",
+ "minimap.selectionHighlight": "#88c0d0cc",
+ "minimap.warningHighlight": "#ebcb8bcc",
+ "minimapGutter.addedBackground": "#a3be8c",
+ "minimapGutter.deletedBackground": "#bf616a",
+ "minimapGutter.modifiedBackground": "#ebcb8b",
+ "minimapSlider.activeBackground": "#434c5eaa",
+ "minimapSlider.background": "#434c5e99",
+ "minimapSlider.hoverBackground": "#434c5eaa",
+
+ "notification.background": "#3b4252",
+ "notification.buttonBackground": "#434c5e",
+ "notification.buttonForeground": "#d8dee9",
+ "notification.buttonHoverBackground": "#4c566a",
+ "notification.errorBackground": "#bf616a",
+ "notification.errorForeground": "#2e3440",
+ "notification.foreground": "#d8dee9",
+ "notification.infoBackground": "#88c0d0",
+ "notification.infoForeground": "#2e3440",
+ "notification.warningBackground": "#ebcb8b",
+ "notification.warningForeground": "#2e3440",
+
+ "notificationCenter.border": "#3b425200",
+ "notificationCenterHeader.background": "#2e3440",
+ "notificationCenterHeader.foreground": "#88c0d0",
+ "notificationLink.foreground": "#88c0d0",
+ "notifications.background": "#3b4252",
+ "notifications.border": "#2e3440",
+ "notifications.foreground": "#d8dee9",
+ "notificationToast.border": "#3b425200",
+
+ "panel.background": "#2e3440",
+ "panel.border": "#3b4252",
+ "panelTitle.activeBorder": "#88c0d000",
+ "panelTitle.activeForeground": "#88c0d0",
+ "panelTitle.inactiveForeground": "#d8dee9",
+ "peekView.border": "#4c566a",
+ "peekViewEditor.background": "#2e3440",
+ "peekViewEditorGutter.background": "#2e3440",
+ "peekViewEditor.matchHighlightBackground": "#88c0d04d",
+ "peekViewResult.background": "#2e3440",
+ "peekViewResult.fileForeground": "#88c0d0",
+ "peekViewResult.lineForeground": "#d8dee966",
+ "peekViewResult.matchHighlightBackground": "#88c0d0cc",
+ "peekViewResult.selectionBackground": "#434c5e",
+ "peekViewResult.selectionForeground": "#d8dee9",
+ "peekViewTitle.background": "#3b4252",
+ "peekViewTitleDescription.foreground": "#d8dee9",
+ "peekViewTitleLabel.foreground": "#88c0d0",
+ "pickerGroup.border": "#3b4252",
+ "pickerGroup.foreground": "#88c0d0",
+ "progressBar.background": "#88c0d0",
+ "quickInputList.focusBackground": "#88c0d0",
+ "quickInputList.focusForeground": "#2e3440",
+ "sash.hoverBorder": "#88c0d0",
+ "scrollbar.shadow": "#00000066",
+ "scrollbarSlider.activeBackground": "#434c5eaa",
+ "scrollbarSlider.background": "#434c5e99",
+ "scrollbarSlider.hoverBackground": "#434c5eaa",
+ "selection.background": "#88c0d099",
+ "sideBar.background": "#2e3440",
+ "sideBar.foreground": "#d8dee9",
+ "sideBar.border": "#3b4252",
+ "sideBarSectionHeader.background": "#3b4252",
+ "sideBarSectionHeader.foreground": "#d8dee9",
+ "sideBarTitle.foreground": "#d8dee9",
+ "statusBar.background": "#3b4252",
+ "statusBar.debuggingBackground": "#5e81ac",
+ "statusBar.debuggingForeground": "#d8dee9",
+ "statusBar.noFolderForeground": "#d8dee9",
+ "statusBar.noFolderBackground": "#3b4252",
+ "statusBar.foreground": "#d8dee9",
+ "statusBarItem.activeBackground": "#4c566a",
+ "statusBarItem.hoverBackground": "#434c5e",
+ "statusBarItem.prominentBackground": "#3b4252",
+ "statusBarItem.prominentHoverBackground": "#434c5e",
+ "statusBarItem.errorBackground": "#3b4252",
+ "statusBarItem.errorForeground": "#bf616a",
+ "statusBarItem.warningBackground": "#ebcb8b",
+ "statusBarItem.warningForeground": "#2e3440",
+ "statusBar.border": "#3b425200",
+ "tab.activeBackground": "#3b4252",
+ "tab.activeForeground": "#d8dee9",
+ "tab.border": "#3b425200",
+ "tab.activeBorder": "#88c0d000",
+ "tab.unfocusedActiveBorder": "#88c0d000",
+ "tab.inactiveBackground": "#2e3440",
+ "tab.inactiveForeground": "#d8dee966",
+ "tab.unfocusedActiveForeground": "#d8dee999",
+ "tab.unfocusedInactiveForeground": "#d8dee966",
+ "tab.hoverBackground": "#3b4252cc",
+ "tab.unfocusedHoverBackground": "#3b4252b3",
+ "tab.hoverBorder": "#88c0d000",
+ "tab.unfocusedHoverBorder": "#88c0d000",
+ "tab.activeBorderTop": "#88c0d000",
+ "tab.unfocusedActiveBorderTop": "#88c0d000",
+ "tab.lastPinnedBorder": "#4c566a",
+ "terminal.background": "#2e3440",
+ "terminal.foreground": "#d8dee9",
+ "terminal.ansiBlack": "#3b4252",
+ "terminal.ansiRed": "#bf616a",
+ "terminal.ansiGreen": "#a3be8c",
+ "terminal.ansiYellow": "#ebcb8b",
+ "terminal.ansiBlue": "#81a1c1",
+ "terminal.ansiMagenta": "#b48ead",
+ "terminal.ansiCyan": "#88c0d0",
+ "terminal.ansiWhite": "#e5e9f0",
+ "terminal.ansiBrightBlack": "#4c566a",
+ "terminal.ansiBrightRed": "#bf616a",
+ "terminal.ansiBrightGreen": "#a3be8c",
+ "terminal.ansiBrightYellow": "#ebcb8b",
+ "terminal.ansiBrightBlue": "#81a1c1",
+ "terminal.ansiBrightMagenta": "#b48ead",
+ "terminal.ansiBrightCyan": "#8fbcbb",
+ "terminal.ansiBrightWhite": "#eceff4",
+ "terminal.tab.activeBorder": "#88c0d0",
+ "textBlockQuote.background": "#3b4252",
+ "textBlockQuote.border": "#81a1c1",
+ "textCodeBlock.background": "#4c566a",
+ "textLink.activeForeground": "#88c0d0",
+ "textLink.foreground": "#88c0d0",
+ "textPreformat.foreground": "#8fbcbb",
+ "textSeparator.foreground": "#eceff4",
+ "titleBar.activeBackground": "#2e3440",
+ "titleBar.activeForeground": "#d8dee9",
+ "titleBar.border": "#2e344000",
+ "titleBar.inactiveBackground": "#2e3440",
+ "titleBar.inactiveForeground": "#d8dee966",
+ "tree.indentGuidesStroke": "#616e88",
+ "walkThrough.embeddedEditorBackground": "#2e3440",
+ "welcomePage.buttonBackground": "#434c5e",
+ "welcomePage.buttonHoverBackground": "#4c566a",
+ "widget.shadow": "#00000066"
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#d8dee9ff",
+ "background": "#2e3440ff"
+ }
+ },
+ {
+ "scope": "emphasis",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "strong",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "foreground": "#616E88"
+ }
+ },
+ {
+ "name": "Constant Character",
+ "scope": "constant.character",
+ "settings": {
+ "foreground": "#EBCB8B"
+ }
+ },
+ {
+ "name": "Constant Character Escape",
+ "scope": "constant.character.escape",
+ "settings": {
+ "foreground": "#EBCB8B"
+ }
+ },
+ {
+ "name": "Constant Language",
+ "scope": "constant.language",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Constant Numeric",
+ "scope": "constant.numeric",
+ "settings": {
+ "foreground": "#B48EAD"
+ }
+ },
+ {
+ "name": "Constant Regexp",
+ "scope": "constant.regexp",
+ "settings": {
+ "foreground": "#EBCB8B"
+ }
+ },
+ {
+ "name": "Entity Name Class/Type",
+ "scope": ["entity.name.class", "entity.name.type.class"],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "Entity Name Function",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "Entity Name Tag",
+ "scope": "entity.name.tag",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Entity Other Attribute Name",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "Entity Other Inherited Class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "Invalid Deprecated",
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#D8DEE9",
+ "background": "#EBCB8B"
+ }
+ },
+ {
+ "name": "Invalid Illegal",
+ "scope": "invalid.illegal",
+ "settings": {
+ "foreground": "#D8DEE9",
+ "background": "#BF616A"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Keyword Operator",
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Keyword Other New",
+ "scope": "keyword.other.new",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Markup Bold",
+ "scope": "markup.bold",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markup Changed",
+ "scope": "markup.changed",
+ "settings": {
+ "foreground": "#EBCB8B"
+ }
+ },
+ {
+ "name": "Markup Deleted",
+ "scope": "markup.deleted",
+ "settings": {
+ "foreground": "#BF616A"
+ }
+ },
+ {
+ "name": "Markup Inserted",
+ "scope": "markup.inserted",
+ "settings": {
+ "foreground": "#A3BE8C"
+ }
+ },
+ {
+ "name": "Meta Preprocessor",
+ "scope": "meta.preprocessor",
+ "settings": {
+ "foreground": "#5E81AC"
+ }
+ },
+ {
+ "name": "Punctuation",
+ "scope": "punctuation",
+ "settings": {
+ "foreground": "#ECEFF4"
+ }
+ },
+ {
+ "name": "Punctuation Definition Parameters",
+ "scope": [
+ "punctuation.definition.method-parameters",
+ "punctuation.definition.function-parameters",
+ "punctuation.definition.parameters"
+ ],
+ "settings": {
+ "foreground": "#ECEFF4"
+ }
+ },
+ {
+ "name": "Punctuation Definition Tag",
+ "scope": "punctuation.definition.tag",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Punctuation Definition Comment",
+ "scope": [
+ "punctuation.definition.comment",
+ "punctuation.end.definition.comment",
+ "punctuation.start.definition.comment"
+ ],
+ "settings": {
+ "foreground": "#616E88"
+ }
+ },
+ {
+ "name": "Punctuation Section",
+ "scope": "punctuation.section",
+ "settings": {
+ "foreground": "#ECEFF4"
+ }
+ },
+ {
+ "name": "Punctuation Section Embedded",
+ "scope": ["punctuation.section.embedded.begin", "punctuation.section.embedded.end"],
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Punctuation Terminator",
+ "scope": "punctuation.terminator",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Punctuation Variable",
+ "scope": "punctuation.definition.variable",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": "storage",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#A3BE8C"
+ }
+ },
+ {
+ "name": "String Regexp",
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#EBCB8B"
+ }
+ },
+ {
+ "name": "Support Class",
+ "scope": "support.class",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "Support Constant",
+ "scope": "support.constant",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Support Function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "Support Function Construct",
+ "scope": "support.function.construct",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Support Type",
+ "scope": "support.type",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "Support Type Exception",
+ "scope": "support.type.exception",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "Token Debug",
+ "scope": "token.debug-token",
+ "settings": {
+ "foreground": "#b48ead"
+ }
+ },
+ {
+ "name": "Token Error",
+ "scope": "token.error-token",
+ "settings": {
+ "foreground": "#bf616a"
+ }
+ },
+ {
+ "name": "Token Info",
+ "scope": "token.info-token",
+ "settings": {
+ "foreground": "#88c0d0"
+ }
+ },
+ {
+ "name": "Token Warning",
+ "scope": "token.warn-token",
+ "settings": {
+ "foreground": "#ebcb8b"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": "variable.other",
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "Variable Language",
+ "scope": "variable.language",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "Variable Parameter",
+ "scope": "variable.parameter",
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[C/CPP] Punctuation Separator Pointer-Access",
+ "scope": "punctuation.separator.pointer-access.c",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[C/CPP] Meta Preprocessor Include",
+ "scope": [
+ "source.c meta.preprocessor.include",
+ "source.c string.quoted.other.lt-gt.include"
+ ],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[C/CPP] Conditional Directive",
+ "scope": [
+ "source.cpp keyword.control.directive.conditional",
+ "source.cpp punctuation.definition.directive",
+ "source.c keyword.control.directive.conditional",
+ "source.c punctuation.definition.directive"
+ ],
+ "settings": {
+ "foreground": "#5E81AC",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "[CSS] Constant Other Color RGB Value",
+ "scope": "source.css constant.other.color.rgb-value",
+ "settings": {
+ "foreground": "#B48EAD"
+ }
+ },
+ {
+ "name": "[CSS](Function) Meta Property-Value",
+ "scope": "source.css meta.property-value",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[CSS] Media Queries",
+ "scope": [
+ "source.css keyword.control.at-rule.media",
+ "source.css keyword.control.at-rule.media punctuation.definition.keyword"
+ ],
+ "settings": {
+ "foreground": "#D08770"
+ }
+ },
+ {
+ "name": "[CSS] Punctuation Definition Keyword",
+ "scope": "source.css punctuation.definition.keyword",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[CSS] Support Type Property Name",
+ "scope": "source.css support.type.property-name",
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[diff] Meta Range Context",
+ "scope": "source.diff meta.diff.range.context",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[diff] Meta Header From-File",
+ "scope": "source.diff meta.diff.header.from-file",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[diff] Punctuation Definition From-File",
+ "scope": "source.diff punctuation.definition.from-file",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[diff] Punctuation Definition Range",
+ "scope": "source.diff punctuation.definition.range",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[diff] Punctuation Definition Separator",
+ "scope": "source.diff punctuation.definition.separator",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Elixir](JakeBecker.elixir-ls) module names",
+ "scope": "entity.name.type.module.elixir",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Elixir](JakeBecker.elixir-ls) module attributes",
+ "scope": "variable.other.readwrite.module.elixir",
+ "settings": {
+ "foreground": "#D8DEE9",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "[Elixir](JakeBecker.elixir-ls) atoms",
+ "scope": "constant.other.symbol.elixir",
+ "settings": {
+ "foreground": "#D8DEE9",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "[Elixir](JakeBecker.elixir-ls) modules",
+ "scope": "variable.other.constant.elixir",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Go] String Format Placeholder",
+ "scope": "source.go constant.other.placeholder.go",
+ "settings": {
+ "foreground": "#EBCB8B"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Comment Block Documentation HTML Entities",
+ "scope": "source.java comment.block.documentation.javadoc punctuation.definition.entity.html",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Constant Other",
+ "scope": "source.java constant.other",
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Keyword Other Documentation",
+ "scope": "source.java keyword.other.documentation",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Keyword Other Documentation Author",
+ "scope": "source.java keyword.other.documentation.author.javadoc",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Keyword Other Documentation Directive/Custom",
+ "scope": [
+ "source.java keyword.other.documentation.directive",
+ "source.java keyword.other.documentation.custom"
+ ],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Keyword Other Documentation See",
+ "scope": "source.java keyword.other.documentation.see.javadoc",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java] Meta Method-Call",
+ "scope": "source.java meta.method-call meta.method",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Meta Tag Template Link",
+ "scope": [
+ "source.java meta.tag.template.link.javadoc",
+ "source.java string.other.link.title.javadoc"
+ ],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Meta Tag Template Value",
+ "scope": "source.java meta.tag.template.value.javadoc",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Punctuation Definition Keyword",
+ "scope": "source.java punctuation.definition.keyword.javadoc",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java](JavaDoc) Punctuation Definition Tag",
+ "scope": [
+ "source.java punctuation.definition.tag.begin.javadoc",
+ "source.java punctuation.definition.tag.end.javadoc"
+ ],
+ "settings": {
+ "foreground": "#616E88"
+ }
+ },
+ {
+ "name": "[Java] Storage Modifier Import",
+ "scope": "source.java storage.modifier.import",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java] Storage Modifier Package",
+ "scope": "source.java storage.modifier.package",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java] Storage Type",
+ "scope": "source.java storage.type",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java] Storage Type Annotation",
+ "scope": "source.java storage.type.annotation",
+ "settings": {
+ "foreground": "#D08770"
+ }
+ },
+ {
+ "name": "[Java] Storage Type Generic",
+ "scope": "source.java storage.type.generic",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Java] Storage Type Primitive",
+ "scope": "source.java storage.type.primitive",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[JavaScript] Decorator",
+ "scope": [
+ "source.js punctuation.decorator",
+ "source.js meta.decorator variable.other.readwrite",
+ "source.js meta.decorator entity.name.function"
+ ],
+ "settings": {
+ "foreground": "#D08770"
+ }
+ },
+ {
+ "name": "[JavaScript] Meta Object-Literal Key",
+ "scope": "source.js meta.object-literal.key",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[JavaScript](JSDoc) Storage Type Class",
+ "scope": "source.js storage.type.class.jsdoc",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[JavaScript] String Template Literals Punctuation",
+ "scope": [
+ "source.js string.quoted.template punctuation.quasi.element.begin",
+ "source.js string.quoted.template punctuation.quasi.element.end",
+ "source.js string.template punctuation.definition.template-expression"
+ ],
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[JavaScript] Interpolated String Template Punctuation Functions",
+ "scope": "source.js string.quoted.template meta.method-call.with-arguments",
+ "settings": {
+ "foreground": "#ECEFF4"
+ }
+ },
+ {
+ "name": "[JavaScript] String Template Literal Variable",
+ "scope": [
+ "source.js string.template meta.template.expression support.variable.property",
+ "source.js string.template meta.template.expression variable.other.object"
+ ],
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[JavaScript] Support Type Primitive",
+ "scope": "source.js support.type.primitive",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[JavaScript] Variable Other Object",
+ "scope": "source.js variable.other.object",
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[JavaScript] Variable Other Read-Write Alias",
+ "scope": "source.js variable.other.readwrite.alias",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[JavaScript] Parentheses in Template Strings",
+ "scope": [
+ "source.js meta.embedded.line meta.brace.square",
+ "source.js meta.embedded.line meta.brace.round",
+ "source.js string.quoted.template meta.brace.square",
+ "source.js string.quoted.template meta.brace.round"
+ ],
+ "settings": {
+ "foreground": "#ECEFF4"
+ }
+ },
+ {
+ "name": "[HTML] Constant Character Entity",
+ "scope": "text.html.basic constant.character.entity.html",
+ "settings": {
+ "foreground": "#EBCB8B"
+ }
+ },
+ {
+ "name": "[HTML] Constant Other Inline-Data",
+ "scope": "text.html.basic constant.other.inline-data",
+ "settings": {
+ "foreground": "#D08770",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "[HTML] Meta Tag SGML Doctype",
+ "scope": "text.html.basic meta.tag.sgml.doctype",
+ "settings": {
+ "foreground": "#5E81AC"
+ }
+ },
+ {
+ "name": "[HTML] Punctuation Definition Entity",
+ "scope": "text.html.basic punctuation.definition.entity",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[INI] Entity Name Section Group-Title",
+ "scope": "source.properties entity.name.section.group-title.ini",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[INI] Punctuation Separator Key-Value",
+ "scope": "source.properties punctuation.separator.key-value.ini",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Fenced Code Block",
+ "scope": [
+ "text.html.markdown markup.fenced_code.block",
+ "text.html.markdown markup.fenced_code.block punctuation.definition"
+ ],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Heading",
+ "scope": "markup.heading",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Inline",
+ "scope": [
+ "text.html.markdown markup.inline.raw",
+ "text.html.markdown markup.inline.raw punctuation.definition.raw"
+ ],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Italic",
+ "scope": "text.html.markdown markup.italic",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Link",
+ "scope": "text.html.markdown markup.underline.link",
+ "settings": {
+ "fontStyle": "underline"
+ }
+ },
+ {
+ "name": "[Markdown] Markup List Numbered/Unnumbered",
+ "scope": "text.html.markdown beginning.punctuation.definition.list",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Quote Punctuation Definition",
+ "scope": "text.html.markdown beginning.punctuation.definition.quote",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Quote Punctuation Definition",
+ "scope": "text.html.markdown markup.quote",
+ "settings": {
+ "foreground": "#616E88"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Math Constant",
+ "scope": "text.html.markdown constant.character.math.tex",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Math Definition Marker",
+ "scope": [
+ "text.html.markdown punctuation.definition.math.begin",
+ "text.html.markdown punctuation.definition.math.end"
+ ],
+ "settings": {
+ "foreground": "#5E81AC"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Math Function Definition Marker",
+ "scope": "text.html.markdown punctuation.definition.function.math.tex",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Markdown] Markup Math Operator",
+ "scope": "text.html.markdown punctuation.math.operator.latex",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Markdown] Punctuation Definition Heading",
+ "scope": "text.html.markdown punctuation.definition.heading",
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Markdown] Punctuation Definition Constant/String",
+ "scope": [
+ "text.html.markdown punctuation.definition.constant",
+ "text.html.markdown punctuation.definition.string"
+ ],
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[Markdown] String Other Link Description/Title",
+ "scope": [
+ "text.html.markdown constant.other.reference.link",
+ "text.html.markdown string.other.link.description",
+ "text.html.markdown string.other.link.title"
+ ],
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Perl] Perl Sigils",
+ "scope": "source.perl punctuation.definition.variable",
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[PHP] Meta Function-Call Object",
+ "scope": ["source.php meta.function-call", "source.php meta.function-call.object"],
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Python] Decorator",
+ "scope": [
+ "source.python entity.name.function.decorator",
+ "source.python meta.function.decorator support.type"
+ ],
+ "settings": {
+ "foreground": "#D08770"
+ }
+ },
+ {
+ "name": "[Python] Function Call",
+ "scope": "source.python meta.function-call.generic",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Python] Support Type",
+ "scope": "source.python support.type",
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[Python] Function Parameter",
+ "scope": ["source.python variable.parameter.function.language"],
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[Python] Function Parameter Special",
+ "scope": [
+ "source.python meta.function.parameters variable.parameter.function.language.special.self"
+ ],
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[SCSS] Punctuation Definition Interpolation Bracket Curly",
+ "scope": [
+ "source.css.scss punctuation.definition.interpolation.begin.bracket.curly",
+ "source.css.scss punctuation.definition.interpolation.end.bracket.curly"
+ ],
+ "settings": {
+ "foreground": "#81A1C1"
+ }
+ },
+ {
+ "name": "[SCSS] Variable Interpolation",
+ "scope": "source.css.scss variable.interpolation",
+ "settings": {
+ "foreground": "#D8DEE9",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "[TypeScript] Decorators",
+ "scope": [
+ "source.ts punctuation.decorator",
+ "source.ts meta.decorator variable.other.readwrite",
+ "source.ts meta.decorator entity.name.function",
+ "source.tsx punctuation.decorator",
+ "source.tsx meta.decorator variable.other.readwrite",
+ "source.tsx meta.decorator entity.name.function"
+ ],
+ "settings": {
+ "foreground": "#D08770"
+ }
+ },
+ {
+ "name": "[TypeScript] Object-literal keys",
+ "scope": ["source.ts meta.object-literal.key", "source.tsx meta.object-literal.key"],
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[TypeScript] Object-literal functions",
+ "scope": [
+ "source.ts meta.object-literal.key entity.name.function",
+ "source.tsx meta.object-literal.key entity.name.function"
+ ],
+ "settings": {
+ "foreground": "#88C0D0"
+ }
+ },
+ {
+ "name": "[TypeScript] Type/Class",
+ "scope": [
+ "source.ts support.class",
+ "source.ts support.type",
+ "source.ts entity.name.type",
+ "source.ts entity.name.class",
+ "source.tsx support.class",
+ "source.tsx support.type",
+ "source.tsx entity.name.type",
+ "source.tsx entity.name.class"
+ ],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[TypeScript] Static Class Support",
+ "scope": [
+ "source.ts support.constant.math",
+ "source.ts support.constant.dom",
+ "source.ts support.constant.json",
+ "source.tsx support.constant.math",
+ "source.tsx support.constant.dom",
+ "source.tsx support.constant.json"
+ ],
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[TypeScript] Variables",
+ "scope": ["source.ts support.variable", "source.tsx support.variable"],
+ "settings": {
+ "foreground": "#D8DEE9"
+ }
+ },
+ {
+ "name": "[TypeScript] Parentheses in Template Strings",
+ "scope": [
+ "source.ts meta.embedded.line meta.brace.square",
+ "source.ts meta.embedded.line meta.brace.round",
+ "source.tsx meta.embedded.line meta.brace.square",
+ "source.tsx meta.embedded.line meta.brace.round"
+ ],
+ "settings": {
+ "foreground": "#ECEFF4"
+ }
+ },
+ {
+ "name": "[XML] Entity Name Tag Namespace",
+ "scope": "text.xml entity.name.tag.namespace",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ },
+ {
+ "name": "[XML] Keyword Other Doctype",
+ "scope": "text.xml keyword.other.doctype",
+ "settings": {
+ "foreground": "#5E81AC"
+ }
+ },
+ {
+ "name": "[XML] Meta Tag Preprocessor",
+ "scope": "text.xml meta.tag.preprocessor entity.name.tag",
+ "settings": {
+ "foreground": "#5E81AC"
+ }
+ },
+ {
+ "name": "[XML] Entity Name Tag Namespace",
+ "scope": [
+ "text.xml string.unquoted.cdata",
+ "text.xml string.unquoted.cdata punctuation.definition.string"
+ ],
+ "settings": {
+ "foreground": "#D08770",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "[YAML] Entity Name Tag",
+ "scope": "source.yaml entity.name.tag",
+ "settings": {
+ "foreground": "#8FBCBB"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/palenight/LICENSE b/assets/themes/src/vscode/palenight/LICENSE
new file mode 100644
index 0000000000..139fba6d40
--- /dev/null
+++ b/assets/themes/src/vscode/palenight/LICENSE
@@ -0,0 +1,7 @@
+Copyright (c) 2017-present Olaolu Olawuyi
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/assets/themes/src/vscode/palenight/family.json b/assets/themes/src/vscode/palenight/family.json
new file mode 100644
index 0000000000..69379fafe2
--- /dev/null
+++ b/assets/themes/src/vscode/palenight/family.json
@@ -0,0 +1,21 @@
+{
+ "name": "Palenight",
+ "author": "Olaolu Olawuyi (whizkydee)",
+ "themes": [
+ {
+ "name": "Palenight",
+ "file_name": "palenight.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Palenight Operator",
+ "file_name": "palenight-operator.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Palenight (Mild Contrast)",
+ "file_name": "palenight-mild-contrast.json",
+ "appearance": "dark"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/palenight/palenight-mild-contrast.json b/assets/themes/src/vscode/palenight/palenight-mild-contrast.json
new file mode 100644
index 0000000000..60164e29c7
--- /dev/null
+++ b/assets/themes/src/vscode/palenight/palenight-mild-contrast.json
@@ -0,0 +1,1569 @@
+{
+ "name": "Palenight (Mild Contrast)",
+ "author": "Olaolu Olawuyi",
+ "maintainers": ["Olaolu Olawuyi "],
+ "type": "dark",
+ "semanticClass": "palenight-mild-contrast",
+ "colors": {
+ "contrastActiveBorder": null,
+ "contrastBorder": "#2C2F40",
+ "focusBorder": "#2C2F40",
+ "foreground": "#ffffff",
+ "widget.shadow": "#232635",
+ "selection.background": "#7580B850",
+ "descriptionForeground": null,
+ "errorForeground": "#EF5350",
+ "button.background": "#7e57c2cc",
+ "button.foreground": "#ffffffcc",
+ "button.hoverBackground": "#7e57c2",
+ "dropdown.background": "#292D3E",
+ "dropdown.border": "#7e57c2",
+ "dropdown.foreground": "#ffffffcc",
+ "input.background": "#313850",
+ "input.border": "#7e57c2",
+ "input.foreground": "#ffffffcc",
+ "input.placeholderForeground": "#ffffffcc",
+ "inputOption.activeBorder": "#ffffffcc",
+ "inputValidation.errorBackground": "#ef5350f2",
+ "inputValidation.errorBorder": "#EF5350",
+ "inputValidation.infoBackground": "#64b5f6f2",
+ "inputValidation.infoBorder": "#64B5F6",
+ "inputValidation.warningBackground": "#ffca28f2",
+ "inputValidation.warningBorder": "#FFCA28",
+ "scrollbar.shadow": "#292D3E00",
+ "scrollbarSlider.activeBackground": "#694CA4cc",
+ "scrollbarSlider.background": "#694CA466",
+ "scrollbarSlider.hoverBackground": "#694CA4cc",
+ "badge.background": "#7e57c2",
+ "badge.foreground": "#ffffff",
+ "progress.background": "#7e57c2",
+ "list.activeSelectionBackground": "#7e57c2",
+ "list.activeSelectionForeground": "#ffffff",
+ "list.dropBackground": "#2E3245",
+ "list.focusBackground": "#0000002e",
+ "list.focusForeground": "#ffffff",
+ "list.highlightForeground": "#ffffff",
+ "list.hoverBackground": "#0000001a",
+ "list.hoverForeground": "#ffffff",
+ "list.inactiveSelectionBackground": "#929ac90d",
+ "list.inactiveSelectionForeground": "#929ac9",
+ "activityBar.background": "#242839",
+ "activityBar.dropBackground": "#7e57c2e3",
+ "activityBar.foreground": "#eeffff",
+ "activityBar.border": "#2E3243",
+ "activityBarBadge.background": "#7e57c2",
+ "activityBarBadge.foreground": "#ffffff",
+ "sideBar.background": "#25293A",
+ "sideBar.foreground": "#6C739A",
+ "sideBar.border": "#2C2F40",
+ "sideBarTitle.foreground": "#eeffff",
+ "sideBarSectionHeader.background": "#25293A",
+ "sideBarSectionHeader.foreground": "#eeffff",
+ "editorGroup.background": "#32374C",
+ "editorGroup.border": "#2E3245",
+ "editorGroup.dropBackground": "#7e57c273",
+ "editorGroupHeader.noTabsBackground": "#32374C",
+ "editorGroupHeader.tabsBackground": "#31364a",
+ "editorGroupHeader.tabsBorder": "#2C3041",
+ "tab.activeBackground": "#25293A",
+ "tab.activeForeground": "#eeffff",
+ "tab.border": "#272B3B",
+ "tab.activeBorder": "#2C3041",
+ "tab.unfocusedActiveBorder": "#2C3041",
+ "tab.inactiveBackground": "#31364A",
+ "tab.inactiveForeground": "#929ac9",
+ "tab.unfocusedActiveForeground": null,
+ "tab.unfocusedInactiveForeground": null,
+ "editor.background": "#292D3E",
+ "editor.foreground": "#BFC7D5",
+ "editorLineNumber.foreground": "#4c5374",
+ "editorLineNumber.activeForeground": "#eeffff",
+ "editorCursor.foreground": "#7e57c2",
+ "editorCursor.background": null,
+ "editor.selectionBackground": "#7580B850",
+ "editor.selectionHighlightBackground": "#383D51",
+ "editor.inactiveSelectionBackground": "#7e57c25a",
+ "editor.wordHighlightBackground": "#32374D",
+ "editor.wordHighlightStrongBackground": "#2E3250",
+ "editor.findMatchBackground": "#2e3248fc",
+ "editor.findMatchHighlightBackground": "#7e57c233",
+ "editor.findRangeHighlightBackground": null,
+ "editor.hoverHighlightBackground": "#7e57c25a",
+ "editor.lineHighlightBackground": "#0003",
+ "editor.lineHighlightBorder": null,
+ "editorLink.activeForeground": null,
+ "editor.rangeHighlightBackground": "#7e57c25a",
+ "editorWhitespace.foreground": null,
+ "editorIndentGuide.background": "#4E557980",
+ "editorRuler.foreground": "#4E557980",
+ "editorCodeLens.foreground": "#FFCA28",
+ "editorBracketMatch.background": null,
+ "editorBracketMatch.border": null,
+ "editorOverviewRuler.currentContentForeground": "#7e57c2",
+ "editorOverviewRuler.incomingContentForeground": "#7e57c2",
+ "editorOverviewRuler.commonContentForeground": "#7e57c2",
+ "editorError.foreground": "#EF5350",
+ "editorError.border": null,
+ "editorWarning.foreground": "#FFCA28",
+ "editorWarning.border": null,
+ "editorGutter.background": null,
+ "editorGutter.modifiedBackground": "#e2b93d",
+ "editorGutter.addedBackground": "#9CCC65",
+ "editorGutter.deletedBackground": "#EF5350",
+ "diffEditor.insertedTextBackground": "#99b76d23",
+ "diffEditor.removedTextBackground": "#ef535033",
+ "editorWidget.background": "#31364a",
+ "editorWidget.border": null,
+ "editorSuggestWidget.background": "#2C3043",
+ "editorSuggestWidget.border": "#2B2F40",
+ "editorSuggestWidget.foreground": "#bfc7d5",
+ "editorSuggestWidget.highlightForeground": "#ffffff",
+ "editorSuggestWidget.selectedBackground": "#7e57c2",
+ "editorHoverWidget.background": "#292D3E",
+ "editorHoverWidget.border": "#7e57c2",
+ "debugExceptionWidget.background": "#292D3E",
+ "debugExceptionWidget.border": "#7e57c2",
+ "editorMarkerNavigation.background": "#31364a",
+ "editorMarkerNavigationError.background": "#EF5350",
+ "editorMarkerNavigationWarning.background": "#FFCA28",
+ "peekView.border": "#7e57c2",
+ "peekViewEditor.background": "#232635",
+ "peekViewEditor.matchHighlightBackground": "#7e57c25a",
+ "peekViewResult.background": "#2E3245",
+ "peekViewResult.fileForeground": "#eeffff",
+ "peekViewResult.lineForeground": "#eeffff",
+ "peekViewResult.matchHighlightBackground": "#7e57c25a",
+ "peekViewResult.selectionBackground": "#2E3250",
+ "peekViewResult.selectionForeground": "#eeffff",
+ "peekViewTitle.background": "#292D3E",
+ "peekViewTitleDescription.foreground": "#697098",
+ "peekViewTitleLabel.foreground": "#eeffff",
+ "merge.currentHeaderBackground": "#7e57c25a",
+ "merge.currentContentBackground": null,
+ "merge.incomingHeaderBackground": "#7e57c25a",
+ "merge.incomingContentBackground": null,
+ "merge.border": null,
+ "panel.background": "#25293A",
+ "panel.border": "#2C2F40",
+ "panelTitle.activeBorder": "#7e57c2",
+ "panelTitle.activeForeground": "#eeffff",
+ "panelTitle.inactiveForeground": "#bfc7d580",
+ "statusBar.background": "#25293A",
+ "statusBar.foreground": "#676E95",
+ "statusBar.border": "#2C3041",
+ "statusBar.debuggingBackground": "#202431",
+ "statusBar.debuggingForeground": null,
+ "statusBar.debuggingBorder": "#1F2330",
+ "statusBar.noFolderForeground": null,
+ "statusBar.noFolderBackground": "#292D3E",
+ "statusBar.noFolderBorder": "#25293A",
+ "statusBarItem.activeBackground": "#202431",
+ "statusBarItem.hoverBackground": "#202431",
+ "statusBarItem.prominentBackground": "#202431",
+ "statusBarItem.prominentHoverBackground": "#202431",
+ "titleBar.activeBackground": "#25293A",
+ "titleBar.activeForeground": "#eeefff",
+ "titleBar.border": "#2C3041",
+ "titleBar.inactiveBackground": "#30364c",
+ "titleBar.inactiveForeground": null,
+ "notifications.background": "#292D3E",
+ "notifications.foreground": "#ffffffcc",
+ "notificationLink.foreground": "#80CBC4",
+ "extensionButton.prominentForeground": "#ffffffcc",
+ "extensionButton.prominentBackground": "#7e57c2cc",
+ "extensionButton.prominentHoverBackground": "#7e57c2",
+ "pickerGroup.foreground": "#d1aaff",
+ "pickerGroup.border": "#2E3245",
+ "terminal.ansiWhite": "#ffffff",
+ "terminal.ansiBlack": "#676E95",
+ "terminal.ansiBlue": "#82AAFF",
+ "terminal.ansiCyan": "#89DDFF",
+ "terminal.ansiGreen": "#a9c77d",
+ "terminal.ansiMagenta": "#C792EA",
+ "terminal.ansiRed": "#ff5572",
+ "terminal.ansiYellow": "#FFCB6B",
+ "terminal.ansiBrightWhite": "#ffffff",
+ "terminal.ansiBrightBlack": "#676E95",
+ "terminal.ansiBrightBlue": "#82AAFF",
+ "terminal.ansiBrightCyan": "#89DDFF",
+ "terminal.ansiBrightGreen": "#C3E88D",
+ "terminal.ansiBrightMagenta": "#C792EA",
+ "terminal.ansiBrightRed": "#ff5572",
+ "terminal.ansiBrightYellow": "#FFCB6B",
+ "debugToolBar.background": "#292D3E",
+ "welcomePage.buttonBackground": null,
+ "welcomePage.buttonHoverBackground": null,
+ "walkThrough.embeddedEditorBackground": "#232635",
+ "gitDecoration.modifiedResourceForeground": "#e2c08de6",
+ "gitDecoration.deletedResourceForeground": "#EF535090",
+ "gitDecoration.untrackedResourceForeground": "#a9c77dff",
+ "gitDecoration.ignoredResourceForeground": "#69709890",
+ "gitDecoration.conflictingResourceForeground": "#FFEB95CC",
+ "editorActiveLineNumber.foreground": "#eeffff",
+ "breadcrumb.foreground": "#6c739a",
+ "breadcrumb.focusForeground": "#bfc7d5",
+ "breadcrumb.activeSelectionForeground": "#eeffff",
+ "breadcrumbPicker.background": "#292D3E"
+ },
+ "tokenColors": [
+ {
+ "name": "Global settings",
+ "settings": {
+ "background": "#292D3E",
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#C3E88D"
+ }
+ },
+ {
+ "name": "String Quoted",
+ "scope": "string.quoted",
+ "settings": {
+ "foreground": "#C3E88D"
+ }
+ },
+ {
+ "name": "String Unquoted",
+ "scope": "string.unquoted",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Support Constant Math",
+ "scope": "support.constant.math",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": ["constant.numeric", "constant.character.numeric"],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Built-in constant",
+ "scope": [
+ "constant.language",
+ "punctuation.definition.constant",
+ "variable.other.constant"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "User-defined constant",
+ "scope": ["constant.character", "constant.other"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Constant Character Escape",
+ "scope": "constant.character.escape",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "RegExp String",
+ "scope": ["string.regexp", "string.regexp keyword.other"],
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Comma in functions",
+ "scope": "meta.function punctuation.separator.comma",
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": "variable",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": ["punctuation.accessor", "keyword"],
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage",
+ "storage.type",
+ "meta.var.expr storage.type",
+ "storage.type.property.js",
+ "storage.type.property.ts",
+ "storage.type.property.tsx",
+ "meta.class meta.method.declaration meta.var.expr storage.type.js"
+ ],
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Class name",
+ "scope": ["entity.name.class", "meta.class entity.name.type.class"],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Function Parameters",
+ "scope": "variable.parameter",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "Meta Tag",
+ "scope": ["punctuation.definition.tag", "meta.tag"],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "HTML Tag names",
+ "scope": [
+ "entity.name.tag support.class.component",
+ "meta.tag.other.html",
+ "meta.tag.other.js",
+ "meta.tag.other.tsx",
+ "entity.name.tag.tsx",
+ "entity.name.tag.js",
+ "entity.name.tag",
+ "meta.tag.js",
+ "meta.tag.tsx",
+ "meta.tag.html"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Entity Name Tag Custom",
+ "scope": "entity.name.tag.custom",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Library (function & constant)",
+ "scope": ["support.function", "support.constant"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Support Constant Property Value meta",
+ "scope": "support.constant.meta.property-value",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": ["support.type", "support.class"],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Support Variable DOM",
+ "scope": "support.variable.dom",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": "invalid",
+ "settings": {
+ "background": "#ff2c83",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid deprecated",
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#d3423e"
+ }
+ },
+ {
+ "name": "Keyword Operator",
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Relational",
+ "scope": "keyword.operator.relational",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Keyword Operator Assignment",
+ "scope": "keyword.operator.assignment",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Double-Slashed Comment",
+ "scope": "comment.line.double-slash",
+ "settings": {
+ "foreground": "#697098"
+ }
+ },
+ {
+ "name": "Object",
+ "scope": "object",
+ "settings": {
+ "foreground": "#cdebf7"
+ }
+ },
+ {
+ "name": "Null",
+ "scope": "constant.language.null",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Meta Brace",
+ "scope": "meta.brace",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Meta Delimiter Period",
+ "scope": "meta.delimiter.period",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Punctuation Definition String",
+ "scope": "punctuation.definition.string",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Boolean",
+ "scope": "constant.language.boolean",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Object Comma",
+ "scope": "object.comma",
+ "settings": {
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Variable Parameter Function",
+ "scope": "variable.parameter.function",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Support Type Property Name & entity name tags",
+ "scope": [
+ "support.type.vendored.property-name",
+ "support.constant.vendored.property-value",
+ "support.type.property-name",
+ "meta.property-list entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Entity Name tag reference in stylesheets",
+ "scope": "meta.property-list entity.name.tag.reference",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Constant Other Color RGB Value Punctuation Definition Constant",
+ "scope": "constant.other.color.rgb-value punctuation.definition.constant",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Constant Other Color",
+ "scope": "constant.other.color",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Keyword Other Unit",
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Meta Selector",
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Entity Other Attribute Name Id",
+ "scope": "entity.other.attribute-name.id",
+ "settings": {
+ "foreground": "#FAD430"
+ }
+ },
+ {
+ "name": "Meta Property Name",
+ "scope": "meta.property-name",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Doctypes",
+ "scope": ["entity.name.tag.doctype", "meta.tag.sgml.doctype"],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Punctuation Definition Parameters",
+ "scope": "punctuation.definition.parameters",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Keyword Control Operator",
+ "scope": "keyword.control.operator",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Logical",
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Variable Instances",
+ "scope": [
+ "variable.instance",
+ "variable.other.instance",
+ "variable.reaedwrite.instance",
+ "variable.other.readwrite.instance"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Variable Property Other",
+ "scope": ["variable.other.property", "variable.other.object.property"],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Entity Name Function",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Comparison",
+ "scope": "keyword.operator.comparison",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Support Constant, `new` keyword, Special Method Keyword",
+ "scope": [
+ "support.constant",
+ "keyword.other.special-method",
+ "keyword.other.new"
+ ],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Support Function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Invalid Broken",
+ "scope": "invalid.broken",
+ "settings": {
+ "foreground": "#020e14",
+ "background": "#F78C6C"
+ }
+ },
+ {
+ "name": "Invalid Unimplemented",
+ "scope": "invalid.unimplemented",
+ "settings": {
+ "background": "#8BD649",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid Illegal",
+ "scope": "invalid.illegal",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#ec5f67"
+ }
+ },
+ {
+ "name": "Language Variable",
+ "scope": "variable.language",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Support Variable Property",
+ "scope": "support.variable.property",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Variable Function",
+ "scope": "variable.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variable Interpolation",
+ "scope": "variable.interpolation",
+ "settings": {
+ "foreground": "#ec5f67"
+ }
+ },
+ {
+ "name": "Meta Function Call",
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Punctuation Section Embedded",
+ "scope": "punctuation.section.embedded",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Punctuation Tweaks",
+ "scope": [
+ "punctuation.terminator.expression",
+ "punctuation.definition.arguments",
+ "punctuation.definition.array",
+ "punctuation.section.array",
+ "meta.array"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "More Punctuation Tweaks",
+ "scope": [
+ "punctuation.definition.list.begin",
+ "punctuation.definition.list.end",
+ "punctuation.separator.arguments",
+ "punctuation.definition.list"
+ ],
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Template Strings",
+ "scope": "string.template meta.template.expression",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Backtics(``) in Template Strings",
+ "scope": "string.template punctuation.definition.string",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Italics",
+ "scope": "italic",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Bold",
+ "scope": "bold",
+ "settings": {
+ "foreground": "#ffcb6b",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Quote",
+ "scope": "quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Raw Code",
+ "scope": "raw",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "CoffeScript Variable Assignment",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "CoffeScript Parameter Function",
+ "scope": "variable.parameter.function.coffee",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "CoffeeScript Assignments",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "C# Readwrite Variables",
+ "scope": "variable.other.readwrite.cs",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "C# Classes & Storage types",
+ "scope": ["entity.name.type.class.cs", "storage.type.cs"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "C# Namespaces",
+ "scope": "entity.name.type.namespace.cs",
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "Tag names in Stylesheets",
+ "scope": [
+ "entity.name.tag.css",
+ "entity.name.tag.less",
+ "entity.name.tag.custom.css"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Wildcard(*) selector in Stylesheets",
+ "scope": [
+ "entity.name.tag.wildcard.css",
+ "entity.name.tag.wildcard.less",
+ "entity.name.tag.wildcard.scss",
+ "entity.name.tag.wildcard.sass"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "(C|SC|SA|LE)SS property value unit",
+ "scope": [
+ "keyword.other.unit.css",
+ "constant.length.units.css",
+ "keyword.other.unit.less",
+ "constant.length.units.less",
+ "keyword.other.unit.scss",
+ "constant.length.units.scss",
+ "keyword.other.unit.sass",
+ "constant.length.units.sass"
+ ],
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Attribute Name for CSS",
+ "scope": "meta.attribute-selector.css entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "punctuations in styled components",
+ "scope": [
+ "source.js source.css meta.property-list",
+ "source.js source.css punctuation.section",
+ "source.js source.css punctuation.terminator.rule",
+ "source.js source.css punctuation.definition.entity.end.bracket",
+ "source.js source.css punctuation.definition.entity.begin.bracket",
+ "source.js source.css punctuation.separator.key-value",
+ "source.js source.css punctuation.definition.attribute-selector",
+ "source.js source.css meta.property-list",
+ "source.js source.css meta.property-list punctuation.separator.comma",
+ "source.ts source.css punctuation.section",
+ "source.ts source.css punctuation.terminator.rule",
+ "source.ts source.css punctuation.definition.entity.end.bracket",
+ "source.ts source.css punctuation.definition.entity.begin.bracket",
+ "source.ts source.css punctuation.separator.key-value",
+ "source.ts source.css punctuation.definition.attribute-selector",
+ "source.ts source.css meta.property-list",
+ "source.ts source.css meta.property-list punctuation.separator.comma"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Elixir Classes",
+ "scope": [
+ "source.elixir support.type.elixir",
+ "source.elixir meta.module.elixir entity.name.class.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir Functions",
+ "scope": "source.elixir entity.name.function",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Elixir Constants",
+ "scope": [
+ "source.elixir constant.other.symbol.elixir",
+ "source.elixir constant.other.keywords.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir String Punctuations",
+ "scope": "source.elixir punctuation.definition.string",
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Elixir",
+ "scope": [
+ "source.elixir variable.other.readwrite.module.elixir",
+ "source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"
+ ],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Elixir Binary Punctuations",
+ "scope": "source.elixir .punctuation.binary.elixir",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Go Function Calls",
+ "scope": "source.go meta.function-call.go",
+ "settings": {
+ "foreground": "#DDDDDD"
+ }
+ },
+ {
+ "name": "GraphQL Variables",
+ "scope": "variable.qraphql",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "ID Attribute Name in HTML",
+ "scope": "entity.other.attribute-name.id.html",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "HTML Punctuation Definition Tag",
+ "scope": "punctuation.definition.tag.html",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "HTML Doctype",
+ "scope": "meta.tag.sgml.doctype.html",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "JavaScript Classes",
+ "scope": "meta.class entity.name.type.class.js",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "JavaScript Method Declaration e.g. `constructor`",
+ "scope": "meta.method.declaration storage.type.js",
+ "settings": {
+ "foreground": "#82AAFF",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "JavaScript Terminator",
+ "scope": "terminator.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Meta Punctuation Definition",
+ "scope": "meta.js punctuation.definition.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Entity Names in Code Documentations",
+ "scope": [
+ "entity.name.type.instance.jsdoc",
+ "entity.name.type.instance.phpdoc"
+ ],
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "Other Variables in Code Documentations",
+ "scope": ["variable.other.jsdoc", "variable.other.phpdoc"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "JavaScript module imports and exports",
+ "scope": [
+ "variable.other.meta.import.js",
+ "meta.import.js variable.other",
+ "variable.other.meta.export.js",
+ "meta.export.js variable.other"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Variable Parameter Function",
+ "scope": "variable.parameter.function.js",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "JavaScript Variable Other ReadWrite",
+ "scope": "variable.other.readwrite.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Text nested in React tags",
+ "scope": [
+ "meta.jsx.children",
+ "meta.jsx.children.js",
+ "meta.jsx.children.tsx"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript[React] Variable Other Object",
+ "scope": [
+ "variable.other.object.js",
+ "variable.other.object.jsx",
+ "meta.object-literal.key.js",
+ "meta.object-literal.key.jsx",
+ "variable.object.property.js",
+ "variable.object.property.jsx"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Variables",
+ "scope": ["variable.js", "variable.other.js"],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Entity Name Type",
+ "scope": ["entity.name.type.js", "entity.name.type.module.js"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "JavaScript Support Classes",
+ "scope": "support.class.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JSON Property Names",
+ "scope": "support.type.property-name.json",
+ "settings": {
+ "foreground": "#C3E88D",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "JSON Support Constants",
+ "scope": "support.constant.json",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "JSON Property values (string)",
+ "scope": "meta.structure.dictionary.value.json string.quoted.double",
+ "settings": {
+ "foreground": "#80CBC4",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "Strings in JSON values",
+ "scope": "string.quoted.double.json punctuation.definition.string.json",
+ "settings": {
+ "foreground": "#80CBC4",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "Specific JSON Property values like null",
+ "scope": "meta.structure.dictionary.json meta.structure.dictionary.value constant.language",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Ruby Variables",
+ "scope": "variable.other.ruby",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Ruby Hashkeys",
+ "scope": "constant.language.symbol.hashkey.ruby",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "LESS Tag names",
+ "scope": "entity.name.tag.less",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Attribute Name for LESS",
+ "scope": "meta.attribute-selector.less entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Markup Headings",
+ "scope": "markup.heading",
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markup Italics",
+ "scope": "markup.italic",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup Bold",
+ "scope": "markup.bold",
+ "settings": {
+ "foreground": "#ffcb6b",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markup Quote + others",
+ "scope": "markup.quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup Raw Code + others",
+ "scope": "markup.inline.raw",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Markup Links",
+ "scope": ["markup.underline.link", "markup.underline.link.image"],
+ "settings": {
+ "foreground": "#ff869a"
+ }
+ },
+ {
+ "name": "Markup Attributes",
+ "scope": ["markup.meta.attribute-list"],
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Markup Admonitions",
+ "scope": "markup.admonition",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markup Lists",
+ "scope": "markup.list.bullet",
+ "settings": {
+ "foreground": "#D9F5DD"
+ }
+ },
+ {
+ "name": "Markup Superscript and Subscript",
+ "scope": ["markup.superscript", "markup.subscript"],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown Link Title and Description",
+ "scope": [
+ "string.other.link.title.markdown",
+ "string.other.link.description.markdown"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Markdown Punctuation",
+ "scope": [
+ "punctuation.definition.string.markdown",
+ "punctuation.definition.string.begin.markdown",
+ "punctuation.definition.string.end.markdown",
+ "meta.link.inline.markdown punctuation.definition.string"
+ ],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markdown MetaData Punctuation",
+ "scope": ["punctuation.definition.metadata.markdown"],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Markdown List Punctuation",
+ "scope": ["beginning.punctuation.definition.list.markdown"],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Asciidoc Function",
+ "scope": "entity.name.function.asciidoc",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "PHP Variables",
+ "scope": "variable.other.php",
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Support Classes in PHP",
+ "scope": "support.class.php",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "Punctuations in PHP function calls",
+ "scope": "meta.function-call.php punctuation",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "PHP Global Variables",
+ "scope": "variable.other.global.php",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Declaration Punctuation in PHP Global Variables",
+ "scope": "variable.other.global.php punctuation.definition.variable",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Language Constants in Python",
+ "scope": "constant.language.python",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Python Function Parameter and Arguments",
+ "scope": [
+ "variable.parameter.function.python",
+ "meta.function-call.arguments.python"
+ ],
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": [
+ "meta.function-call.python",
+ "meta.function-call.generic.python"
+ ],
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "Punctuations in Python",
+ "scope": "punctuation.python",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Decorator Functions in Python",
+ "scope": "entity.name.function.decorator.python",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Python Language Variable",
+ "scope": "source.python variable.language.special",
+ "settings": {
+ "foreground": "#8EACE3"
+ }
+ },
+ {
+ "name": "SCSS Variable",
+ "scope": [
+ "variable.scss",
+ "variable.sass",
+ "variable.parameter.url.scss",
+ "variable.parameter.url.sass"
+ ],
+ "settings": {
+ "foreground": "#DDDDDD"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Attribute Name for SASS",
+ "scope": [
+ "meta.attribute-selector.scss entity.other.attribute-name.attribute",
+ "meta.attribute-selector.sass entity.other.attribute-name.attribute"
+ ],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Tag names in SASS",
+ "scope": ["entity.name.tag.scss", "entity.name.tag.sass"],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "TypeScript[React] Variables and Object Properties",
+ "scope": [
+ "variable.other.readwrite.alias.ts",
+ "variable.other.readwrite.alias.tsx",
+ "variable.other.readwrite.ts",
+ "variable.other.readwrite.tsx",
+ "variable.other.object.ts",
+ "variable.other.object.tsx",
+ "variable.object.property.ts",
+ "variable.object.property.tsx",
+ "variable.other.ts",
+ "variable.other.tsx",
+ "variable.tsx",
+ "variable.ts"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types",
+ "scope": ["entity.name.type.ts", "entity.name.type.tsx"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "TypeScript[React] Node Classes",
+ "scope": ["support.class.node.ts", "support.class.node.tsx"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types as Parameters",
+ "scope": [
+ "meta.type.parameters.ts entity.name.type",
+ "meta.type.parameters.tsx entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "TypeScript[React] Import/Export Punctuations",
+ "scope": [
+ "meta.import.ts punctuation.definition.block",
+ "meta.import.tsx punctuation.definition.block",
+ "meta.export.ts punctuation.definition.block",
+ "meta.export.tsx punctuation.definition.block"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": [
+ "meta.decorator punctuation.decorator.ts",
+ "meta.decorator punctuation.decorator.tsx"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": "meta.tag.js meta.jsx.children.tsx",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "YAML Entity Name Tags",
+ "scope": "entity.name.tag.yaml",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "handlebars variables",
+ "scope": "variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "handlebars parameters",
+ "scope": "entity.other.attribute-name.handlebars variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "handlebars enitity attribute names",
+ "scope": "entity.other.attribute-name.handlebars",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "handlebars enitity attribute values",
+ "scope": "entity.other.attribute-value.handlebars variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "normalize font style of certain components",
+ "scope": [
+ "meta.tag.js meta.embedded.expression.js punctuation.section.embedded.begin.js",
+ "meta.tag.js meta.embedded.expression.js punctuation.section.embedded.end.js",
+ "meta.property-list.css meta.property-value.css variable.other.less",
+ "punctuation.section.embedded.begin.js.jsx",
+ "punctuation.section.embedded.end.js.jsx",
+ "meta.property-list.scss variable.scss",
+ "meta.property-list.sass variable.sass",
+ "keyword.operator.logical",
+ "keyword.operator.arithmetic",
+ "keyword.operator.bitwise",
+ "keyword.operator.increment",
+ "keyword.operator.ternary",
+ "keyword.operator.comparison",
+ "keyword.operator.assignment",
+ "keyword.operator.operator",
+ "keyword.operator.or.regexp",
+ "keyword.operator.expression.in",
+ "keyword.operator.type",
+ "punctuation.section.embedded.js",
+ "punctuation.definintion.string",
+ "punctuation"
+ ],
+ "settings": {
+ "fontStyle": "normal"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/palenight/palenight-operator.json b/assets/themes/src/vscode/palenight/palenight-operator.json
new file mode 100644
index 0000000000..92104cd9ed
--- /dev/null
+++ b/assets/themes/src/vscode/palenight/palenight-operator.json
@@ -0,0 +1,1640 @@
+{
+ "name": "Palenight Operator",
+ "author": "Olaolu Olawuyi",
+ "maintainers": ["Olaolu Olawuyi "],
+ "type": "dark",
+ "semanticClass": "palenight-operator",
+ "colors": {
+ "contrastActiveBorder": null,
+ "contrastBorder": "#282B3C",
+ "focusBorder": "#282B3C",
+ "foreground": "#ffffff",
+ "widget.shadow": "#232635",
+ "selection.background": "#7580B850",
+ "descriptionForeground": null,
+ "errorForeground": "#EF5350",
+ "button.background": "#7e57c2cc",
+ "button.foreground": "#ffffffcc",
+ "button.hoverBackground": "#7e57c2",
+ "dropdown.background": "#292D3E",
+ "dropdown.border": "#7e57c2",
+ "dropdown.foreground": "#ffffffcc",
+ "input.background": "#313850",
+ "input.border": "#7e57c2",
+ "input.foreground": "#ffffffcc",
+ "input.placeholderForeground": "#ffffffcc",
+ "inputOption.activeBorder": "#ffffffcc",
+ "inputValidation.errorBackground": "#ef5350f2",
+ "inputValidation.errorBorder": "#EF5350",
+ "inputValidation.infoBackground": "#64b5f6f2",
+ "inputValidation.infoBorder": "#64B5F6",
+ "inputValidation.warningBackground": "#ffca28f2",
+ "inputValidation.warningBorder": "#FFCA28",
+ "scrollbar.shadow": "#292D3E00",
+ "scrollbarSlider.activeBackground": "#694CA4cc",
+ "scrollbarSlider.background": "#694CA466",
+ "scrollbarSlider.hoverBackground": "#694CA4cc",
+ "badge.background": "#7e57c2",
+ "badge.foreground": "#ffffff",
+ "progress.background": "#7e57c2",
+ "list.activeSelectionBackground": "#7e57c2",
+ "list.activeSelectionForeground": "#ffffff",
+ "list.dropBackground": "#2E3245",
+ "list.focusBackground": "#0000002e",
+ "list.focusForeground": "#ffffff",
+ "list.highlightForeground": "#ffffff",
+ "list.hoverBackground": "#0000001a",
+ "list.hoverForeground": "#ffffff",
+ "list.inactiveSelectionBackground": "#929ac90d",
+ "list.inactiveSelectionForeground": "#929ac9",
+ "activityBar.background": "#282C3D",
+ "activityBar.dropBackground": "#7e57c2e3",
+ "activityBar.foreground": "#eeffff",
+ "activityBar.border": "#282C3D",
+ "activityBarBadge.background": "#7e57c2",
+ "activityBarBadge.foreground": "#ffffff",
+ "sideBar.background": "#292D3E",
+ "sideBar.foreground": "#6C739A",
+ "sideBar.border": "#282B3C",
+ "sideBarTitle.foreground": "#eeffff",
+ "sideBarSectionHeader.background": "#292D3E",
+ "sideBarSectionHeader.foreground": "#eeffff",
+ "editorGroup.background": "#32374C",
+ "editorGroup.border": "#2E3245",
+ "editorGroup.dropBackground": "#7e57c273",
+ "editorGroupHeader.noTabsBackground": "#32374C",
+ "editorGroupHeader.tabsBackground": "#31364a",
+ "editorGroupHeader.tabsBorder": "#262A39",
+ "tab.activeBackground": "#292D3E",
+ "tab.activeForeground": "#eeffff",
+ "tab.border": "#272B3B",
+ "tab.activeBorder": "#262A39",
+ "tab.unfocusedActiveBorder": "#262A39",
+ "tab.inactiveBackground": "#31364A",
+ "tab.inactiveForeground": "#929ac9",
+ "tab.unfocusedActiveForeground": null,
+ "tab.unfocusedInactiveForeground": null,
+ "editor.background": "#292D3E",
+ "editor.foreground": "#BFC7D5",
+ "editorLineNumber.foreground": "#4c5374",
+ "editorLineNumber.activeForeground": "#eeffff",
+ "editorCursor.foreground": "#7e57c2",
+ "editorCursor.background": null,
+ "editor.selectionBackground": "#7580B850",
+ "editor.selectionHighlightBackground": "#383D51",
+ "editor.inactiveSelectionBackground": "#7e57c25a",
+ "editor.wordHighlightBackground": "#32374D",
+ "editor.wordHighlightStrongBackground": "#2E3250",
+ "editor.findMatchBackground": "#2e3248fc",
+ "editor.findMatchHighlightBackground": "#7e57c233",
+ "editor.findRangeHighlightBackground": null,
+ "editor.hoverHighlightBackground": "#7e57c25a",
+ "editor.lineHighlightBackground": "#0003",
+ "editor.lineHighlightBorder": null,
+ "editorLink.activeForeground": null,
+ "editor.rangeHighlightBackground": "#7e57c25a",
+ "editorWhitespace.foreground": null,
+ "editorIndentGuide.background": "#4E557980",
+ "editorRuler.foreground": "#4E557980",
+ "editorCodeLens.foreground": "#FFCA28",
+ "editorBracketMatch.background": null,
+ "editorBracketMatch.border": null,
+ "editorOverviewRuler.currentContentForeground": "#7e57c2",
+ "editorOverviewRuler.incomingContentForeground": "#7e57c2",
+ "editorOverviewRuler.commonContentForeground": "#7e57c2",
+ "editorError.foreground": "#EF5350",
+ "editorError.border": null,
+ "editorWarning.foreground": "#FFCA28",
+ "editorWarning.border": null,
+ "editorGutter.background": null,
+ "editorGutter.modifiedBackground": "#e2b93d",
+ "editorGutter.addedBackground": "#9CCC65",
+ "editorGutter.deletedBackground": "#EF5350",
+ "diffEditor.insertedTextBackground": "#99b76d23",
+ "diffEditor.removedTextBackground": "#ef535033",
+ "editorWidget.background": "#31364a",
+ "editorWidget.border": null,
+ "editorSuggestWidget.background": "#2C3043",
+ "editorSuggestWidget.border": "#2B2F40",
+ "editorSuggestWidget.foreground": "#bfc7d5",
+ "editorSuggestWidget.highlightForeground": "#ffffff",
+ "editorSuggestWidget.selectedBackground": "#7e57c2",
+ "editorHoverWidget.background": "#292D3E",
+ "editorHoverWidget.border": "#7e57c2",
+ "debugExceptionWidget.background": "#292D3E",
+ "debugExceptionWidget.border": "#7e57c2",
+ "editorMarkerNavigation.background": "#31364a",
+ "editorMarkerNavigationError.background": "#EF5350",
+ "editorMarkerNavigationWarning.background": "#FFCA28",
+ "peekView.border": "#7e57c2",
+ "peekViewEditor.background": "#232635",
+ "peekViewEditor.matchHighlightBackground": "#7e57c25a",
+ "peekViewResult.background": "#2E3245",
+ "peekViewResult.fileForeground": "#eeffff",
+ "peekViewResult.lineForeground": "#eeffff",
+ "peekViewResult.matchHighlightBackground": "#7e57c25a",
+ "peekViewResult.selectionBackground": "#2E3250",
+ "peekViewResult.selectionForeground": "#eeffff",
+ "peekViewTitle.background": "#292D3E",
+ "peekViewTitleDescription.foreground": "#697098",
+ "peekViewTitleLabel.foreground": "#eeffff",
+ "merge.currentHeaderBackground": "#7e57c25a",
+ "merge.currentContentBackground": null,
+ "merge.incomingHeaderBackground": "#7e57c25a",
+ "merge.incomingContentBackground": null,
+ "merge.border": null,
+ "panel.background": "#292D3E",
+ "panel.border": "#282B3C",
+ "panelTitle.activeBorder": "#7e57c2",
+ "panelTitle.activeForeground": "#eeffff",
+ "panelTitle.inactiveForeground": "#bfc7d580",
+ "statusBar.background": "#282C3D",
+ "statusBar.foreground": "#676E95",
+ "statusBar.border": "#262A39",
+ "statusBar.debuggingBackground": "#202431",
+ "statusBar.debuggingForeground": null,
+ "statusBar.debuggingBorder": "#1F2330",
+ "statusBar.noFolderForeground": null,
+ "statusBar.noFolderBackground": "#292D3E",
+ "statusBar.noFolderBorder": "#25293A",
+ "statusBarItem.activeBackground": "#202431",
+ "statusBarItem.hoverBackground": "#202431",
+ "statusBarItem.prominentBackground": "#202431",
+ "statusBarItem.prominentHoverBackground": "#202431",
+ "titleBar.activeBackground": "#292d3e",
+ "titleBar.activeForeground": "#eeefff",
+ "titleBar.border": "#30364c",
+ "titleBar.inactiveBackground": "#30364c",
+ "titleBar.inactiveForeground": null,
+ "notifications.background": "#292D3E",
+ "notifications.foreground": "#ffffffcc",
+ "notificationLink.foreground": "#80CBC4",
+ "extensionButton.prominentForeground": "#ffffffcc",
+ "extensionButton.prominentBackground": "#7e57c2cc",
+ "extensionButton.prominentHoverBackground": "#7e57c2",
+ "pickerGroup.foreground": "#d1aaff",
+ "pickerGroup.border": "#2E3245",
+ "terminal.ansiWhite": "#ffffff",
+ "terminal.ansiBlack": "#676E95",
+ "terminal.ansiBlue": "#82AAFF",
+ "terminal.ansiCyan": "#89DDFF",
+ "terminal.ansiGreen": "#a9c77d",
+ "terminal.ansiMagenta": "#C792EA",
+ "terminal.ansiRed": "#ff5572",
+ "terminal.ansiYellow": "#FFCB6B",
+ "terminal.ansiBrightWhite": "#ffffff",
+ "terminal.ansiBrightBlack": "#676E95",
+ "terminal.ansiBrightBlue": "#82AAFF",
+ "terminal.ansiBrightCyan": "#89DDFF",
+ "terminal.ansiBrightGreen": "#C3E88D",
+ "terminal.ansiBrightMagenta": "#C792EA",
+ "terminal.ansiBrightRed": "#ff5572",
+ "terminal.ansiBrightYellow": "#FFCB6B",
+ "debugToolBar.background": "#292D3E",
+ "welcomePage.buttonBackground": null,
+ "welcomePage.buttonHoverBackground": null,
+ "walkThrough.embeddedEditorBackground": "#232635",
+ "gitDecoration.modifiedResourceForeground": "#e2c08de6",
+ "gitDecoration.deletedResourceForeground": "#EF535090",
+ "gitDecoration.untrackedResourceForeground": "#a9c77dff",
+ "gitDecoration.ignoredResourceForeground": "#69709890",
+ "gitDecoration.conflictingResourceForeground": "#FFEB95CC",
+ "editorActiveLineNumber.foreground": "#eeffff",
+ "breadcrumb.foreground": "#6c739a",
+ "breadcrumb.focusForeground": "#bfc7d5",
+ "breadcrumb.activeSelectionForeground": "#eeffff",
+ "breadcrumbPicker.background": "#292D3E"
+ },
+ "tokenColors": [
+ {
+ "name": "Global settings",
+ "settings": {
+ "background": "#292D3E",
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#C3E88D"
+ }
+ },
+ {
+ "name": "String Quoted",
+ "scope": "string.quoted",
+ "settings": {
+ "foreground": "#C3E88D"
+ }
+ },
+ {
+ "name": "String Unquoted",
+ "scope": "string.unquoted",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Support Constant Math",
+ "scope": "support.constant.math",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": ["constant.numeric", "constant.character.numeric"],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Built-in constant",
+ "scope": [
+ "constant.language",
+ "punctuation.definition.constant",
+ "variable.other.constant"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "User-defined constant",
+ "scope": ["constant.character", "constant.other"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Constant Character Escape",
+ "scope": "constant.character.escape",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "RegExp String",
+ "scope": ["string.regexp", "string.regexp keyword.other"],
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Comma in functions",
+ "scope": "meta.function punctuation.separator.comma",
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": "variable",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": ["punctuation.accessor", "keyword"],
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage",
+ "storage.type",
+ "meta.var.expr storage.type",
+ "storage.type.property.js",
+ "storage.type.property.ts",
+ "storage.type.property.tsx",
+ "meta.class meta.method.declaration meta.var.expr storage.type.js"
+ ],
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Class name",
+ "scope": ["entity.name.class", "meta.class entity.name.type.class"],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Function Parameters",
+ "scope": "variable.parameter",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "Meta Tag",
+ "scope": ["punctuation.definition.tag", "meta.tag"],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "HTML Tag names",
+ "scope": [
+ "entity.name.tag support.class.component",
+ "meta.tag.other.html",
+ "meta.tag.other.js",
+ "meta.tag.other.tsx",
+ "entity.name.tag.tsx",
+ "entity.name.tag.js",
+ "entity.name.tag",
+ "meta.tag.js",
+ "meta.tag.tsx",
+ "meta.tag.html"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Entity Name Tag Custom",
+ "scope": "entity.name.tag.custom",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Library (function & constant)",
+ "scope": ["support.function", "support.constant"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Support Constant Property Value meta",
+ "scope": "support.constant.meta.property-value",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": ["support.type", "support.class"],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Support Variable DOM",
+ "scope": "support.variable.dom",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": "invalid",
+ "settings": {
+ "background": "#ff2c83",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid deprecated",
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#d3423e"
+ }
+ },
+ {
+ "name": "Keyword Operator",
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Relational",
+ "scope": "keyword.operator.relational",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Keyword Operator Assignment",
+ "scope": "keyword.operator.assignment",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Double-Slashed Comment",
+ "scope": "comment.line.double-slash",
+ "settings": {
+ "foreground": "#697098"
+ }
+ },
+ {
+ "name": "Object",
+ "scope": "object",
+ "settings": {
+ "foreground": "#cdebf7"
+ }
+ },
+ {
+ "name": "Null",
+ "scope": "constant.language.null",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Meta Brace",
+ "scope": "meta.brace",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Meta Delimiter Period",
+ "scope": "meta.delimiter.period",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Punctuation Definition String",
+ "scope": "punctuation.definition.string",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Boolean",
+ "scope": "constant.language.boolean",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Object Comma",
+ "scope": "object.comma",
+ "settings": {
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Variable Parameter Function",
+ "scope": "variable.parameter.function",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Support Type Property Name & entity name tags",
+ "scope": [
+ "support.type.vendored.property-name",
+ "support.constant.vendored.property-value",
+ "support.type.property-name",
+ "meta.property-list entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Entity Name tag reference in stylesheets",
+ "scope": "meta.property-list entity.name.tag.reference",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Constant Other Color RGB Value Punctuation Definition Constant",
+ "scope": "constant.other.color.rgb-value punctuation.definition.constant",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Constant Other Color",
+ "scope": "constant.other.color",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Keyword Other Unit",
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Meta Selector",
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Entity Other Attribute Name Id",
+ "scope": "entity.other.attribute-name.id",
+ "settings": {
+ "foreground": "#FAD430"
+ }
+ },
+ {
+ "name": "Meta Property Name",
+ "scope": "meta.property-name",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Doctypes",
+ "scope": ["entity.name.tag.doctype", "meta.tag.sgml.doctype"],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Punctuation Definition Parameters",
+ "scope": "punctuation.definition.parameters",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Keyword Control Operator",
+ "scope": "keyword.control.operator",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Logical",
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Variable Instances",
+ "scope": [
+ "variable.instance",
+ "variable.other.instance",
+ "variable.reaedwrite.instance",
+ "variable.other.readwrite.instance"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Variable Property Other",
+ "scope": ["variable.other.property", "variable.other.object.property"],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Entity Name Function",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Comparison",
+ "scope": "keyword.operator.comparison",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Support Constant, `new` keyword, Special Method Keyword",
+ "scope": [
+ "support.constant",
+ "keyword.other.special-method",
+ "keyword.other.new"
+ ],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Support Function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Invalid Broken",
+ "scope": "invalid.broken",
+ "settings": {
+ "foreground": "#020e14",
+ "background": "#F78C6C"
+ }
+ },
+ {
+ "name": "Invalid Unimplemented",
+ "scope": "invalid.unimplemented",
+ "settings": {
+ "background": "#8BD649",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid Illegal",
+ "scope": "invalid.illegal",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#ec5f67"
+ }
+ },
+ {
+ "name": "Language Variable",
+ "scope": "variable.language",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Support Variable Property",
+ "scope": "support.variable.property",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Variable Function",
+ "scope": "variable.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variable Interpolation",
+ "scope": "variable.interpolation",
+ "settings": {
+ "foreground": "#ec5f67"
+ }
+ },
+ {
+ "name": "Meta Function Call",
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Punctuation Section Embedded",
+ "scope": "punctuation.section.embedded",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Punctuation Tweaks",
+ "scope": [
+ "punctuation.terminator.expression",
+ "punctuation.definition.arguments",
+ "punctuation.definition.array",
+ "punctuation.section.array",
+ "meta.array"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "More Punctuation Tweaks",
+ "scope": [
+ "punctuation.definition.list.begin",
+ "punctuation.definition.list.end",
+ "punctuation.separator.arguments",
+ "punctuation.definition.list"
+ ],
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Template Strings",
+ "scope": "string.template meta.template.expression",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Backtics(``) in Template Strings",
+ "scope": "string.template punctuation.definition.string",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Italics",
+ "scope": "italic",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Bold",
+ "scope": "bold",
+ "settings": {
+ "foreground": "#ffcb6b",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Quote",
+ "scope": "quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Raw Code",
+ "scope": "raw",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "CoffeScript Variable Assignment",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "CoffeScript Parameter Function",
+ "scope": "variable.parameter.function.coffee",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "CoffeeScript Assignments",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "C# Readwrite Variables",
+ "scope": "variable.other.readwrite.cs",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "C# Classes & Storage types",
+ "scope": ["entity.name.type.class.cs", "storage.type.cs"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "C# Namespaces",
+ "scope": "entity.name.type.namespace.cs",
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "Tag names in Stylesheets",
+ "scope": [
+ "entity.name.tag.css",
+ "entity.name.tag.less",
+ "entity.name.tag.custom.css"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Wildcard(*) selector in Stylesheets",
+ "scope": [
+ "entity.name.tag.wildcard.css",
+ "entity.name.tag.wildcard.less",
+ "entity.name.tag.wildcard.scss",
+ "entity.name.tag.wildcard.sass"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "(C|SC|SA|LE)SS property value unit",
+ "scope": [
+ "keyword.other.unit.css",
+ "constant.length.units.css",
+ "keyword.other.unit.less",
+ "constant.length.units.less",
+ "keyword.other.unit.scss",
+ "constant.length.units.scss",
+ "keyword.other.unit.sass",
+ "constant.length.units.sass"
+ ],
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Attribute Name for CSS",
+ "scope": "meta.attribute-selector.css entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "punctuations in styled components",
+ "scope": [
+ "source.js source.css meta.property-list",
+ "source.js source.css punctuation.section",
+ "source.js source.css punctuation.terminator.rule",
+ "source.js source.css punctuation.definition.entity.end.bracket",
+ "source.js source.css punctuation.definition.entity.begin.bracket",
+ "source.js source.css punctuation.separator.key-value",
+ "source.js source.css punctuation.definition.attribute-selector",
+ "source.js source.css meta.property-list",
+ "source.js source.css meta.property-list punctuation.separator.comma",
+ "source.ts source.css punctuation.section",
+ "source.ts source.css punctuation.terminator.rule",
+ "source.ts source.css punctuation.definition.entity.end.bracket",
+ "source.ts source.css punctuation.definition.entity.begin.bracket",
+ "source.ts source.css punctuation.separator.key-value",
+ "source.ts source.css punctuation.definition.attribute-selector",
+ "source.ts source.css meta.property-list",
+ "source.ts source.css meta.property-list punctuation.separator.comma"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Elixir Classes",
+ "scope": [
+ "source.elixir support.type.elixir",
+ "source.elixir meta.module.elixir entity.name.class.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir Functions",
+ "scope": "source.elixir entity.name.function",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Elixir Constants",
+ "scope": [
+ "source.elixir constant.other.symbol.elixir",
+ "source.elixir constant.other.keywords.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir String Punctuations",
+ "scope": "source.elixir punctuation.definition.string",
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Elixir",
+ "scope": [
+ "source.elixir variable.other.readwrite.module.elixir",
+ "source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"
+ ],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Elixir Binary Punctuations",
+ "scope": "source.elixir .punctuation.binary.elixir",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Go Function Calls",
+ "scope": "source.go meta.function-call.go",
+ "settings": {
+ "foreground": "#DDDDDD"
+ }
+ },
+ {
+ "name": "GraphQL Variables",
+ "scope": "variable.qraphql",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "ID Attribute Name in HTML",
+ "scope": "entity.other.attribute-name.id.html",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "HTML Punctuation Definition Tag",
+ "scope": "punctuation.definition.tag.html",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "HTML Doctype",
+ "scope": "meta.tag.sgml.doctype.html",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "JavaScript Classes",
+ "scope": "meta.class entity.name.type.class.js",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "JavaScript Method Declaration e.g. `constructor`",
+ "scope": "meta.method.declaration storage.type.js",
+ "settings": {
+ "foreground": "#82AAFF",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "JavaScript Terminator",
+ "scope": "terminator.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Meta Punctuation Definition",
+ "scope": "meta.js punctuation.definition.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Entity Names in Code Documentations",
+ "scope": [
+ "entity.name.type.instance.jsdoc",
+ "entity.name.type.instance.phpdoc"
+ ],
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "Other Variables in Code Documentations",
+ "scope": ["variable.other.jsdoc", "variable.other.phpdoc"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "JavaScript module imports and exports",
+ "scope": [
+ "variable.other.meta.import.js",
+ "meta.import.js variable.other",
+ "variable.other.meta.export.js",
+ "meta.export.js variable.other"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Variable Parameter Function",
+ "scope": "variable.parameter.function.js",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "JavaScript Variable Other ReadWrite",
+ "scope": "variable.other.readwrite.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Text nested in React tags",
+ "scope": [
+ "meta.jsx.children",
+ "meta.jsx.children.js",
+ "meta.jsx.children.tsx"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript[React] Variable Other Object",
+ "scope": [
+ "variable.other.object.js",
+ "variable.other.object.jsx",
+ "meta.object-literal.key.js",
+ "meta.object-literal.key.jsx",
+ "variable.object.property.js",
+ "variable.object.property.jsx"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Variables",
+ "scope": ["variable.js", "variable.other.js"],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Entity Name Type",
+ "scope": ["entity.name.type.js", "entity.name.type.module.js"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "JavaScript Support Classes",
+ "scope": "support.class.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JSON Property Names",
+ "scope": "support.type.property-name.json",
+ "settings": {
+ "foreground": "#C3E88D",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "JSON Support Constants",
+ "scope": "support.constant.json",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "JSON Property values (string)",
+ "scope": "meta.structure.dictionary.value.json string.quoted.double",
+ "settings": {
+ "foreground": "#80CBC4",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "Strings in JSON values",
+ "scope": "string.quoted.double.json punctuation.definition.string.json",
+ "settings": {
+ "foreground": "#80CBC4",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "Specific JSON Property values like null",
+ "scope": "meta.structure.dictionary.json meta.structure.dictionary.value constant.language",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Ruby Variables",
+ "scope": "variable.other.ruby",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Ruby Hashkeys",
+ "scope": "constant.language.symbol.hashkey.ruby",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "LESS Tag names",
+ "scope": "entity.name.tag.less",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Attribute Name for LESS",
+ "scope": "meta.attribute-selector.less entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Markup Headings",
+ "scope": "markup.heading",
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markup Italics",
+ "scope": "markup.italic",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup Bold",
+ "scope": "markup.bold",
+ "settings": {
+ "foreground": "#ffcb6b",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markup Quote + others",
+ "scope": "markup.quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup Raw Code + others",
+ "scope": "markup.inline.raw",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Markup Links",
+ "scope": ["markup.underline.link", "markup.underline.link.image"],
+ "settings": {
+ "foreground": "#ff869a"
+ }
+ },
+ {
+ "name": "Markup Attributes",
+ "scope": ["markup.meta.attribute-list"],
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Markup Admonitions",
+ "scope": "markup.admonition",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markup Lists",
+ "scope": "markup.list.bullet",
+ "settings": {
+ "foreground": "#D9F5DD"
+ }
+ },
+ {
+ "name": "Markup Superscript and Subscript",
+ "scope": ["markup.superscript", "markup.subscript"],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown Link Title and Description",
+ "scope": [
+ "string.other.link.title.markdown",
+ "string.other.link.description.markdown"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Markdown Punctuation",
+ "scope": [
+ "punctuation.definition.string.markdown",
+ "punctuation.definition.string.begin.markdown",
+ "punctuation.definition.string.end.markdown",
+ "meta.link.inline.markdown punctuation.definition.string"
+ ],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markdown MetaData Punctuation",
+ "scope": ["punctuation.definition.metadata.markdown"],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Markdown List Punctuation",
+ "scope": ["beginning.punctuation.definition.list.markdown"],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Asciidoc Function",
+ "scope": "entity.name.function.asciidoc",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "PHP Variables",
+ "scope": "variable.other.php",
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Support Classes in PHP",
+ "scope": "support.class.php",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "Punctuations in PHP function calls",
+ "scope": "meta.function-call.php punctuation",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "PHP Global Variables",
+ "scope": "variable.other.global.php",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Declaration Punctuation in PHP Global Variables",
+ "scope": "variable.other.global.php punctuation.definition.variable",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Language Constants in Python",
+ "scope": "constant.language.python",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Python Function Parameter and Arguments",
+ "scope": [
+ "variable.parameter.function.python",
+ "meta.function-call.arguments.python"
+ ],
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": [
+ "meta.function-call.python",
+ "meta.function-call.generic.python"
+ ],
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "Punctuations in Python",
+ "scope": "punctuation.python",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Decorator Functions in Python",
+ "scope": "entity.name.function.decorator.python",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Python Language Variable",
+ "scope": "source.python variable.language.special",
+ "settings": {
+ "foreground": "#8EACE3"
+ }
+ },
+ {
+ "name": "SCSS Variable",
+ "scope": [
+ "variable.scss",
+ "variable.sass",
+ "variable.parameter.url.scss",
+ "variable.parameter.url.sass"
+ ],
+ "settings": {
+ "foreground": "#DDDDDD"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Attribute Name for SASS",
+ "scope": [
+ "meta.attribute-selector.scss entity.other.attribute-name.attribute",
+ "meta.attribute-selector.sass entity.other.attribute-name.attribute"
+ ],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Tag names in SASS",
+ "scope": ["entity.name.tag.scss", "entity.name.tag.sass"],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "TypeScript[React] Variables and Object Properties",
+ "scope": [
+ "variable.other.readwrite.alias.ts",
+ "variable.other.readwrite.alias.tsx",
+ "variable.other.readwrite.ts",
+ "variable.other.readwrite.tsx",
+ "variable.other.object.ts",
+ "variable.other.object.tsx",
+ "variable.object.property.ts",
+ "variable.object.property.tsx",
+ "variable.other.ts",
+ "variable.other.tsx",
+ "variable.tsx",
+ "variable.ts"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types",
+ "scope": ["entity.name.type.ts", "entity.name.type.tsx"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "TypeScript[React] Node Classes",
+ "scope": ["support.class.node.ts", "support.class.node.tsx"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types as Parameters",
+ "scope": [
+ "meta.type.parameters.ts entity.name.type",
+ "meta.type.parameters.tsx entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "TypeScript[React] Import/Export Punctuations",
+ "scope": [
+ "meta.import.ts punctuation.definition.block",
+ "meta.import.tsx punctuation.definition.block",
+ "meta.export.ts punctuation.definition.block",
+ "meta.export.tsx punctuation.definition.block"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": [
+ "meta.decorator punctuation.decorator.ts",
+ "meta.decorator punctuation.decorator.tsx"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": "meta.tag.js meta.jsx.children.tsx",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "YAML Entity Name Tags",
+ "scope": "entity.name.tag.yaml",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "handlebars variables",
+ "scope": "variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "handlebars parameters",
+ "scope": "entity.other.attribute-name.handlebars variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "handlebars enitity attribute names",
+ "scope": "entity.other.attribute-name.handlebars",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "handlebars enitity attribute values",
+ "scope": "entity.other.attribute-value.handlebars variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "normalize font style of certain components",
+ "scope": [
+ "meta.tag.js meta.embedded.expression.js punctuation.section.embedded.begin.js",
+ "meta.tag.js meta.embedded.expression.js punctuation.section.embedded.end.js",
+ "meta.property-list.css meta.property-value.css variable.other.less",
+ "punctuation.section.embedded.begin.js.jsx",
+ "punctuation.section.embedded.end.js.jsx",
+ "meta.property-list.scss variable.scss",
+ "meta.property-list.sass variable.sass",
+ "keyword.operator.logical",
+ "keyword.operator.arithmetic",
+ "keyword.operator.bitwise",
+ "keyword.operator.increment",
+ "keyword.operator.ternary",
+ "keyword.operator.comparison",
+ "keyword.operator.assignment",
+ "keyword.operator.operator",
+ "keyword.operator.or.regexp",
+ "keyword.operator.expression.in",
+ "keyword.operator.type",
+ "punctuation.section.embedded.js",
+ "punctuation.definintion.string",
+ "punctuation"
+ ],
+ "settings": {
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "italicsify for operator mono",
+ "scope": [
+ "keyword.other.unit",
+ "support.type.property-name.css",
+ "support.type.vendored.property-name.css",
+ "support.constant.vendored.property-value.css",
+ "meta.import.ts meta.block.ts variable.other.readwrite.alias.ts",
+ "meta.import.tsx meta.block.tsx variable.other.readwrite.alias.tsx",
+ "meta.import.js variable.other",
+ "meta.export.ts meta.block.ts variable.other.readwrite.alias.ts",
+ "meta.export.tsx meta.block.tsx variable.other.readwrite.alias.tsx",
+ "meta.export.js variable.other",
+ "entity.name.function.ts",
+ "entity.name.function.tsx",
+ "support.type.primitive",
+ "entity.name.tag.yaml",
+ "entity.other.attribute-name",
+ "meta.tag.sgml.doctype.html",
+ "entity.name.tag.doctype",
+ "meta.tag.sgml.doctype",
+ "entity.name.tag.custom",
+ "source.js.jsx keyword.control.flow.js",
+ "support.type.property.css",
+ "support.function.basic_functions",
+ "constant.other.color.rgb-value.hex.css",
+ "constant.other.rgb-value.css",
+ "variable.assignment.coffee",
+ "support.function.basic_functions",
+ "keyword.operator.expression.typeof",
+ "punctuation.section.embedded",
+ "keyword.operator.type.annotation",
+ "variable.object.property.ts",
+ "variable.object.property.js",
+ "variable.object.property.jsx",
+ "variable.object.property.tsx",
+ "assignment.coffee",
+ "entity.name.type.ts",
+ "support.constant.math",
+ "meta.object-literal.key",
+ "meta.var.expr storage.type",
+ "variable.scss",
+ "variable.sass",
+ "variable.other.less",
+ "variable.parameter.url.scss",
+ "variable.parameter.url.sass",
+ "parameter",
+ "string",
+ "italic",
+ "quote",
+ "keyword",
+ "storage",
+ "language",
+ "constant.language",
+ "variable.language",
+ "type .function",
+ "type.function",
+ "storage.type.class",
+ "type.var",
+ "meta.parameter",
+ "variable.parameter",
+ "meta.parameters",
+ "keyword.control",
+ "modifier",
+ "this",
+ "comment"
+ ],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/palenight/palenight.json b/assets/themes/src/vscode/palenight/palenight.json
new file mode 100644
index 0000000000..5351dc4f23
--- /dev/null
+++ b/assets/themes/src/vscode/palenight/palenight.json
@@ -0,0 +1,1569 @@
+{
+ "name": "Palenight Theme",
+ "author": "Olaolu Olawuyi",
+ "maintainers": ["Olaolu Olawuyi "],
+ "type": "dark",
+ "semanticClass": "palenight",
+ "colors": {
+ "contrastActiveBorder": null,
+ "contrastBorder": "#282B3C",
+ "focusBorder": "#282B3C",
+ "foreground": "#ffffff",
+ "widget.shadow": "#232635",
+ "selection.background": "#7580B850",
+ "descriptionForeground": null,
+ "errorForeground": "#EF5350",
+ "button.background": "#7e57c2cc",
+ "button.foreground": "#ffffffcc",
+ "button.hoverBackground": "#7e57c2",
+ "dropdown.background": "#292D3E",
+ "dropdown.border": "#7e57c2",
+ "dropdown.foreground": "#ffffffcc",
+ "input.background": "#313850",
+ "input.border": "#7e57c2",
+ "input.foreground": "#ffffffcc",
+ "input.placeholderForeground": "#ffffffcc",
+ "inputOption.activeBorder": "#ffffffcc",
+ "inputValidation.errorBackground": "#ef5350f2",
+ "inputValidation.errorBorder": "#EF5350",
+ "inputValidation.infoBackground": "#64b5f6f2",
+ "inputValidation.infoBorder": "#64B5F6",
+ "inputValidation.warningBackground": "#ffca28f2",
+ "inputValidation.warningBorder": "#FFCA28",
+ "scrollbar.shadow": "#292D3E00",
+ "scrollbarSlider.activeBackground": "#694CA4cc",
+ "scrollbarSlider.background": "#694CA466",
+ "scrollbarSlider.hoverBackground": "#694CA4cc",
+ "badge.background": "#7e57c2",
+ "badge.foreground": "#ffffff",
+ "progress.background": "#7e57c2",
+ "list.activeSelectionBackground": "#7e57c2",
+ "list.activeSelectionForeground": "#ffffff",
+ "list.dropBackground": "#2E3245",
+ "list.focusBackground": "#0000002e",
+ "list.focusForeground": "#ffffff",
+ "list.highlightForeground": "#ffffff",
+ "list.hoverBackground": "#0000001a",
+ "list.hoverForeground": "#ffffff",
+ "list.inactiveSelectionBackground": "#929ac90d",
+ "list.inactiveSelectionForeground": "#929ac9",
+ "activityBar.background": "#282C3D",
+ "activityBar.dropBackground": "#7e57c2e3",
+ "activityBar.foreground": "#eeffff",
+ "activityBar.border": "#282C3D",
+ "activityBarBadge.background": "#7e57c2",
+ "activityBarBadge.foreground": "#ffffff",
+ "sideBar.background": "#292D3E",
+ "sideBar.foreground": "#6C739A",
+ "sideBar.border": "#282B3C",
+ "sideBarTitle.foreground": "#eeffff",
+ "sideBarSectionHeader.background": "#292D3E",
+ "sideBarSectionHeader.foreground": "#eeffff",
+ "editorGroup.background": "#32374C",
+ "editorGroup.border": "#2E3245",
+ "editorGroup.dropBackground": "#7e57c273",
+ "editorGroupHeader.noTabsBackground": "#32374C",
+ "editorGroupHeader.tabsBackground": "#31364a",
+ "editorGroupHeader.tabsBorder": "#262A39",
+ "tab.activeBackground": "#292D3E",
+ "tab.activeForeground": "#eeffff",
+ "tab.border": "#272B3B",
+ "tab.activeBorder": "#262A39",
+ "tab.unfocusedActiveBorder": "#262A39",
+ "tab.inactiveBackground": "#31364A",
+ "tab.inactiveForeground": "#929ac9",
+ "tab.unfocusedActiveForeground": null,
+ "tab.unfocusedInactiveForeground": null,
+ "editor.background": "#292D3E",
+ "editor.foreground": "#BFC7D5",
+ "editorLineNumber.foreground": "#4c5374",
+ "editorLineNumber.activeForeground": "#eeffff",
+ "editorCursor.foreground": "#7e57c2",
+ "editorCursor.background": null,
+ "editor.selectionBackground": "#7580B850",
+ "editor.selectionHighlightBackground": "#383D51",
+ "editor.inactiveSelectionBackground": "#7e57c25a",
+ "editor.wordHighlightBackground": "#32374D",
+ "editor.wordHighlightStrongBackground": "#2E3250",
+ "editor.findMatchBackground": "#2e3248fc",
+ "editor.findMatchHighlightBackground": "#7e57c233",
+ "editor.findRangeHighlightBackground": null,
+ "editor.hoverHighlightBackground": "#7e57c25a",
+ "editor.lineHighlightBackground": "#0003",
+ "editor.lineHighlightBorder": null,
+ "editorLink.activeForeground": null,
+ "editor.rangeHighlightBackground": "#7e57c25a",
+ "editorWhitespace.foreground": null,
+ "editorIndentGuide.background": "#4E557980",
+ "editorRuler.foreground": "#4E557980",
+ "editorCodeLens.foreground": "#FFCA28",
+ "editorBracketMatch.background": null,
+ "editorBracketMatch.border": null,
+ "editorOverviewRuler.currentContentForeground": "#7e57c2",
+ "editorOverviewRuler.incomingContentForeground": "#7e57c2",
+ "editorOverviewRuler.commonContentForeground": "#7e57c2",
+ "editorError.foreground": "#EF5350",
+ "editorError.border": null,
+ "editorWarning.foreground": "#FFCA28",
+ "editorWarning.border": null,
+ "editorGutter.background": null,
+ "editorGutter.modifiedBackground": "#e2b93d",
+ "editorGutter.addedBackground": "#9CCC65",
+ "editorGutter.deletedBackground": "#EF5350",
+ "diffEditor.insertedTextBackground": "#99b76d23",
+ "diffEditor.removedTextBackground": "#ef535033",
+ "editorWidget.background": "#31364a",
+ "editorWidget.border": null,
+ "editorSuggestWidget.background": "#2C3043",
+ "editorSuggestWidget.border": "#2B2F40",
+ "editorSuggestWidget.foreground": "#bfc7d5",
+ "editorSuggestWidget.highlightForeground": "#ffffff",
+ "editorSuggestWidget.selectedBackground": "#7e57c2",
+ "editorHoverWidget.background": "#292D3E",
+ "editorHoverWidget.border": "#7e57c2",
+ "debugExceptionWidget.background": "#292D3E",
+ "debugExceptionWidget.border": "#7e57c2",
+ "editorMarkerNavigation.background": "#31364a",
+ "editorMarkerNavigationError.background": "#EF5350",
+ "editorMarkerNavigationWarning.background": "#FFCA28",
+ "peekView.border": "#7e57c2",
+ "peekViewEditor.background": "#232635",
+ "peekViewEditor.matchHighlightBackground": "#7e57c25a",
+ "peekViewResult.background": "#2E3245",
+ "peekViewResult.fileForeground": "#eeffff",
+ "peekViewResult.lineForeground": "#eeffff",
+ "peekViewResult.matchHighlightBackground": "#7e57c25a",
+ "peekViewResult.selectionBackground": "#2E3250",
+ "peekViewResult.selectionForeground": "#eeffff",
+ "peekViewTitle.background": "#292D3E",
+ "peekViewTitleDescription.foreground": "#697098",
+ "peekViewTitleLabel.foreground": "#eeffff",
+ "merge.currentHeaderBackground": "#7e57c25a",
+ "merge.currentContentBackground": null,
+ "merge.incomingHeaderBackground": "#7e57c25a",
+ "merge.incomingContentBackground": null,
+ "merge.border": null,
+ "panel.background": "#292D3E",
+ "panel.border": "#282B3C",
+ "panelTitle.activeBorder": "#7e57c2",
+ "panelTitle.activeForeground": "#eeffff",
+ "panelTitle.inactiveForeground": "#bfc7d580",
+ "statusBar.background": "#282C3D",
+ "statusBar.foreground": "#676E95",
+ "statusBar.border": "#262A39",
+ "statusBar.debuggingBackground": "#202431",
+ "statusBar.debuggingForeground": null,
+ "statusBar.debuggingBorder": "#1F2330",
+ "statusBar.noFolderForeground": null,
+ "statusBar.noFolderBackground": "#292D3E",
+ "statusBar.noFolderBorder": "#25293A",
+ "statusBarItem.activeBackground": "#202431",
+ "statusBarItem.hoverBackground": "#202431",
+ "statusBarItem.prominentBackground": "#202431",
+ "statusBarItem.prominentHoverBackground": "#202431",
+ "titleBar.activeBackground": "#292d3e",
+ "titleBar.activeForeground": "#eeefff",
+ "titleBar.border": "#30364c",
+ "titleBar.inactiveBackground": "#30364c",
+ "titleBar.inactiveForeground": null,
+ "notifications.background": "#292D3E",
+ "notifications.foreground": "#ffffffcc",
+ "notificationLink.foreground": "#80CBC4",
+ "extensionButton.prominentForeground": "#ffffffcc",
+ "extensionButton.prominentBackground": "#7e57c2cc",
+ "extensionButton.prominentHoverBackground": "#7e57c2",
+ "pickerGroup.foreground": "#d1aaff",
+ "pickerGroup.border": "#2E3245",
+ "terminal.ansiWhite": "#ffffff",
+ "terminal.ansiBlack": "#676E95",
+ "terminal.ansiBlue": "#82AAFF",
+ "terminal.ansiCyan": "#89DDFF",
+ "terminal.ansiGreen": "#a9c77d",
+ "terminal.ansiMagenta": "#C792EA",
+ "terminal.ansiRed": "#ff5572",
+ "terminal.ansiYellow": "#FFCB6B",
+ "terminal.ansiBrightWhite": "#ffffff",
+ "terminal.ansiBrightBlack": "#676E95",
+ "terminal.ansiBrightBlue": "#82AAFF",
+ "terminal.ansiBrightCyan": "#89DDFF",
+ "terminal.ansiBrightGreen": "#C3E88D",
+ "terminal.ansiBrightMagenta": "#C792EA",
+ "terminal.ansiBrightRed": "#ff5572",
+ "terminal.ansiBrightYellow": "#FFCB6B",
+ "debugToolBar.background": "#292D3E",
+ "welcomePage.buttonBackground": null,
+ "welcomePage.buttonHoverBackground": null,
+ "walkThrough.embeddedEditorBackground": "#232635",
+ "gitDecoration.modifiedResourceForeground": "#e2c08de6",
+ "gitDecoration.deletedResourceForeground": "#EF535090",
+ "gitDecoration.untrackedResourceForeground": "#a9c77dff",
+ "gitDecoration.ignoredResourceForeground": "#69709890",
+ "gitDecoration.conflictingResourceForeground": "#FFEB95CC",
+ "editorActiveLineNumber.foreground": "#eeffff",
+ "breadcrumb.foreground": "#6c739a",
+ "breadcrumb.focusForeground": "#bfc7d5",
+ "breadcrumb.activeSelectionForeground": "#eeffff",
+ "breadcrumbPicker.background": "#292D3E"
+ },
+ "tokenColors": [
+ {
+ "name": "Global settings",
+ "settings": {
+ "background": "#292D3E",
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#C3E88D"
+ }
+ },
+ {
+ "name": "String Quoted",
+ "scope": "string.quoted",
+ "settings": {
+ "foreground": "#C3E88D"
+ }
+ },
+ {
+ "name": "String Unquoted",
+ "scope": "string.unquoted",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Support Constant Math",
+ "scope": "support.constant.math",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": ["constant.numeric", "constant.character.numeric"],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Built-in constant",
+ "scope": [
+ "constant.language",
+ "punctuation.definition.constant",
+ "variable.other.constant"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "User-defined constant",
+ "scope": ["constant.character", "constant.other"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Constant Character Escape",
+ "scope": "constant.character.escape",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "RegExp String",
+ "scope": ["string.regexp", "string.regexp keyword.other"],
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Comma in functions",
+ "scope": "meta.function punctuation.separator.comma",
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": "variable",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": ["punctuation.accessor", "keyword"],
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": [
+ "storage",
+ "storage.type",
+ "meta.var.expr storage.type",
+ "storage.type.property.js",
+ "storage.type.property.ts",
+ "storage.type.property.tsx",
+ "meta.class meta.method.declaration meta.var.expr storage.type.js"
+ ],
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Class name",
+ "scope": ["entity.name.class", "meta.class entity.name.type.class"],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Function Parameters",
+ "scope": "variable.parameter",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "Meta Tag",
+ "scope": ["punctuation.definition.tag", "meta.tag"],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "HTML Tag names",
+ "scope": [
+ "entity.name.tag support.class.component",
+ "meta.tag.other.html",
+ "meta.tag.other.js",
+ "meta.tag.other.tsx",
+ "entity.name.tag.tsx",
+ "entity.name.tag.js",
+ "entity.name.tag",
+ "meta.tag.js",
+ "meta.tag.tsx",
+ "meta.tag.html"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Entity Name Tag Custom",
+ "scope": "entity.name.tag.custom",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Library (function & constant)",
+ "scope": ["support.function", "support.constant"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Support Constant Property Value meta",
+ "scope": "support.constant.meta.property-value",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Library class/type",
+ "scope": ["support.type", "support.class"],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Support Variable DOM",
+ "scope": "support.variable.dom",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Invalid",
+ "scope": "invalid",
+ "settings": {
+ "background": "#ff2c83",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid deprecated",
+ "scope": "invalid.deprecated",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#d3423e"
+ }
+ },
+ {
+ "name": "Keyword Operator",
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Relational",
+ "scope": "keyword.operator.relational",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Keyword Operator Assignment",
+ "scope": "keyword.operator.assignment",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Double-Slashed Comment",
+ "scope": "comment.line.double-slash",
+ "settings": {
+ "foreground": "#697098"
+ }
+ },
+ {
+ "name": "Object",
+ "scope": "object",
+ "settings": {
+ "foreground": "#cdebf7"
+ }
+ },
+ {
+ "name": "Null",
+ "scope": "constant.language.null",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Meta Brace",
+ "scope": "meta.brace",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Meta Delimiter Period",
+ "scope": "meta.delimiter.period",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Punctuation Definition String",
+ "scope": "punctuation.definition.string",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Boolean",
+ "scope": "constant.language.boolean",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Object Comma",
+ "scope": "object.comma",
+ "settings": {
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Variable Parameter Function",
+ "scope": "variable.parameter.function",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Support Type Property Name & entity name tags",
+ "scope": [
+ "support.type.vendored.property-name",
+ "support.constant.vendored.property-value",
+ "support.type.property-name",
+ "meta.property-list entity.name.tag"
+ ],
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Entity Name tag reference in stylesheets",
+ "scope": "meta.property-list entity.name.tag.reference",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Constant Other Color RGB Value Punctuation Definition Constant",
+ "scope": "constant.other.color.rgb-value punctuation.definition.constant",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Constant Other Color",
+ "scope": "constant.other.color",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Keyword Other Unit",
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Meta Selector",
+ "scope": "meta.selector",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Entity Other Attribute Name Id",
+ "scope": "entity.other.attribute-name.id",
+ "settings": {
+ "foreground": "#FAD430"
+ }
+ },
+ {
+ "name": "Meta Property Name",
+ "scope": "meta.property-name",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Doctypes",
+ "scope": ["entity.name.tag.doctype", "meta.tag.sgml.doctype"],
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Punctuation Definition Parameters",
+ "scope": "punctuation.definition.parameters",
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Keyword Control Operator",
+ "scope": "keyword.control.operator",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Logical",
+ "scope": "keyword.operator.logical",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Variable Instances",
+ "scope": [
+ "variable.instance",
+ "variable.other.instance",
+ "variable.reaedwrite.instance",
+ "variable.other.readwrite.instance"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Variable Property Other",
+ "scope": ["variable.other.property", "variable.other.object.property"],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Entity Name Function",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Keyword Operator Comparison",
+ "scope": "keyword.operator.comparison",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Support Constant, `new` keyword, Special Method Keyword",
+ "scope": [
+ "support.constant",
+ "keyword.other.special-method",
+ "keyword.other.new"
+ ],
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Support Function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Invalid Broken",
+ "scope": "invalid.broken",
+ "settings": {
+ "foreground": "#020e14",
+ "background": "#F78C6C"
+ }
+ },
+ {
+ "name": "Invalid Unimplemented",
+ "scope": "invalid.unimplemented",
+ "settings": {
+ "background": "#8BD649",
+ "foreground": "#ffffff"
+ }
+ },
+ {
+ "name": "Invalid Illegal",
+ "scope": "invalid.illegal",
+ "settings": {
+ "foreground": "#ffffff",
+ "background": "#ec5f67"
+ }
+ },
+ {
+ "name": "Language Variable",
+ "scope": "variable.language",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Support Variable Property",
+ "scope": "support.variable.property",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "Variable Function",
+ "scope": "variable.function",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variable Interpolation",
+ "scope": "variable.interpolation",
+ "settings": {
+ "foreground": "#ec5f67"
+ }
+ },
+ {
+ "name": "Meta Function Call",
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Punctuation Section Embedded",
+ "scope": "punctuation.section.embedded",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Punctuation Tweaks",
+ "scope": [
+ "punctuation.terminator.expression",
+ "punctuation.definition.arguments",
+ "punctuation.definition.array",
+ "punctuation.section.array",
+ "meta.array"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "More Punctuation Tweaks",
+ "scope": [
+ "punctuation.definition.list.begin",
+ "punctuation.definition.list.end",
+ "punctuation.separator.arguments",
+ "punctuation.definition.list"
+ ],
+ "settings": {
+ "foreground": "#d9f5dd"
+ }
+ },
+ {
+ "name": "Template Strings",
+ "scope": "string.template meta.template.expression",
+ "settings": {
+ "foreground": "#d3423e"
+ }
+ },
+ {
+ "name": "Backtics(``) in Template Strings",
+ "scope": "string.template punctuation.definition.string",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Italics",
+ "scope": "italic",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Bold",
+ "scope": "bold",
+ "settings": {
+ "foreground": "#ffcb6b",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Quote",
+ "scope": "quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Raw Code",
+ "scope": "raw",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "CoffeScript Variable Assignment",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "CoffeScript Parameter Function",
+ "scope": "variable.parameter.function.coffee",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "CoffeeScript Assignments",
+ "scope": "variable.assignment.coffee",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "C# Readwrite Variables",
+ "scope": "variable.other.readwrite.cs",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "C# Classes & Storage types",
+ "scope": ["entity.name.type.class.cs", "storage.type.cs"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "C# Namespaces",
+ "scope": "entity.name.type.namespace.cs",
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "Tag names in Stylesheets",
+ "scope": [
+ "entity.name.tag.css",
+ "entity.name.tag.less",
+ "entity.name.tag.custom.css"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Wildcard(*) selector in Stylesheets",
+ "scope": [
+ "entity.name.tag.wildcard.css",
+ "entity.name.tag.wildcard.less",
+ "entity.name.tag.wildcard.scss",
+ "entity.name.tag.wildcard.sass"
+ ],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "(C|SC|SA|LE)SS property value unit",
+ "scope": [
+ "keyword.other.unit.css",
+ "constant.length.units.css",
+ "keyword.other.unit.less",
+ "constant.length.units.less",
+ "keyword.other.unit.scss",
+ "constant.length.units.scss",
+ "keyword.other.unit.sass",
+ "constant.length.units.sass"
+ ],
+ "settings": {
+ "foreground": "#FFEB95"
+ }
+ },
+ {
+ "name": "Attribute Name for CSS",
+ "scope": "meta.attribute-selector.css entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "punctuations in styled components",
+ "scope": [
+ "source.js source.css meta.property-list",
+ "source.js source.css punctuation.section",
+ "source.js source.css punctuation.terminator.rule",
+ "source.js source.css punctuation.definition.entity.end.bracket",
+ "source.js source.css punctuation.definition.entity.begin.bracket",
+ "source.js source.css punctuation.separator.key-value",
+ "source.js source.css punctuation.definition.attribute-selector",
+ "source.js source.css meta.property-list",
+ "source.js source.css meta.property-list punctuation.separator.comma",
+ "source.ts source.css punctuation.section",
+ "source.ts source.css punctuation.terminator.rule",
+ "source.ts source.css punctuation.definition.entity.end.bracket",
+ "source.ts source.css punctuation.definition.entity.begin.bracket",
+ "source.ts source.css punctuation.separator.key-value",
+ "source.ts source.css punctuation.definition.attribute-selector",
+ "source.ts source.css meta.property-list",
+ "source.ts source.css meta.property-list punctuation.separator.comma"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Elixir Classes",
+ "scope": [
+ "source.elixir support.type.elixir",
+ "source.elixir meta.module.elixir entity.name.class.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir Functions",
+ "scope": "source.elixir entity.name.function",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Elixir Constants",
+ "scope": [
+ "source.elixir constant.other.symbol.elixir",
+ "source.elixir constant.other.keywords.elixir"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Elixir String Punctuations",
+ "scope": "source.elixir punctuation.definition.string",
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Elixir",
+ "scope": [
+ "source.elixir variable.other.readwrite.module.elixir",
+ "source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"
+ ],
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Elixir Binary Punctuations",
+ "scope": "source.elixir .punctuation.binary.elixir",
+ "settings": {
+ "foreground": "#c792ea"
+ }
+ },
+ {
+ "name": "Go Function Calls",
+ "scope": "source.go meta.function-call.go",
+ "settings": {
+ "foreground": "#DDDDDD"
+ }
+ },
+ {
+ "name": "GraphQL Variables",
+ "scope": "variable.qraphql",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "ID Attribute Name in HTML",
+ "scope": "entity.other.attribute-name.id.html",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "HTML Punctuation Definition Tag",
+ "scope": "punctuation.definition.tag.html",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "HTML Doctype",
+ "scope": "meta.tag.sgml.doctype.html",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "JavaScript Classes",
+ "scope": "meta.class entity.name.type.class.js",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "JavaScript Method Declaration e.g. `constructor`",
+ "scope": "meta.method.declaration storage.type.js",
+ "settings": {
+ "foreground": "#82AAFF",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "JavaScript Terminator",
+ "scope": "terminator.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Meta Punctuation Definition",
+ "scope": "meta.js punctuation.definition.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Entity Names in Code Documentations",
+ "scope": [
+ "entity.name.type.instance.jsdoc",
+ "entity.name.type.instance.phpdoc"
+ ],
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "Other Variables in Code Documentations",
+ "scope": ["variable.other.jsdoc", "variable.other.phpdoc"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "JavaScript module imports and exports",
+ "scope": [
+ "variable.other.meta.import.js",
+ "meta.import.js variable.other",
+ "variable.other.meta.export.js",
+ "meta.export.js variable.other"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Variable Parameter Function",
+ "scope": "variable.parameter.function.js",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "JavaScript Variable Other ReadWrite",
+ "scope": "variable.other.readwrite.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Text nested in React tags",
+ "scope": [
+ "meta.jsx.children",
+ "meta.jsx.children.js",
+ "meta.jsx.children.tsx"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript[React] Variable Other Object",
+ "scope": [
+ "variable.other.object.js",
+ "variable.other.object.jsx",
+ "meta.object-literal.key.js",
+ "meta.object-literal.key.jsx",
+ "variable.object.property.js",
+ "variable.object.property.jsx"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Variables",
+ "scope": ["variable.js", "variable.other.js"],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JavaScript Entity Name Type",
+ "scope": ["entity.name.type.js", "entity.name.type.module.js"],
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "JavaScript Support Classes",
+ "scope": "support.class.js",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "JSON Property Names",
+ "scope": "support.type.property-name.json",
+ "settings": {
+ "foreground": "#C3E88D",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "JSON Support Constants",
+ "scope": "support.constant.json",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "JSON Property values (string)",
+ "scope": "meta.structure.dictionary.value.json string.quoted.double",
+ "settings": {
+ "foreground": "#80CBC4",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "Strings in JSON values",
+ "scope": "string.quoted.double.json punctuation.definition.string.json",
+ "settings": {
+ "foreground": "#80CBC4",
+ "fontStyle": "normal"
+ }
+ },
+ {
+ "name": "Specific JSON Property values like null",
+ "scope": "meta.structure.dictionary.json meta.structure.dictionary.value constant.language",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Ruby Variables",
+ "scope": "variable.other.ruby",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Ruby Hashkeys",
+ "scope": "constant.language.symbol.hashkey.ruby",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "LESS Tag names",
+ "scope": "entity.name.tag.less",
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Attribute Name for LESS",
+ "scope": "meta.attribute-selector.less entity.other.attribute-name.attribute",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Markup Headings",
+ "scope": "markup.heading",
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markup Italics",
+ "scope": "markup.italic",
+ "settings": {
+ "foreground": "#c792ea",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup Bold",
+ "scope": "markup.bold",
+ "settings": {
+ "foreground": "#ffcb6b",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markup Quote + others",
+ "scope": "markup.quote",
+ "settings": {
+ "foreground": "#697098",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup Raw Code + others",
+ "scope": "markup.inline.raw",
+ "settings": {
+ "foreground": "#80CBC4"
+ }
+ },
+ {
+ "name": "Markup Links",
+ "scope": ["markup.underline.link", "markup.underline.link.image"],
+ "settings": {
+ "foreground": "#ff869a"
+ }
+ },
+ {
+ "name": "Markup Attributes",
+ "scope": ["markup.meta.attribute-list"],
+ "settings": {
+ "foreground": "#a9c77d"
+ }
+ },
+ {
+ "name": "Markup Admonitions",
+ "scope": "markup.admonition",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markup Lists",
+ "scope": "markup.list.bullet",
+ "settings": {
+ "foreground": "#D9F5DD"
+ }
+ },
+ {
+ "name": "Markup Superscript and Subscript",
+ "scope": ["markup.superscript", "markup.subscript"],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown Link Title and Description",
+ "scope": [
+ "string.other.link.title.markdown",
+ "string.other.link.description.markdown"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Markdown Punctuation",
+ "scope": [
+ "punctuation.definition.string.markdown",
+ "punctuation.definition.string.begin.markdown",
+ "punctuation.definition.string.end.markdown",
+ "meta.link.inline.markdown punctuation.definition.string"
+ ],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Markdown MetaData Punctuation",
+ "scope": ["punctuation.definition.metadata.markdown"],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "Markdown List Punctuation",
+ "scope": ["beginning.punctuation.definition.list.markdown"],
+ "settings": {
+ "foreground": "#82b1ff"
+ }
+ },
+ {
+ "name": "Asciidoc Function",
+ "scope": "entity.name.function.asciidoc",
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "PHP Variables",
+ "scope": "variable.other.php",
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Support Classes in PHP",
+ "scope": "support.class.php",
+ "settings": {
+ "foreground": "#ffcb8b"
+ }
+ },
+ {
+ "name": "Punctuations in PHP function calls",
+ "scope": "meta.function-call.php punctuation",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "PHP Global Variables",
+ "scope": "variable.other.global.php",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Declaration Punctuation in PHP Global Variables",
+ "scope": "variable.other.global.php punctuation.definition.variable",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Language Constants in Python",
+ "scope": "constant.language.python",
+ "settings": {
+ "foreground": "#ff5874"
+ }
+ },
+ {
+ "name": "Python Function Parameter and Arguments",
+ "scope": [
+ "variable.parameter.function.python",
+ "meta.function-call.arguments.python"
+ ],
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "Python Function Call",
+ "scope": [
+ "meta.function-call.python",
+ "meta.function-call.generic.python"
+ ],
+ "settings": {
+ "foreground": "#B2CCD6"
+ }
+ },
+ {
+ "name": "Punctuations in Python",
+ "scope": "punctuation.python",
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "Decorator Functions in Python",
+ "scope": "entity.name.function.decorator.python",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "Python Language Variable",
+ "scope": "source.python variable.language.special",
+ "settings": {
+ "foreground": "#8EACE3"
+ }
+ },
+ {
+ "name": "SCSS Variable",
+ "scope": [
+ "variable.scss",
+ "variable.sass",
+ "variable.parameter.url.scss",
+ "variable.parameter.url.sass"
+ ],
+ "settings": {
+ "foreground": "#DDDDDD"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "Variables in SASS At-Rules",
+ "scope": [
+ "source.css.scss meta.at-rule variable",
+ "source.css.sass meta.at-rule variable"
+ ],
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "Attribute Name for SASS",
+ "scope": [
+ "meta.attribute-selector.scss entity.other.attribute-name.attribute",
+ "meta.attribute-selector.sass entity.other.attribute-name.attribute"
+ ],
+ "settings": {
+ "foreground": "#F78C6C"
+ }
+ },
+ {
+ "name": "Tag names in SASS",
+ "scope": ["entity.name.tag.scss", "entity.name.tag.sass"],
+ "settings": {
+ "foreground": "#ff5572"
+ }
+ },
+ {
+ "name": "TypeScript[React] Variables and Object Properties",
+ "scope": [
+ "variable.other.readwrite.alias.ts",
+ "variable.other.readwrite.alias.tsx",
+ "variable.other.readwrite.ts",
+ "variable.other.readwrite.tsx",
+ "variable.other.object.ts",
+ "variable.other.object.tsx",
+ "variable.object.property.ts",
+ "variable.object.property.tsx",
+ "variable.other.ts",
+ "variable.other.tsx",
+ "variable.tsx",
+ "variable.ts"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types",
+ "scope": ["entity.name.type.ts", "entity.name.type.tsx"],
+ "settings": {
+ "foreground": "#78ccf0"
+ }
+ },
+ {
+ "name": "TypeScript[React] Node Classes",
+ "scope": ["support.class.node.ts", "support.class.node.tsx"],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Entity Name Types as Parameters",
+ "scope": [
+ "meta.type.parameters.ts entity.name.type",
+ "meta.type.parameters.tsx entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#eeffff"
+ }
+ },
+ {
+ "name": "TypeScript[React] Import/Export Punctuations",
+ "scope": [
+ "meta.import.ts punctuation.definition.block",
+ "meta.import.tsx punctuation.definition.block",
+ "meta.export.ts punctuation.definition.block",
+ "meta.export.tsx punctuation.definition.block"
+ ],
+ "settings": {
+ "foreground": "#bfc7d5"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": [
+ "meta.decorator punctuation.decorator.ts",
+ "meta.decorator punctuation.decorator.tsx"
+ ],
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "TypeScript[React] Punctuation Decorators",
+ "scope": "meta.tag.js meta.jsx.children.tsx",
+ "settings": {
+ "foreground": "#82AAFF"
+ }
+ },
+ {
+ "name": "YAML Entity Name Tags",
+ "scope": "entity.name.tag.yaml",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "handlebars variables",
+ "scope": "variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#bec5d4"
+ }
+ },
+ {
+ "name": "handlebars parameters",
+ "scope": "entity.other.attribute-name.handlebars variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#ffcb6b"
+ }
+ },
+ {
+ "name": "handlebars enitity attribute names",
+ "scope": "entity.other.attribute-name.handlebars",
+ "settings": {
+ "foreground": "#89DDFF"
+ }
+ },
+ {
+ "name": "handlebars enitity attribute values",
+ "scope": "entity.other.attribute-value.handlebars variable.parameter.handlebars",
+ "settings": {
+ "foreground": "#7986E7"
+ }
+ },
+ {
+ "name": "normalize font style of certain components",
+ "scope": [
+ "meta.tag.js meta.embedded.expression.js punctuation.section.embedded.begin.js",
+ "meta.tag.js meta.embedded.expression.js punctuation.section.embedded.end.js",
+ "meta.property-list.css meta.property-value.css variable.other.less",
+ "punctuation.section.embedded.begin.js.jsx",
+ "punctuation.section.embedded.end.js.jsx",
+ "meta.property-list.scss variable.scss",
+ "meta.property-list.sass variable.sass",
+ "keyword.operator.logical",
+ "keyword.operator.arithmetic",
+ "keyword.operator.bitwise",
+ "keyword.operator.increment",
+ "keyword.operator.ternary",
+ "keyword.operator.comparison",
+ "keyword.operator.assignment",
+ "keyword.operator.operator",
+ "keyword.operator.or.regexp",
+ "keyword.operator.expression.in",
+ "keyword.operator.type",
+ "punctuation.section.embedded.js",
+ "punctuation.definintion.string",
+ "punctuation"
+ ],
+ "settings": {
+ "fontStyle": "normal"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/rose-pine/LICENSE b/assets/themes/src/vscode/rose-pine/LICENSE
new file mode 100644
index 0000000000..158292b8df
--- /dev/null
+++ b/assets/themes/src/vscode/rose-pine/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2021 Rosé Pine
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/assets/themes/src/vscode/rose-pine/family.json b/assets/themes/src/vscode/rose-pine/family.json
new file mode 100644
index 0000000000..5b72edd300
--- /dev/null
+++ b/assets/themes/src/vscode/rose-pine/family.json
@@ -0,0 +1,21 @@
+{
+ "name": "Rose Pine",
+ "author": "Rosé Pine",
+ "themes": [
+ {
+ "name": "Rose Pine",
+ "file_name": "rose-pine.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Rose Moon",
+ "file_name": "rose-pine-moon.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Rose Pine Dawn",
+ "file_name": "rose-pine-dawn.json",
+ "appearance": "light"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/rose-pine/rose-pine-dawn.json b/assets/themes/src/vscode/rose-pine/rose-pine-dawn.json
new file mode 100644
index 0000000000..39cc251fe9
--- /dev/null
+++ b/assets/themes/src/vscode/rose-pine/rose-pine-dawn.json
@@ -0,0 +1,680 @@
+{
+ "name": "Rosé Pine Dawn",
+ "type": "light",
+ "colors": {
+ "activityBar.activeBorder": "#575279",
+ "activityBar.background": "#faf4ed",
+ "activityBar.dropBorder": "#f2e9e1",
+ "activityBar.foreground": "#575279",
+ "activityBar.inactiveForeground": "#797593",
+ "activityBarBadge.background": "#d7827e",
+ "activityBarBadge.foreground": "#faf4ed",
+ "badge.background": "#d7827e",
+ "badge.foreground": "#faf4ed",
+ "banner.background": "#fffaf3",
+ "banner.foreground": "#575279",
+ "banner.iconForeground": "#797593",
+ "breadcrumb.activeSelectionForeground": "#d7827e",
+ "breadcrumb.background": "#faf4ed",
+ "breadcrumb.focusForeground": "#797593",
+ "breadcrumb.foreground": "#9893a5",
+ "breadcrumbPicker.background": "#fffaf3",
+ "button.background": "#d7827e",
+ "button.foreground": "#faf4ed",
+ "button.hoverBackground": "#d7827ee6",
+ "button.secondaryBackground": "#fffaf3",
+ "button.secondaryForeground": "#575279",
+ "button.secondaryHoverBackground": "#f2e9e1",
+ "charts.blue": "#56949f",
+ "charts.foreground": "#575279",
+ "charts.green": "#286983",
+ "charts.lines": "#797593",
+ "charts.orange": "#d7827e",
+ "charts.purple": "#907aa9",
+ "charts.red": "#b4637a",
+ "charts.yellow": "#ea9d34",
+ "checkbox.background": "#fffaf3",
+ "checkbox.border": "#6e6a8614",
+ "checkbox.foreground": "#575279",
+ "debugExceptionWidget.background": "#fffaf3",
+ "debugExceptionWidget.border": "#6e6a8614",
+ "debugIcon.breakpointCurrentStackframeForeground": "#797593",
+ "debugIcon.breakpointDisabledForeground": "#797593",
+ "debugIcon.breakpointForeground": "#797593",
+ "debugIcon.breakpointStackframeForeground": "#797593",
+ "debugIcon.breakpointUnverifiedForeground": "#797593",
+ "debugIcon.continueForeground": "#797593",
+ "debugIcon.disconnectForeground": "#797593",
+ "debugIcon.pauseForeground": "#797593",
+ "debugIcon.restartForeground": "#797593",
+ "debugIcon.startForeground": "#797593",
+ "debugIcon.stepBackForeground": "#797593",
+ "debugIcon.stepIntoForeground": "#797593",
+ "debugIcon.stepOutForeground": "#797593",
+ "debugIcon.stepOverForeground": "#797593",
+ "debugIcon.stopForeground": "#b4637a",
+ "debugToolBar.background": "#fffaf3",
+ "debugToolBar.border": "#f2e9e1",
+ "descriptionForeground": "#797593",
+ "diffEditor.border": "#f2e9e1",
+ "diffEditor.diagonalFill": "#6e6a8626",
+ "diffEditor.insertedLineBackground": "#56949f26",
+ "diffEditor.insertedTextBackground": "#56949f26",
+ "diffEditor.removedLineBackground": "#b4637a26",
+ "diffEditor.removedTextBackground": "#b4637a26",
+ "diffEditorOverview.insertedForeground": "#56949f80",
+ "diffEditorOverview.removedForeground": "#b4637a80",
+ "dropdown.background": "#fffaf3",
+ "dropdown.border": "#6e6a8614",
+ "dropdown.foreground": "#575279",
+ "dropdown.listBackground": "#fffaf3",
+ "editor.background": "#faf4ed",
+ "editor.findMatchBackground": "#6e6a8626",
+ "editor.findMatchHighlightBackground": "#6e6a8626",
+ "editor.findRangeHighlightBackground": "#6e6a8626",
+ "editor.findRangeHighlightBorder": "#000000",
+ "editor.focusedStackFrameHighlightBackground": "#6e6a8614",
+ "editor.foldBackground": "#fffaf3",
+ "editor.foreground": "#575279",
+ "editor.hoverHighlightBackground": "#000000",
+ "editor.inactiveSelectionBackground": "#6e6a860d",
+ "editor.inlineValuesBackground": "#000000",
+ "editor.inlineValuesForeground": "#797593",
+ "editor.lineHighlightBackground": "#6e6a860d",
+ "editor.lineHighlightBorder": "#000000",
+ "editor.linkedEditingBackground": "#fffaf3",
+ "editor.rangeHighlightBackground": "#6e6a860d",
+ "editor.selectionBackground": "#6e6a8614",
+ "editor.selectionForeground": "#575279",
+ "editor.selectionHighlightBackground": "#6e6a8614",
+ "editor.selectionHighlightBorder": "#faf4ed",
+ "editor.snippetFinalTabstopHighlightBackground": "#6e6a8614",
+ "editor.snippetFinalTabstopHighlightBorder": "#fffaf3",
+ "editor.snippetTabstopHighlightBackground": "#6e6a8614",
+ "editor.snippetTabstopHighlightBorder": "#fffaf3",
+ "editor.stackFrameHighlightBackground": "#6e6a8614",
+ "editor.symbolHighlightBackground": "#6e6a8614",
+ "editor.symbolHighlightBorder": "#000000",
+ "editor.wordHighlightBackground": "#6e6a8614",
+ "editor.wordHighlightBorder": "#000000",
+ "editor.wordHighlightStrongBackground": "#6e6a8614",
+ "editor.wordHighlightStrongBorder": "#6e6a8614",
+ "editorBracketHighlight.foreground1": "#b4637a80",
+ "editorBracketHighlight.foreground2": "#28698380",
+ "editorBracketHighlight.foreground3": "#ea9d3480",
+ "editorBracketHighlight.foreground4": "#56949f80",
+ "editorBracketHighlight.foreground5": "#d7827e80",
+ "editorBracketHighlight.foreground6": "#907aa980",
+ "editorBracketMatch.background": "#000000",
+ "editorBracketMatch.border": "#797593",
+ "editorBracketPairGuide.activeBackground1": "#286983",
+ "editorBracketPairGuide.activeBackground2": "#d7827e",
+ "editorBracketPairGuide.activeBackground3": "#907aa9",
+ "editorBracketPairGuide.activeBackground4": "#56949f",
+ "editorBracketPairGuide.activeBackground5": "#ea9d34",
+ "editorBracketPairGuide.activeBackground6": "#b4637a",
+ "editorBracketPairGuide.background1": "#28698380",
+ "editorBracketPairGuide.background2": "#d7827e80",
+ "editorBracketPairGuide.background3": "#907aa980",
+ "editorBracketPairGuide.background4": "#56949f80",
+ "editorBracketPairGuide.background5": "#ea9d3480",
+ "editorBracketPairGuide.background6": "#b4637a80",
+ "editorCodeLens.foreground": "#d7827e",
+ "editorCursor.background": "#575279",
+ "editorCursor.foreground": "#9893a5",
+ "editorError.border": "#000000",
+ "editorError.foreground": "#b4637a",
+ "editorGhostText.foreground": "#797593",
+ "editorGroup.border": "#000000",
+ "editorGroup.dropBackground": "#fffaf3",
+ "editorGroup.emptyBackground": "#000000",
+ "editorGroup.focusedEmptyBorder": "#000000",
+ "editorGroupHeader.noTabsBackground": "#000000",
+ "editorGroupHeader.tabsBackground": "#000000",
+ "editorGroupHeader.tabsBorder": "#000000",
+ "editorGutter.addedBackground": "#56949f",
+ "editorGutter.background": "#faf4ed",
+ "editorGutter.commentRangeForeground": "#797593",
+ "editorGutter.deletedBackground": "#b4637a",
+ "editorGutter.foldingControlForeground": "#907aa9",
+ "editorGutter.modifiedBackground": "#d7827e",
+ "editorHint.border": "#000000",
+ "editorHint.foreground": "#797593",
+ "editorHoverWidget.background": "#fffaf3",
+ "editorHoverWidget.border": "#9893a580",
+ "editorHoverWidget.foreground": "#797593",
+ "editorHoverWidget.highlightForeground": "#575279",
+ "editorHoverWidget.statusBarBackground": "#000000",
+ "editorIndentGuide.activeBackground": "#9893a5",
+ "editorIndentGuide.background": "#6e6a8626",
+ "editorInfo.border": "#f2e9e1",
+ "editorInfo.foreground": "#56949f",
+ "editorInlayHint.background": "#f2e9e1",
+ "editorInlayHint.foreground": "#797593",
+ "editorInlayHint.parameterBackground": "#f2e9e1",
+ "editorInlayHint.parameterForeground": "#907aa9",
+ "editorInlayHint.typeBackground": "#f2e9e1",
+ "editorInlayHint.typeForeground": "#56949f",
+ "editorLightBulb.foreground": "#286983",
+ "editorLightBulbAutoFix.foreground": "#d7827e",
+ "editorLineNumber.activeForeground": "#575279",
+ "editorLineNumber.foreground": "#797593",
+ "editorLink.activeForeground": "#d7827e",
+ "editorMarkerNavigation.background": "#fffaf3",
+ "editorMarkerNavigationError.background": "#fffaf3",
+ "editorMarkerNavigationInfo.background": "#fffaf3",
+ "editorMarkerNavigationWarning.background": "#fffaf3",
+ "editorOverviewRuler.addedForeground": "#56949f80",
+ "editorOverviewRuler.background": "#faf4ed",
+ "editorOverviewRuler.border": "#6e6a8626",
+ "editorOverviewRuler.bracketMatchForeground": "#797593",
+ "editorOverviewRuler.commonContentForeground": "#6e6a860d",
+ "editorOverviewRuler.currentContentForeground": "#6e6a8614",
+ "editorOverviewRuler.deletedForeground": "#b4637a80",
+ "editorOverviewRuler.errorForeground": "#b4637a80",
+ "editorOverviewRuler.findMatchForeground": "#6e6a8626",
+ "editorOverviewRuler.incomingContentForeground": "#907aa980",
+ "editorOverviewRuler.infoForeground": "#56949f80",
+ "editorOverviewRuler.modifiedForeground": "#d7827e80",
+ "editorOverviewRuler.rangeHighlightForeground": "#6e6a8626",
+ "editorOverviewRuler.selectionHighlightForeground": "#6e6a8626",
+ "editorOverviewRuler.warningForeground": "#ea9d3480",
+ "editorOverviewRuler.wordHighlightForeground": "#6e6a8614",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#6e6a8626",
+ "editorPane.background": "#000000",
+ "editorRuler.foreground": "#6e6a8626",
+ "editorSuggestWidget.background": "#fffaf3",
+ "editorSuggestWidget.border": "#000000",
+ "editorSuggestWidget.focusHighlightForeground": "#d7827e",
+ "editorSuggestWidget.foreground": "#797593",
+ "editorSuggestWidget.highlightForeground": "#d7827e",
+ "editorSuggestWidget.selectedBackground": "#6e6a8614",
+ "editorSuggestWidget.selectedForeground": "#575279",
+ "editorSuggestWidget.selectedIconForeground": "#575279",
+ "editorUnnecessaryCode.border": "#000000",
+ "editorUnnecessaryCode.opacity": "#57527980",
+ "editorWarning.border": "#000000",
+ "editorWarning.foreground": "#ea9d34",
+ "editorWhitespace.foreground": "#9893a5",
+ "editorWidget.background": "#fffaf3",
+ "editorWidget.border": "#f2e9e1",
+ "editorWidget.foreground": "#797593",
+ "editorWidget.resizeBorder": "#9893a5",
+ "errorForeground": "#b4637a",
+ "extensionBadge.remoteBackground": "#907aa9",
+ "extensionBadge.remoteForeground": "#faf4ed",
+ "extensionButton.prominentBackground": "#d7827e",
+ "extensionButton.prominentForeground": "#faf4ed",
+ "extensionButton.prominentHoverBackground": "#d7827ee6",
+ "extensionIcon.preReleaseForeground": "#286983",
+ "extensionIcon.starForeground": "#d7827e",
+ "extensionIcon.verifiedForeground": "#907aa9",
+ "focusBorder": "#6e6a8614",
+ "foreground": "#575279",
+ "gitDecoration.addedResourceForeground": "#56949f",
+ "gitDecoration.conflictingResourceForeground": "#b4637a",
+ "gitDecoration.deletedResourceForeground": "#797593",
+ "gitDecoration.ignoredResourceForeground": "#9893a5",
+ "gitDecoration.modifiedResourceForeground": "#d7827e",
+ "gitDecoration.renamedResourceForeground": "#286983",
+ "gitDecoration.stageDeletedResourceForeground": "#b4637a",
+ "gitDecoration.stageModifiedResourceForeground": "#907aa9",
+ "gitDecoration.submoduleResourceForeground": "#ea9d34",
+ "gitDecoration.untrackedResourceForeground": "#ea9d34",
+ "icon.foreground": "#797593",
+ "input.background": "#f2e9e180",
+ "input.border": "#6e6a8614",
+ "input.foreground": "#575279",
+ "input.placeholderForeground": "#797593",
+ "inputOption.activeBackground": "#d7827e26",
+ "inputOption.activeForeground": "#d7827e",
+ "inputValidation.errorBackground": "#fffaf3",
+ "inputValidation.errorBorder": "#6e6a8626",
+ "inputValidation.errorForeground": "#b4637a",
+ "inputValidation.infoBackground": "#fffaf3",
+ "inputValidation.infoBorder": "#6e6a8626",
+ "inputValidation.infoForeground": "#56949f",
+ "inputValidation.warningBackground": "#fffaf3",
+ "inputValidation.warningBorder": "#6e6a8626",
+ "inputValidation.warningForeground": "#56949f80",
+ "keybindingLabel.background": "#f2e9e1",
+ "keybindingLabel.border": "#6e6a8626",
+ "keybindingLabel.bottomBorder": "#6e6a8626",
+ "keybindingLabel.foreground": "#907aa9",
+ "keybindingTable.headerBackground": "#f2e9e1",
+ "keybindingTable.rowsBackground": "#fffaf3",
+ "list.activeSelectionBackground": "#6e6a8614",
+ "list.activeSelectionForeground": "#575279",
+ "list.deemphasizedForeground": "#797593",
+ "list.dropBackground": "#fffaf3",
+ "list.errorForeground": "#b4637a",
+ "list.filterMatchBackground": "#fffaf3",
+ "list.filterMatchBorder": "#d7827e",
+ "list.focusBackground": "#6e6a8626",
+ "list.focusForeground": "#575279",
+ "list.focusOutline": "#6e6a8614",
+ "list.highlightForeground": "#d7827e",
+ "list.hoverBackground": "#6e6a860d",
+ "list.hoverForeground": "#575279",
+ "list.inactiveFocusBackground": "#6e6a860d",
+ "list.inactiveSelectionBackground": "#fffaf3",
+ "list.inactiveSelectionForeground": "#575279",
+ "list.invalidItemForeground": "#b4637a",
+ "list.warningForeground": "#ea9d34",
+ "listFilterWidget.background": "#fffaf3",
+ "listFilterWidget.noMatchesOutline": "#b4637a",
+ "listFilterWidget.outline": "#f2e9e1",
+ "menu.background": "#fffaf3",
+ "menu.border": "#6e6a860d",
+ "menu.foreground": "#575279",
+ "menu.selectionBackground": "#6e6a8614",
+ "menu.selectionBorder": "#f2e9e1",
+ "menu.selectionForeground": "#575279",
+ "menu.separatorBackground": "#6e6a8626",
+ "menubar.selectionBackground": "#6e6a8614",
+ "menubar.selectionBorder": "#6e6a860d",
+ "menubar.selectionForeground": "#575279",
+ "merge.border": "#f2e9e1",
+ "merge.commonContentBackground": "#6e6a8614",
+ "merge.commonHeaderBackground": "#6e6a8614",
+ "merge.currentContentBackground": "#ea9d3480",
+ "merge.currentHeaderBackground": "#ea9d3480",
+ "merge.incomingContentBackground": "#56949f80",
+ "merge.incomingHeaderBackground": "#56949f80",
+ "minimap.background": "#fffaf3",
+ "minimap.errorHighlight": "#b4637a80",
+ "minimap.findMatchHighlight": "#6e6a8614",
+ "minimap.selectionHighlight": "#6e6a8614",
+ "minimap.warningHighlight": "#ea9d3480",
+ "minimapGutter.addedBackground": "#56949f",
+ "minimapGutter.deletedBackground": "#b4637a",
+ "minimapGutter.modifiedBackground": "#d7827e",
+ "minimapSlider.activeBackground": "#6e6a8626",
+ "minimapSlider.background": "#6e6a8614",
+ "minimapSlider.hoverBackground": "#6e6a8614",
+ "notebook.cellBorderColor": "#56949f80",
+ "notebook.cellEditorBackground": "#fffaf3",
+ "notebook.cellHoverBackground": "#f2e9e180",
+ "notebook.focusedCellBackground": "#6e6a860d",
+ "notebook.focusedCellBorder": "#56949f",
+ "notebook.outputContainerBackgroundColor": "#6e6a860d",
+ "notificationCenter.border": "#6e6a8614",
+ "notificationCenterHeader.background": "#fffaf3",
+ "notificationCenterHeader.foreground": "#797593",
+ "notificationLink.foreground": "#907aa9",
+ "notifications.background": "#fffaf3",
+ "notifications.border": "#6e6a8614",
+ "notifications.foreground": "#575279",
+ "notificationsErrorIcon.foreground": "#b4637a",
+ "notificationsInfoIcon.foreground": "#56949f",
+ "notificationsWarningIcon.foreground": "#ea9d34",
+ "notificationToast.border": "#6e6a8614",
+ "panel.background": "#fffaf3",
+ "panel.border": "#000000",
+ "panel.dropBorder": "#f2e9e1",
+ "panelInput.border": "#fffaf3",
+ "panelSection.dropBackground": "#6e6a8614",
+ "panelSectionHeader.background": "#fffaf3",
+ "panelSectionHeader.foreground": "#575279",
+ "panelTitle.activeBorder": "#6e6a8626",
+ "panelTitle.activeForeground": "#575279",
+ "panelTitle.inactiveForeground": "#797593",
+ "peekView.border": "#f2e9e1",
+ "peekViewEditor.background": "#fffaf3",
+ "peekViewEditor.matchHighlightBackground": "#6e6a8626",
+ "peekViewResult.background": "#fffaf3",
+ "peekViewResult.fileForeground": "#797593",
+ "peekViewResult.lineForeground": "#797593",
+ "peekViewResult.matchHighlightBackground": "#6e6a8626",
+ "peekViewResult.selectionBackground": "#6e6a8614",
+ "peekViewResult.selectionForeground": "#575279",
+ "peekViewTitle.background": "#f2e9e1",
+ "peekViewTitleDescription.foreground": "#797593",
+ "pickerGroup.border": "#6e6a8626",
+ "pickerGroup.foreground": "#907aa9",
+ "ports.iconRunningProcessForeground": "#d7827e",
+ "problemsErrorIcon.foreground": "#b4637a",
+ "problemsInfoIcon.foreground": "#56949f",
+ "problemsWarningIcon.foreground": "#ea9d34",
+ "progressBar.background": "#d7827e",
+ "quickInput.background": "#fffaf3",
+ "quickInput.foreground": "#797593",
+ "quickInputList.focusBackground": "#6e6a8614",
+ "quickInputList.focusForeground": "#575279",
+ "quickInputList.focusIconForeground": "#575279",
+ "scrollbar.shadow": "#fffaf34d",
+ "scrollbarSlider.activeBackground": "#28698380",
+ "scrollbarSlider.background": "#6e6a8614",
+ "scrollbarSlider.hoverBackground": "#6e6a8626",
+ "searchEditor.findMatchBackground": "#6e6a8614",
+ "selection.background": "#6e6a8626",
+ "settings.focusedRowBackground": "#fffaf3",
+ "settings.headerForeground": "#575279",
+ "settings.modifiedItemIndicator": "#d7827e",
+ "settings.focusedRowBorder": "#6e6a8614",
+ "settings.rowHoverBackground": "#fffaf3",
+ "sideBar.background": "#faf4ed",
+ "sideBar.dropBackground": "#fffaf3",
+ "sideBar.foreground": "#797593",
+ "sideBarSectionHeader.background": "#000000",
+ "sideBarSectionHeader.border": "#6e6a8614",
+ "statusBar.background": "#faf4ed",
+ "statusBar.debuggingBackground": "#907aa9",
+ "statusBar.debuggingForeground": "#faf4ed",
+ "statusBar.foreground": "#797593",
+ "statusBar.noFolderBackground": "#faf4ed",
+ "statusBar.noFolderForeground": "#797593",
+ "statusBarItem.activeBackground": "#6e6a8626",
+ "statusBarItem.hoverBackground": "#6e6a8614",
+ "statusBarItem.prominentBackground": "#f2e9e1",
+ "statusBarItem.prominentForeground": "#575279",
+ "statusBarItem.prominentHoverBackground": "#6e6a8614",
+ "statusBarItem.remoteBackground": "#faf4ed",
+ "statusBarItem.remoteForeground": "#ea9d34",
+ "statusBarItem.errorBackground": "#faf4ed",
+ "statusBarItem.errorForeground": "#b4637a",
+ "symbolIcon.arrayForeground": "#797593",
+ "symbolIcon.classForeground": "#797593",
+ "symbolIcon.colorForeground": "#797593",
+ "symbolIcon.constantForeground": "#797593",
+ "symbolIcon.constructorForeground": "#797593",
+ "symbolIcon.enumeratorForeground": "#797593",
+ "symbolIcon.enumeratorMemberForeground": "#797593",
+ "symbolIcon.eventForeground": "#797593",
+ "symbolIcon.fieldForeground": "#797593",
+ "symbolIcon.fileForeground": "#797593",
+ "symbolIcon.folderForeground": "#797593",
+ "symbolIcon.functionForeground": "#797593",
+ "symbolIcon.interfaceForeground": "#797593",
+ "symbolIcon.keyForeground": "#797593",
+ "symbolIcon.keywordForeground": "#797593",
+ "symbolIcon.methodForeground": "#797593",
+ "symbolIcon.moduleForeground": "#797593",
+ "symbolIcon.namespaceForeground": "#797593",
+ "symbolIcon.nullForeground": "#797593",
+ "symbolIcon.numberForeground": "#797593",
+ "symbolIcon.objectForeground": "#797593",
+ "symbolIcon.operatorForeground": "#797593",
+ "symbolIcon.packageForeground": "#797593",
+ "symbolIcon.propertyForeground": "#797593",
+ "symbolIcon.referenceForeground": "#797593",
+ "symbolIcon.snippetForeground": "#797593",
+ "symbolIcon.stringForeground": "#797593",
+ "symbolIcon.structForeground": "#797593",
+ "symbolIcon.textForeground": "#797593",
+ "symbolIcon.typeParameterForeground": "#797593",
+ "symbolIcon.unitForeground": "#797593",
+ "symbolIcon.variableForeground": "#797593",
+ "tab.activeBackground": "#6e6a860d",
+ "tab.activeForeground": "#575279",
+ "tab.activeModifiedBorder": "#56949f",
+ "tab.border": "#000000",
+ "tab.hoverBackground": "#6e6a8614",
+ "tab.inactiveBackground": "#000000",
+ "tab.inactiveForeground": "#797593",
+ "tab.inactiveModifiedBorder": "#56949f80",
+ "tab.lastPinnedBorder": "#9893a5",
+ "tab.unfocusedActiveBackground": "#000000",
+ "tab.unfocusedHoverBackground": "#000000",
+ "tab.unfocusedInactiveBackground": "#000000",
+ "tab.unfocusedInactiveModifiedBorder": "#56949f80",
+ "terminal.ansiBlack": "#f2e9e1",
+ "terminal.ansiBlue": "#56949f",
+ "terminal.ansiBrightBlack": "#797593",
+ "terminal.ansiBrightBlue": "#56949f",
+ "terminal.ansiBrightCyan": "#d7827e",
+ "terminal.ansiBrightGreen": "#286983",
+ "terminal.ansiBrightMagenta": "#907aa9",
+ "terminal.ansiBrightRed": "#b4637a",
+ "terminal.ansiBrightWhite": "#575279",
+ "terminal.ansiBrightYellow": "#ea9d34",
+ "terminal.ansiCyan": "#d7827e",
+ "terminal.ansiGreen": "#286983",
+ "terminal.ansiMagenta": "#907aa9",
+ "terminal.ansiRed": "#b4637a",
+ "terminal.ansiWhite": "#575279",
+ "terminal.ansiYellow": "#ea9d34",
+ "terminal.dropBackground": "#6e6a8614",
+ "terminal.foreground": "#575279",
+ "terminal.selectionBackground": "#6e6a8614",
+ "terminal.tab.activeBorder": "#575279",
+ "terminalCursor.background": "#575279",
+ "terminalCursor.foreground": "#9893a5",
+ "textBlockQuote.background": "#fffaf3",
+ "textBlockQuote.border": "#6e6a8614",
+ "textCodeBlock.background": "#fffaf3",
+ "textLink.activeForeground": "#907aa9e6",
+ "textLink.foreground": "#907aa9",
+ "textPreformat.foreground": "#ea9d34",
+ "textSeparator.foreground": "#797593",
+ "titleBar.activeBackground": "#faf4ed",
+ "titleBar.activeForeground": "#797593",
+ "titleBar.inactiveBackground": "#fffaf3",
+ "titleBar.inactiveForeground": "#797593",
+ "toolbar.activeBackground": "#6e6a8626",
+ "toolbar.hoverBackground": "#6e6a8614",
+ "tree.indentGuidesStroke": "#797593",
+ "walkThrough.embeddedEditorBackground": "#faf4ed",
+ "welcomePage.background": "#faf4ed",
+ "welcomePage.buttonBackground": "#fffaf3",
+ "welcomePage.buttonHoverBackground": "#f2e9e1",
+ "widget.shadow": "#fffaf34d",
+ "window.activeBorder": "#fffaf3",
+ "window.inactiveBorder": "#fffaf3"
+ },
+ "tokenColors": [
+ {
+ "scope": ["comment"],
+ "settings": {
+ "foreground": "#9893a5",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant"],
+ "settings": {
+ "foreground": "#286983"
+ }
+ },
+ {
+ "scope": ["constant.numeric", "constant.language"],
+ "settings": {
+ "foreground": "#d7827e"
+ }
+ },
+ {
+ "scope": ["entity.name"],
+ "settings": {
+ "foreground": "#d7827e"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.section",
+ "entity.name.tag",
+ "entity.name.namespace",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#56949f"
+ }
+ },
+ {
+ "scope": ["entity.other.attribute-name", "entity.other.inherited-class"],
+ "settings": {
+ "foreground": "#907aa9",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["invalid"],
+ "settings": {
+ "foreground": "#b4637a"
+ }
+ },
+ {
+ "scope": ["invalid.deprecated"],
+ "settings": {
+ "foreground": "#797593"
+ }
+ },
+ {
+ "scope": ["keyword"],
+ "settings": {
+ "foreground": "#286983"
+ }
+ },
+ {
+ "scope": ["markup.inserted.diff"],
+ "settings": {
+ "foreground": "#56949f"
+ }
+ },
+ {
+ "scope": ["markup.deleted.diff"],
+ "settings": {
+ "foreground": "#b4637a"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "markup.bold.markdown",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "markup.italic.markdown",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["meta.diff.range"],
+ "settings": {
+ "foreground": "#907aa9"
+ }
+ },
+ {
+ "scope": ["meta.tag", "meta.brace"],
+ "settings": {
+ "foreground": "#575279"
+ }
+ },
+ {
+ "scope": ["meta.import", "meta.export"],
+ "settings": {
+ "foreground": "#286983"
+ }
+ },
+ {
+ "scope": "meta.directive.vue",
+ "settings": {
+ "foreground": "#907aa9",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "meta.property-name.css",
+ "settings": {
+ "foreground": "#56949f"
+ }
+ },
+ {
+ "scope": "meta.property-value.css",
+ "settings": {
+ "foreground": "#ea9d34"
+ }
+ },
+ {
+ "scope": "meta.tag.other.html",
+ "settings": {
+ "foreground": "#797593"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#797593"
+ }
+ },
+ {
+ "scope": ["punctuation.accessor"],
+ "settings": {
+ "foreground": "#286983"
+ }
+ },
+ {
+ "scope": ["punctuation.definition.string"],
+ "settings": {
+ "foreground": "#ea9d34"
+ }
+ },
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#9893a5"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#286983"
+ }
+ },
+ {
+ "scope": ["string"],
+ "settings": {
+ "foreground": "#ea9d34"
+ }
+ },
+ {
+ "scope": ["support"],
+ "settings": {
+ "foreground": "#56949f"
+ }
+ },
+ {
+ "scope": ["support.constant"],
+ "settings": {
+ "foreground": "#ea9d34"
+ }
+ },
+ {
+ "scope": ["support.function"],
+ "settings": {
+ "foreground": "#b4637a",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["variable"],
+ "settings": {
+ "foreground": "#d7827e",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": [
+ "variable.other",
+ "variable.language",
+ "variable.function",
+ "variable.argument"
+ ],
+ "settings": {
+ "foreground": "#575279"
+ }
+ },
+ {
+ "scope": ["variable.parameter"],
+ "settings": {
+ "foreground": "#907aa9"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/rose-pine/rose-pine-moon.json b/assets/themes/src/vscode/rose-pine/rose-pine-moon.json
new file mode 100644
index 0000000000..dbbb757335
--- /dev/null
+++ b/assets/themes/src/vscode/rose-pine/rose-pine-moon.json
@@ -0,0 +1,680 @@
+{
+ "name": "Rosé Pine Moon",
+ "type": "dark",
+ "colors": {
+ "activityBar.activeBorder": "#e0def4",
+ "activityBar.background": "#232136",
+ "activityBar.dropBorder": "#393552",
+ "activityBar.foreground": "#e0def4",
+ "activityBar.inactiveForeground": "#908caa",
+ "activityBarBadge.background": "#ea9a97",
+ "activityBarBadge.foreground": "#232136",
+ "badge.background": "#ea9a97",
+ "badge.foreground": "#232136",
+ "banner.background": "#2a273f",
+ "banner.foreground": "#e0def4",
+ "banner.iconForeground": "#908caa",
+ "breadcrumb.activeSelectionForeground": "#ea9a97",
+ "breadcrumb.background": "#232136",
+ "breadcrumb.focusForeground": "#908caa",
+ "breadcrumb.foreground": "#6e6a86",
+ "breadcrumbPicker.background": "#2a273f",
+ "button.background": "#ea9a97",
+ "button.foreground": "#232136",
+ "button.hoverBackground": "#ea9a97e6",
+ "button.secondaryBackground": "#2a273f",
+ "button.secondaryForeground": "#e0def4",
+ "button.secondaryHoverBackground": "#393552",
+ "charts.blue": "#9ccfd8",
+ "charts.foreground": "#e0def4",
+ "charts.green": "#3e8fb0",
+ "charts.lines": "#908caa",
+ "charts.orange": "#ea9a97",
+ "charts.purple": "#c4a7e7",
+ "charts.red": "#eb6f92",
+ "charts.yellow": "#f6c177",
+ "checkbox.background": "#2a273f",
+ "checkbox.border": "#817c9c26",
+ "checkbox.foreground": "#e0def4",
+ "debugExceptionWidget.background": "#2a273f",
+ "debugExceptionWidget.border": "#817c9c26",
+ "debugIcon.breakpointCurrentStackframeForeground": "#908caa",
+ "debugIcon.breakpointDisabledForeground": "#908caa",
+ "debugIcon.breakpointForeground": "#908caa",
+ "debugIcon.breakpointStackframeForeground": "#908caa",
+ "debugIcon.breakpointUnverifiedForeground": "#908caa",
+ "debugIcon.continueForeground": "#908caa",
+ "debugIcon.disconnectForeground": "#908caa",
+ "debugIcon.pauseForeground": "#908caa",
+ "debugIcon.restartForeground": "#908caa",
+ "debugIcon.startForeground": "#908caa",
+ "debugIcon.stepBackForeground": "#908caa",
+ "debugIcon.stepIntoForeground": "#908caa",
+ "debugIcon.stepOutForeground": "#908caa",
+ "debugIcon.stepOverForeground": "#908caa",
+ "debugIcon.stopForeground": "#eb6f92",
+ "debugToolBar.background": "#2a273f",
+ "debugToolBar.border": "#393552",
+ "descriptionForeground": "#908caa",
+ "diffEditor.border": "#393552",
+ "diffEditor.diagonalFill": "#817c9c4d",
+ "diffEditor.insertedLineBackground": "#9ccfd826",
+ "diffEditor.insertedTextBackground": "#9ccfd826",
+ "diffEditor.removedLineBackground": "#eb6f9226",
+ "diffEditor.removedTextBackground": "#eb6f9226",
+ "diffEditorOverview.insertedForeground": "#9ccfd880",
+ "diffEditorOverview.removedForeground": "#eb6f9280",
+ "dropdown.background": "#2a273f",
+ "dropdown.border": "#817c9c26",
+ "dropdown.foreground": "#e0def4",
+ "dropdown.listBackground": "#2a273f",
+ "editor.background": "#232136",
+ "editor.findMatchBackground": "#817c9c4d",
+ "editor.findMatchHighlightBackground": "#817c9c4d",
+ "editor.findRangeHighlightBackground": "#817c9c4d",
+ "editor.findRangeHighlightBorder": "#000000",
+ "editor.focusedStackFrameHighlightBackground": "#817c9c26",
+ "editor.foldBackground": "#2a273f",
+ "editor.foreground": "#e0def4",
+ "editor.hoverHighlightBackground": "#000000",
+ "editor.inactiveSelectionBackground": "#817c9c14",
+ "editor.inlineValuesBackground": "#000000",
+ "editor.inlineValuesForeground": "#908caa",
+ "editor.lineHighlightBackground": "#817c9c14",
+ "editor.lineHighlightBorder": "#000000",
+ "editor.linkedEditingBackground": "#2a273f",
+ "editor.rangeHighlightBackground": "#817c9c14",
+ "editor.selectionBackground": "#817c9c26",
+ "editor.selectionForeground": "#e0def4",
+ "editor.selectionHighlightBackground": "#817c9c26",
+ "editor.selectionHighlightBorder": "#232136",
+ "editor.snippetFinalTabstopHighlightBackground": "#817c9c26",
+ "editor.snippetFinalTabstopHighlightBorder": "#2a273f",
+ "editor.snippetTabstopHighlightBackground": "#817c9c26",
+ "editor.snippetTabstopHighlightBorder": "#2a273f",
+ "editor.stackFrameHighlightBackground": "#817c9c26",
+ "editor.symbolHighlightBackground": "#817c9c26",
+ "editor.symbolHighlightBorder": "#000000",
+ "editor.wordHighlightBackground": "#817c9c26",
+ "editor.wordHighlightBorder": "#000000",
+ "editor.wordHighlightStrongBackground": "#817c9c26",
+ "editor.wordHighlightStrongBorder": "#817c9c26",
+ "editorBracketHighlight.foreground1": "#eb6f9280",
+ "editorBracketHighlight.foreground2": "#3e8fb080",
+ "editorBracketHighlight.foreground3": "#f6c17780",
+ "editorBracketHighlight.foreground4": "#9ccfd880",
+ "editorBracketHighlight.foreground5": "#ea9a9780",
+ "editorBracketHighlight.foreground6": "#c4a7e780",
+ "editorBracketMatch.background": "#000000",
+ "editorBracketMatch.border": "#908caa",
+ "editorBracketPairGuide.activeBackground1": "#3e8fb0",
+ "editorBracketPairGuide.activeBackground2": "#ea9a97",
+ "editorBracketPairGuide.activeBackground3": "#c4a7e7",
+ "editorBracketPairGuide.activeBackground4": "#9ccfd8",
+ "editorBracketPairGuide.activeBackground5": "#f6c177",
+ "editorBracketPairGuide.activeBackground6": "#eb6f92",
+ "editorBracketPairGuide.background1": "#3e8fb080",
+ "editorBracketPairGuide.background2": "#ea9a9780",
+ "editorBracketPairGuide.background3": "#c4a7e780",
+ "editorBracketPairGuide.background4": "#9ccfd880",
+ "editorBracketPairGuide.background5": "#f6c17780",
+ "editorBracketPairGuide.background6": "#eb6f9280",
+ "editorCodeLens.foreground": "#ea9a97",
+ "editorCursor.background": "#e0def4",
+ "editorCursor.foreground": "#6e6a86",
+ "editorError.border": "#000000",
+ "editorError.foreground": "#eb6f92",
+ "editorGhostText.foreground": "#908caa",
+ "editorGroup.border": "#000000",
+ "editorGroup.dropBackground": "#2a273f",
+ "editorGroup.emptyBackground": "#000000",
+ "editorGroup.focusedEmptyBorder": "#000000",
+ "editorGroupHeader.noTabsBackground": "#000000",
+ "editorGroupHeader.tabsBackground": "#000000",
+ "editorGroupHeader.tabsBorder": "#000000",
+ "editorGutter.addedBackground": "#9ccfd8",
+ "editorGutter.background": "#232136",
+ "editorGutter.commentRangeForeground": "#908caa",
+ "editorGutter.deletedBackground": "#eb6f92",
+ "editorGutter.foldingControlForeground": "#c4a7e7",
+ "editorGutter.modifiedBackground": "#ea9a97",
+ "editorHint.border": "#000000",
+ "editorHint.foreground": "#908caa",
+ "editorHoverWidget.background": "#2a273f",
+ "editorHoverWidget.border": "#6e6a8680",
+ "editorHoverWidget.foreground": "#908caa",
+ "editorHoverWidget.highlightForeground": "#e0def4",
+ "editorHoverWidget.statusBarBackground": "#000000",
+ "editorIndentGuide.activeBackground": "#6e6a86",
+ "editorIndentGuide.background": "#817c9c4d",
+ "editorInfo.border": "#393552",
+ "editorInfo.foreground": "#9ccfd8",
+ "editorInlayHint.background": "#393552",
+ "editorInlayHint.foreground": "#908caa",
+ "editorInlayHint.parameterBackground": "#393552",
+ "editorInlayHint.parameterForeground": "#c4a7e7",
+ "editorInlayHint.typeBackground": "#393552",
+ "editorInlayHint.typeForeground": "#9ccfd8",
+ "editorLightBulb.foreground": "#3e8fb0",
+ "editorLightBulbAutoFix.foreground": "#ea9a97",
+ "editorLineNumber.activeForeground": "#e0def4",
+ "editorLineNumber.foreground": "#908caa",
+ "editorLink.activeForeground": "#ea9a97",
+ "editorMarkerNavigation.background": "#2a273f",
+ "editorMarkerNavigationError.background": "#2a273f",
+ "editorMarkerNavigationInfo.background": "#2a273f",
+ "editorMarkerNavigationWarning.background": "#2a273f",
+ "editorOverviewRuler.addedForeground": "#9ccfd880",
+ "editorOverviewRuler.background": "#232136",
+ "editorOverviewRuler.border": "#817c9c4d",
+ "editorOverviewRuler.bracketMatchForeground": "#908caa",
+ "editorOverviewRuler.commonContentForeground": "#817c9c14",
+ "editorOverviewRuler.currentContentForeground": "#817c9c26",
+ "editorOverviewRuler.deletedForeground": "#eb6f9280",
+ "editorOverviewRuler.errorForeground": "#eb6f9280",
+ "editorOverviewRuler.findMatchForeground": "#817c9c4d",
+ "editorOverviewRuler.incomingContentForeground": "#c4a7e780",
+ "editorOverviewRuler.infoForeground": "#9ccfd880",
+ "editorOverviewRuler.modifiedForeground": "#ea9a9780",
+ "editorOverviewRuler.rangeHighlightForeground": "#817c9c4d",
+ "editorOverviewRuler.selectionHighlightForeground": "#817c9c4d",
+ "editorOverviewRuler.warningForeground": "#f6c17780",
+ "editorOverviewRuler.wordHighlightForeground": "#817c9c26",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#817c9c4d",
+ "editorPane.background": "#000000",
+ "editorRuler.foreground": "#817c9c4d",
+ "editorSuggestWidget.background": "#2a273f",
+ "editorSuggestWidget.border": "#000000",
+ "editorSuggestWidget.focusHighlightForeground": "#ea9a97",
+ "editorSuggestWidget.foreground": "#908caa",
+ "editorSuggestWidget.highlightForeground": "#ea9a97",
+ "editorSuggestWidget.selectedBackground": "#817c9c26",
+ "editorSuggestWidget.selectedForeground": "#e0def4",
+ "editorSuggestWidget.selectedIconForeground": "#e0def4",
+ "editorUnnecessaryCode.border": "#000000",
+ "editorUnnecessaryCode.opacity": "#e0def480",
+ "editorWarning.border": "#000000",
+ "editorWarning.foreground": "#f6c177",
+ "editorWhitespace.foreground": "#6e6a86",
+ "editorWidget.background": "#2a273f",
+ "editorWidget.border": "#393552",
+ "editorWidget.foreground": "#908caa",
+ "editorWidget.resizeBorder": "#6e6a86",
+ "errorForeground": "#eb6f92",
+ "extensionBadge.remoteBackground": "#c4a7e7",
+ "extensionBadge.remoteForeground": "#232136",
+ "extensionButton.prominentBackground": "#ea9a97",
+ "extensionButton.prominentForeground": "#232136",
+ "extensionButton.prominentHoverBackground": "#ea9a97e6",
+ "extensionIcon.preReleaseForeground": "#3e8fb0",
+ "extensionIcon.starForeground": "#ea9a97",
+ "extensionIcon.verifiedForeground": "#c4a7e7",
+ "focusBorder": "#817c9c26",
+ "foreground": "#e0def4",
+ "gitDecoration.addedResourceForeground": "#9ccfd8",
+ "gitDecoration.conflictingResourceForeground": "#eb6f92",
+ "gitDecoration.deletedResourceForeground": "#908caa",
+ "gitDecoration.ignoredResourceForeground": "#6e6a86",
+ "gitDecoration.modifiedResourceForeground": "#ea9a97",
+ "gitDecoration.renamedResourceForeground": "#3e8fb0",
+ "gitDecoration.stageDeletedResourceForeground": "#eb6f92",
+ "gitDecoration.stageModifiedResourceForeground": "#c4a7e7",
+ "gitDecoration.submoduleResourceForeground": "#f6c177",
+ "gitDecoration.untrackedResourceForeground": "#f6c177",
+ "icon.foreground": "#908caa",
+ "input.background": "#39355280",
+ "input.border": "#817c9c26",
+ "input.foreground": "#e0def4",
+ "input.placeholderForeground": "#908caa",
+ "inputOption.activeBackground": "#ea9a9726",
+ "inputOption.activeForeground": "#ea9a97",
+ "inputValidation.errorBackground": "#2a273f",
+ "inputValidation.errorBorder": "#817c9c4d",
+ "inputValidation.errorForeground": "#eb6f92",
+ "inputValidation.infoBackground": "#2a273f",
+ "inputValidation.infoBorder": "#817c9c4d",
+ "inputValidation.infoForeground": "#9ccfd8",
+ "inputValidation.warningBackground": "#2a273f",
+ "inputValidation.warningBorder": "#817c9c4d",
+ "inputValidation.warningForeground": "#9ccfd880",
+ "keybindingLabel.background": "#393552",
+ "keybindingLabel.border": "#817c9c4d",
+ "keybindingLabel.bottomBorder": "#817c9c4d",
+ "keybindingLabel.foreground": "#c4a7e7",
+ "keybindingTable.headerBackground": "#393552",
+ "keybindingTable.rowsBackground": "#2a273f",
+ "list.activeSelectionBackground": "#817c9c26",
+ "list.activeSelectionForeground": "#e0def4",
+ "list.deemphasizedForeground": "#908caa",
+ "list.dropBackground": "#2a273f",
+ "list.errorForeground": "#eb6f92",
+ "list.filterMatchBackground": "#2a273f",
+ "list.filterMatchBorder": "#ea9a97",
+ "list.focusBackground": "#817c9c4d",
+ "list.focusForeground": "#e0def4",
+ "list.focusOutline": "#817c9c26",
+ "list.highlightForeground": "#ea9a97",
+ "list.hoverBackground": "#817c9c14",
+ "list.hoverForeground": "#e0def4",
+ "list.inactiveFocusBackground": "#817c9c14",
+ "list.inactiveSelectionBackground": "#2a273f",
+ "list.inactiveSelectionForeground": "#e0def4",
+ "list.invalidItemForeground": "#eb6f92",
+ "list.warningForeground": "#f6c177",
+ "listFilterWidget.background": "#2a273f",
+ "listFilterWidget.noMatchesOutline": "#eb6f92",
+ "listFilterWidget.outline": "#393552",
+ "menu.background": "#2a273f",
+ "menu.border": "#817c9c14",
+ "menu.foreground": "#e0def4",
+ "menu.selectionBackground": "#817c9c26",
+ "menu.selectionBorder": "#393552",
+ "menu.selectionForeground": "#e0def4",
+ "menu.separatorBackground": "#817c9c4d",
+ "menubar.selectionBackground": "#817c9c26",
+ "menubar.selectionBorder": "#817c9c14",
+ "menubar.selectionForeground": "#e0def4",
+ "merge.border": "#393552",
+ "merge.commonContentBackground": "#817c9c26",
+ "merge.commonHeaderBackground": "#817c9c26",
+ "merge.currentContentBackground": "#f6c17780",
+ "merge.currentHeaderBackground": "#f6c17780",
+ "merge.incomingContentBackground": "#9ccfd880",
+ "merge.incomingHeaderBackground": "#9ccfd880",
+ "minimap.background": "#2a273f",
+ "minimap.errorHighlight": "#eb6f9280",
+ "minimap.findMatchHighlight": "#817c9c26",
+ "minimap.selectionHighlight": "#817c9c26",
+ "minimap.warningHighlight": "#f6c17780",
+ "minimapGutter.addedBackground": "#9ccfd8",
+ "minimapGutter.deletedBackground": "#eb6f92",
+ "minimapGutter.modifiedBackground": "#ea9a97",
+ "minimapSlider.activeBackground": "#817c9c4d",
+ "minimapSlider.background": "#817c9c26",
+ "minimapSlider.hoverBackground": "#817c9c26",
+ "notebook.cellBorderColor": "#9ccfd880",
+ "notebook.cellEditorBackground": "#2a273f",
+ "notebook.cellHoverBackground": "#39355280",
+ "notebook.focusedCellBackground": "#817c9c14",
+ "notebook.focusedCellBorder": "#9ccfd8",
+ "notebook.outputContainerBackgroundColor": "#817c9c14",
+ "notificationCenter.border": "#817c9c26",
+ "notificationCenterHeader.background": "#2a273f",
+ "notificationCenterHeader.foreground": "#908caa",
+ "notificationLink.foreground": "#c4a7e7",
+ "notifications.background": "#2a273f",
+ "notifications.border": "#817c9c26",
+ "notifications.foreground": "#e0def4",
+ "notificationsErrorIcon.foreground": "#eb6f92",
+ "notificationsInfoIcon.foreground": "#9ccfd8",
+ "notificationsWarningIcon.foreground": "#f6c177",
+ "notificationToast.border": "#817c9c26",
+ "panel.background": "#2a273f",
+ "panel.border": "#000000",
+ "panel.dropBorder": "#393552",
+ "panelInput.border": "#2a273f",
+ "panelSection.dropBackground": "#817c9c26",
+ "panelSectionHeader.background": "#2a273f",
+ "panelSectionHeader.foreground": "#e0def4",
+ "panelTitle.activeBorder": "#817c9c4d",
+ "panelTitle.activeForeground": "#e0def4",
+ "panelTitle.inactiveForeground": "#908caa",
+ "peekView.border": "#393552",
+ "peekViewEditor.background": "#2a273f",
+ "peekViewEditor.matchHighlightBackground": "#817c9c4d",
+ "peekViewResult.background": "#2a273f",
+ "peekViewResult.fileForeground": "#908caa",
+ "peekViewResult.lineForeground": "#908caa",
+ "peekViewResult.matchHighlightBackground": "#817c9c4d",
+ "peekViewResult.selectionBackground": "#817c9c26",
+ "peekViewResult.selectionForeground": "#e0def4",
+ "peekViewTitle.background": "#393552",
+ "peekViewTitleDescription.foreground": "#908caa",
+ "pickerGroup.border": "#817c9c4d",
+ "pickerGroup.foreground": "#c4a7e7",
+ "ports.iconRunningProcessForeground": "#ea9a97",
+ "problemsErrorIcon.foreground": "#eb6f92",
+ "problemsInfoIcon.foreground": "#9ccfd8",
+ "problemsWarningIcon.foreground": "#f6c177",
+ "progressBar.background": "#ea9a97",
+ "quickInput.background": "#2a273f",
+ "quickInput.foreground": "#908caa",
+ "quickInputList.focusBackground": "#817c9c26",
+ "quickInputList.focusForeground": "#e0def4",
+ "quickInputList.focusIconForeground": "#e0def4",
+ "scrollbar.shadow": "#2a273f4d",
+ "scrollbarSlider.activeBackground": "#3e8fb080",
+ "scrollbarSlider.background": "#817c9c26",
+ "scrollbarSlider.hoverBackground": "#817c9c4d",
+ "searchEditor.findMatchBackground": "#817c9c26",
+ "selection.background": "#817c9c4d",
+ "settings.focusedRowBackground": "#2a273f",
+ "settings.headerForeground": "#e0def4",
+ "settings.modifiedItemIndicator": "#ea9a97",
+ "settings.focusedRowBorder": "#817c9c26",
+ "settings.rowHoverBackground": "#2a273f",
+ "sideBar.background": "#232136",
+ "sideBar.dropBackground": "#2a273f",
+ "sideBar.foreground": "#908caa",
+ "sideBarSectionHeader.background": "#000000",
+ "sideBarSectionHeader.border": "#817c9c26",
+ "statusBar.background": "#232136",
+ "statusBar.debuggingBackground": "#c4a7e7",
+ "statusBar.debuggingForeground": "#232136",
+ "statusBar.foreground": "#908caa",
+ "statusBar.noFolderBackground": "#232136",
+ "statusBar.noFolderForeground": "#908caa",
+ "statusBarItem.activeBackground": "#817c9c4d",
+ "statusBarItem.hoverBackground": "#817c9c26",
+ "statusBarItem.prominentBackground": "#393552",
+ "statusBarItem.prominentForeground": "#e0def4",
+ "statusBarItem.prominentHoverBackground": "#817c9c26",
+ "statusBarItem.remoteBackground": "#232136",
+ "statusBarItem.remoteForeground": "#f6c177",
+ "statusBarItem.errorBackground": "#232136",
+ "statusBarItem.errorForeground": "#eb6f92",
+ "symbolIcon.arrayForeground": "#908caa",
+ "symbolIcon.classForeground": "#908caa",
+ "symbolIcon.colorForeground": "#908caa",
+ "symbolIcon.constantForeground": "#908caa",
+ "symbolIcon.constructorForeground": "#908caa",
+ "symbolIcon.enumeratorForeground": "#908caa",
+ "symbolIcon.enumeratorMemberForeground": "#908caa",
+ "symbolIcon.eventForeground": "#908caa",
+ "symbolIcon.fieldForeground": "#908caa",
+ "symbolIcon.fileForeground": "#908caa",
+ "symbolIcon.folderForeground": "#908caa",
+ "symbolIcon.functionForeground": "#908caa",
+ "symbolIcon.interfaceForeground": "#908caa",
+ "symbolIcon.keyForeground": "#908caa",
+ "symbolIcon.keywordForeground": "#908caa",
+ "symbolIcon.methodForeground": "#908caa",
+ "symbolIcon.moduleForeground": "#908caa",
+ "symbolIcon.namespaceForeground": "#908caa",
+ "symbolIcon.nullForeground": "#908caa",
+ "symbolIcon.numberForeground": "#908caa",
+ "symbolIcon.objectForeground": "#908caa",
+ "symbolIcon.operatorForeground": "#908caa",
+ "symbolIcon.packageForeground": "#908caa",
+ "symbolIcon.propertyForeground": "#908caa",
+ "symbolIcon.referenceForeground": "#908caa",
+ "symbolIcon.snippetForeground": "#908caa",
+ "symbolIcon.stringForeground": "#908caa",
+ "symbolIcon.structForeground": "#908caa",
+ "symbolIcon.textForeground": "#908caa",
+ "symbolIcon.typeParameterForeground": "#908caa",
+ "symbolIcon.unitForeground": "#908caa",
+ "symbolIcon.variableForeground": "#908caa",
+ "tab.activeBackground": "#817c9c14",
+ "tab.activeForeground": "#e0def4",
+ "tab.activeModifiedBorder": "#9ccfd8",
+ "tab.border": "#000000",
+ "tab.hoverBackground": "#817c9c26",
+ "tab.inactiveBackground": "#000000",
+ "tab.inactiveForeground": "#908caa",
+ "tab.inactiveModifiedBorder": "#9ccfd880",
+ "tab.lastPinnedBorder": "#6e6a86",
+ "tab.unfocusedActiveBackground": "#000000",
+ "tab.unfocusedHoverBackground": "#000000",
+ "tab.unfocusedInactiveBackground": "#000000",
+ "tab.unfocusedInactiveModifiedBorder": "#9ccfd880",
+ "terminal.ansiBlack": "#393552",
+ "terminal.ansiBlue": "#9ccfd8",
+ "terminal.ansiBrightBlack": "#908caa",
+ "terminal.ansiBrightBlue": "#9ccfd8",
+ "terminal.ansiBrightCyan": "#ea9a97",
+ "terminal.ansiBrightGreen": "#3e8fb0",
+ "terminal.ansiBrightMagenta": "#c4a7e7",
+ "terminal.ansiBrightRed": "#eb6f92",
+ "terminal.ansiBrightWhite": "#e0def4",
+ "terminal.ansiBrightYellow": "#f6c177",
+ "terminal.ansiCyan": "#ea9a97",
+ "terminal.ansiGreen": "#3e8fb0",
+ "terminal.ansiMagenta": "#c4a7e7",
+ "terminal.ansiRed": "#eb6f92",
+ "terminal.ansiWhite": "#e0def4",
+ "terminal.ansiYellow": "#f6c177",
+ "terminal.dropBackground": "#817c9c26",
+ "terminal.foreground": "#e0def4",
+ "terminal.selectionBackground": "#817c9c26",
+ "terminal.tab.activeBorder": "#e0def4",
+ "terminalCursor.background": "#e0def4",
+ "terminalCursor.foreground": "#6e6a86",
+ "textBlockQuote.background": "#2a273f",
+ "textBlockQuote.border": "#817c9c26",
+ "textCodeBlock.background": "#2a273f",
+ "textLink.activeForeground": "#c4a7e7e6",
+ "textLink.foreground": "#c4a7e7",
+ "textPreformat.foreground": "#f6c177",
+ "textSeparator.foreground": "#908caa",
+ "titleBar.activeBackground": "#232136",
+ "titleBar.activeForeground": "#908caa",
+ "titleBar.inactiveBackground": "#2a273f",
+ "titleBar.inactiveForeground": "#908caa",
+ "toolbar.activeBackground": "#817c9c4d",
+ "toolbar.hoverBackground": "#817c9c26",
+ "tree.indentGuidesStroke": "#908caa",
+ "walkThrough.embeddedEditorBackground": "#232136",
+ "welcomePage.background": "#232136",
+ "welcomePage.buttonBackground": "#2a273f",
+ "welcomePage.buttonHoverBackground": "#393552",
+ "widget.shadow": "#2a273f4d",
+ "window.activeBorder": "#2a273f",
+ "window.inactiveBorder": "#2a273f"
+ },
+ "tokenColors": [
+ {
+ "scope": ["comment"],
+ "settings": {
+ "foreground": "#6e6a86",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant"],
+ "settings": {
+ "foreground": "#3e8fb0"
+ }
+ },
+ {
+ "scope": ["constant.numeric", "constant.language"],
+ "settings": {
+ "foreground": "#ea9a97"
+ }
+ },
+ {
+ "scope": ["entity.name"],
+ "settings": {
+ "foreground": "#ea9a97"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.section",
+ "entity.name.tag",
+ "entity.name.namespace",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": ["entity.other.attribute-name", "entity.other.inherited-class"],
+ "settings": {
+ "foreground": "#c4a7e7",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["invalid"],
+ "settings": {
+ "foreground": "#eb6f92"
+ }
+ },
+ {
+ "scope": ["invalid.deprecated"],
+ "settings": {
+ "foreground": "#908caa"
+ }
+ },
+ {
+ "scope": ["keyword"],
+ "settings": {
+ "foreground": "#3e8fb0"
+ }
+ },
+ {
+ "scope": ["markup.inserted.diff"],
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": ["markup.deleted.diff"],
+ "settings": {
+ "foreground": "#eb6f92"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "markup.bold.markdown",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "markup.italic.markdown",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["meta.diff.range"],
+ "settings": {
+ "foreground": "#c4a7e7"
+ }
+ },
+ {
+ "scope": ["meta.tag", "meta.brace"],
+ "settings": {
+ "foreground": "#e0def4"
+ }
+ },
+ {
+ "scope": ["meta.import", "meta.export"],
+ "settings": {
+ "foreground": "#3e8fb0"
+ }
+ },
+ {
+ "scope": "meta.directive.vue",
+ "settings": {
+ "foreground": "#c4a7e7",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "meta.property-name.css",
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": "meta.property-value.css",
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": "meta.tag.other.html",
+ "settings": {
+ "foreground": "#908caa"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#908caa"
+ }
+ },
+ {
+ "scope": ["punctuation.accessor"],
+ "settings": {
+ "foreground": "#3e8fb0"
+ }
+ },
+ {
+ "scope": ["punctuation.definition.string"],
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#6e6a86"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#3e8fb0"
+ }
+ },
+ {
+ "scope": ["string"],
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": ["support"],
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": ["support.constant"],
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": ["support.function"],
+ "settings": {
+ "foreground": "#eb6f92",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["variable"],
+ "settings": {
+ "foreground": "#ea9a97",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": [
+ "variable.other",
+ "variable.language",
+ "variable.function",
+ "variable.argument"
+ ],
+ "settings": {
+ "foreground": "#e0def4"
+ }
+ },
+ {
+ "scope": ["variable.parameter"],
+ "settings": {
+ "foreground": "#c4a7e7"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/rose-pine/rose-pine.json b/assets/themes/src/vscode/rose-pine/rose-pine.json
new file mode 100644
index 0000000000..c2a0d23efc
--- /dev/null
+++ b/assets/themes/src/vscode/rose-pine/rose-pine.json
@@ -0,0 +1,680 @@
+{
+ "name": "Rosé Pine",
+ "type": "dark",
+ "colors": {
+ "activityBar.activeBorder": "#e0def4",
+ "activityBar.background": "#191724",
+ "activityBar.dropBorder": "#26233a",
+ "activityBar.foreground": "#e0def4",
+ "activityBar.inactiveForeground": "#908caa",
+ "activityBarBadge.background": "#ebbcba",
+ "activityBarBadge.foreground": "#191724",
+ "badge.background": "#ebbcba",
+ "badge.foreground": "#191724",
+ "banner.background": "#1f1d2e",
+ "banner.foreground": "#e0def4",
+ "banner.iconForeground": "#908caa",
+ "breadcrumb.activeSelectionForeground": "#ebbcba",
+ "breadcrumb.background": "#191724",
+ "breadcrumb.focusForeground": "#908caa",
+ "breadcrumb.foreground": "#6e6a86",
+ "breadcrumbPicker.background": "#1f1d2e",
+ "button.background": "#ebbcba",
+ "button.foreground": "#191724",
+ "button.hoverBackground": "#ebbcbae6",
+ "button.secondaryBackground": "#1f1d2e",
+ "button.secondaryForeground": "#e0def4",
+ "button.secondaryHoverBackground": "#26233a",
+ "charts.blue": "#9ccfd8",
+ "charts.foreground": "#e0def4",
+ "charts.green": "#31748f",
+ "charts.lines": "#908caa",
+ "charts.orange": "#ebbcba",
+ "charts.purple": "#c4a7e7",
+ "charts.red": "#eb6f92",
+ "charts.yellow": "#f6c177",
+ "checkbox.background": "#1f1d2e",
+ "checkbox.border": "#6e6a8633",
+ "checkbox.foreground": "#e0def4",
+ "debugExceptionWidget.background": "#1f1d2e",
+ "debugExceptionWidget.border": "#6e6a8633",
+ "debugIcon.breakpointCurrentStackframeForeground": "#908caa",
+ "debugIcon.breakpointDisabledForeground": "#908caa",
+ "debugIcon.breakpointForeground": "#908caa",
+ "debugIcon.breakpointStackframeForeground": "#908caa",
+ "debugIcon.breakpointUnverifiedForeground": "#908caa",
+ "debugIcon.continueForeground": "#908caa",
+ "debugIcon.disconnectForeground": "#908caa",
+ "debugIcon.pauseForeground": "#908caa",
+ "debugIcon.restartForeground": "#908caa",
+ "debugIcon.startForeground": "#908caa",
+ "debugIcon.stepBackForeground": "#908caa",
+ "debugIcon.stepIntoForeground": "#908caa",
+ "debugIcon.stepOutForeground": "#908caa",
+ "debugIcon.stepOverForeground": "#908caa",
+ "debugIcon.stopForeground": "#eb6f92",
+ "debugToolBar.background": "#1f1d2e",
+ "debugToolBar.border": "#26233a",
+ "descriptionForeground": "#908caa",
+ "diffEditor.border": "#26233a",
+ "diffEditor.diagonalFill": "#6e6a8666",
+ "diffEditor.insertedLineBackground": "#9ccfd826",
+ "diffEditor.insertedTextBackground": "#9ccfd826",
+ "diffEditor.removedLineBackground": "#eb6f9226",
+ "diffEditor.removedTextBackground": "#eb6f9226",
+ "diffEditorOverview.insertedForeground": "#9ccfd880",
+ "diffEditorOverview.removedForeground": "#eb6f9280",
+ "dropdown.background": "#1f1d2e",
+ "dropdown.border": "#6e6a8633",
+ "dropdown.foreground": "#e0def4",
+ "dropdown.listBackground": "#1f1d2e",
+ "editor.background": "#191724",
+ "editor.findMatchBackground": "#6e6a8666",
+ "editor.findMatchHighlightBackground": "#6e6a8666",
+ "editor.findRangeHighlightBackground": "#6e6a8666",
+ "editor.findRangeHighlightBorder": "#000000",
+ "editor.focusedStackFrameHighlightBackground": "#6e6a8633",
+ "editor.foldBackground": "#1f1d2e",
+ "editor.foreground": "#e0def4",
+ "editor.hoverHighlightBackground": "#000000",
+ "editor.inactiveSelectionBackground": "#6e6a861a",
+ "editor.inlineValuesBackground": "#000000",
+ "editor.inlineValuesForeground": "#908caa",
+ "editor.lineHighlightBackground": "#6e6a861a",
+ "editor.lineHighlightBorder": "#000000",
+ "editor.linkedEditingBackground": "#1f1d2e",
+ "editor.rangeHighlightBackground": "#6e6a861a",
+ "editor.selectionBackground": "#6e6a8633",
+ "editor.selectionForeground": "#e0def4",
+ "editor.selectionHighlightBackground": "#6e6a8633",
+ "editor.selectionHighlightBorder": "#191724",
+ "editor.snippetFinalTabstopHighlightBackground": "#6e6a8633",
+ "editor.snippetFinalTabstopHighlightBorder": "#1f1d2e",
+ "editor.snippetTabstopHighlightBackground": "#6e6a8633",
+ "editor.snippetTabstopHighlightBorder": "#1f1d2e",
+ "editor.stackFrameHighlightBackground": "#6e6a8633",
+ "editor.symbolHighlightBackground": "#6e6a8633",
+ "editor.symbolHighlightBorder": "#000000",
+ "editor.wordHighlightBackground": "#6e6a8633",
+ "editor.wordHighlightBorder": "#000000",
+ "editor.wordHighlightStrongBackground": "#6e6a8633",
+ "editor.wordHighlightStrongBorder": "#6e6a8633",
+ "editorBracketHighlight.foreground1": "#eb6f9280",
+ "editorBracketHighlight.foreground2": "#31748f80",
+ "editorBracketHighlight.foreground3": "#f6c17780",
+ "editorBracketHighlight.foreground4": "#9ccfd880",
+ "editorBracketHighlight.foreground5": "#ebbcba80",
+ "editorBracketHighlight.foreground6": "#c4a7e780",
+ "editorBracketMatch.background": "#000000",
+ "editorBracketMatch.border": "#908caa",
+ "editorBracketPairGuide.activeBackground1": "#31748f",
+ "editorBracketPairGuide.activeBackground2": "#ebbcba",
+ "editorBracketPairGuide.activeBackground3": "#c4a7e7",
+ "editorBracketPairGuide.activeBackground4": "#9ccfd8",
+ "editorBracketPairGuide.activeBackground5": "#f6c177",
+ "editorBracketPairGuide.activeBackground6": "#eb6f92",
+ "editorBracketPairGuide.background1": "#31748f80",
+ "editorBracketPairGuide.background2": "#ebbcba80",
+ "editorBracketPairGuide.background3": "#c4a7e780",
+ "editorBracketPairGuide.background4": "#9ccfd880",
+ "editorBracketPairGuide.background5": "#f6c17780",
+ "editorBracketPairGuide.background6": "#eb6f9280",
+ "editorCodeLens.foreground": "#ebbcba",
+ "editorCursor.background": "#e0def4",
+ "editorCursor.foreground": "#6e6a86",
+ "editorError.border": "#000000",
+ "editorError.foreground": "#eb6f92",
+ "editorGhostText.foreground": "#908caa",
+ "editorGroup.border": "#000000",
+ "editorGroup.dropBackground": "#1f1d2e",
+ "editorGroup.emptyBackground": "#000000",
+ "editorGroup.focusedEmptyBorder": "#000000",
+ "editorGroupHeader.noTabsBackground": "#000000",
+ "editorGroupHeader.tabsBackground": "#000000",
+ "editorGroupHeader.tabsBorder": "#000000",
+ "editorGutter.addedBackground": "#9ccfd8",
+ "editorGutter.background": "#191724",
+ "editorGutter.commentRangeForeground": "#908caa",
+ "editorGutter.deletedBackground": "#eb6f92",
+ "editorGutter.foldingControlForeground": "#c4a7e7",
+ "editorGutter.modifiedBackground": "#ebbcba",
+ "editorHint.border": "#000000",
+ "editorHint.foreground": "#908caa",
+ "editorHoverWidget.background": "#1f1d2e",
+ "editorHoverWidget.border": "#6e6a8680",
+ "editorHoverWidget.foreground": "#908caa",
+ "editorHoverWidget.highlightForeground": "#e0def4",
+ "editorHoverWidget.statusBarBackground": "#000000",
+ "editorIndentGuide.activeBackground": "#6e6a86",
+ "editorIndentGuide.background": "#6e6a8666",
+ "editorInfo.border": "#26233a",
+ "editorInfo.foreground": "#9ccfd8",
+ "editorInlayHint.background": "#26233a",
+ "editorInlayHint.foreground": "#908caa",
+ "editorInlayHint.parameterBackground": "#26233a",
+ "editorInlayHint.parameterForeground": "#c4a7e7",
+ "editorInlayHint.typeBackground": "#26233a",
+ "editorInlayHint.typeForeground": "#9ccfd8",
+ "editorLightBulb.foreground": "#31748f",
+ "editorLightBulbAutoFix.foreground": "#ebbcba",
+ "editorLineNumber.activeForeground": "#e0def4",
+ "editorLineNumber.foreground": "#908caa",
+ "editorLink.activeForeground": "#ebbcba",
+ "editorMarkerNavigation.background": "#1f1d2e",
+ "editorMarkerNavigationError.background": "#1f1d2e",
+ "editorMarkerNavigationInfo.background": "#1f1d2e",
+ "editorMarkerNavigationWarning.background": "#1f1d2e",
+ "editorOverviewRuler.addedForeground": "#9ccfd880",
+ "editorOverviewRuler.background": "#191724",
+ "editorOverviewRuler.border": "#6e6a8666",
+ "editorOverviewRuler.bracketMatchForeground": "#908caa",
+ "editorOverviewRuler.commonContentForeground": "#6e6a861a",
+ "editorOverviewRuler.currentContentForeground": "#6e6a8633",
+ "editorOverviewRuler.deletedForeground": "#eb6f9280",
+ "editorOverviewRuler.errorForeground": "#eb6f9280",
+ "editorOverviewRuler.findMatchForeground": "#6e6a8666",
+ "editorOverviewRuler.incomingContentForeground": "#c4a7e780",
+ "editorOverviewRuler.infoForeground": "#9ccfd880",
+ "editorOverviewRuler.modifiedForeground": "#ebbcba80",
+ "editorOverviewRuler.rangeHighlightForeground": "#6e6a8666",
+ "editorOverviewRuler.selectionHighlightForeground": "#6e6a8666",
+ "editorOverviewRuler.warningForeground": "#f6c17780",
+ "editorOverviewRuler.wordHighlightForeground": "#6e6a8633",
+ "editorOverviewRuler.wordHighlightStrongForeground": "#6e6a8666",
+ "editorPane.background": "#000000",
+ "editorRuler.foreground": "#6e6a8666",
+ "editorSuggestWidget.background": "#1f1d2e",
+ "editorSuggestWidget.border": "#000000",
+ "editorSuggestWidget.focusHighlightForeground": "#ebbcba",
+ "editorSuggestWidget.foreground": "#908caa",
+ "editorSuggestWidget.highlightForeground": "#ebbcba",
+ "editorSuggestWidget.selectedBackground": "#6e6a8633",
+ "editorSuggestWidget.selectedForeground": "#e0def4",
+ "editorSuggestWidget.selectedIconForeground": "#e0def4",
+ "editorUnnecessaryCode.border": "#000000",
+ "editorUnnecessaryCode.opacity": "#e0def480",
+ "editorWarning.border": "#000000",
+ "editorWarning.foreground": "#f6c177",
+ "editorWhitespace.foreground": "#6e6a86",
+ "editorWidget.background": "#1f1d2e",
+ "editorWidget.border": "#26233a",
+ "editorWidget.foreground": "#908caa",
+ "editorWidget.resizeBorder": "#6e6a86",
+ "errorForeground": "#eb6f92",
+ "extensionBadge.remoteBackground": "#c4a7e7",
+ "extensionBadge.remoteForeground": "#191724",
+ "extensionButton.prominentBackground": "#ebbcba",
+ "extensionButton.prominentForeground": "#191724",
+ "extensionButton.prominentHoverBackground": "#ebbcbae6",
+ "extensionIcon.preReleaseForeground": "#31748f",
+ "extensionIcon.starForeground": "#ebbcba",
+ "extensionIcon.verifiedForeground": "#c4a7e7",
+ "focusBorder": "#6e6a8633",
+ "foreground": "#e0def4",
+ "gitDecoration.addedResourceForeground": "#9ccfd8",
+ "gitDecoration.conflictingResourceForeground": "#eb6f92",
+ "gitDecoration.deletedResourceForeground": "#908caa",
+ "gitDecoration.ignoredResourceForeground": "#6e6a86",
+ "gitDecoration.modifiedResourceForeground": "#ebbcba",
+ "gitDecoration.renamedResourceForeground": "#31748f",
+ "gitDecoration.stageDeletedResourceForeground": "#eb6f92",
+ "gitDecoration.stageModifiedResourceForeground": "#c4a7e7",
+ "gitDecoration.submoduleResourceForeground": "#f6c177",
+ "gitDecoration.untrackedResourceForeground": "#f6c177",
+ "icon.foreground": "#908caa",
+ "input.background": "#26233a80",
+ "input.border": "#6e6a8633",
+ "input.foreground": "#e0def4",
+ "input.placeholderForeground": "#908caa",
+ "inputOption.activeBackground": "#ebbcba26",
+ "inputOption.activeForeground": "#ebbcba",
+ "inputValidation.errorBackground": "#1f1d2e",
+ "inputValidation.errorBorder": "#6e6a8666",
+ "inputValidation.errorForeground": "#eb6f92",
+ "inputValidation.infoBackground": "#1f1d2e",
+ "inputValidation.infoBorder": "#6e6a8666",
+ "inputValidation.infoForeground": "#9ccfd8",
+ "inputValidation.warningBackground": "#1f1d2e",
+ "inputValidation.warningBorder": "#6e6a8666",
+ "inputValidation.warningForeground": "#9ccfd880",
+ "keybindingLabel.background": "#26233a",
+ "keybindingLabel.border": "#6e6a8666",
+ "keybindingLabel.bottomBorder": "#6e6a8666",
+ "keybindingLabel.foreground": "#c4a7e7",
+ "keybindingTable.headerBackground": "#26233a",
+ "keybindingTable.rowsBackground": "#1f1d2e",
+ "list.activeSelectionBackground": "#6e6a8633",
+ "list.activeSelectionForeground": "#e0def4",
+ "list.deemphasizedForeground": "#908caa",
+ "list.dropBackground": "#1f1d2e",
+ "list.errorForeground": "#eb6f92",
+ "list.filterMatchBackground": "#1f1d2e",
+ "list.filterMatchBorder": "#ebbcba",
+ "list.focusBackground": "#6e6a8666",
+ "list.focusForeground": "#e0def4",
+ "list.focusOutline": "#6e6a8633",
+ "list.highlightForeground": "#ebbcba",
+ "list.hoverBackground": "#6e6a861a",
+ "list.hoverForeground": "#e0def4",
+ "list.inactiveFocusBackground": "#6e6a861a",
+ "list.inactiveSelectionBackground": "#1f1d2e",
+ "list.inactiveSelectionForeground": "#e0def4",
+ "list.invalidItemForeground": "#eb6f92",
+ "list.warningForeground": "#f6c177",
+ "listFilterWidget.background": "#1f1d2e",
+ "listFilterWidget.noMatchesOutline": "#eb6f92",
+ "listFilterWidget.outline": "#26233a",
+ "menu.background": "#1f1d2e",
+ "menu.border": "#6e6a861a",
+ "menu.foreground": "#e0def4",
+ "menu.selectionBackground": "#6e6a8633",
+ "menu.selectionBorder": "#26233a",
+ "menu.selectionForeground": "#e0def4",
+ "menu.separatorBackground": "#6e6a8666",
+ "menubar.selectionBackground": "#6e6a8633",
+ "menubar.selectionBorder": "#6e6a861a",
+ "menubar.selectionForeground": "#e0def4",
+ "merge.border": "#26233a",
+ "merge.commonContentBackground": "#6e6a8633",
+ "merge.commonHeaderBackground": "#6e6a8633",
+ "merge.currentContentBackground": "#f6c17780",
+ "merge.currentHeaderBackground": "#f6c17780",
+ "merge.incomingContentBackground": "#9ccfd880",
+ "merge.incomingHeaderBackground": "#9ccfd880",
+ "minimap.background": "#1f1d2e",
+ "minimap.errorHighlight": "#eb6f9280",
+ "minimap.findMatchHighlight": "#6e6a8633",
+ "minimap.selectionHighlight": "#6e6a8633",
+ "minimap.warningHighlight": "#f6c17780",
+ "minimapGutter.addedBackground": "#9ccfd8",
+ "minimapGutter.deletedBackground": "#eb6f92",
+ "minimapGutter.modifiedBackground": "#ebbcba",
+ "minimapSlider.activeBackground": "#6e6a8666",
+ "minimapSlider.background": "#6e6a8633",
+ "minimapSlider.hoverBackground": "#6e6a8633",
+ "notebook.cellBorderColor": "#9ccfd880",
+ "notebook.cellEditorBackground": "#1f1d2e",
+ "notebook.cellHoverBackground": "#26233a80",
+ "notebook.focusedCellBackground": "#6e6a861a",
+ "notebook.focusedCellBorder": "#9ccfd8",
+ "notebook.outputContainerBackgroundColor": "#6e6a861a",
+ "notificationCenter.border": "#6e6a8633",
+ "notificationCenterHeader.background": "#1f1d2e",
+ "notificationCenterHeader.foreground": "#908caa",
+ "notificationLink.foreground": "#c4a7e7",
+ "notifications.background": "#1f1d2e",
+ "notifications.border": "#6e6a8633",
+ "notifications.foreground": "#e0def4",
+ "notificationsErrorIcon.foreground": "#eb6f92",
+ "notificationsInfoIcon.foreground": "#9ccfd8",
+ "notificationsWarningIcon.foreground": "#f6c177",
+ "notificationToast.border": "#6e6a8633",
+ "panel.background": "#1f1d2e",
+ "panel.border": "#000000",
+ "panel.dropBorder": "#26233a",
+ "panelInput.border": "#1f1d2e",
+ "panelSection.dropBackground": "#6e6a8633",
+ "panelSectionHeader.background": "#1f1d2e",
+ "panelSectionHeader.foreground": "#e0def4",
+ "panelTitle.activeBorder": "#6e6a8666",
+ "panelTitle.activeForeground": "#e0def4",
+ "panelTitle.inactiveForeground": "#908caa",
+ "peekView.border": "#26233a",
+ "peekViewEditor.background": "#1f1d2e",
+ "peekViewEditor.matchHighlightBackground": "#6e6a8666",
+ "peekViewResult.background": "#1f1d2e",
+ "peekViewResult.fileForeground": "#908caa",
+ "peekViewResult.lineForeground": "#908caa",
+ "peekViewResult.matchHighlightBackground": "#6e6a8666",
+ "peekViewResult.selectionBackground": "#6e6a8633",
+ "peekViewResult.selectionForeground": "#e0def4",
+ "peekViewTitle.background": "#26233a",
+ "peekViewTitleDescription.foreground": "#908caa",
+ "pickerGroup.border": "#6e6a8666",
+ "pickerGroup.foreground": "#c4a7e7",
+ "ports.iconRunningProcessForeground": "#ebbcba",
+ "problemsErrorIcon.foreground": "#eb6f92",
+ "problemsInfoIcon.foreground": "#9ccfd8",
+ "problemsWarningIcon.foreground": "#f6c177",
+ "progressBar.background": "#ebbcba",
+ "quickInput.background": "#1f1d2e",
+ "quickInput.foreground": "#908caa",
+ "quickInputList.focusBackground": "#6e6a8633",
+ "quickInputList.focusForeground": "#e0def4",
+ "quickInputList.focusIconForeground": "#e0def4",
+ "scrollbar.shadow": "#1f1d2e4d",
+ "scrollbarSlider.activeBackground": "#31748f80",
+ "scrollbarSlider.background": "#6e6a8633",
+ "scrollbarSlider.hoverBackground": "#6e6a8666",
+ "searchEditor.findMatchBackground": "#6e6a8633",
+ "selection.background": "#6e6a8666",
+ "settings.focusedRowBackground": "#1f1d2e",
+ "settings.headerForeground": "#e0def4",
+ "settings.modifiedItemIndicator": "#ebbcba",
+ "settings.focusedRowBorder": "#6e6a8633",
+ "settings.rowHoverBackground": "#1f1d2e",
+ "sideBar.background": "#191724",
+ "sideBar.dropBackground": "#1f1d2e",
+ "sideBar.foreground": "#908caa",
+ "sideBarSectionHeader.background": "#000000",
+ "sideBarSectionHeader.border": "#6e6a8633",
+ "statusBar.background": "#191724",
+ "statusBar.debuggingBackground": "#c4a7e7",
+ "statusBar.debuggingForeground": "#191724",
+ "statusBar.foreground": "#908caa",
+ "statusBar.noFolderBackground": "#191724",
+ "statusBar.noFolderForeground": "#908caa",
+ "statusBarItem.activeBackground": "#6e6a8666",
+ "statusBarItem.hoverBackground": "#6e6a8633",
+ "statusBarItem.prominentBackground": "#26233a",
+ "statusBarItem.prominentForeground": "#e0def4",
+ "statusBarItem.prominentHoverBackground": "#6e6a8633",
+ "statusBarItem.remoteBackground": "#191724",
+ "statusBarItem.remoteForeground": "#f6c177",
+ "statusBarItem.errorBackground": "#191724",
+ "statusBarItem.errorForeground": "#eb6f92",
+ "symbolIcon.arrayForeground": "#908caa",
+ "symbolIcon.classForeground": "#908caa",
+ "symbolIcon.colorForeground": "#908caa",
+ "symbolIcon.constantForeground": "#908caa",
+ "symbolIcon.constructorForeground": "#908caa",
+ "symbolIcon.enumeratorForeground": "#908caa",
+ "symbolIcon.enumeratorMemberForeground": "#908caa",
+ "symbolIcon.eventForeground": "#908caa",
+ "symbolIcon.fieldForeground": "#908caa",
+ "symbolIcon.fileForeground": "#908caa",
+ "symbolIcon.folderForeground": "#908caa",
+ "symbolIcon.functionForeground": "#908caa",
+ "symbolIcon.interfaceForeground": "#908caa",
+ "symbolIcon.keyForeground": "#908caa",
+ "symbolIcon.keywordForeground": "#908caa",
+ "symbolIcon.methodForeground": "#908caa",
+ "symbolIcon.moduleForeground": "#908caa",
+ "symbolIcon.namespaceForeground": "#908caa",
+ "symbolIcon.nullForeground": "#908caa",
+ "symbolIcon.numberForeground": "#908caa",
+ "symbolIcon.objectForeground": "#908caa",
+ "symbolIcon.operatorForeground": "#908caa",
+ "symbolIcon.packageForeground": "#908caa",
+ "symbolIcon.propertyForeground": "#908caa",
+ "symbolIcon.referenceForeground": "#908caa",
+ "symbolIcon.snippetForeground": "#908caa",
+ "symbolIcon.stringForeground": "#908caa",
+ "symbolIcon.structForeground": "#908caa",
+ "symbolIcon.textForeground": "#908caa",
+ "symbolIcon.typeParameterForeground": "#908caa",
+ "symbolIcon.unitForeground": "#908caa",
+ "symbolIcon.variableForeground": "#908caa",
+ "tab.activeBackground": "#6e6a861a",
+ "tab.activeForeground": "#e0def4",
+ "tab.activeModifiedBorder": "#9ccfd8",
+ "tab.border": "#000000",
+ "tab.hoverBackground": "#6e6a8633",
+ "tab.inactiveBackground": "#000000",
+ "tab.inactiveForeground": "#908caa",
+ "tab.inactiveModifiedBorder": "#9ccfd880",
+ "tab.lastPinnedBorder": "#6e6a86",
+ "tab.unfocusedActiveBackground": "#000000",
+ "tab.unfocusedHoverBackground": "#000000",
+ "tab.unfocusedInactiveBackground": "#000000",
+ "tab.unfocusedInactiveModifiedBorder": "#9ccfd880",
+ "terminal.ansiBlack": "#26233a",
+ "terminal.ansiBlue": "#9ccfd8",
+ "terminal.ansiBrightBlack": "#908caa",
+ "terminal.ansiBrightBlue": "#9ccfd8",
+ "terminal.ansiBrightCyan": "#ebbcba",
+ "terminal.ansiBrightGreen": "#31748f",
+ "terminal.ansiBrightMagenta": "#c4a7e7",
+ "terminal.ansiBrightRed": "#eb6f92",
+ "terminal.ansiBrightWhite": "#e0def4",
+ "terminal.ansiBrightYellow": "#f6c177",
+ "terminal.ansiCyan": "#ebbcba",
+ "terminal.ansiGreen": "#31748f",
+ "terminal.ansiMagenta": "#c4a7e7",
+ "terminal.ansiRed": "#eb6f92",
+ "terminal.ansiWhite": "#e0def4",
+ "terminal.ansiYellow": "#f6c177",
+ "terminal.dropBackground": "#6e6a8633",
+ "terminal.foreground": "#e0def4",
+ "terminal.selectionBackground": "#6e6a8633",
+ "terminal.tab.activeBorder": "#e0def4",
+ "terminalCursor.background": "#e0def4",
+ "terminalCursor.foreground": "#6e6a86",
+ "textBlockQuote.background": "#1f1d2e",
+ "textBlockQuote.border": "#6e6a8633",
+ "textCodeBlock.background": "#1f1d2e",
+ "textLink.activeForeground": "#c4a7e7e6",
+ "textLink.foreground": "#c4a7e7",
+ "textPreformat.foreground": "#f6c177",
+ "textSeparator.foreground": "#908caa",
+ "titleBar.activeBackground": "#191724",
+ "titleBar.activeForeground": "#908caa",
+ "titleBar.inactiveBackground": "#1f1d2e",
+ "titleBar.inactiveForeground": "#908caa",
+ "toolbar.activeBackground": "#6e6a8666",
+ "toolbar.hoverBackground": "#6e6a8633",
+ "tree.indentGuidesStroke": "#908caa",
+ "walkThrough.embeddedEditorBackground": "#191724",
+ "welcomePage.background": "#191724",
+ "welcomePage.buttonBackground": "#1f1d2e",
+ "welcomePage.buttonHoverBackground": "#26233a",
+ "widget.shadow": "#1f1d2e4d",
+ "window.activeBorder": "#1f1d2e",
+ "window.inactiveBorder": "#1f1d2e"
+ },
+ "tokenColors": [
+ {
+ "scope": ["comment"],
+ "settings": {
+ "foreground": "#6e6a86",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["constant"],
+ "settings": {
+ "foreground": "#31748f"
+ }
+ },
+ {
+ "scope": ["constant.numeric", "constant.language"],
+ "settings": {
+ "foreground": "#ebbcba"
+ }
+ },
+ {
+ "scope": ["entity.name"],
+ "settings": {
+ "foreground": "#ebbcba"
+ }
+ },
+ {
+ "scope": [
+ "entity.name.section",
+ "entity.name.tag",
+ "entity.name.namespace",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": ["entity.other.attribute-name", "entity.other.inherited-class"],
+ "settings": {
+ "foreground": "#c4a7e7",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["invalid"],
+ "settings": {
+ "foreground": "#eb6f92"
+ }
+ },
+ {
+ "scope": ["invalid.deprecated"],
+ "settings": {
+ "foreground": "#908caa"
+ }
+ },
+ {
+ "scope": ["keyword"],
+ "settings": {
+ "foreground": "#31748f"
+ }
+ },
+ {
+ "scope": ["markup.inserted.diff"],
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": ["markup.deleted.diff"],
+ "settings": {
+ "foreground": "#eb6f92"
+ }
+ },
+ {
+ "scope": "markup.heading",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "markup.bold.markdown",
+ "settings": {
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "scope": "markup.italic.markdown",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["meta.diff.range"],
+ "settings": {
+ "foreground": "#c4a7e7"
+ }
+ },
+ {
+ "scope": ["meta.tag", "meta.brace"],
+ "settings": {
+ "foreground": "#e0def4"
+ }
+ },
+ {
+ "scope": ["meta.import", "meta.export"],
+ "settings": {
+ "foreground": "#31748f"
+ }
+ },
+ {
+ "scope": "meta.directive.vue",
+ "settings": {
+ "foreground": "#c4a7e7",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": "meta.property-name.css",
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": "meta.property-value.css",
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": "meta.tag.other.html",
+ "settings": {
+ "foreground": "#908caa"
+ }
+ },
+ {
+ "scope": ["punctuation"],
+ "settings": {
+ "foreground": "#908caa"
+ }
+ },
+ {
+ "scope": ["punctuation.accessor"],
+ "settings": {
+ "foreground": "#31748f"
+ }
+ },
+ {
+ "scope": ["punctuation.definition.string"],
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#6e6a86"
+ }
+ },
+ {
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#31748f"
+ }
+ },
+ {
+ "scope": ["string"],
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": ["support"],
+ "settings": {
+ "foreground": "#9ccfd8"
+ }
+ },
+ {
+ "scope": ["support.constant"],
+ "settings": {
+ "foreground": "#f6c177"
+ }
+ },
+ {
+ "scope": ["support.function"],
+ "settings": {
+ "foreground": "#eb6f92",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": ["variable"],
+ "settings": {
+ "foreground": "#ebbcba",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "scope": [
+ "variable.other",
+ "variable.language",
+ "variable.function",
+ "variable.argument"
+ ],
+ "settings": {
+ "foreground": "#e0def4"
+ }
+ },
+ {
+ "scope": ["variable.parameter"],
+ "settings": {
+ "foreground": "#c4a7e7"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/solarized/LICENSE b/assets/themes/src/vscode/solarized/LICENSE
new file mode 100644
index 0000000000..a6777a9935
--- /dev/null
+++ b/assets/themes/src/vscode/solarized/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2011 Ethan Schoonover
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/assets/themes/src/vscode/solarized/dark.json b/assets/themes/src/vscode/solarized/dark.json
new file mode 100644
index 0000000000..b7ea4f2b27
--- /dev/null
+++ b/assets/themes/src/vscode/solarized/dark.json
@@ -0,0 +1,558 @@
+{
+ "type": "dark",
+ "colors": {
+ "errorForeground": "#ffeaea",
+ "focusBorder": "#2aa19899",
+ "selection.background": "#2aa19899",
+ "input.background": "#003847",
+ "input.foreground": "#93a1a1",
+ "inputOption.activeBorder": "#2aa19899",
+ "input.placeholderForeground": "#93a1a1aa",
+ "inputValidation.infoBackground": "#052730",
+ "inputValidation.infoBorder": "#363b5f",
+ "inputValidation.warningBackground": "#5d5938",
+ "inputValidation.warningBorder": "#9d8a5e",
+ "inputValidation.errorBackground": "#571b26",
+ "inputValidation.errorBorder": "#a92049",
+ "dropdown.background": "#00212b",
+ "dropdown.border": "#2aa19899",
+ "list.focusBackground": "#005a6f",
+ "list.activeSelectionBackground": "#005a6f",
+ "list.inactiveSelectionBackground": "#00445488",
+ "list.hoverBackground": "#004454aa",
+ "list.dropBackground": "#00445488",
+ "list.highlightForeground": "#1ebcc5",
+ "pickerGroup.foreground": "#2aa19899",
+ "pickerGroup.border": "#2aa19899",
+ "button.background": "#2aa19899",
+ "badge.background": "#047aa6",
+ "progressBar.background": "#047aa6",
+ "editor.background": "#002b36",
+ "editorWidget.background": "#00212b",
+ "editor.selectionBackground": "#073642",
+ "editor.selectionHighlightBackground": "#005a6faa",
+ "editorHoverWidget.background": "#004052",
+ "editor.lineHighlightBackground": "#073642",
+ "editorCursor.foreground": "#839496",
+ "editorWhitespace.foreground": "#93a1a180",
+ "editorLineNumber.foreground": "#566c74",
+ "editorLineNumber.activeForeground": "#6e8a93",
+ "editorGutter.background": "#073642",
+ "editorMarkerNavigationError.background": "#ab395b",
+ "editorMarkerNavigationWarning.background": "#5b7e7a",
+ "editor.wordHighlightBackground": "#004454aa",
+ "editor.wordHighlightStrongBackground": "#005a6faa",
+ "peekViewTitle.background": "#00212b",
+ "peekView.border": "#003847",
+ "peekViewResult.background": "#00212b",
+ "peekViewEditor.background": "#10192c",
+ "peekViewEditorGutter.background": "#073642",
+ "peekViewEditor.matchHighlightBackground": "#7744aa40",
+ "tab.activeBackground": "#002b37",
+ "tab.inactiveBackground": "#004052",
+ "tab.border": "#003847",
+ "tab.activeForeground": "#d6dbdb",
+ "tab.inactiveForeground": "#93a1a1",
+ "editorGroup.background": "#011b23",
+ "editorGroupHeader.tabsBackground": "#004052",
+ "editorGroup.border": "#00212b",
+ "editorGroup.dropBackground": "#2aa19844",
+ "panel.border": "#003847",
+ "statusBar.foreground": "#93a1a1",
+ "statusBar.background": "#00212b",
+ "statusBar.noFolderBackground": "#00212b",
+ "statusBarItem.prominentBackground": "#003847",
+ "statusBarItem.prominentHoverBackground": "#003847",
+ "activityBar.background": "#003847",
+ "sideBar.background": "#00212b",
+ "sideBarTitle.foreground": "#93a1a1",
+ "titleBar.activeBackground": "#002c39",
+ "terminal.foreground": "#839496",
+ "statusBar.debuggingBackground": "#00212b",
+ "debugExceptionWidget.border": "#ab395b",
+ "debugExceptionWidget.background": "#00212b",
+ "debugToolBar.background": "#00212b",
+ "terminal.ansiBlack": "#073642",
+ "terminal.ansiRed": "#dc322f",
+ "terminal.ansiGreen": "#859900",
+ "terminal.ansiYellow": "#b58900",
+ "terminal.ansiBlue": "#268bd2",
+ "terminal.ansiMagenta": "#d33682",
+ "terminal.ansiCyan": "#2aa198",
+ "terminal.ansiWhite": "#839496",
+ "terminal.ansiBrightBlack": "#586e75",
+ "terminal.ansiBrightRed": "#cb4b16",
+ "terminal.ansiBrightGreen": "#859900",
+ "terminal.ansiBrightYellow": "#657b83",
+ "terminal.ansiBrightBlue": "#839496",
+ "terminal.ansiBrightMagenta": "#6c71c4",
+ "terminal.ansiBrightCyan": "#93a1a1",
+ "terminal.ansiBrightWhite": "#839496",
+ "editorBracketHighlight.foreground1": "#268bd2",
+ "editorBracketHighlight.foreground2": "#b58900",
+ "editorBracketHighlight.foreground3": "#d33682"
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#bbbbbbff",
+ "background": "#002b36ff"
+ }
+ },
+ {
+ "scope": ["meta.embedded", "source.groovy.embedded"],
+ "settings": {
+ "background": "#002B36",
+ "foreground": "#93A1A1"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#657B83"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#2AA198"
+ }
+ },
+ {
+ "name": "Regexp",
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#D30102"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": "constant.numeric",
+ "settings": {
+ "foreground": "#D33682"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": ["variable.language", "variable.other"],
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": "storage",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#93A1A1"
+ }
+ },
+ {
+ "name": "Class name",
+ "scope": ["entity.name.class", "entity.name.type"],
+ "settings": {
+ "fontStyle": "",
+ "foreground": "#CB4B16"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Variable start",
+ "scope": "punctuation.definition.variable",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Embedded code markers",
+ "scope": [
+ "punctuation.section.embedded.begin",
+ "punctuation.section.embedded.end"
+ ],
+ "settings": {
+ "foreground": "#D30102"
+ }
+ },
+ {
+ "name": "Built-in constant",
+ "scope": ["constant.language", "meta.preprocessor"],
+ "settings": {
+ "foreground": "#B58900"
+ }
+ },
+ {
+ "name": "Support.construct",
+ "scope": ["support.function.construct", "keyword.other.new"],
+ "settings": {
+ "foreground": "#CB4B16"
+ }
+ },
+ {
+ "name": "User-defined constant",
+ "scope": ["constant.character", "constant.other"],
+ "settings": {
+ "foreground": "#CB4B16"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#6C71C4"
+ }
+ },
+ {
+ "name": "Function argument",
+ "scope": "variable.parameter",
+ "settings": {}
+ },
+ {
+ "name": "Tag name",
+ "scope": "entity.name.tag",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Tag start/end",
+ "scope": "punctuation.definition.tag",
+ "settings": {
+ "foreground": "#657B83"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#93A1A1"
+ }
+ },
+ {
+ "name": "Library function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Continuation",
+ "scope": "punctuation.separator.continuation",
+ "settings": {
+ "foreground": "#D30102"
+ }
+ },
+ {
+ "name": "Library constant",
+ "scope": "support.constant",
+ "settings": {}
+ },
+ {
+ "name": "Library class/type",
+ "scope": ["support.type", "support.class"],
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Library Exception",
+ "scope": "support.type.exception",
+ "settings": {
+ "foreground": "#CB4B16"
+ }
+ },
+ {
+ "name": "Library variable",
+ "scope": "support.other.variable",
+ "settings": {}
+ },
+ {
+ "name": "Invalid",
+ "scope": "invalid",
+ "settings": {}
+ },
+ {
+ "name": "diff: header",
+ "scope": ["meta.diff", "meta.diff.header"],
+ "settings": {
+ "background": "#b58900",
+ "fontStyle": "italic",
+ "foreground": "#E0EDDD"
+ }
+ },
+ {
+ "name": "diff: deleted",
+ "scope": "markup.deleted",
+ "settings": {
+ "background": "#eee8d5",
+ "fontStyle": "",
+ "foreground": "#dc322f"
+ }
+ },
+ {
+ "name": "diff: changed",
+ "scope": "markup.changed",
+ "settings": {
+ "background": "#eee8d5",
+ "fontStyle": "",
+ "foreground": "#cb4b16"
+ }
+ },
+ {
+ "name": "diff: inserted",
+ "scope": "markup.inserted",
+ "settings": {
+ "background": "#eee8d5",
+ "foreground": "#219186"
+ }
+ },
+ {
+ "name": "Markup Quote",
+ "scope": "markup.quote",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Markup Lists",
+ "scope": "markup.list",
+ "settings": {
+ "foreground": "#B58900"
+ }
+ },
+ {
+ "name": "Markup Styling",
+ "scope": ["markup.bold", "markup.italic"],
+ "settings": {
+ "foreground": "#D33682"
+ }
+ },
+ {
+ "name": "Markup Inline",
+ "scope": "markup.inline.raw",
+ "settings": {
+ "fontStyle": "",
+ "foreground": "#2AA198"
+ }
+ },
+ {
+ "name": "Markup Headings",
+ "scope": "markup.heading",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Markup Setext Header",
+ "scope": "markup.heading.setext",
+ "settings": {
+ "fontStyle": "",
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "token.info-token",
+ "settings": {
+ "foreground": "#6796e6"
+ }
+ },
+ {
+ "scope": "token.warn-token",
+ "settings": {
+ "foreground": "#cd9731"
+ }
+ },
+ {
+ "scope": "token.error-token",
+ "settings": {
+ "foreground": "#f44747"
+ }
+ },
+ {
+ "scope": "token.debug-token",
+ "settings": {
+ "foreground": "#b267e6"
+ }
+ },
+ {
+ "scope": "variable.object.property",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "variable.parameter",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "support.type",
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "storage.type.function",
+ "settings": {
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#b58900"
+ }
+ },
+ {
+ "scope": "storage.modifier",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "storage.type",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "keyword.control.import",
+ "settings": {
+ "foreground": "#D33682"
+ }
+ },
+ {
+ "scope": "storage.modifier.async",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "meta.import",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "source.ts",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "entity.name.type",
+ "settings": {
+ "foreground": "#b58900"
+ }
+ },
+ {
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "variable.other",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "storage.modifier.tsx",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "scope": "entity.name.type.class.python",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "support.type.python",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "source.python",
+ "settings": {
+ "foreground": "#839496"
+ }
+ },
+ {
+ "scope": "keyword.control.import",
+ "settings": {
+ "foreground": "#cb4b16"
+ }
+ },
+ {
+ "scope": "keyword.control.from",
+ "settings": {
+ "foreground": "#cb4b16"
+ }
+ },
+ {
+ "scope": "constant.language.python",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "entity.name.function.python",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "punctuation.separator.dictionary.key-value.json, punctuation.separator.array.json, punctuation.separator.dictionary.pair.json",
+ "settings": {
+ "foreground": "#657B83"
+ }
+ },
+ {
+ "scope": "storage.type.ts",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "support.type.primitive",
+ "settings": {
+ "foreground": "#b58900"
+ }
+ },
+ {
+ "scope": "punctuation.definition.dictionary.begin.json, punctuation.definition.dictionary.end.json, punctuation.definition.array.begin.json, punctuation.definition.array.end.json",
+ "settings": {
+ "foreground": "#DC3272"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/solarized/family.json b/assets/themes/src/vscode/solarized/family.json
new file mode 100644
index 0000000000..6c21ce8dcb
--- /dev/null
+++ b/assets/themes/src/vscode/solarized/family.json
@@ -0,0 +1,16 @@
+{
+ "name": "Solarized",
+ "author": "Ethan Schoonover (altercation)",
+ "themes": [
+ {
+ "name": "Solarized Dark",
+ "file_name": "dark.json",
+ "appearance": "dark"
+ },
+ {
+ "name": "Solarized Light",
+ "file_name": "light.json",
+ "appearance": "light"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/solarized/light.json b/assets/themes/src/vscode/solarized/light.json
new file mode 100644
index 0000000000..74f0ce47e3
--- /dev/null
+++ b/assets/themes/src/vscode/solarized/light.json
@@ -0,0 +1,591 @@
+{
+ "type": "light",
+ "colors": {
+ "focusBorder": "#d3af86",
+ "selection.background": "#ccc4b0",
+ "input.background": "#ddd6c1",
+ "input.foreground": "#586e75",
+ "inputOption.activeBorder": "#d3af86",
+ "input.placeholderForeground": "#586e75aa",
+ "dropdown.background": "#eee8d5",
+ "dropdown.border": "#d3af86",
+ "list.focusBackground": "#dfca8866",
+ "list.activeSelectionBackground": "#dfca88",
+ "list.activeSelectionForeground": "#6c6c6c",
+ "list.inactiveSelectionBackground": "#d1cbb8",
+ "list.hoverBackground": "#dfca8844",
+ "list.highlightForeground": "#b58900",
+ "pickerGroup.foreground": "#2aa19899",
+ "pickerGroup.border": "#2aa19899",
+ "button.background": "#ac9d57",
+ "badge.background": "#b58900aa",
+ "progressBar.background": "#b58900",
+ "editor.background": "#fdf6e3",
+ "editorWidget.background": "#eee8d5",
+ "editor.selectionBackground": "#eee8d5",
+ "editorHoverWidget.background": "#ccc4b0",
+ "editor.lineHighlightBackground": "#eee8d5",
+ "editorCursor.foreground": "#657b83",
+ "editorWhitespace.foreground": "#586e7580",
+ "editorLineNumber.foreground": "#9ca8a6",
+ "editorLineNumber.activeForeground": "#6f7776",
+ "editorGutter.background": "#eee8d5",
+ "peekViewTitle.background": "#eee8d5",
+ "peekView.border": "#b58900",
+ "peekViewResult.background": "#eee8d5",
+ "peekViewEditor.background": "#fffbf2",
+ "peekViewEditor.matchHighlightBackground": "#7744aa40",
+ "tab.activeBackground": "#fdf6e3",
+ "tab.inactiveBackground": "#d3cbb7",
+ "tab.border": "#ddd6c1",
+ "tab.inactiveForeground": "#586e75",
+ "editorGroup.background": "#fffbf2",
+ "editorGroupHeader.tabsBackground": "#d9d2c2",
+ "editorGroup.border": "#ddd6c1",
+ "editorGroup.dropBackground": "#ddd6c1aa",
+ "panel.border": "#ddd6c1",
+ "statusBar.foreground": "#586e75",
+ "statusBar.background": "#eee8d5",
+ "statusBar.noFolderBackground": "#eee8d5",
+ "statusBarItem.prominentBackground": "#ddd6c1",
+ "statusBarItem.prominentHoverBackground": "#ddd6c199",
+ "activityBar.background": "#ddd6c1",
+ "activityBar.foreground": "#584c27",
+ "activityBar.dropBackground": "#eee8d5",
+ "activityBarBadge.background": "#b58900",
+ "sideBar.background": "#eee8d5",
+ "sideBarTitle.foreground": "#586e75",
+ "titleBar.activeBackground": "#eee8d5",
+ "terminal.foreground": "#657b83",
+ "statusBar.debuggingBackground": "#eee8d5",
+ "debugExceptionWidget.border": "#ab395b",
+ "debugExceptionWidget.background": "#ddd6c1",
+ "debugToolBar.background": "#ddd6c1",
+ "extensionButton.prominentBackground": "#b58900",
+ "extensionButton.prominentHoverBackground": "#584c27aa",
+ "terminal.ansiBlack": "#657b83",
+ "terminal.ansiRed": "#dc322f",
+ "terminal.ansiGreen": "#859900",
+ "terminal.ansiYellow": "#b58900",
+ "terminal.ansiBlue": "#268bd2",
+ "terminal.ansiMagenta": "#d33682",
+ "terminal.ansiCyan": "#2aa198",
+ "terminal.ansiWhite": "#eee8d5",
+ "terminal.ansiBrightBlack": "#657b83",
+ "terminal.ansiBrightRed": "#cb4b16",
+ "terminal.ansiBrightGreen": "#859900",
+ "terminal.ansiBrightYellow": "#657b83",
+ "terminal.ansiBrightBlue": "#839496",
+ "terminal.ansiBrightMagenta": "#6c71c4",
+ "terminal.ansiBrightCyan": "#93a1a1",
+ "terminal.ansiBrightWhite": "#eee8d5",
+ "editorBracketHighlight.foreground1": "#268bd2",
+ "editorBracketHighlight.foreground2": "#b58900",
+ "editorBracketHighlight.foreground3": "#d33682"
+ },
+ "tokenColors": [
+ {
+ "settings": {
+ "foreground": "#333333ff",
+ "background": "#fdf6e3ff"
+ }
+ },
+ {
+ "scope": [
+ "meta.embedded",
+ "source.groovy.embedded"
+ ],
+ "settings": {
+ "background": "#FDF6E3",
+ "foreground": "#657B83"
+ }
+ },
+ {
+ "name": "Comment",
+ "scope": "comment",
+ "settings": {
+ "fontStyle": "italic",
+ "foreground": "#93A1A1"
+ }
+ },
+ {
+ "name": "String",
+ "scope": "string",
+ "settings": {
+ "foreground": "#2AA198"
+ }
+ },
+ {
+ "name": "Regexp",
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#D30102"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": "constant.numeric",
+ "settings": {
+ "foreground": "#D33682"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": [
+ "variable.language",
+ "variable.other"
+ ],
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Storage",
+ "scope": "storage",
+ "settings": {
+ "fontStyle": "bold",
+ "foreground": "#073642"
+ }
+ },
+ {
+ "name": "Class name",
+ "scope": [
+ "entity.name.class",
+ "entity.name.type"
+ ],
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Function name",
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Variable start",
+ "scope": "punctuation.definition.variable",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Embedded code markers",
+ "scope": [
+ "punctuation.section.embedded.begin",
+ "punctuation.section.embedded.end"
+ ],
+ "settings": {
+ "foreground": "#D30102"
+ }
+ },
+ {
+ "name": "Built-in constant",
+ "scope": [
+ "constant.language",
+ "meta.preprocessor"
+ ],
+ "settings": {
+ "foreground": "#B58900"
+ }
+ },
+ {
+ "name": "Support.construct",
+ "scope": [
+ "support.function.construct",
+ "keyword.other.new"
+ ],
+ "settings": {
+ "foreground": "#D30102"
+ }
+ },
+ {
+ "name": "User-defined constant",
+ "scope": [
+ "constant.character",
+ "constant.other"
+ ],
+ "settings": {
+ "foreground": "#CB4B16"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {}
+ },
+ {
+ "name": "Function argument",
+ "scope": "variable.parameter",
+ "settings": {}
+ },
+ {
+ "name": "Tag name",
+ "scope": "entity.name.tag",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Tag start/end",
+ "scope": [
+ "punctuation.definition.tag.begin",
+ "punctuation.definition.tag.end"
+ ],
+ "settings": {
+ "foreground": "#93A1A1"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#93A1A1"
+ }
+ },
+ {
+ "name": "Library function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Continuation",
+ "scope": "punctuation.separator.continuation",
+ "settings": {
+ "foreground": "#D30102"
+ }
+ },
+ {
+ "name": "Library constant",
+ "scope": "support.constant",
+ "settings": {}
+ },
+ {
+ "name": "Library class/type",
+ "scope": [
+ "support.type",
+ "support.class"
+ ],
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Library Exception",
+ "scope": "support.type.exception",
+ "settings": {
+ "foreground": "#CB4B16"
+ }
+ },
+ {
+ "name": "Library variable",
+ "scope": "support.other.variable",
+ "settings": {}
+ },
+ {
+ "name": "Invalid",
+ "scope": "invalid",
+ "settings": {}
+ },
+ {
+ "name": "diff: header",
+ "scope": [
+ "meta.diff",
+ "meta.diff.header"
+ ],
+ "settings": {
+ "background": "#b58900",
+ "fontStyle": "italic",
+ "foreground": "#E0EDDD"
+ }
+ },
+ {
+ "name": "diff: deleted",
+ "scope": "markup.deleted",
+ "settings": {
+ "background": "#eee8d5",
+ "fontStyle": "",
+ "foreground": "#dc322f"
+ }
+ },
+ {
+ "name": "diff: changed",
+ "scope": "markup.changed",
+ "settings": {
+ "background": "#eee8d5",
+ "fontStyle": "",
+ "foreground": "#cb4b16"
+ }
+ },
+ {
+ "name": "diff: inserted",
+ "scope": "markup.inserted",
+ "settings": {
+ "background": "#eee8d5",
+ "foreground": "#219186"
+ }
+ },
+ {
+ "name": "Markup Quote",
+ "scope": "markup.quote",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "name": "Markup Lists",
+ "scope": "markup.list",
+ "settings": {
+ "foreground": "#B58900"
+ }
+ },
+ {
+ "name": "Markup Styling",
+ "scope": [
+ "markup.bold",
+ "markup.italic"
+ ],
+ "settings": {
+ "foreground": "#D33682"
+ }
+ },
+ {
+ "name": "Markup Inline",
+ "scope": "markup.inline.raw",
+ "settings": {
+ "fontStyle": "",
+ "foreground": "#2AA198"
+ }
+ },
+ {
+ "name": "Markup Headings",
+ "scope": "markup.heading",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "name": "Markup Setext Header",
+ "scope": "markup.heading.setext",
+ "settings": {
+ "fontStyle": "",
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "token.info-token",
+ "settings": {
+ "foreground": "#316bcd"
+ }
+ },
+ {
+ "scope": "token.warn-token",
+ "settings": {
+ "foreground": "#cd9731"
+ }
+ },
+ {
+ "scope": "token.error-token",
+ "settings": {
+ "foreground": "#cd3131"
+ }
+ },
+ {
+ "scope": "token.debug-token",
+ "settings": {
+ "foreground": "#800080"
+ }
+ },
+ {
+ "scope": "storage.modifier",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "storage.type",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "keyword.control.import",
+ "settings": {
+ "foreground": "#D33682"
+ }
+ },
+ {
+ "scope": "storage.modifier.async",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "meta.import",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "source.ts",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "entity.name.type",
+ "settings": {
+ "foreground": "#b58900"
+ }
+ },
+ {
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "variable.other",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "storage.modifier.tsx",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "scope": "storage.modifier",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "storage.type",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "keyword.control.import",
+ "settings": {
+ "foreground": "#D33682"
+ }
+ },
+ {
+ "scope": "storage.modifier.async",
+ "settings": {
+ "foreground": "#859900ff",
+ "fontStyle": ""
+ }
+ },
+ {
+ "scope": "meta.import",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "source.ts",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "meta.function-call",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "entity.name.type",
+ "settings": {
+ "foreground": "#b58900"
+ }
+ },
+ {
+ "scope": "entity.name.function",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "variable.other",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ },
+ {
+ "scope": "storage.modifier.tsx",
+ "settings": {
+ "foreground": "#859900"
+ }
+ },
+ {
+ "scope": "punctuation.separator.dictionary.key-value.json, punctuation.separator.array.json, punctuation.separator.dictionary.pair.json",
+ "settings": {
+ "foreground": "#657B83"
+ }
+ },
+ {
+ "scope": "storage.type",
+ "settings": {
+ "foreground": "#268BD2"
+ }
+ },
+ {
+ "scope": "punctuation.definition.dictionary.begin.json, punctuation.definition.dictionary.end.json, punctuation.definition.array.begin.json, punctuation.definition.array.end.json",
+ "settings": {
+ "foreground": "#DC3272"
+ }
+ },
+ {
+ "scope": "support.type.primitive",
+ "settings": {
+ "foreground": "#b58900"
+ }
+ },
+ {
+ "scope": "keyword.control.import",
+ "settings": {
+ "foreground": "#cb4b16"
+ }
+ },
+ {
+ "scope": "keyword.control.from",
+ "settings": {
+ "foreground": "#cb4b16"
+ }
+ },
+ {
+ "scope": "source",
+ "settings": {
+ "foreground": "#657b83"
+ }
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/synthwave-84/LICENSE b/assets/themes/src/vscode/synthwave-84/LICENSE
new file mode 100644
index 0000000000..c3388dbb50
--- /dev/null
+++ b/assets/themes/src/vscode/synthwave-84/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2019 Robb Owen
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/assets/themes/src/vscode/synthwave-84/family.json b/assets/themes/src/vscode/synthwave-84/family.json
new file mode 100644
index 0000000000..f8e0f5d9e6
--- /dev/null
+++ b/assets/themes/src/vscode/synthwave-84/family.json
@@ -0,0 +1,11 @@
+{
+ "name": "Synthwave 84",
+ "author": "Robb Owen (robb0wen)",
+ "themes": [
+ {
+ "name": "Synthwave 84",
+ "file_name": "synthwave.json",
+ "appearance": "dark"
+ }
+ ]
+}
diff --git a/assets/themes/src/vscode/synthwave-84/synthwave.json b/assets/themes/src/vscode/synthwave-84/synthwave.json
new file mode 100644
index 0000000000..5b38ef46fa
--- /dev/null
+++ b/assets/themes/src/vscode/synthwave-84/synthwave.json
@@ -0,0 +1,822 @@
+{
+ "name": "SynthWave 84",
+ "type": "dark",
+ "semanticHighlighting": true,
+ "colors": {
+ "focusBorder": "#1f212b",
+ "foreground": "#ffffff",
+ "widget.shadow": "#2a2139",
+ "selection.background": "#ffffff20",
+ "errorForeground": "#fe4450",
+ "textLink.activeForeground": "#ff7edb",
+ "textLink.foreground": "#f97e72",
+ "button.background": "#614D85",
+ "dropdown.background": "#232530",
+ "dropdown.listBackground": "#2a2139",
+ "input.background": "#2a2139",
+ "inputOption.activeBorder": "#ff7edb99",
+ "inputValidation.errorBackground": "#fe445080",
+ "inputValidation.errorBorder": "#fe445000",
+ "scrollbar.shadow": "#2a2139",
+ "scrollbarSlider.activeBackground": "#9d8bca20",
+ "scrollbarSlider.background": "#9d8bca30",
+ "scrollbarSlider.hoverBackground": "#9d8bca50",
+ "badge.foreground": "#ffffff",
+ "badge.background": "#2a2139",
+ "progressBar.background": "#f97e72",
+ "list.activeSelectionBackground": "#ffffff20",
+ "list.activeSelectionForeground": "#ffffff",
+ "list.dropBackground": "#34294f66",
+ "list.focusBackground": "#ffffff20",
+ "list.focusForeground": "#ffffff",
+ "list.highlightForeground": "#f97e72",
+ "list.hoverBackground": "#37294d99",
+ "list.hoverForeground": "#ffffff",
+ "list.inactiveSelectionBackground": "#ffffff20",
+ "list.inactiveSelectionForeground": "#ffffff",
+ "list.inactiveFocusBackground": "#2a213999",
+ "list.errorForeground": "#fe4450E6",
+ "list.warningForeground": "#72f1b8bb",
+ "activityBar.background": "#171520",
+ "activityBar.dropBackground": "#34294f66",
+ "activityBar.foreground": "#ffffffCC",
+ "activityBarBadge.background": "#f97e72",
+ "activityBarBadge.foreground": "#2a2139",
+ "sideBar.background": "#241b2f",
+ "sideBar.foreground": "#ffffff99",
+ "sideBar.dropBackground": "#34294f4c",
+ "sideBarSectionHeader.background": "#241b2f",
+ "sideBarSectionHeader.foreground": "#ffffffca",
+ "menu.background": "#463465",
+ "editorGroup.border": "#495495",
+ "editorGroup.dropBackground": "#4954954a",
+ "editorGroupHeader.tabsBackground": "#241b2f",
+ "tab.border": "#241b2f00",
+ "tab.activeBorder": "#880088",
+ "tab.inactiveBackground": "#262335",
+ "editor.background": "#262335",
+ "editorLineNumber.foreground": "#ffffff73",
+ "editorLineNumber.activeForeground": "#ffffffcc",
+ "editorCursor.background": "#241b2f",
+ "editorCursor.foreground": "#f97e72",
+ "editor.selectionBackground": "#ffffff20",
+ "editor.selectionHighlightBackground": "#ffffff20",
+ "editor.wordHighlightBackground": "#34294f88",
+ "editor.wordHighlightStrongBackground": "#34294f88",
+ "editor.findMatchBackground": "#D18616bb",
+ "editor.findMatchHighlightBackground": "#D1861655",
+ "editor.findRangeHighlightBackground": "#34294f1a",
+ "editor.hoverHighlightBackground": "#463564",
+ "editor.lineHighlightBorder": "#7059AB66",
+ "editor.rangeHighlightBackground": "#49549539",
+ "editorIndentGuide.background": "#444251",
+ "editorIndentGuide.activeBackground": "#A148AB80",
+ "editorRuler.foreground": "#A148AB80",
+ "editorCodeLens.foreground": "#ffffff7c",
+ "editorBracketMatch.background": "#34294f66",
+ "editorBracketMatch.border": "#495495",
+ "editorOverviewRuler.border": "#34294fb3",
+ "editorOverviewRuler.findMatchForeground": "#D1861699",
+ "editorOverviewRuler.modifiedForeground": "#b893ce99",
+ "editorOverviewRuler.addedForeground": "#09f7a099",
+ "editorOverviewRuler.deletedForeground": "#fe445099",
+ "editorOverviewRuler.errorForeground": "#fe4450dd",
+ "editorOverviewRuler.warningForeground": "#72f1b8cc",
+ "editorError.foreground": "#fe4450",
+ "editorWarning.foreground": "#72f1b8cc",
+ "editorGutter.modifiedBackground": "#b893ce8f",
+ "editorGutter.addedBackground": "#206d4bd6",
+ "editorGutter.deletedBackground": "#fa2e46a4",
+ "diffEditor.insertedTextBackground": "#0beb9935",
+ "diffEditor.removedTextBackground": "#fe445035",
+ "editorWidget.background": "#171520DC",
+ "editorWidget.border": "#ffffff22",
+ "editorWidget.resizeBorder": "#ffffff44",
+ "editorSuggestWidget.highlightForeground": "#f97e72",
+ "editorSuggestWidget.selectedBackground": "#ffffff36",
+ "peekView.border": "#495495",
+ "peekViewEditor.background": "#232530",
+ "peekViewEditor.matchHighlightBackground": "#D18616bb",
+ "peekViewResult.background": "#232530",
+ "peekViewResult.matchHighlightBackground": "#D1861655",
+ "peekViewResult.selectionBackground": "#2a213980",
+ "peekViewTitle.background": "#232530",
+ "panelTitle.activeBorder": "#f97e72",
+ "statusBar.background": "#241b2f",
+ "statusBar.foreground": "#ffffff80",
+ "statusBar.debuggingBackground": "#f97e72",
+ "statusBar.debuggingForeground": "#08080f",
+ "statusBar.noFolderBackground": "#241b2f",
+ "statusBarItem.prominentBackground": "#2a2139",
+ "statusBarItem.prominentHoverBackground": "#34294f",
+ "titleBar.activeBackground": "#241b2f",
+ "titleBar.inactiveBackground": "#241b2f",
+ "extensionButton.prominentBackground": "#f97e72",
+ "extensionButton.prominentHoverBackground": "#ff7edb",
+ "pickerGroup.foreground": "#f97e72ea",
+ "terminal.foreground": "#ffffff",
+ "terminal.ansiBlue": "#03edf9",
+ "terminal.ansiBrightBlue": "#03edf9",
+ "terminal.ansiBrightCyan": "#03edf9",
+ "terminal.ansiBrightGreen": "#72f1b8",
+ "terminal.ansiBrightMagenta": "#ff7edb",
+ "terminal.ansiBrightRed": "#fe4450",
+ "terminal.ansiBrightYellow": "#fede5d",
+ "terminal.ansiCyan": "#03edf9",
+ "terminal.ansiGreen": "#72f1b8",
+ "terminal.ansiMagenta": "#ff7edb",
+ "terminal.ansiRed": "#fe4450",
+ "terminal.ansiYellow": "#f3e70f",
+ "terminal.selectionBackground": "#ffffff20",
+ "terminalCursor.background": "#ffffff",
+ "terminalCursor.foreground": "#03edf9",
+ "debugToolBar.background": "#463465",
+ "walkThrough.embeddedEditorBackground": "#232530",
+ "gitDecoration.modifiedResourceForeground": "#b893ceee",
+ "gitDecoration.deletedResourceForeground": "#fe4450",
+ "gitDecoration.addedResourceForeground": "#72f1b8cc",
+ "gitDecoration.untrackedResourceForeground": "#72f1b8",
+ "gitDecoration.ignoredResourceForeground": "#ffffff59",
+ "minimapGutter.addedBackground": "#09f7a099",
+ "minimapGutter.modifiedBackground": "#b893ce",
+ "minimapGutter.deletedBackground": "#fe4450",
+ "breadcrumbPicker.background": "#232530"
+ },
+ "tokenColors": [
+ {
+ "name": "Comment",
+ "scope": [
+ "comment",
+ "string.quoted.docstring.multi.python",
+ "string.quoted.docstring.multi.python punctuation.definition.string.begin.python",
+ "string.quoted.docstring.multi.python punctuation.definition.string.end.python"
+ ],
+ "settings": {
+ "foreground": "#848bbd",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "String",
+ "scope": ["string.quoted", "string.template", "punctuation.definition.string"],
+ "settings": {
+ "foreground": "#ff8b39"
+ }
+ },
+ {
+ "name": "Punctuation within templates",
+ "scope": "string.template meta.embedded.line",
+ "settings": {
+ "foreground": "#b6b1b1"
+ }
+ },
+ {
+ "name": "Variable",
+ "scope": ["variable", "entity.name.variable"],
+ "settings": {
+ "foreground": "#ff7edb"
+ }
+ },
+ {
+ "name": "Language variable",
+ "scope": "variable.language",
+ "settings": {
+ "foreground": "#fe4450",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Parameter",
+ "scope": "variable.parameter",
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Storage (declaration or modifier keyword)",
+ "scope": ["storage.type", "storage.modifier"],
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Constant",
+ "scope": "constant",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Regex",
+ "scope": "string.regexp",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Number",
+ "scope": "constant.numeric",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Language constant (boolean, null)",
+ "scope": "constant.language",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Character escape",
+ "scope": "constant.character.escape",
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Entity",
+ "scope": "entity.name",
+ "settings": {
+ "foreground": "#fe4450"
+ }
+ },
+ {
+ "name": "HTML or XML tag",
+ "scope": "entity.name.tag",
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "HTML or XML tag brackets",
+ "scope": ["punctuation.definition.tag"],
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Tag attribute",
+ "scope": "entity.other.attribute-name",
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Tag attribute HTML",
+ "scope": "entity.other.attribute-name.html",
+ "settings": {
+ "foreground": "#fede5d",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Class",
+ "scope": ["entity.name.type", "meta.attribute.class.html"],
+ "settings": {
+ "foreground": "#fe4450"
+ }
+ },
+ {
+ "name": "Inherited class",
+ "scope": "entity.other.inherited-class",
+ "settings": {
+ "foreground": "#D50"
+ }
+ },
+ {
+ "name": "Function",
+ "scope": ["entity.name.function", "variable.function"],
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "JS Export",
+ "scope": ["keyword.control.export.js", "keyword.control.import.js"],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "JS Numerics",
+ "scope": ["constant.numeric.decimal.js"],
+ "settings": {
+ "foreground": "#2EE2FA"
+ }
+ },
+ {
+ "name": "Keyword",
+ "scope": "keyword",
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Control keyword",
+ "scope": "keyword.control",
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Operator",
+ "scope": "keyword.operator",
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Special operator",
+ "scope": [
+ "keyword.operator.new",
+ "keyword.operator.expression",
+ "keyword.operator.logical"
+ ],
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Unit",
+ "scope": "keyword.other.unit",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Support",
+ "scope": "support",
+ "settings": {
+ "foreground": "#fe4450"
+ }
+ },
+ {
+ "name": "Support function",
+ "scope": "support.function",
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Support variable",
+ "scope": "support.variable",
+ "settings": {
+ "foreground": "#ff7edb"
+ }
+ },
+ {
+ "name": "Object literal key / property",
+ "scope": ["meta.object-literal.key", "support.type.property-name"],
+ "settings": {
+ "foreground": "#ff7edb"
+ }
+ },
+ {
+ "name": "Key-value separator",
+ "scope": "punctuation.separator.key-value",
+ "settings": {
+ "foreground": "#b6b1b1"
+ }
+ },
+ {
+ "name": "Embedded punctuation",
+ "scope": "punctuation.section.embedded",
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Template expression",
+ "scope": [
+ "punctuation.definition.template-expression.begin",
+ "punctuation.definition.template-expression.end"
+ ],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "CSS property",
+ "scope": ["support.type.property-name.css", "support.type.property-name.json"],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "JS Switch control",
+ "scope": "switch-block.expr.js",
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "JS object path",
+ "scope": "variable.other.constant.property.js, variable.other.property.js",
+ "settings": {
+ "foreground": "#2ee2fa"
+ }
+ },
+ {
+ "name": "Color",
+ "scope": "constant.other.color",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Font names",
+ "scope": "support.constant.font-name",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "CSS #id",
+ "scope": "entity.other.attribute-name.id",
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Pseudo CSS",
+ "scope": [
+ "entity.other.attribute-name.pseudo-element",
+ "entity.other.attribute-name.pseudo-class"
+ ],
+ "settings": {
+ "foreground": "#D50"
+ }
+ },
+ {
+ "name": "CSS support functions (rgb)",
+ "scope": "support.function.misc.css",
+ "settings": {
+ "foreground": "#fe4450"
+ }
+ },
+ {
+ "name": "Markup heading",
+ "scope": ["markup.heading", "entity.name.section"],
+ "settings": {
+ "foreground": "#ff7edb"
+ }
+ },
+ {
+ "name": "Markup text",
+ "scope": ["text.html", "keyword.operator.assignment"],
+ "settings": {
+ "foreground": "#ffffffee"
+ }
+ },
+ {
+ "name": "Markup quote",
+ "scope": "markup.quote",
+ "settings": {
+ "foreground": "#b6b1b1cc",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markup list",
+ "scope": "beginning.punctuation.definition.list",
+ "settings": {
+ "foreground": "#ff7edb"
+ }
+ },
+ {
+ "name": "Markup link",
+ "scope": "markup.underline.link",
+ "settings": {
+ "foreground": "#D50"
+ }
+ },
+ {
+ "name": "Markup link description",
+ "scope": "string.other.link.description",
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Python function call",
+ "scope": "meta.function-call.generic.python",
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Python variable params",
+ "scope": "variable.parameter.function-call.python",
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "C# storage type",
+ "scope": "storage.type.cs",
+ "settings": {
+ "foreground": "#fe4450"
+ }
+ },
+ {
+ "name": "C# local variable",
+ "scope": "entity.name.variable.local.cs",
+ "settings": {
+ "foreground": "#ff7edb"
+ }
+ },
+ {
+ "name": "C# properties and fields",
+ "scope": ["entity.name.variable.field.cs", "entity.name.variable.property.cs"],
+ "settings": {
+ "foreground": "#ff7edb"
+ }
+ },
+ {
+ "name": "C placeholder",
+ "scope": "constant.other.placeholder.c",
+ "settings": {
+ "foreground": "#72f1b8",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "C preprocessors",
+ "scope": ["keyword.control.directive.include.c", "keyword.control.directive.define.c"],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "C storage modifier",
+ "scope": "storage.modifier.c",
+ "settings": {
+ "foreground": "#fe4450"
+ }
+ },
+ {
+ "name": "C++ operators",
+ "scope": "source.cpp keyword.operator",
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "C++ placeholder",
+ "scope": "constant.other.placeholder.cpp",
+ "settings": {
+ "foreground": "#72f1b8",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "C++ include",
+ "scope": [
+ "keyword.control.directive.include.cpp",
+ "keyword.control.directive.define.cpp"
+ ],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "C++ constant modifier",
+ "scope": "storage.modifier.specifier.const.cpp",
+ "settings": {
+ "foreground": "#fe4450"
+ }
+ },
+ {
+ "name": "Elixir Classes",
+ "scope": [
+ "source.elixir support.type.elixir",
+ "source.elixir meta.module.elixir entity.name.class.elixir"
+ ],
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Elixir Functions",
+ "scope": "source.elixir entity.name.function",
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "Elixir Constants",
+ "scope": [
+ "source.elixir constant.other.symbol.elixir",
+ "source.elixir constant.other.keywords.elixir"
+ ],
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Elixir String Punctuation",
+ "scope": "source.elixir punctuation.definition.string",
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "Elixir",
+ "scope": [
+ "source.elixir variable.other.readwrite.module.elixir",
+ "source.elixir variable.other.readwrite.module.elixir punctuation.definition.variable.elixir"
+ ],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "Elixir Binary Punctuation",
+ "scope": "source.elixir .punctuation.binary.elixir",
+ "settings": {
+ "foreground": "#ff7edb",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Clojure Globals",
+ "scope": ["entity.global.clojure"],
+ "settings": {
+ "foreground": "#36f9f6",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Clojure Storage",
+ "scope": ["storage.control.clojure"],
+ "settings": {
+ "foreground": "#36f9f6",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Clojure Metadata",
+ "scope": ["meta.metadata.simple.clojure", "meta.metadata.map.clojure"],
+ "settings": {
+ "foreground": "#fe4450",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Clojure Macros, Quoted",
+ "scope": ["meta.quoted-expression.clojure"],
+ "settings": {
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Clojure Symbols",
+ "scope": ["meta.symbol.clojure"],
+ "settings": {
+ "foreground": "#ff7edbff"
+ }
+ },
+ {
+ "name": "Go basic",
+ "scope": "source.go",
+ "settings": {
+ "foreground": "#ff7edbff"
+ }
+ },
+ {
+ "name": "Go Function Calls",
+ "scope": "source.go meta.function-call.go",
+ "settings": {
+ "foreground": "#36f9f6"
+ }
+ },
+ {
+ "name": "Go Keywords",
+ "scope": [
+ "source.go keyword.package.go",
+ "source.go keyword.import.go",
+ "source.go keyword.function.go",
+ "source.go keyword.type.go",
+ "source.go keyword.const.go",
+ "source.go keyword.var.go",
+ "source.go keyword.map.go",
+ "source.go keyword.channel.go",
+ "source.go keyword.control.go"
+ ],
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Go interfaces",
+ "scope": [
+ "source.go storage.type",
+ "source.go keyword.struct.go",
+ "source.go keyword.interface.go"
+ ],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "Go Constants e.g. nil, string format (%s, %d, etc.)",
+ "scope": [
+ "source.go constant.language.go",
+ "source.go constant.other.placeholder.go",
+ "source.go variable"
+ ],
+ "settings": {
+ "foreground": "#2EE2FA"
+ }
+ },
+ {
+ "name": "Markdown links and image paths",
+ "scope": ["markup.underline.link.markdown", "markup.inline.raw.string.markdown"],
+ "settings": {
+ "foreground": "#72f1b8",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown links and image paths",
+ "scope": ["string.other.link.title.markdown"],
+ "settings": {
+ "foreground": "#fede5d"
+ }
+ },
+ {
+ "name": "Markdown headings",
+ "scope": ["markup.heading.markdown", "entity.name.section.markdown"],
+ "settings": {
+ "foreground": "#ff7edb",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markdown italic",
+ "scope": ["markup.italic.markdown"],
+ "settings": {
+ "foreground": "#2EE2FA",
+ "fontStyle": "italic"
+ }
+ },
+ {
+ "name": "Markdown bold",
+ "scope": ["markup.bold.markdown"],
+ "settings": {
+ "foreground": "#2EE2FA",
+ "fontStyle": "bold"
+ }
+ },
+ {
+ "name": "Markdown quotes",
+ "scope": ["punctuation.definition.quote.begin.markdown", "markup.quote.markdown"],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "Basic source colours",
+ "scope": ["source.dart", "source.python", "source.scala"],
+ "settings": {
+ "foreground": "#ff7edbff"
+ }
+ },
+ {
+ "name": "Dart strings",
+ "scope": ["string.interpolated.single.dart"],
+ "settings": {
+ "foreground": "#f97e72"
+ }
+ },
+ {
+ "name": "Dart variable params",
+ "scope": ["variable.parameter.dart"],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ },
+ {
+ "name": "Dart numerics",
+ "scope": ["constant.numeric.dart"],
+ "settings": {
+ "foreground": "#2EE2FA"
+ }
+ },
+ {
+ "name": "Scala variable params",
+ "scope": ["variable.parameter.scala"],
+ "settings": {
+ "foreground": "#2EE2FA"
+ }
+ },
+ {
+ "name": "Scala",
+ "scope": ["meta.template.expression.scala"],
+ "settings": {
+ "foreground": "#72f1b8"
+ }
+ }
+ ]
+}
diff --git a/crates/channel2/Cargo.toml b/crates/channel2/Cargo.toml
new file mode 100644
index 0000000000..c292d4e8dd
--- /dev/null
+++ b/crates/channel2/Cargo.toml
@@ -0,0 +1,54 @@
+[package]
+name = "channel2"
+version = "0.1.0"
+edition = "2021"
+publish = false
+
+[lib]
+path = "src/channel2.rs"
+doctest = false
+
+[features]
+test-support = ["collections/test-support", "gpui/test-support", "rpc/test-support"]
+
+[dependencies]
+client = { package = "client2", path = "../client2" }
+collections = { path = "../collections" }
+db = { package = "db2", path = "../db2" }
+gpui = { package = "gpui2", path = "../gpui2" }
+util = { path = "../util" }
+rpc = { package = "rpc2", path = "../rpc2" }
+text = { path = "../text" }
+language = { package = "language2", path = "../language2" }
+settings = { package = "settings2", path = "../settings2" }
+feature_flags = { package = "feature_flags2", path = "../feature_flags2" }
+sum_tree = { path = "../sum_tree" }
+clock = { path = "../clock" }
+
+anyhow.workspace = true
+futures.workspace = true
+image = "0.23"
+lazy_static.workspace = true
+smallvec.workspace = true
+log.workspace = true
+parking_lot.workspace = true
+postage.workspace = true
+rand.workspace = true
+schemars.workspace = true
+smol.workspace = true
+thiserror.workspace = true
+time.workspace = true
+tiny_http = "0.8"
+uuid.workspace = true
+url = "2.2"
+serde.workspace = true
+serde_derive.workspace = true
+tempfile = "3"
+
+[dev-dependencies]
+collections = { path = "../collections", features = ["test-support"] }
+gpui = { package = "gpui2", path = "../gpui2", features = ["test-support"] }
+rpc = { package = "rpc2", path = "../rpc2", features = ["test-support"] }
+client = { package = "client2", path = "../client2", features = ["test-support"] }
+settings = { package = "settings2", path = "../settings2", features = ["test-support"] }
+util = { path = "../util", features = ["test-support"] }
diff --git a/crates/channel2/src/channel2.rs b/crates/channel2/src/channel2.rs
new file mode 100644
index 0000000000..f38ae4078a
--- /dev/null
+++ b/crates/channel2/src/channel2.rs
@@ -0,0 +1,23 @@
+mod channel_buffer;
+mod channel_chat;
+mod channel_store;
+
+use client::{Client, UserStore};
+use gpui::{AppContext, Model};
+use std::sync::Arc;
+
+pub use channel_buffer::{ChannelBuffer, ChannelBufferEvent, ACKNOWLEDGE_DEBOUNCE_INTERVAL};
+pub use channel_chat::{
+ mentions_to_proto, ChannelChat, ChannelChatEvent, ChannelMessage, ChannelMessageId,
+ MessageParams,
+};
+pub use channel_store::{Channel, ChannelEvent, ChannelId, ChannelMembership, ChannelStore};
+
+#[cfg(test)]
+mod channel_store_tests;
+
+pub fn init(client: &Arc, user_store: Model, cx: &mut AppContext) {
+ channel_store::init(client, user_store, cx);
+ channel_buffer::init(client);
+ channel_chat::init(client);
+}
diff --git a/crates/channel2/src/channel_buffer.rs b/crates/channel2/src/channel_buffer.rs
new file mode 100644
index 0000000000..4c321a8fbc
--- /dev/null
+++ b/crates/channel2/src/channel_buffer.rs
@@ -0,0 +1,259 @@
+use crate::{Channel, ChannelId, ChannelStore};
+use anyhow::Result;
+use client::{Client, Collaborator, UserStore};
+use collections::HashMap;
+use gpui::{AppContext, AsyncAppContext, Context, EventEmitter, Model, ModelContext, Task};
+use language::proto::serialize_version;
+use rpc::{
+ proto::{self, PeerId},
+ TypedEnvelope,
+};
+use std::{sync::Arc, time::Duration};
+use util::ResultExt;
+
+pub const ACKNOWLEDGE_DEBOUNCE_INTERVAL: Duration = Duration::from_millis(250);
+
+pub(crate) fn init(client: &Arc) {
+ client.add_model_message_handler(ChannelBuffer::handle_update_channel_buffer);
+ client.add_model_message_handler(ChannelBuffer::handle_update_channel_buffer_collaborators);
+}
+
+pub struct ChannelBuffer {
+ pub channel_id: ChannelId,
+ connected: bool,
+ collaborators: HashMap,
+ user_store: Model,
+ channel_store: Model,
+ buffer: Model,
+ buffer_epoch: u64,
+ client: Arc,
+ subscription: Option,
+ acknowledge_task: Option>>,
+}
+
+pub enum ChannelBufferEvent {
+ CollaboratorsChanged,
+ Disconnected,
+ BufferEdited,
+ ChannelChanged,
+}
+
+impl EventEmitter for ChannelBuffer {
+ type Event = ChannelBufferEvent;
+}
+
+impl ChannelBuffer {
+ pub(crate) async fn new(
+ channel: Arc,
+ client: Arc,
+ user_store: Model,
+ channel_store: Model,
+ mut cx: AsyncAppContext,
+ ) -> Result> {
+ let response = client
+ .request(proto::JoinChannelBuffer {
+ channel_id: channel.id,
+ })
+ .await?;
+
+ let base_text = response.base_text;
+ let operations = response
+ .operations
+ .into_iter()
+ .map(language::proto::deserialize_operation)
+ .collect::, _>>()?;
+
+ let buffer = cx.build_model(|_| {
+ language::Buffer::remote(response.buffer_id, response.replica_id as u16, base_text)
+ })?;
+ buffer.update(&mut cx, |buffer, cx| buffer.apply_ops(operations, cx))??;
+
+ let subscription = client.subscribe_to_entity(channel.id)?;
+
+ anyhow::Ok(cx.build_model(|cx| {
+ cx.subscribe(&buffer, Self::on_buffer_update).detach();
+ cx.on_release(Self::release).detach();
+ let mut this = Self {
+ buffer,
+ buffer_epoch: response.epoch,
+ client,
+ connected: true,
+ collaborators: Default::default(),
+ acknowledge_task: None,
+ channel_id: channel.id,
+ subscription: Some(subscription.set_model(&cx.handle(), &mut cx.to_async())),
+ user_store,
+ channel_store,
+ };
+ this.replace_collaborators(response.collaborators, cx);
+ this
+ })?)
+ }
+
+ fn release(&mut self, _: &mut AppContext) {
+ if self.connected {
+ if let Some(task) = self.acknowledge_task.take() {
+ task.detach();
+ }
+ self.client
+ .send(proto::LeaveChannelBuffer {
+ channel_id: self.channel_id,
+ })
+ .log_err();
+ }
+ }
+
+ pub fn remote_id(&self, cx: &AppContext) -> u64 {
+ self.buffer.read(cx).remote_id()
+ }
+
+ pub fn user_store(&self) -> &Model {
+ &self.user_store
+ }
+
+ pub(crate) fn replace_collaborators(
+ &mut self,
+ collaborators: Vec,
+ cx: &mut ModelContext,
+ ) {
+ let mut new_collaborators = HashMap::default();
+ for collaborator in collaborators {
+ if let Ok(collaborator) = Collaborator::from_proto(collaborator) {
+ new_collaborators.insert(collaborator.peer_id, collaborator);
+ }
+ }
+
+ for (_, old_collaborator) in &self.collaborators {
+ if !new_collaborators.contains_key(&old_collaborator.peer_id) {
+ self.buffer.update(cx, |buffer, cx| {
+ buffer.remove_peer(old_collaborator.replica_id as u16, cx)
+ });
+ }
+ }
+ self.collaborators = new_collaborators;
+ cx.emit(ChannelBufferEvent::CollaboratorsChanged);
+ cx.notify();
+ }
+
+ async fn handle_update_channel_buffer(
+ this: Model,
+ update_channel_buffer: TypedEnvelope,
+ _: Arc,
+ mut cx: AsyncAppContext,
+ ) -> Result<()> {
+ let ops = update_channel_buffer
+ .payload
+ .operations
+ .into_iter()
+ .map(language::proto::deserialize_operation)
+ .collect::, _>>()?;
+
+ this.update(&mut cx, |this, cx| {
+ cx.notify();
+ this.buffer
+ .update(cx, |buffer, cx| buffer.apply_ops(ops, cx))
+ })??;
+
+ Ok(())
+ }
+
+ async fn handle_update_channel_buffer_collaborators(
+ this: Model,
+ message: TypedEnvelope,
+ _: Arc,
+ mut cx: AsyncAppContext,
+ ) -> Result<()> {
+ this.update(&mut cx, |this, cx| {
+ this.replace_collaborators(message.payload.collaborators, cx);
+ cx.emit(ChannelBufferEvent::CollaboratorsChanged);
+ cx.notify();
+ })
+ }
+
+ fn on_buffer_update(
+ &mut self,
+ _: Model,
+ event: &language::Event,
+ cx: &mut ModelContext,
+ ) {
+ match event {
+ language::Event::Operation(operation) => {
+ let operation = language::proto::serialize_operation(operation);
+ self.client
+ .send(proto::UpdateChannelBuffer {
+ channel_id: self.channel_id,
+ operations: vec![operation],
+ })
+ .log_err();
+ }
+ language::Event::Edited => {
+ cx.emit(ChannelBufferEvent::BufferEdited);
+ }
+ _ => {}
+ }
+ }
+
+ pub fn acknowledge_buffer_version(&mut self, cx: &mut ModelContext<'_, ChannelBuffer>) {
+ let buffer = self.buffer.read(cx);
+ let version = buffer.version();
+ let buffer_id = buffer.remote_id();
+ let client = self.client.clone();
+ let epoch = self.epoch();
+
+ self.acknowledge_task = Some(cx.spawn(move |_, cx| async move {
+ cx.background_executor()
+ .timer(ACKNOWLEDGE_DEBOUNCE_INTERVAL)
+ .await;
+ client
+ .send(proto::AckBufferOperation {
+ buffer_id,
+ epoch,
+ version: serialize_version(&version),
+ })
+ .ok();
+ Ok(())
+ }));
+ }
+
+ pub fn epoch(&self) -> u64 {
+ self.buffer_epoch
+ }
+
+ pub fn buffer(&self) -> Model {
+ self.buffer.clone()
+ }
+
+ pub fn collaborators(&self) -> &HashMap {
+ &self.collaborators
+ }
+
+ pub fn channel(&self, cx: &AppContext) -> Option> {
+ self.channel_store
+ .read(cx)
+ .channel_for_id(self.channel_id)
+ .cloned()
+ }
+
+ pub(crate) fn disconnect(&mut self, cx: &mut ModelContext) {
+ log::info!("channel buffer {} disconnected", self.channel_id);
+ if self.connected {
+ self.connected = false;
+ self.subscription.take();
+ cx.emit(ChannelBufferEvent::Disconnected);
+ cx.notify()
+ }
+ }
+
+ pub(crate) fn channel_changed(&mut self, cx: &mut ModelContext) {
+ cx.emit(ChannelBufferEvent::ChannelChanged);
+ cx.notify()
+ }
+
+ pub fn is_connected(&self) -> bool {
+ self.connected
+ }
+
+ pub fn replica_id(&self, cx: &AppContext) -> u16 {
+ self.buffer.read(cx).replica_id()
+ }
+}
diff --git a/crates/channel2/src/channel_chat.rs b/crates/channel2/src/channel_chat.rs
new file mode 100644
index 0000000000..a5b5249853
--- /dev/null
+++ b/crates/channel2/src/channel_chat.rs
@@ -0,0 +1,647 @@
+use crate::{Channel, ChannelId, ChannelStore};
+use anyhow::{anyhow, Result};
+use client::{
+ proto,
+ user::{User, UserStore},
+ Client, Subscription, TypedEnvelope, UserId,
+};
+use futures::lock::Mutex;
+use gpui::{AppContext, AsyncAppContext, Context, EventEmitter, Model, ModelContext, Task};
+use rand::prelude::*;
+use std::{
+ collections::HashSet,
+ mem,
+ ops::{ControlFlow, Range},
+ sync::Arc,
+};
+use sum_tree::{Bias, SumTree};
+use time::OffsetDateTime;
+use util::{post_inc, ResultExt as _, TryFutureExt};
+
+pub struct ChannelChat {
+ pub channel_id: ChannelId,
+ messages: SumTree,
+ acknowledged_message_ids: HashSet,
+ channel_store: Model,
+ loaded_all_messages: bool,
+ last_acknowledged_id: Option,
+ next_pending_message_id: usize,
+ user_store: Model,
+ rpc: Arc,
+ outgoing_messages_lock: Arc>,
+ rng: StdRng,
+ _subscription: Subscription,
+}
+
+#[derive(Debug, PartialEq, Eq)]
+pub struct MessageParams {
+ pub text: String,
+ pub mentions: Vec<(Range, UserId)>,
+}
+
+#[derive(Clone, Debug)]
+pub struct ChannelMessage {
+ pub id: ChannelMessageId,
+ pub body: String,
+ pub timestamp: OffsetDateTime,
+ pub sender: Arc,
+ pub nonce: u128,
+ pub mentions: Vec<(Range, UserId)>,
+}
+
+#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord, Hash)]
+pub enum ChannelMessageId {
+ Saved(u64),
+ Pending(usize),
+}
+
+#[derive(Clone, Debug, Default)]
+pub struct ChannelMessageSummary {
+ max_id: ChannelMessageId,
+ count: usize,
+}
+
+#[derive(Copy, Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord)]
+struct Count(usize);
+
+#[derive(Clone, Debug, PartialEq)]
+pub enum ChannelChatEvent {
+ MessagesUpdated {
+ old_range: Range,
+ new_count: usize,
+ },
+ NewMessage {
+ channel_id: ChannelId,
+ message_id: u64,
+ },
+}
+
+impl EventEmitter for ChannelChat {
+ type Event = ChannelChatEvent;
+}
+pub fn init(client: &Arc) {
+ client.add_model_message_handler(ChannelChat::handle_message_sent);
+ client.add_model_message_handler(ChannelChat::handle_message_removed);
+}
+
+impl ChannelChat {
+ pub async fn new(
+ channel: Arc,
+ channel_store: Model,
+ user_store: Model,
+ client: Arc,
+ mut cx: AsyncAppContext,
+ ) -> Result> {
+ let channel_id = channel.id;
+ let subscription = client.subscribe_to_entity(channel_id).unwrap();
+
+ let response = client
+ .request(proto::JoinChannelChat { channel_id })
+ .await?;
+ let messages = messages_from_proto(response.messages, &user_store, &mut cx).await?;
+ let loaded_all_messages = response.done;
+
+ Ok(cx.build_model(|cx| {
+ cx.on_release(Self::release).detach();
+ let mut this = Self {
+ channel_id: channel.id,
+ user_store,
+ channel_store,
+ rpc: client,
+ outgoing_messages_lock: Default::default(),
+ messages: Default::default(),
+ acknowledged_message_ids: Default::default(),
+ loaded_all_messages,
+ next_pending_message_id: 0,
+ last_acknowledged_id: None,
+ rng: StdRng::from_entropy(),
+ _subscription: subscription.set_model(&cx.handle(), &mut cx.to_async()),
+ };
+ this.insert_messages(messages, cx);
+ this
+ })?)
+ }
+
+ fn release(&mut self, _: &mut AppContext) {
+ self.rpc
+ .send(proto::LeaveChannelChat {
+ channel_id: self.channel_id,
+ })
+ .log_err();
+ }
+
+ pub fn channel(&self, cx: &AppContext) -> Option> {
+ self.channel_store
+ .read(cx)
+ .channel_for_id(self.channel_id)
+ .cloned()
+ }
+
+ pub fn client(&self) -> &Arc {
+ &self.rpc
+ }
+
+ pub fn send_message(
+ &mut self,
+ message: MessageParams,
+ cx: &mut ModelContext,
+ ) -> Result>> {
+ if message.text.is_empty() {
+ Err(anyhow!("message body can't be empty"))?;
+ }
+
+ let current_user = self
+ .user_store
+ .read(cx)
+ .current_user()
+ .ok_or_else(|| anyhow!("current_user is not present"))?;
+
+ let channel_id = self.channel_id;
+ let pending_id = ChannelMessageId::Pending(post_inc(&mut self.next_pending_message_id));
+ let nonce = self.rng.gen();
+ self.insert_messages(
+ SumTree::from_item(
+ ChannelMessage {
+ id: pending_id,
+ body: message.text.clone(),
+ sender: current_user,
+ timestamp: OffsetDateTime::now_utc(),
+ mentions: message.mentions.clone(),
+ nonce,
+ },
+ &(),
+ ),
+ cx,
+ );
+ let user_store = self.user_store.clone();
+ let rpc = self.rpc.clone();
+ let outgoing_messages_lock = self.outgoing_messages_lock.clone();
+ Ok(cx.spawn(move |this, mut cx| async move {
+ let outgoing_message_guard = outgoing_messages_lock.lock().await;
+ let request = rpc.request(proto::SendChannelMessage {
+ channel_id,
+ body: message.text,
+ nonce: Some(nonce.into()),
+ mentions: mentions_to_proto(&message.mentions),
+ });
+ let response = request.await?;
+ drop(outgoing_message_guard);
+ let response = response.message.ok_or_else(|| anyhow!("invalid message"))?;
+ let id = response.id;
+ let message = ChannelMessage::from_proto(response, &user_store, &mut cx).await?;
+ this.update(&mut cx, |this, cx| {
+ this.insert_messages(SumTree::from_item(message, &()), cx);
+ })?;
+ Ok(id)
+ }))
+ }
+
+ pub fn remove_message(&mut self, id: u64, cx: &mut ModelContext) -> Task> {
+ let response = self.rpc.request(proto::RemoveChannelMessage {
+ channel_id: self.channel_id,
+ message_id: id,
+ });
+ cx.spawn(move |this, mut cx| async move {
+ response.await?;
+ this.update(&mut cx, |this, cx| {
+ this.message_removed(id, cx);
+ })?;
+ Ok(())
+ })
+ }
+
+ pub fn load_more_messages(&mut self, cx: &mut ModelContext) -> Option>> {
+ if self.loaded_all_messages {
+ return None;
+ }
+
+ let rpc = self.rpc.clone();
+ let user_store = self.user_store.clone();
+ let channel_id = self.channel_id;
+ let before_message_id = self.first_loaded_message_id()?;
+ Some(cx.spawn(move |this, mut cx| {
+ async move {
+ let response = rpc
+ .request(proto::GetChannelMessages {
+ channel_id,
+ before_message_id,
+ })
+ .await?;
+ let loaded_all_messages = response.done;
+ let messages = messages_from_proto(response.messages, &user_store, &mut cx).await?;
+ this.update(&mut cx, |this, cx| {
+ this.loaded_all_messages = loaded_all_messages;
+ this.insert_messages(messages, cx);
+ })?;
+ anyhow::Ok(())
+ }
+ .log_err()
+ }))
+ }
+
+ pub fn first_loaded_message_id(&mut self) -> Option {
+ self.messages.first().and_then(|message| match message.id {
+ ChannelMessageId::Saved(id) => Some(id),
+ ChannelMessageId::Pending(_) => None,
+ })
+ }
+
+ /// Load all of the chat messages since a certain message id.
+ ///
+ /// For now, we always maintain a suffix of the channel's messages.
+ pub async fn load_history_since_message(
+ chat: Model,
+ message_id: u64,
+ mut cx: AsyncAppContext,
+ ) -> Option {
+ loop {
+ let step = chat
+ .update(&mut cx, |chat, cx| {
+ if let Some(first_id) = chat.first_loaded_message_id() {
+ if first_id <= message_id {
+ let mut cursor = chat.messages.cursor::<(ChannelMessageId, Count)>();
+ let message_id = ChannelMessageId::Saved(message_id);
+ cursor.seek(&message_id, Bias::Left, &());
+ return ControlFlow::Break(
+ if cursor
+ .item()
+ .map_or(false, |message| message.id == message_id)
+ {
+ Some(cursor.start().1 .0)
+ } else {
+ None
+ },
+ );
+ }
+ }
+ ControlFlow::Continue(chat.load_more_messages(cx))
+ })
+ .log_err()?;
+ match step {
+ ControlFlow::Break(ix) => return ix,
+ ControlFlow::Continue(task) => task?.await?,
+ }
+ }
+ }
+
+ pub fn acknowledge_last_message(&mut self, cx: &mut ModelContext) {
+ if let ChannelMessageId::Saved(latest_message_id) = self.messages.summary().max_id {
+ if self
+ .last_acknowledged_id
+ .map_or(true, |acknowledged_id| acknowledged_id < latest_message_id)
+ {
+ self.rpc
+ .send(proto::AckChannelMessage {
+ channel_id: self.channel_id,
+ message_id: latest_message_id,
+ })
+ .ok();
+ self.last_acknowledged_id = Some(latest_message_id);
+ self.channel_store.update(cx, |store, cx| {
+ store.acknowledge_message_id(self.channel_id, latest_message_id, cx);
+ });
+ }
+ }
+ }
+
+ pub fn rejoin(&mut self, cx: &mut ModelContext) {
+ let user_store = self.user_store.clone();
+ let rpc = self.rpc.clone();
+ let channel_id = self.channel_id;
+ cx.spawn(move |this, mut cx| {
+ async move {
+ let response = rpc.request(proto::JoinChannelChat { channel_id }).await?;
+ let messages = messages_from_proto(response.messages, &user_store, &mut cx).await?;
+ let loaded_all_messages = response.done;
+
+ let pending_messages = this.update(&mut cx, |this, cx| {
+ if let Some((first_new_message, last_old_message)) =
+ messages.first().zip(this.messages.last())
+ {
+ if first_new_message.id > last_old_message.id {
+ let old_messages = mem::take(&mut this.messages);
+ cx.emit(ChannelChatEvent::MessagesUpdated {
+ old_range: 0..old_messages.summary().count,
+ new_count: 0,
+ });
+ this.loaded_all_messages = loaded_all_messages;
+ }
+ }
+
+ this.insert_messages(messages, cx);
+ if loaded_all_messages {
+ this.loaded_all_messages = loaded_all_messages;
+ }
+
+ this.pending_messages().cloned().collect::>()
+ })?;
+
+ for pending_message in pending_messages {
+ let request = rpc.request(proto::SendChannelMessage {
+ channel_id,
+ body: pending_message.body,
+ mentions: mentions_to_proto(&pending_message.mentions),
+ nonce: Some(pending_message.nonce.into()),
+ });
+ let response = request.await?;
+ let message = ChannelMessage::from_proto(
+ response.message.ok_or_else(|| anyhow!("invalid message"))?,
+ &user_store,
+ &mut cx,
+ )
+ .await?;
+ this.update(&mut cx, |this, cx| {
+ this.insert_messages(SumTree::from_item(message, &()), cx);
+ })?;
+ }
+
+ anyhow::Ok(())
+ }
+ .log_err()
+ })
+ .detach();
+ }
+
+ pub fn message_count(&self) -> usize {
+ self.messages.summary().count
+ }
+
+ pub fn messages(&self) -> &SumTree {
+ &self.messages
+ }
+
+ pub fn message(&self, ix: usize) -> &ChannelMessage {
+ let mut cursor = self.messages.cursor::();
+ cursor.seek(&Count(ix), Bias::Right, &());
+ cursor.item().unwrap()
+ }
+
+ pub fn acknowledge_message(&mut self, id: u64) {
+ if self.acknowledged_message_ids.insert(id) {
+ self.rpc
+ .send(proto::AckChannelMessage {
+ channel_id: self.channel_id,
+ message_id: id,
+ })
+ .ok();
+ }
+ }
+
+ pub fn messages_in_range(&self, range: Range) -> impl Iterator- {
+ let mut cursor = self.messages.cursor::();
+ cursor.seek(&Count(range.start), Bias::Right, &());
+ cursor.take(range.len())
+ }
+
+ pub fn pending_messages(&self) -> impl Iterator
- {
+ let mut cursor = self.messages.cursor::();
+ cursor.seek(&ChannelMessageId::Pending(0), Bias::Left, &());
+ cursor
+ }
+
+ async fn handle_message_sent(
+ this: Model,
+ message: TypedEnvelope,
+ _: Arc,
+ mut cx: AsyncAppContext,
+ ) -> Result<()> {
+ let user_store = this.update(&mut cx, |this, _| this.user_store.clone())?;
+ let message = message
+ .payload
+ .message
+ .ok_or_else(|| anyhow!("empty message"))?;
+ let message_id = message.id;
+
+ let message = ChannelMessage::from_proto(message, &user_store, &mut cx).await?;
+ this.update(&mut cx, |this, cx| {
+ this.insert_messages(SumTree::from_item(message, &()), cx);
+ cx.emit(ChannelChatEvent::NewMessage {
+ channel_id: this.channel_id,
+ message_id,
+ })
+ })?;
+
+ Ok(())
+ }
+
+ async fn handle_message_removed(
+ this: Model,
+ message: TypedEnvelope,
+ _: Arc,
+ mut cx: AsyncAppContext,
+ ) -> Result<()> {
+ this.update(&mut cx, |this, cx| {
+ this.message_removed(message.payload.message_id, cx)
+ })?;
+ Ok(())
+ }
+
+ fn insert_messages(&mut self, messages: SumTree, cx: &mut ModelContext) {
+ if let Some((first_message, last_message)) = messages.first().zip(messages.last()) {
+ let nonces = messages
+ .cursor::<()>()
+ .map(|m| m.nonce)
+ .collect::>();
+
+ let mut old_cursor = self.messages.cursor::<(ChannelMessageId, Count)>();
+ let mut new_messages = old_cursor.slice(&first_message.id, Bias::Left, &());
+ let start_ix = old_cursor.start().1 .0;
+ let removed_messages = old_cursor.slice(&last_message.id, Bias::Right, &());
+ let removed_count = removed_messages.summary().count;
+ let new_count = messages.summary().count;
+ let end_ix = start_ix + removed_count;
+
+ new_messages.append(messages, &());
+
+ let mut ranges = Vec::>::new();
+ if new_messages.last().unwrap().is_pending() {
+ new_messages.append(old_cursor.suffix(&()), &());
+ } else {
+ new_messages.append(
+ old_cursor.slice(&ChannelMessageId::Pending(0), Bias::Left, &()),
+ &(),
+ );
+
+ while let Some(message) = old_cursor.item() {
+ let message_ix = old_cursor.start().1 .0;
+ if nonces.contains(&message.nonce) {
+ if ranges.last().map_or(false, |r| r.end == message_ix) {
+ ranges.last_mut().unwrap().end += 1;
+ } else {
+ ranges.push(message_ix..message_ix + 1);
+ }
+ } else {
+ new_messages.push(message.clone(), &());
+ }
+ old_cursor.next(&());
+ }
+ }
+
+ drop(old_cursor);
+ self.messages = new_messages;
+
+ for range in ranges.into_iter().rev() {
+ cx.emit(ChannelChatEvent::MessagesUpdated {
+ old_range: range,
+ new_count: 0,
+ });
+ }
+ cx.emit(ChannelChatEvent::MessagesUpdated {
+ old_range: start_ix..end_ix,
+ new_count,
+ });
+
+ cx.notify();
+ }
+ }
+
+ fn message_removed(&mut self, id: u64, cx: &mut ModelContext) {
+ let mut cursor = self.messages.cursor::();
+ let mut messages = cursor.slice(&ChannelMessageId::Saved(id), Bias::Left, &());
+ if let Some(item) = cursor.item() {
+ if item.id == ChannelMessageId::Saved(id) {
+ let ix = messages.summary().count;
+ cursor.next(&());
+ messages.append(cursor.suffix(&()), &());
+ drop(cursor);
+ self.messages = messages;
+ cx.emit(ChannelChatEvent::MessagesUpdated {
+ old_range: ix..ix + 1,
+ new_count: 0,
+ });
+ }
+ }
+ }
+}
+
+async fn messages_from_proto(
+ proto_messages: Vec,
+ user_store: &Model,
+ cx: &mut AsyncAppContext,
+) -> Result> {
+ let messages = ChannelMessage::from_proto_vec(proto_messages, user_store, cx).await?;
+ let mut result = SumTree::new();
+ result.extend(messages, &());
+ Ok(result)
+}
+
+impl ChannelMessage {
+ pub async fn from_proto(
+ message: proto::ChannelMessage,
+ user_store: &Model,
+ cx: &mut AsyncAppContext,
+ ) -> Result {
+ let sender = user_store
+ .update(cx, |user_store, cx| {
+ user_store.get_user(message.sender_id, cx)
+ })?
+ .await?;
+ Ok(ChannelMessage {
+ id: ChannelMessageId::Saved(message.id),
+ body: message.body,
+ mentions: message
+ .mentions
+ .into_iter()
+ .filter_map(|mention| {
+ let range = mention.range?;
+ Some((range.start as usize..range.end as usize, mention.user_id))
+ })
+ .collect(),
+ timestamp: OffsetDateTime::from_unix_timestamp(message.timestamp as i64)?,
+ sender,
+ nonce: message
+ .nonce
+ .ok_or_else(|| anyhow!("nonce is required"))?
+ .into(),
+ })
+ }
+
+ pub fn is_pending(&self) -> bool {
+ matches!(self.id, ChannelMessageId::Pending(_))
+ }
+
+ pub async fn from_proto_vec(
+ proto_messages: Vec,
+ user_store: &Model,
+ cx: &mut AsyncAppContext,
+ ) -> Result> {
+ let unique_user_ids = proto_messages
+ .iter()
+ .map(|m| m.sender_id)
+ .collect::>()
+ .into_iter()
+ .collect();
+ user_store
+ .update(cx, |user_store, cx| {
+ user_store.get_users(unique_user_ids, cx)
+ })?
+ .await?;
+
+ let mut messages = Vec::with_capacity(proto_messages.len());
+ for message in proto_messages {
+ messages.push(ChannelMessage::from_proto(message, user_store, cx).await?);
+ }
+ Ok(messages)
+ }
+}
+
+pub fn mentions_to_proto(mentions: &[(Range, UserId)]) -> Vec {
+ mentions
+ .iter()
+ .map(|(range, user_id)| proto::ChatMention {
+ range: Some(proto::Range {
+ start: range.start as u64,
+ end: range.end as u64,
+ }),
+ user_id: *user_id as u64,
+ })
+ .collect()
+}
+
+impl sum_tree::Item for ChannelMessage {
+ type Summary = ChannelMessageSummary;
+
+ fn summary(&self) -> Self::Summary {
+ ChannelMessageSummary {
+ max_id: self.id,
+ count: 1,
+ }
+ }
+}
+
+impl Default for ChannelMessageId {
+ fn default() -> Self {
+ Self::Saved(0)
+ }
+}
+
+impl sum_tree::Summary for ChannelMessageSummary {
+ type Context = ();
+
+ fn add_summary(&mut self, summary: &Self, _: &()) {
+ self.max_id = summary.max_id;
+ self.count += summary.count;
+ }
+}
+
+impl<'a> sum_tree::Dimension<'a, ChannelMessageSummary> for ChannelMessageId {
+ fn add_summary(&mut self, summary: &'a ChannelMessageSummary, _: &()) {
+ debug_assert!(summary.max_id > *self);
+ *self = summary.max_id;
+ }
+}
+
+impl<'a> sum_tree::Dimension<'a, ChannelMessageSummary> for Count {
+ fn add_summary(&mut self, summary: &'a ChannelMessageSummary, _: &()) {
+ self.0 += summary.count;
+ }
+}
+
+impl<'a> From<&'a str> for MessageParams {
+ fn from(value: &'a str) -> Self {
+ Self {
+ text: value.into(),
+ mentions: Vec::new(),
+ }
+ }
+}
diff --git a/crates/channel2/src/channel_store.rs b/crates/channel2/src/channel_store.rs
new file mode 100644
index 0000000000..3c9abd59e2
--- /dev/null
+++ b/crates/channel2/src/channel_store.rs
@@ -0,0 +1,1021 @@
+mod channel_index;
+
+use crate::{channel_buffer::ChannelBuffer, channel_chat::ChannelChat, ChannelMessage};
+use anyhow::{anyhow, Result};
+use channel_index::ChannelIndex;
+use client::{Client, Subscription, User, UserId, UserStore};
+use collections::{hash_map, HashMap, HashSet};
+use db::RELEASE_CHANNEL;
+use futures::{channel::mpsc, future::Shared, Future, FutureExt, StreamExt};
+use gpui::{
+ AppContext, AsyncAppContext, Context, EventEmitter, Model, ModelContext, Task, WeakModel,
+};
+use rpc::{
+ proto::{self, ChannelVisibility},
+ TypedEnvelope,
+};
+use std::{mem, sync::Arc, time::Duration};
+use util::{async_maybe, ResultExt};
+
+pub fn init(client: &Arc, user_store: Model, cx: &mut AppContext) {
+ let channel_store =
+ cx.build_model(|cx| ChannelStore::new(client.clone(), user_store.clone(), cx));
+ cx.set_global(channel_store);
+}
+
+pub const RECONNECT_TIMEOUT: Duration = Duration::from_secs(30);
+
+pub type ChannelId = u64;
+
+pub struct ChannelStore {
+ pub channel_index: ChannelIndex,
+ channel_invitations: Vec>,
+ channel_participants: HashMap>>,
+ outgoing_invites: HashSet<(ChannelId, UserId)>,
+ update_channels_tx: mpsc::UnboundedSender,
+ opened_buffers: HashMap>,
+ opened_chats: HashMap>,
+ client: Arc,
+ user_store: Model,
+ _rpc_subscription: Subscription,
+ _watch_connection_status: Task