From 45db6d6e9fa73a75ecff826169ea0cc10f457f07 Mon Sep 17 00:00:00 2001 From: mrleemurray Date: Tue, 13 Jan 2026 15:53:23 +0000 Subject: [PATCH] Add 2026 theme files and customization documentation --- extensions/theme-2026/.vscodeignore | 5 + extensions/theme-2026/CUSTOMIZATION.md | 91 ++++++ extensions/theme-2026/README.md | 55 ++++ extensions/theme-2026/cgmanifest.json | 5 + extensions/theme-2026/package.json | 30 ++ extensions/theme-2026/package.nls.json | 6 + extensions/theme-2026/themes/2026-dark.json | 320 +++++++++++++++++++ extensions/theme-2026/themes/2026-light.json | 318 ++++++++++++++++++ 8 files changed, 830 insertions(+) create mode 100644 extensions/theme-2026/.vscodeignore create mode 100644 extensions/theme-2026/CUSTOMIZATION.md create mode 100644 extensions/theme-2026/README.md create mode 100644 extensions/theme-2026/cgmanifest.json create mode 100644 extensions/theme-2026/package.json create mode 100644 extensions/theme-2026/package.nls.json create mode 100644 extensions/theme-2026/themes/2026-dark.json create mode 100644 extensions/theme-2026/themes/2026-light.json diff --git a/extensions/theme-2026/.vscodeignore b/extensions/theme-2026/.vscodeignore new file mode 100644 index 00000000000..7ef29eaaabf --- /dev/null +++ b/extensions/theme-2026/.vscodeignore @@ -0,0 +1,5 @@ +CUSTOMIZATION.md +node_modules/** +.vscode/** +.gitignore +**/*.map diff --git a/extensions/theme-2026/CUSTOMIZATION.md b/extensions/theme-2026/CUSTOMIZATION.md new file mode 100644 index 00000000000..03c07d0e2c0 --- /dev/null +++ b/extensions/theme-2026/CUSTOMIZATION.md @@ -0,0 +1,91 @@ +# Theme Customization Guide + +The 2026 theme supports granular customization through **variables** and **overrides** in the config files. + +## Variables + +Define reusable color values in the `variables` section that can be referenced throughout your entire config: + +```json +{ + "variables": { + "myBlue": "#0066DD", + "myRed": "#DD0000", + "sidebarBg": "#161616" + } +} +``` + +Variables can be used in: +- **Config sections**: `textConfig`, `backgroundConfig`, `editorConfig`, `panelConfig`, `baseColors` +- **Overrides**: Any VS Code theme color property + +## Overrides + +Override any VS Code theme color property in the `overrides` section. You can use: +- Hex colors directly: `"#161616"` +- Variable references: `"${myBlue}"` + +```json +{ + "overrides": { + "sideBar.background": "${sidebarBg}", + "activityBar.background": "#161616", + "statusBar.background": "${myBlue}" + } +} +``` + +## Example Configuration + +**theme.config.dark.json:** + +```json +{ + "paletteScale": 21, + "accentUsage": "interactive-and-status", + ... + "editorConfig": { + "background": "${darkBlue}", + "foreground": "${textPrimary}" + }, + "backgroundConfig": { + "primary": "${primaryBg}", + "secondary": "${secondaryBg}" + }, + "variables": { + "darkBlue": "#001133", + "brightAccent": "#00AAFF", + "primaryBg": "#161616", + "secondaryBg": "#222222", + "textPrimary": "#cccccc" + }, + "overrides": { + "focusBorder": "${brightAccent}", + "button.background": "#007ACC" + } +} +``` + +## Finding Theme Properties + +To find available theme color properties: +1. Open Command Palette (Cmd+Shift+P) +2. Run "Developer: Generate Color Theme From Current Settings" +3. View generated theme to see all available properties + +Or refer to the [VS Code Theme Color Reference](https://code.visualstudio.com/api/references/theme-color). + +## Workflow + +1. Edit `theme.config.dark.json` or `theme.config.light.json` +2. Add variables and overrides sections +3. Run `npm run build` to regenerate themes +4. Reload VS Code to see changes + +## Tips + +- **Variables** help avoid repeating the same color values +- Use **overrides** to fine-tune specific elements without modifying the generator code +- Changes in config files persist across theme updates +- Both variants (light/dark) support independent variables and overrides diff --git a/extensions/theme-2026/README.md b/extensions/theme-2026/README.md new file mode 100644 index 00000000000..59d0ab9b7d5 --- /dev/null +++ b/extensions/theme-2026/README.md @@ -0,0 +1,55 @@ +# 2026 Themes + +Modern, minimal light and dark themes for VS Code with a consistent neutral palette and accessible color contrast. + +> **Note**: These themes are generated using an external theme generator. The source code for the generator is maintained in a separate repository: [vscode-2026-theme-generator](../../../vscode-2026-theme-generator) + +## Design Philosophy + +- **Minimal and modern**: Clean, distraction-free interface +- **Consistent palette**: Limited base colors (5 neutral shades + accent) for visual coherence +- **Accessible**: WCAG AA compliant contrast ratios (minimum 4.5:1 for text) +- **Generated externally**: Themes are generated from a TypeScript-based generator with configurable color palettes + +## Color Palette + +### Light Theme + +| Purpose | Color | Usage | +|---------|-------|-------| +| Text Primary | `#1A1A1A` | Main text content | +| Text Secondary | `#6B6B6B` | Secondary text, line numbers | +| Background Primary | `#FFFFFF` | Main editor background | +| Background Secondary | `#F5F5F5` | Sidebars, inactive tabs | +| Border Default | `#848484` | Component borders | +| Accent | `#0066CC` | Interactive elements, focus states | + +### Dark Theme + +| Purpose | Color | Usage | +|---------|-------|-------| +| Text Primary | `#bbbbbb` | Main text content | +| Text Secondary | `#888888` | Secondary text, line numbers | +| Background Primary | `#191919` | Main editor background | +| Background Secondary | `#242424` | Sidebars, inactive tabs | +| Border Default | `#848484` | Component borders | +| Accent | `#007ACC` | Interactive elements, focus states | + +## Modifying These Themes + +These theme files are **generated** and should not be edited directly. To customize or modify the themes: + +1. Navigate to the theme generator repository (one level up from vscode root) +2. Modify the configuration files (`theme.config.light.json` and `theme.config.dark.json`) +3. Run the generator to create new theme files +4. Copy the generated files back to this directory + +See the [theme generator README](../../../vscode-2026-theme-generator/README.md) for detailed documentation on configuration options, color customization, and the generation process. + +## Accessibility + +All text/background combinations meet WCAG AA standards (4.5:1 contrast ratio minimum). + +## License + +MIT diff --git a/extensions/theme-2026/cgmanifest.json b/extensions/theme-2026/cgmanifest.json new file mode 100644 index 00000000000..74291602f06 --- /dev/null +++ b/extensions/theme-2026/cgmanifest.json @@ -0,0 +1,5 @@ +{ + "Version": 1, + "Registrations": [], + "Comments": [] +} diff --git a/extensions/theme-2026/package.json b/extensions/theme-2026/package.json new file mode 100644 index 00000000000..593169de867 --- /dev/null +++ b/extensions/theme-2026/package.json @@ -0,0 +1,30 @@ +{ + "name": "theme-2026", + "displayName": "2026 Themes", + "description": "Modern, minimal light and dark themes for 2026 with consistent neutral palette and accessible color contrast", + "version": "0.1.0", + "publisher": "vscode", + "license": "MIT", + "engines": { + "vscode": "^1.85.0" + }, + "categories": [ + "Themes" + ], + "contributes": { + "themes": [ + { + "id": "2026-light", + "label": "2026 Light", + "uiTheme": "vs", + "path": "./themes/2026-light.json" + }, + { + "id": "2026-dark", + "label": "2026 Dark", + "uiTheme": "vs-dark", + "path": "./themes/2026-dark.json" + } + ] + } +} diff --git a/extensions/theme-2026/package.nls.json b/extensions/theme-2026/package.nls.json new file mode 100644 index 00000000000..639cf87f44e --- /dev/null +++ b/extensions/theme-2026/package.nls.json @@ -0,0 +1,6 @@ +{ + "displayName": "2026 Themes", + "description": "Modern, minimal light and dark themes for 2026 with consistent neutral palette and accessible color contrast", + "2026-light-label": "2026 Light", + "2026-dark-label": "2026 Dark" +} diff --git a/extensions/theme-2026/themes/2026-dark.json b/extensions/theme-2026/themes/2026-dark.json new file mode 100644 index 00000000000..8114bf52582 --- /dev/null +++ b/extensions/theme-2026/themes/2026-dark.json @@ -0,0 +1,320 @@ +{ + "$schema": "vscode://schemas/color-theme", + "name": "2026 Dark", + "type": "dark", + "colors": { + "foreground": "#B9BABB", + "disabledForeground": "#434545", + "errorForeground": "#007ACC", + "descriptionForeground": "#878889", + "icon.foreground": "#878889", + "focusBorder": "#007ACCB3", + "textBlockQuote.background": "#232627", + "textBlockQuote.border": "#262C30FF", + "textCodeBlock.background": "#232627", + "textLink.foreground": "#0092F5", + "textLink.activeForeground": "#3EB1FE", + "textPreformat.foreground": "#878889", + "textSeparator.foreground": "#28292AFF", + "button.background": "#007ACC", + "button.foreground": "#FCFEFE", + "button.hoverBackground": "#0A9CFE", + "button.border": "#262C30FF", + "button.secondaryBackground": "#232627", + "button.secondaryForeground": "#B9BABB", + "button.secondaryHoverBackground": "#007ACC", + "checkbox.background": "#232627", + "checkbox.border": "#262C30FF", + "checkbox.foreground": "#B9BABB", + "dropdown.background": "#191B1D", + "dropdown.border": "#262C30FF", + "dropdown.foreground": "#B9BABB", + "dropdown.listBackground": "#1F2223", + "input.background": "#191B1D", + "input.border": "#262C30FF", + "input.foreground": "#B9BABB", + "input.placeholderForeground": "#767778", + "inputOption.activeBackground": "#007ACC33", + "inputOption.activeForeground": "#B9BABB", + "inputOption.activeBorder": "#262C30FF", + "inputValidation.errorBackground": "#191B1D", + "inputValidation.errorBorder": "#262C30FF", + "inputValidation.errorForeground": "#B9BABB", + "inputValidation.infoBackground": "#191B1D", + "inputValidation.infoBorder": "#262C30FF", + "inputValidation.infoForeground": "#B9BABB", + "inputValidation.warningBackground": "#191B1D", + "inputValidation.warningBorder": "#262C30FF", + "inputValidation.warningForeground": "#B9BABB", + "scrollbar.shadow": "#191B1D4D", + "scrollbarSlider.background": "#81848566", + "scrollbarSlider.hoverBackground": "#81848599", + "scrollbarSlider.activeBackground": "#818485CC", + "badge.background": "#007ACC", + "badge.foreground": "#FCFEFE", + "progressBar.background": "#858889", + "list.activeSelectionBackground": "#007ACC26", + "list.activeSelectionForeground": "#B9BABB", + "list.inactiveSelectionBackground": "#232627", + "list.inactiveSelectionForeground": "#B9BABB", + "list.hoverBackground": "#202324", + "list.hoverForeground": "#B9BABB", + "list.dropBackground": "#007ACC1A", + "list.focusBackground": "#007ACC26", + "list.focusForeground": "#B9BABB", + "list.focusOutline": "#007ACCB3", + "list.highlightForeground": "#B9BABB", + "list.invalidItemForeground": "#434545", + "list.errorForeground": "#007ACC", + "list.warningForeground": "#007ACC", + "activityBar.background": "#191B1D", + "activityBar.foreground": "#B9BABB", + "activityBar.inactiveForeground": "#878889", + "activityBar.border": "#262C30FF", + "activityBar.activeBorder": "#262C30FF", + "activityBar.activeFocusBorder": "#007ACCB3", + "activityBarBadge.background": "#007ACC", + "activityBarBadge.foreground": "#FCFEFE", + "sideBar.background": "#191B1D", + "sideBar.foreground": "#B9BABB", + "sideBar.border": "#262C30FF", + "sideBarTitle.foreground": "#B9BABB", + "sideBarSectionHeader.background": "#191B1D", + "sideBarSectionHeader.foreground": "#B9BABB", + "sideBarSectionHeader.border": "#262C30FF", + "titleBar.activeBackground": "#191B1D", + "titleBar.activeForeground": "#B9BABB", + "titleBar.inactiveBackground": "#191B1D", + "titleBar.inactiveForeground": "#878889", + "titleBar.border": "#262C30FF", + "menubar.selectionBackground": "#232627", + "menubar.selectionForeground": "#B9BABB", + "menu.background": "#1F2223", + "menu.foreground": "#B9BABB", + "menu.selectionBackground": "#007ACC26", + "menu.selectionForeground": "#B9BABB", + "menu.separatorBackground": "#818485", + "menu.border": "#262C30FF", + "editor.background": "#151719", + "editor.foreground": "#B7BABB", + "editorLineNumber.foreground": "#858889", + "editorLineNumber.activeForeground": "#B7BABB", + "editorCursor.foreground": "#B7BABB", + "editor.selectionBackground": "#007ACC33", + "editor.inactiveSelectionBackground": "#007ACC80", + "editor.selectionHighlightBackground": "#007ACC1A", + "editor.wordHighlightBackground": "#007ACCB3", + "editor.wordHighlightStrongBackground": "#007ACCE6", + "editor.findMatchBackground": "#007ACC4D", + "editor.findMatchHighlightBackground": "#007ACC26", + "editor.findRangeHighlightBackground": "#232627", + "editor.hoverHighlightBackground": "#232627", + "editor.lineHighlightBackground": "#232627", + "editor.rangeHighlightBackground": "#232627", + "editorLink.activeForeground": "#007ACC", + "editorWhitespace.foreground": "#8788894D", + "editorIndentGuide.background": "#8184854D", + "editorIndentGuide.activeBackground": "#818485", + "editorRuler.foreground": "#838485", + "editorCodeLens.foreground": "#878889", + "editorBracketMatch.background": "#007ACC80", + "editorBracketMatch.border": "#262C30FF", + "editorWidget.background": "#1F2223", + "editorWidget.border": "#262C30FF", + "editorWidget.foreground": "#B9BABB", + "editorSuggestWidget.background": "#1F2223", + "editorSuggestWidget.border": "#262C30FF", + "editorSuggestWidget.foreground": "#B9BABB", + "editorSuggestWidget.highlightForeground": "#B9BABB", + "editorSuggestWidget.selectedBackground": "#007ACC26", + "editorHoverWidget.background": "#1F2223", + "editorHoverWidget.border": "#262C30FF", + "peekView.border": "#262C30FF", + "peekViewEditor.background": "#191B1D", + "peekViewEditor.matchHighlightBackground": "#007ACC33", + "peekViewResult.background": "#232627", + "peekViewResult.fileForeground": "#B9BABB", + "peekViewResult.lineForeground": "#878889", + "peekViewResult.matchHighlightBackground": "#007ACC33", + "peekViewResult.selectionBackground": "#007ACC26", + "peekViewResult.selectionForeground": "#B9BABB", + "peekViewTitle.background": "#232627", + "peekViewTitleDescription.foreground": "#878889", + "peekViewTitleLabel.foreground": "#B9BABB", + "editorGutter.background": "#151719", + "editorGutter.addedBackground": "#007ACC", + "editorGutter.deletedBackground": "#007ACC", + "diffEditor.insertedTextBackground": "#007ACC26", + "diffEditor.removedTextBackground": "#43454726", + "editorOverviewRuler.border": "#262C30FF", + "editorOverviewRuler.findMatchForeground": "#007ACC99", + "editorOverviewRuler.modifiedForeground": "#007ACC", + "editorOverviewRuler.addedForeground": "#007ACC", + "editorOverviewRuler.deletedForeground": "#007ACC", + "editorOverviewRuler.errorForeground": "#007ACC", + "editorOverviewRuler.warningForeground": "#007ACC", + "panel.background": "#191B1D", + "panel.border": "#262C30FF", + "panelTitle.activeBorder": "#007ACC", + "panelTitle.activeForeground": "#B9BABB", + "panelTitle.inactiveForeground": "#878889", + "statusBar.background": "#191B1D", + "statusBar.foreground": "#B9BABB", + "statusBar.border": "#262C30FF", + "statusBar.focusBorder": "#007ACCB3", + "statusBar.debuggingBackground": "#007ACC", + "statusBar.debuggingForeground": "#FCFEFE", + "statusBar.noFolderBackground": "#191B1D", + "statusBar.noFolderForeground": "#B9BABB", + "statusBarItem.activeBackground": "#007ACC", + "statusBarItem.hoverBackground": "#202324", + "statusBarItem.focusBorder": "#007ACCB3", + "statusBarItem.prominentBackground": "#007ACC", + "statusBarItem.prominentForeground": "#FCFEFE", + "statusBarItem.prominentHoverBackground": "#007ACC", + "tab.activeBackground": "#151719", + "tab.activeForeground": "#B9BABB", + "tab.inactiveBackground": "#191B1D", + "tab.inactiveForeground": "#878889", + "tab.border": "#262C30FF", + "tab.lastPinnedBorder": "#262C30FF", + "tab.activeBorder": "#141A1E", + "tab.hoverBackground": "#202324", + "tab.hoverForeground": "#B9BABB", + "tab.unfocusedActiveBackground": "#151719", + "tab.unfocusedActiveForeground": "#878889", + "tab.unfocusedInactiveBackground": "#191B1D", + "tab.unfocusedInactiveForeground": "#434545", + "editorGroupHeader.tabsBackground": "#191B1D", + "editorGroupHeader.tabsBorder": "#262C30FF", + "breadcrumb.foreground": "#878889", + "breadcrumb.background": "#191B1D", + "breadcrumb.focusForeground": "#B9BABB", + "breadcrumb.activeSelectionForeground": "#B9BABB", + "breadcrumbPicker.background": "#1F2223", + "notificationCenter.border": "#262C30FF", + "notificationCenterHeader.foreground": "#B9BABB", + "notificationCenterHeader.background": "#232627", + "notificationToast.border": "#262C30FF", + "notifications.foreground": "#B9BABB", + "notifications.background": "#1F2223", + "notifications.border": "#262C30FF", + "notificationLink.foreground": "#007ACC", + "extensionButton.prominentBackground": "#007ACC", + "extensionButton.prominentForeground": "#FCFEFE", + "extensionButton.prominentHoverBackground": "#0A9CFE", + "pickerGroup.border": "#262C30FF", + "pickerGroup.foreground": "#B9BABB", + "quickInput.background": "#1F2223", + "quickInput.foreground": "#B9BABB", + "quickInputList.focusBackground": "#007ACC26", + "quickInputList.focusForeground": "#B9BABB", + "quickInputList.focusIconForeground": "#B9BABB", + "terminal.foreground": "#B9BABB", + "terminal.background": "#191B1D", + "terminal.selectionBackground": "#007ACC33", + "terminalCursor.foreground": "#B9BABB", + "terminalCursor.background": "#191B1D", + "breadcrum.background": "#151719", + "quickInputTitle.background": "#1F2223" + }, + "tokenColors": [ + { + "scope": [ + "comment" + ], + "settings": { + "foreground": "#6A9955" + } + }, + { + "scope": [ + "keyword", + "storage.modifier", + "storage.type" + ], + "settings": { + "foreground": "#569cd6" + } + }, + { + "scope": [ + "string" + ], + "settings": { + "foreground": "#ce9178" + } + }, + { + "name": "Function declarations", + "scope": [ + "entity.name.function", + "support.function", + "support.constant.handlebars" + ], + "settings": { + "foreground": "#DCDCAA" + } + }, + { + "name": "Types declaration and references", + "scope": [ + "support.class", + "support.type", + "entity.name.type", + "entity.name.namespace", + "entity.name.class" + ], + "settings": { + "foreground": "#4EC9B0" + } + }, + { + "name": "Control flow keywords", + "scope": [ + "keyword.control" + ], + "settings": { + "foreground": "#C586C0" + } + }, + { + "name": "Variable and parameter name", + "scope": [ + "variable", + "meta.definition.variable.name", + "support.variable", + "entity.name.variable" + ], + "settings": { + "foreground": "#9CDCFE" + } + }, + { + "name": "Constants and enums", + "scope": [ + "variable.other.constant", + "variable.other.enummember" + ], + "settings": { + "foreground": "#4FC1FF" + } + }, + { + "name": "Numbers", + "scope": [ + "constant.numeric" + ], + "settings": { + "foreground": "#b5cea8" + } + } + ], + "semanticHighlighting": true, + "semanticTokenColors": { + "newOperator": "#C586C0", + "stringLiteral": "#ce9178", + "customLiteral": "#DCDCAA", + "numberLiteral": "#b5cea8" + } +} \ No newline at end of file diff --git a/extensions/theme-2026/themes/2026-light.json b/extensions/theme-2026/themes/2026-light.json new file mode 100644 index 00000000000..71739c4eee0 --- /dev/null +++ b/extensions/theme-2026/themes/2026-light.json @@ -0,0 +1,318 @@ +{ + "$schema": "vscode://schemas/color-theme", + "name": "2026 Light", + "type": "light", + "colors": { + "foreground": "#1A1A1A", + "disabledForeground": "#999999", + "errorForeground": "#0066CC", + "descriptionForeground": "#6B6B6B", + "icon.foreground": "#6B6B6B", + "focusBorder": "#D0D0D099", + "textBlockQuote.background": "#F5F5F5", + "textBlockQuote.border": "#D0D0D099", + "textCodeBlock.background": "#F5F5F5", + "textLink.foreground": "#007AF5", + "textLink.activeForeground": "#3F9FFF", + "textPreformat.foreground": "#6B6B6B", + "textSeparator.foreground": "#D0D0D099", + "button.background": "#0066CC", + "button.foreground": "#FFFFFF", + "button.hoverBackground": "#0A85FF", + "button.border": "#D0D0D099", + "button.secondaryBackground": "#F5F5F5", + "button.secondaryForeground": "#1A1A1A", + "button.secondaryHoverBackground": "#0066CC", + "checkbox.background": "#F5F5F5", + "checkbox.border": "#D0D0D099", + "checkbox.foreground": "#1A1A1A", + "dropdown.background": "#FFFFFF", + "dropdown.border": "#D0D0D099", + "dropdown.foreground": "#1A1A1A", + "dropdown.listBackground": "#EEEEEE", + "input.background": "#FFFFFF", + "input.border": "#D0D0D099", + "input.foreground": "#1A1A1A", + "input.placeholderForeground": "#AAAAAA", + "inputOption.activeBackground": "#0066CC33", + "inputOption.activeForeground": "#1A1A1A", + "inputOption.activeBorder": "#D0D0D099", + "inputValidation.errorBackground": "#FFFFFF", + "inputValidation.errorBorder": "#D0D0D099", + "inputValidation.errorForeground": "#1A1A1A", + "inputValidation.infoBackground": "#FFFFFF", + "inputValidation.infoBorder": "#D0D0D099", + "inputValidation.infoForeground": "#1A1A1A", + "inputValidation.warningBackground": "#FFFFFF", + "inputValidation.warningBorder": "#D0D0D099", + "inputValidation.warningForeground": "#1A1A1A", + "scrollbar.shadow": "#FFFFFF4D", + "scrollbarSlider.background": "#84848466", + "scrollbarSlider.hoverBackground": "#84848499", + "scrollbarSlider.activeBackground": "#848484CC", + "badge.background": "#0066CC", + "badge.foreground": "#FFFFFF", + "progressBar.background": "#6B6B6B", + "list.activeSelectionBackground": "#0066CC26", + "list.activeSelectionForeground": "#1A1A1A", + "list.inactiveSelectionBackground": "#F5F5F5", + "list.inactiveSelectionForeground": "#1A1A1A", + "list.hoverBackground": "#FFFFFF", + "list.hoverForeground": "#1A1A1A", + "list.dropBackground": "#0066CC1A", + "list.focusBackground": "#0066CC26", + "list.focusForeground": "#1A1A1A", + "list.focusOutline": "#D0D0D099", + "list.highlightForeground": "#1A1A1A", + "list.invalidItemForeground": "#999999", + "list.errorForeground": "#0066CC", + "list.warningForeground": "#0066CC", + "activityBar.background": "#FFFFFF", + "activityBar.foreground": "#1A1A1A", + "activityBar.inactiveForeground": "#6B6B6B", + "activityBar.border": "#D0D0D099", + "activityBar.activeBorder": "#D0D0D099", + "activityBar.activeFocusBorder": "#0066CC99", + "activityBarBadge.background": "#0066CC", + "activityBarBadge.foreground": "#FFFFFF", + "sideBar.background": "#FFFFFF", + "sideBar.foreground": "#1A1A1A", + "sideBar.border": "#D0D0D099", + "sideBarTitle.foreground": "#1A1A1A", + "sideBarSectionHeader.background": "#FFFFFF", + "sideBarSectionHeader.foreground": "#1A1A1A", + "sideBarSectionHeader.border": "#D0D0D099", + "titleBar.activeBackground": "#FFFFFF", + "titleBar.activeForeground": "#1A1A1A", + "titleBar.inactiveBackground": "#FFFFFF", + "titleBar.inactiveForeground": "#6B6B6B", + "titleBar.border": "#D0D0D099", + "menubar.selectionBackground": "#F5F5F5", + "menubar.selectionForeground": "#1A1A1A", + "menu.background": "#EEEEEE", + "menu.foreground": "#1A1A1A", + "menu.selectionBackground": "#0066CC26", + "menu.selectionForeground": "#1A1A1A", + "menu.separatorBackground": "#848484", + "menu.border": "#D0D0D099", + "editor.background": "#FFFFFF", + "editor.foreground": "#1A1A1A", + "editorLineNumber.foreground": "#6B6B6B", + "editorLineNumber.activeForeground": "#1A1A1A", + "editorCursor.foreground": "#1A1A1A", + "editor.selectionBackground": "#0066CC33", + "editor.inactiveSelectionBackground": "#0066CC80", + "editor.selectionHighlightBackground": "#0066CC1A", + "editor.wordHighlightBackground": "#0066CCB3", + "editor.wordHighlightStrongBackground": "#0066CCE6", + "editor.findMatchBackground": "#0066CC4D", + "editor.findMatchHighlightBackground": "#0066CC26", + "editor.findRangeHighlightBackground": "#F5F5F5", + "editor.hoverHighlightBackground": "#F5F5F5", + "editor.lineHighlightBackground": "#F5F5F5", + "editor.rangeHighlightBackground": "#F5F5F5", + "editorLink.activeForeground": "#0066CC", + "editorWhitespace.foreground": "#6B6B6B4D", + "editorIndentGuide.background": "#8484844D", + "editorIndentGuide.activeBackground": "#848484", + "editorRuler.foreground": "#848484", + "editorCodeLens.foreground": "#6B6B6B", + "editorBracketMatch.background": "#0066CC80", + "editorBracketMatch.border": "#D0D0D099", + "editorWidget.background": "#EEEEEE", + "editorWidget.border": "#D0D0D099", + "editorWidget.foreground": "#1A1A1A", + "editorSuggestWidget.background": "#EEEEEE", + "editorSuggestWidget.border": "#D0D0D099", + "editorSuggestWidget.foreground": "#1A1A1A", + "editorSuggestWidget.highlightForeground": "#1A1A1A", + "editorSuggestWidget.selectedBackground": "#0066CC26", + "editorHoverWidget.background": "#EEEEEE", + "editorHoverWidget.border": "#D0D0D099", + "peekView.border": "#D0D0D099", + "peekViewEditor.background": "#FFFFFF", + "peekViewEditor.matchHighlightBackground": "#0066CC33", + "peekViewResult.background": "#F5F5F5", + "peekViewResult.fileForeground": "#1A1A1A", + "peekViewResult.lineForeground": "#6B6B6B", + "peekViewResult.matchHighlightBackground": "#0066CC33", + "peekViewResult.selectionBackground": "#0066CC26", + "peekViewResult.selectionForeground": "#1A1A1A", + "peekViewTitle.background": "#F5F5F5", + "peekViewTitleDescription.foreground": "#6B6B6B", + "peekViewTitleLabel.foreground": "#1A1A1A", + "editorGutter.background": "#FFFFFF", + "editorGutter.addedBackground": "#0066CC", + "editorGutter.deletedBackground": "#0066CC", + "diffEditor.insertedTextBackground": "#0066CC26", + "diffEditor.removedTextBackground": "#99999926", + "editorOverviewRuler.border": "#D0D0D099", + "editorOverviewRuler.findMatchForeground": "#0066CC99", + "editorOverviewRuler.modifiedForeground": "#0066CC", + "editorOverviewRuler.addedForeground": "#0066CC", + "editorOverviewRuler.deletedForeground": "#0066CC", + "editorOverviewRuler.errorForeground": "#0066CC", + "editorOverviewRuler.warningForeground": "#0066CC", + "panel.background": "#F5F5F5", + "panel.border": "#D0D0D099", + "panelTitle.activeBorder": "#0066CC", + "panelTitle.activeForeground": "#1A1A1A", + "panelTitle.inactiveForeground": "#6B6B6B", + "statusBar.background": "#FFFFFF", + "statusBar.foreground": "#1A1A1A", + "statusBar.border": "#D0D0D099", + "statusBar.focusBorder": "#D0D0D099", + "statusBar.debuggingBackground": "#0066CC", + "statusBar.debuggingForeground": "#FFFFFF", + "statusBar.noFolderBackground": "#FFFFFF", + "statusBar.noFolderForeground": "#1A1A1A", + "statusBarItem.activeBackground": "#0066CC", + "statusBarItem.hoverBackground": "#FFFFFF", + "statusBarItem.focusBorder": "#D0D0D099", + "statusBarItem.prominentBackground": "#0066CC", + "statusBarItem.prominentForeground": "#FFFFFF", + "statusBarItem.prominentHoverBackground": "#0066CC", + "tab.activeBackground": "#FFFFFF", + "tab.activeForeground": "#1A1A1A", + "tab.inactiveBackground": "#FFFFFF", + "tab.inactiveForeground": "#6B6B6B", + "tab.border": "#D0D0D099", + "tab.lastPinnedBorder": "#D0D0D099", + "tab.activeBorder": "#FFFFFF", + "tab.hoverBackground": "#FFFFFF", + "tab.hoverForeground": "#1A1A1A", + "tab.unfocusedActiveBackground": "#FFFFFF", + "tab.unfocusedActiveForeground": "#6B6B6B", + "tab.unfocusedInactiveBackground": "#FFFFFF", + "tab.unfocusedInactiveForeground": "#999999", + "editorGroupHeader.tabsBackground": "#FFFFFF", + "editorGroupHeader.tabsBorder": "#D0D0D099", + "breadcrumb.foreground": "#6B6B6B", + "breadcrumb.background": "#FFFFFF", + "breadcrumb.focusForeground": "#1A1A1A", + "breadcrumb.activeSelectionForeground": "#1A1A1A", + "breadcrumbPicker.background": "#EEEEEE", + "notificationCenter.border": "#D0D0D099", + "notificationCenterHeader.foreground": "#1A1A1A", + "notificationCenterHeader.background": "#F5F5F5", + "notificationToast.border": "#D0D0D099", + "notifications.foreground": "#1A1A1A", + "notifications.background": "#EEEEEE", + "notifications.border": "#D0D0D099", + "notificationLink.foreground": "#0066CC", + "extensionButton.prominentBackground": "#0066CC", + "extensionButton.prominentForeground": "#FFFFFF", + "extensionButton.prominentHoverBackground": "#0A85FF", + "pickerGroup.border": "#D0D0D099", + "pickerGroup.foreground": "#1A1A1A", + "quickInput.background": "#EEEEEE", + "quickInput.foreground": "#1A1A1A", + "quickInputList.focusBackground": "#0066CC26", + "quickInputList.focusForeground": "#1A1A1A", + "quickInputList.focusIconForeground": "#1A1A1A", + "terminal.foreground": "#1A1A1A", + "terminal.background": "#FFFFFF", + "terminal.selectionBackground": "#0066CC33", + "terminalCursor.foreground": "#1A1A1A", + "terminalCursor.background": "#FFFFFF" + }, + "tokenColors": [ + { + "scope": [ + "comment" + ], + "settings": { + "foreground": "#008000" + } + }, + { + "scope": [ + "keyword", + "storage.modifier", + "storage.type" + ], + "settings": { + "foreground": "#0000ff" + } + }, + { + "scope": [ + "string" + ], + "settings": { + "foreground": "#a31515" + } + }, + { + "name": "Function declarations", + "scope": [ + "entity.name.function", + "support.function", + "support.constant.handlebars" + ], + "settings": { + "foreground": "#795E26" + } + }, + { + "name": "Types declaration and references", + "scope": [ + "support.class", + "support.type", + "entity.name.type", + "entity.name.namespace", + "entity.name.class" + ], + "settings": { + "foreground": "#267f99" + } + }, + { + "name": "Control flow keywords", + "scope": [ + "keyword.control" + ], + "settings": { + "foreground": "#AF00DB" + } + }, + { + "name": "Variable and parameter name", + "scope": [ + "variable", + "meta.definition.variable.name", + "support.variable", + "entity.name.variable" + ], + "settings": { + "foreground": "#001080" + } + }, + { + "name": "Constants and enums", + "scope": [ + "variable.other.constant", + "variable.other.enummember" + ], + "settings": { + "foreground": "#0070C1" + } + }, + { + "name": "Numbers", + "scope": [ + "constant.numeric" + ], + "settings": { + "foreground": "#098658" + } + } + ], + "semanticHighlighting": true, + "semanticTokenColors": { + "newOperator": "#AF00DB", + "stringLiteral": "#a31515", + "customLiteral": "#795E26", + "numberLiteral": "#098658" + } +} \ No newline at end of file