diff --git a/CHANGELOG.md b/CHANGELOG.md index 5d5f186..1d27be4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,16 @@ Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how ## [Unreleased] +## [0.1.3] - 2020-08-04 + +### Change + +- Update default dark color - more neutral (...possible) + +### Added + +- Dark color flavors - Grape and Pumpkin + ## [0.1.2] - 2020-08-03 ### Change diff --git a/README.md b/README.md index 3d2d73a..9e27d0c 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ ### ROADMAP: - [x] Better syntax colors +- [x] Dark color variants (flavors) - [ ] Light Themes --- @@ -17,6 +18,14 @@ ![taru-vscode-theme-html](images/scrsht.png) +#### Yaru Dark Grape + +![taru-vscode-theme-html](images/scrsht-dark-grape.png) + +#### Yaru Pumpkin + +![taru-vscode-theme-html](images/scrsht-dark-pumpkin.png) + #### Yaru Light [ SOON ] --- diff --git a/images/scrsht-dark-grape.png b/images/scrsht-dark-grape.png new file mode 100644 index 0000000..784b0dc Binary files /dev/null and b/images/scrsht-dark-grape.png differ diff --git a/images/scrsht-dark-pumpkin.png b/images/scrsht-dark-pumpkin.png new file mode 100644 index 0000000..0fea19b Binary files /dev/null and b/images/scrsht-dark-pumpkin.png differ diff --git a/images/scrsht.png b/images/scrsht.png index 15acb5f..cae7c86 100644 Binary files a/images/scrsht.png and b/images/scrsht.png differ diff --git a/package.json b/package.json index 109b9ac..f9440d5 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "yaru-vscode", "displayName": "Yaru VS Code Theme", "description": "Yaru VS Code Theme based on Official Ubuntu System Colors.", - "version": "0.1.2", + "version": "0.1.3", "publisher": "AdsonCicilioti", "license": "MIT", "author": "Adson Cicilioti", @@ -46,9 +46,19 @@ "contributes": { "themes": [ { - "label": "Yaru dark", + "label": "Yaru Dark", "uiTheme": "vs-dark", - "path": "./theme/yaru.json" + "path": "./theme/yaru-dark.json" + }, + { + "label": "Yaru Dark Grape", + "uiTheme": "vs-dark", + "path": "./theme/yaru-dark-grape.json" + }, + { + "label": "Yaru Dark Pumpkin", + "uiTheme": "vs-dark", + "path": "./theme/yaru-dark-pumpkin.json" } ] }, diff --git a/scripts/build.js b/scripts/build.js index a700103..85ff525 100644 --- a/scripts/build.js +++ b/scripts/build.js @@ -5,24 +5,28 @@ const generate = require('./generate'); const THEME_DIR = path.join(__dirname, '..', 'theme'); if (!fs.existsSync(THEME_DIR)) { - fs.mkdirSync(THEME_DIR); + fs.mkdirSync(THEME_DIR); } module.exports = async () => { - const { base, soft } = await generate(); + const { dark, darkGrape, darkPumpkin } = await generate(); - return Promise.all([ - fs.promises.writeFile( - path.join(THEME_DIR, 'yaru.json'), - JSON.stringify(base, null, 4) - ), - fs.promises.writeFile( - path.join(THEME_DIR, 'yaru-soft.json'), - JSON.stringify(soft, null, 4) - ), - ]); + return Promise.all([ + fs.promises.writeFile( + path.join(THEME_DIR, 'yaru-dark.json'), + JSON.stringify(dark, null, 4) + ), + fs.promises.writeFile( + path.join(THEME_DIR, 'yaru-dark-grape.json'), + JSON.stringify(darkGrape, null, 4) + ), + fs.promises.writeFile( + path.join(THEME_DIR, 'yaru-dark-pumpkin.json'), + JSON.stringify(darkPumpkin, null, 4) + ), + ]); }; if (require.main === module) { - module.exports(); + module.exports(); } diff --git a/scripts/generate.js b/scripts/generate.js index b95196a..730a887 100644 --- a/scripts/generate.js +++ b/scripts/generate.js @@ -23,48 +23,52 @@ const tinycolor = require('tinycolor2'); */ const withAlphaType = new Type('!alpha', { - kind: 'sequence', - construct: ([hexRGB, alpha]) => hexRGB + alpha, - represent: ([hexRGB, alpha]) => hexRGB + alpha, + kind: 'sequence', + construct: ([hexRGB, alpha]) => hexRGB + alpha, + represent: ([hexRGB, alpha]) => hexRGB + alpha, }); const schema = Schema.create([withAlphaType]); -/** - * Soft variant transform. - * @type {ThemeTransform} - */ -const transformSoft = (yamlContent, yamlObj) => { - const brightColors = [...yamlObj.yaru.ansi, ...yamlObj.yaru.brightOther]; - return load( - yamlContent.replace(/#[0-9A-F]{6}/g, (color) => { - if (brightColors.includes(color)) { - return tinycolor(color).desaturate(20).toHexString(); - } - return color; - }), - { schema } - ); -}; - module.exports = async () => { - const yamlFile = await readFile( - join(__dirname, '..', 'src', 'yaru.yml'), - 'utf-8' - ); + const darkYml = await readFile( + join(__dirname, '..', 'src', 'yaru-dark.yml'), + 'utf-8' + ); + const grapeYml = await readFile( + join(__dirname, '..', 'src', 'yaru-dark grape.yml'), + 'utf-8' + ); + const pumpkinYml = await readFile( + join(__dirname, '..', 'src', 'yaru-dark-pumpkin.yml'), + 'utf-8' + ); - /** @type {Theme} */ - const base = load(yamlFile, { schema }); + /** @type {Theme} */ + const dark = load(darkYml, { schema }); + const darkGrape = load(grapeYml, { schema }); + const darkPumpkin = load(pumpkinYml, { schema }); - // Remove nulls and other falsey values from colors - for (const key of Object.keys(base.colors)) { - if (!base.colors[key]) { - delete base.colors[key]; - } + // Remove nulls and other falsey values from colors + for (const key of Object.keys(dark.colors)) { + if (!dark.colors[key]) { + delete dark.colors[key]; + } + } + for (const key of Object.keys(darkGrape.colors)) { + if (!darkGrape.colors[key]) { + delete darkGrape.colors[key]; + } + } + for (const key of Object.keys(darkPumpkin.colors)) { + if (!darkPumpkin.colors[key]) { + delete darkPumpkin.colors[key]; } + } - return { - base, - soft: transformSoft(yamlFile, base), - }; + return { + dark, + darkGrape, + darkPumpkin, + }; }; diff --git a/src/yaru.yml b/src/yaru-dark grape.yml similarity index 97% rename from src/yaru.yml rename to src/yaru-dark grape.yml index 5d88b19..8da099c 100644 --- a/src/yaru.yml +++ b/src/yaru-dark grape.yml @@ -1,7 +1,7 @@ -name: Yaru -author: Zeno Rocha +name: Yaru Dark Grape +author: Adson CIcilioti maintainers: - - Derek P Sifford + - Adson Cicilioti semanticClass: theme.yaru semanticHighlighting: true yaru: @@ -92,7 +92,7 @@ colors: # Button Control button.background: *UI_BTN # Button background color button.foreground: *FG # Button foreground color - button.hoverBackground: *YARU_ORG # Button background color when hovering + button.hoverBackground: *YARU_GRN # Button background color when hovering button.secondaryBackground: *YARU_ORG button.secondaryForeground: @@ -161,13 +161,13 @@ colors: sideBar.foreground: *TXT_FADED # Side Bar foreground color. The Side Bar is the container for views like Explorer and Search sideBar.border: # Side Bar border color on the side separating the editor sideBarTitle.foreground: *FG # Side Bar title foreground color - sideBarSectionHeader.background: !alpha [*BGLight, 30] # Side Bar section header background color + sideBarSectionHeader.background: !alpha [*BGLight, 50] # Side Bar section header background color sideBarSectionHeader.foreground: *TXT_FADED # Side Bar section header foreground color sideBarSectionHeader.border: *BGDarker # Side bar section header border color # Editor Group & Tabs editorGroup.background: # Background color of an editor group. The background color shows up when dragging editor groups around - editorGroup.border: *YARU_ORG # Color to separate multiple editor groups from each other + editorGroup.border: *BGLighter # Color to separate multiple editor groups from each other editorGroup.dropBackground: *TAB_DROP_BG # Background color when dragging editors around editorGroupHeader.noTabsBackground: # Background color of the editor group title header when Tabs are disabled editorGroupHeader.tabsBackground: *BGLight # Background color of the Tabs container @@ -206,7 +206,7 @@ colors: editor.hoverHighlightBackground: !alpha [*CYAN, 50] # Highlight below the word for which a hover is shown editor.lineHighlightBackground: *BGLighter # Background color for the highlight of line at the cursor position - editor.lineHighlightBorder: # Background color for the border around the line at the cursor position + editor.lineHighlightBorder: *BGLighter # Background color for the border around the line at the cursor position editorLink.activeForeground: *CYAN # Color of active links editor.rangeHighlightBackground: !alpha [*YARU_PRP, 15] # Background color of highlighted ranges, like by Quick Open and Find features @@ -311,14 +311,14 @@ colors: # Panel Colors panel.background: *BG # Panel background color - panel.border: *BGDarker # Panel border color on the top separating to the editor + panel.border: *YARU_PRP # Panel border color on the top separating to the editor panelTitle.activeBorder: *YARU_ORG # Border color for the active panel title panelTitle.activeForeground: *FG # Title color for the active panel panelTitle.inactiveForeground: *TXT_FADED # Title color for the inactive panel # Status Bar Colors - statusBar.background: *YARU_ORG # Standard Status Bar background color - statusBar.foreground: *FG # Status Bar foreground color + statusBar.background: *YARU_PRP # Standard Status Bar background color + statusBar.foreground: *COLOR15 # Status Bar foreground color statusBar.debuggingBackground: # Status Bar background color when a program is being debugged statusBar.debuggingForeground: # Status Bar foreground color when a program is being debugged statusBar.noFolderBackground: *BGDarker # Status Bar foreground color when no folder is opened @@ -352,11 +352,11 @@ colors: # Extensions extensionButton.prominentForeground: *FG # Extension view button foreground color (for example Install button) - extensionButton.prominentBackground: !alpha [*GREEN, 90] # Extension view button background color - extensionButton.prominentHoverBackground: !alpha [*GREEN, 60] # Extension view button background hover color + extensionButton.prominentBackground: *YARU_GRN # Extension view button background color + extensionButton.prominentHoverBackground: !alpha [*YARU_GRN, 90] # Extension view button background hover color # Quick Picker - pickerGroup.border: *YARU_ORG # Quick picker (Quick Open) color for grouping borders + pickerGroup.border: *UI_BTN # Quick picker (Quick Open) color for grouping borders pickerGroup.foreground: *CYAN # Quick picker (Quick Open) color for grouping labels # Debug diff --git a/src/yaru-dark-pumpkin.yml b/src/yaru-dark-pumpkin.yml new file mode 100644 index 0000000..0180555 --- /dev/null +++ b/src/yaru-dark-pumpkin.yml @@ -0,0 +1,1147 @@ +name: Yaru Dark Pumpkin +author: Adson CIcilioti +maintainers: + - Adson Cicilioti +semanticClass: theme.yaru +semanticHighlighting: true +yaru: + base: + - &BG '#222222' + - &FG '#fdfdfd' + - &SELECTION '#1BAEE23f' + - &COMMENT '#97918F' + - &ORANGE '#FFA267' + - &RED '#FF794A' + - &GREEN '#52D866' + - &YELLOW '#FFDC98' + - &PURPLE '#EE80D6' + - &PINK '#FF9D88' + - &CYAN '#60D4FD' + ansi: + - &COLOR0 '#222222' + - &COLOR1 '#FF794A' + - &COLOR2 '#52D866' + - &COLOR3 '#FFDC98' + - &COLOR4 '#EE80D6' + - &COLOR5 '#FF9D88' + - &COLOR6 '#60D4FD' + - &COLOR7 '#fdfdfd' + - &COLOR8 '#928986' + - &COLOR9 '#FF6D4C' + - &COLOR10 '#69FF94' + - &COLOR11 '#FFF5BC' + - &COLOR12 '#FFA2EB' + - &COLOR13 '#FFAEA0' + - &COLOR14 '#98E4FF' + - &COLOR15 '#FFFFFF' + brightOther: + # Temporary (awaiting fix) + - &TEMP_QUOTES '#FFF5BC' + - &TEMP_PROPERTY_QUOTES '#98E4FF' + other: + - &LineHighlight '#343434' + - &NonText '#FFFFFF1A' + - &WHITE '#FFFFFF' + - &TAB_DROP_BG '#2c2c2c' + # UI Variants + - &BGLighter '#343434' + - &BGLight '#2C2C2C' # + - &BGDark '#222222' # + - &BGDarker '#1A1A1A' # + # YARU COLORS + - &OUTLINE '#EF8661b3' + - &YARU_ORG '#DF4A16' + - &YARU_PRP '#773F72' + - &YARU_GRN '#0C6D1A' + - &TXT_FADED '#c2c2c2' + - &UI_BTN '#484848' + +# User Interface (more info: https://code.visualstudio.com/docs/getstarted/theme-color-reference) +colors: + # Integrated Terminal Colors + terminal.background: *BG + terminal.foreground: *FG + terminal.ansiBrightBlack: *COLOR8 + terminal.ansiBrightRed: *COLOR9 + terminal.ansiBrightGreen: *COLOR10 + terminal.ansiBrightYellow: *COLOR11 + terminal.ansiBrightBlue: *COLOR12 + terminal.ansiBrightMagenta: *COLOR13 + terminal.ansiBrightCyan: *COLOR14 + terminal.ansiBrightWhite: *COLOR15 + terminal.ansiBlack: *COLOR0 + terminal.ansiRed: *COLOR1 + terminal.ansiGreen: *COLOR2 + terminal.ansiYellow: *COLOR3 + terminal.ansiBlue: *COLOR4 + terminal.ansiMagenta: *COLOR5 + terminal.ansiCyan: *COLOR6 + terminal.ansiWhite: *COLOR7 + + # Contrast Colors + contrastBorder: *BGDarker # An extra border around elements to separate them from others for greater contrast + contrastActiveBorder: # An extra border around active elements to separate them from others for greater contrast + + # Base Colors + focusBorder: *OUTLINE # Overall border color for focused elements. This color is only used if not overridden by a component + foreground: *FG # Overall foreground color. This color is only used if not overridden by a component + widget.shadow: *BGDarker # Shadow color of widgets such as Find/Replace inside the editor + selection.background: *YARU_PRP # Background color of text selections in the workbench (for input fields or text areas, does not apply to selections within the editor and the terminal) + errorForeground: *RED # Overall foreground color for error messages (this color is only used if not overridden by a component) + + # Button Control + button.background: *UI_BTN # Button background color + button.foreground: *FG # Button foreground color + button.hoverBackground: *YARU_GRN # Button background color when hovering + button.secondaryBackground: *YARU_ORG + button.secondaryForeground: + + # Dropdown Control + dropdown.background: *BGLight # Dropdown background + dropdown.border: *OUTLINE # Dropdown border + dropdown.foreground: *FG # Dropdown foreground + + # Input Control + input.background: *BGLight # Input box background + input.foreground: *FG # Input box foreground + input.border: *OUTLINE # Input box border + input.placeholderForeground: !alpha [*TXT_FADED, 70] # Input box foreground color for placeholder text + inputOption.activeBorder: *YARU_ORG # Border color of activated options in input fields + inputValidation.infoForeground: # Input validation foreground color for information severity + inputValidation.infoBackground: # Input validation background color for information severity + inputValidation.infoBorder: *PINK # Input validation border color for information severity + inputValidation.warningForeground: # Input validation foreground color for warning severity + inputValidation.warningBackground: # Input validation background color for information warning + inputValidation.warningBorder: *ORANGE # Input validation border color for warning severity + inputValidation.errorForeground: # Input validation foreground color for error severity + inputValidation.errorBackground: # Input validation background color for error severity + inputValidation.errorBorder: *RED # Input validation border color for error severity + + # Scroll Bar Control + scrollbar.shadow: *BGDarker # Scroll Bar shadow to indicate that the view is scrolled + scrollbarSlider.activeBackground: *TXT_FADED # Slider background color when active + scrollbarSlider.background: *BGLighter # Slider background color + scrollbarSlider.hoverBackground: # Slider background color when hovering + + # Badge + badge.foreground: *COLOR15 # Badge foreground color + badge.background: *YARU_GRN # Badge background color + + # Progress Bar + progressBar.background: *PINK # Background color of the progress bar shown for long running operations + + # List & Trees + list.activeSelectionBackground: *BGLight # List/Tree background color for the selected item when the list/tree is active + list.activeSelectionForeground: *FG # List/Tree foreground color for the selected item when the list/tree is active + list.dropBackground: !alpha [*YARU_PRP, 50] # List/Tree drag and drop background when moving items around using the mouse + list.focusBackground: !alpha [*YARU_PRP, 30] # List/Tree background color for the focused item when the list/tree is active + list.highlightForeground: *CYAN # List/Tree foreground color of the match highlights when searching inside the list/tree + list.hoverBackground: !alpha [*YARU_PRP, 30] # List/Tree background when hovering over items using the mouse + list.inactiveSelectionBackground: !alpha [*BGLight, 50] # List/Tree background color for the selected item when the list/tree is inactive + list.inactiveSelectionForeground: # List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not + list.warningForeground: *ORANGE # Color of warning decorations in the explorer + list.errorForeground: *RED # Color of error decorations in the explorer + list.hoverForeground: # List/Tree foreground when hovering over items using the mouse + list.focusForeground: # List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not + + # Activity Bar + activityBar.background: *BGLight # Activity Bar background color + activityBar.inactiveForeground: *TXT_FADED # Activity bar item foreground color when it is inactive + activityBar.dropBackground: # Drag and drop feedback color for the Activity Bar items + activityBar.dropBorder: *CYAN + activityBar.foreground: *FG # Activity bar foreground color (for example used for the icons) + activityBar.border: # Activity Bar border color with the Side Bar + activityBar.activeBorder: *YARU_ORG # Activity Bar indicator color + activityBar.activeBackground: *YARU_ORG # Activity Bar indicator background color + activityBarBadge.background: *YARU_ORG # Activity notification badge background color + activityBarBadge.foreground: *COLOR15 # Activity notification badge foreground color + + # Side Bar + sideBar.background: *BGDark # Side Bar background color + sideBar.foreground: *TXT_FADED # Side Bar foreground color. The Side Bar is the container for views like Explorer and Search + sideBar.border: # Side Bar border color on the side separating the editor + sideBarTitle.foreground: *FG # Side Bar title foreground color + sideBarSectionHeader.background: !alpha [*BGLight, 50] # Side Bar section header background color + sideBarSectionHeader.foreground: *TXT_FADED # Side Bar section header foreground color + sideBarSectionHeader.border: *BGDarker # Side bar section header border color + + # Editor Group & Tabs + editorGroup.background: # Background color of an editor group. The background color shows up when dragging editor groups around + editorGroup.border: *BGLighter # Color to separate multiple editor groups from each other + editorGroup.dropBackground: *TAB_DROP_BG # Background color when dragging editors around + editorGroupHeader.noTabsBackground: # Background color of the editor group title header when Tabs are disabled + editorGroupHeader.tabsBackground: *BGLight # Background color of the Tabs container + editorGroupHeader.tabsBorder: # Border color of the editor group title header when tabs are enabled. Editor groups are the containers of editors + tab.activeBackground: *BG # Active Tab background color + tab.activeForeground: *FG # Active Tab foreground color in an active group + tab.border: *BGDarker # Border to separate Tabs from each other + tab.activeBorderTop: *CYAN # A border drawn to the top of the active tab + tab.activeBorder: # A border drawn to the bottom of the active tab + tab.unfocusedActiveBorder: # A border drawn to the bottom of the active tab in an editor group that is not focused + tab.inactiveBackground: *BGLight # Inactive Tab background color + tab.inactiveModifiedBorder: *YARU_ORG + tab.inactiveForeground: *TXT_FADED # Inactive Tab foreground color in an active group + tab.unfocusedActiveForeground: # Active tab foreground color in an inactive editor group + tab.unfocusedInactiveForeground: # Inactive tab foreground color in an inactive editor group + tab.activeModifiedBorder: *CYAN + + # Editor Colors + editor.foreground: *FG + editor.background: *BG + editorLineNumber.foreground: !alpha [*COMMENT, 75] + editorCursor.foreground: + + editor.selectionBackground: *SELECTION # Color of the editor selection + editor.selectionHighlightBackground: *BGLighter # Color for regions with the same content as the selection + editor.inactiveSelectionBackground: # Color of the selection in an inactive editor + editor.foldBackground: *BGDark # Background color for folded ranges + + editor.wordHighlightBackground: !alpha [*CYAN, 50] # Background color of a symbol during read-access, for example when reading a variable + editor.wordHighlightStrongBackground: !alpha [*GREEN, 30] # Background color of a symbol during write-access, for example when writing to a variable + + editor.findMatchBackground: !alpha [*ORANGE, 80] + editor.findMatchHighlightBackground: !alpha [*WHITE, 40] # Color of the other search matches + editor.findRangeHighlightBackground: *LineHighlight # Color the range limiting the search + + editor.hoverHighlightBackground: !alpha [*CYAN, 50] # Highlight below the word for which a hover is shown + + editor.lineHighlightBackground: *BGLighter # Background color for the highlight of line at the cursor position + editor.lineHighlightBorder: *BGLighter # Background color for the border around the line at the cursor position + + editorLink.activeForeground: *CYAN # Color of active links + editor.rangeHighlightBackground: !alpha [*YARU_PRP, 15] # Background color of highlighted ranges, like by Quick Open and Find features + + editor.snippetTabstopHighlightBackground: *BG # Highlight background color of a snippet tabstop + editor.snippetTabstopHighlightBorder: *COMMENT # Highlight border color of a snippet tabstop + editor.snippetFinalTabstopHighlightBackground: *BG # Highlight background color of the final tabstop of a snippet + editor.snippetFinalTabstopHighlightBorder: *GREEN # Highlight border color of the final tabstop of a snippet + + editorWhitespace.foreground: *NonText # Color of whitespace characters in the editor + editorIndentGuide.background: *NonText # Color of the editor indentation guides + editorIndentGuide.activeBackground: !alpha [*WHITE, 45] # Color of the active indentation guide + editorRuler.foreground: *NonText # Color of the editor rulers + + editorCodeLens.foreground: *COMMENT # Foreground color of an editor CodeLens + + # NOTE: These are not set because they tend to be highly contested from + # person to person. Thus, setting these is probably better suited + # for workbench.colorCustomizations in User Settings + editorBracketMatch.background: # Background color behind matching brackets + editorBracketMatch.border: # Color for matching brackets boxes + + editorOverviewRuler.border: *BGDarker # Color of the overview ruler border + editorOverviewRuler.findMatchForeground: + editorOverviewRuler.rangeHighlightForeground: + editorOverviewRuler.selectionHighlightForeground: *ORANGE + editorOverviewRuler.wordHighlightForeground: *CYAN + editorOverviewRuler.wordHighlightStrongForeground: *GREEN + editorOverviewRuler.modifiedForeground: !alpha [*CYAN, 80] + editorOverviewRuler.addedForeground: !alpha [*GREEN, 80] + editorOverviewRuler.deletedForeground: !alpha [*RED, 80] + editorOverviewRuler.errorForeground: !alpha [*RED, 80] + editorOverviewRuler.warningForeground: !alpha [*ORANGE, 80] + editorOverviewRuler.infoForeground: !alpha [*CYAN, 80] + + editorError.foreground: *RED # Foreground color of error squigglies in the editor + editorError.border: # Border color of error squigglies in the editor + editorWarning.foreground: *CYAN # Foreground color of warning squigglies in the editor + editorWarning.border: # Border color of warning squigglies in the editor + + editorGutter.background: # Background color of the editor gutter + editorGutter.modifiedBackground: !alpha [*CYAN, 80] # Editor gutter background color for lines that are modified + editorGutter.addedBackground: !alpha [*GREEN, 80] # Editor gutter background color for lines that are added + editorGutter.deletedBackground: !alpha [*RED, 80] # Editor gutter background color for lines that are deleted + + # Explorer Colors + gitDecoration.modifiedResourceForeground: *CYAN + gitDecoration.deletedResourceForeground: *RED + gitDecoration.untrackedResourceForeground: *GREEN + gitDecoration.ignoredResourceForeground: *COMMENT + gitDecoration.conflictingResourceForeground: *ORANGE + + # Diff Editor Colors + diffEditor.insertedTextBackground: !alpha [*GREEN, 20] # Background color for inserted text + diffEditor.insertedTextBorder: # Outline color for inserted text + diffEditor.removedTextBackground: !alpha [*RED, 50] # Background color for removed text + diffEditor.removedTextBorder: # Outline color for removed text + + # Editor Widget Colors + editorWidget.background: *BGDark # Background color of editor widgets, such as Find/Replace + editorWidgetBorder: # Border color of the editor widget unless the widget does not contain a border or defines its own border color + + editorSuggestWidget.background: *BGDark # Background color of the suggestion widget + editorSuggestWidget.border: # Border color of the suggestion widget + editorSuggestWidget.foreground: *FG # Foreground color of the suggestion widget + editorSuggestWidget.highlightForeground: # Color of the match highlights in the suggestion widget + editorSuggestWidget.selectedBackground: *SELECTION # Background color of the selected entry in the suggestion widget + + editorHoverWidget.background: *BG # Background color of the editor hover + editorHoverWidget.border: *COMMENT # Border color of the editor hover + + debugExceptionWidget.background: # Exception widget background color + debugExceptionWidget.border: # Exception widget border color + + editorMarkerNavigation.background: *BGDark # Editor marker navigation widget background + editorMarkerNavigationError.background: # Editor marker navigation widget error color + editorMarkerNavigationWarning.background: # Editor marker navigation widget warning color + + # Peek View Colors + peekView.border: *SELECTION # Color of the peek view borders and arrow + peekViewEditor.background: *BG # Background color of the peek view editor + peekViewEditorGutter.background: # Background color of the gutter in the peek view editor + peekViewEditor.matchHighlightBackground: !alpha [*YELLOW, 80] # Match highlight color in the peek view editor + peekViewResult.background: *BGDark # Background color of the peek view result list + peekViewResult.fileForeground: *FG # Foreground color for file nodes in the peek view result list + peekViewResult.lineForeground: *FG # Foreground color for line nodes in the peek view result list + peekViewResult.matchHighlightBackground: !alpha [*YELLOW, 80] # Match highlight color in the peek view result list + peekViewResult.selectionBackground: *SELECTION # Background color of the selected entry in the peek view result list + peekViewResult.selectionForeground: *FG # Foreground color of the selected entry in the peek view result list + peekViewTitle.background: *BGDarker # Background color of the peek view title area + peekViewTitleDescription.foreground: *COMMENT # Color of the peek view title info + peekViewTitleLabel.foreground: *FG # Color of the peek view title + + # Merge Conflicts + merge.currentHeaderBackground: !alpha [*GREEN, 90] # Current header background in inline merge conflicts + merge.currentContentBackground: # Current content background in inline merge conflicts + merge.incomingHeaderBackground: !alpha [*YARU_ORG, 90] # Incoming header background in inline merge conflicts + merge.incomingContentBackground: # Incoming content background in inline merge conflicts + merge.border: # Border color on headers and the splitter in inline merge conflicts + editorOverviewRuler.currentContentForeground: *GREEN # Current overview ruler foreground for inline merge conflicts + editorOverviewRuler.incomingContentForeground: *YARU_ORG # Incoming overview ruler foreground for inline merge conflicts + + # Panel Colors + panel.background: *BG # Panel background color + panel.border: *YARU_ORG # Panel border color on the top separating to the editor + panelTitle.activeBorder: *YARU_ORG # Border color for the active panel title + panelTitle.activeForeground: *FG # Title color for the active panel + panelTitle.inactiveForeground: *TXT_FADED # Title color for the inactive panel + + # Status Bar Colors + statusBar.background: *YARU_ORG # Standard Status Bar background color + statusBar.foreground: *COLOR15 # Status Bar foreground color + statusBar.debuggingBackground: # Status Bar background color when a program is being debugged + statusBar.debuggingForeground: # Status Bar foreground color when a program is being debugged + statusBar.noFolderBackground: *BGDarker # Status Bar foreground color when no folder is opened + statusBar.noFolderForeground: *FG # Status Bar background color when no folder is opened + statusBarItem.activeBackground: # Status Bar item background color when clicking + statusBarItem.hoverBackground: # Status Bar item background color when hovering + statusBarItem.prominentBackground: *RED # Status Bar prominent items background color. Prominent items stand out from other Status Bar entries to indicate importance + statusBarItem.prominentHoverBackground: *ORANGE # Status Bar prominent items background color when hovering. Prominent items stand out from other Status Bar entries to indicate importance + statusBarItem.remoteForeground: *COLOR15 # Background color for the remote indicator on the status bar + statusBarItem.remoteBackground: *YARU_GRN # Foreground color for the remote indicator on the status bar + statusBar.border: + + # Title Bar Colors (MacOS Only) + titleBar.activeBackground: *BGLight # Title Bar background when the window is active + titleBar.activeForeground: *FG # Title Bar foreground when the window is active + titleBar.inactiveBackground: *BGDark # Title Bar background when the window is inactive + titleBar.inactiveForeground: *TXT_FADED # Title Bar foreground when the window is inactive + + # Notification Dialog Colors + notification.background: *BG # Notifications background color + notification.foreground: *FG # Notifications foreground color + notification.buttonBackground: *YARU_ORG + notification.buttonForeground: *FG + notification.buttonHoverBackground: *LineHighlight + notification.errorBackground: *RED + notification.errorForeground: *FG + notification.infoBackground: *CYAN + notification.infoForeground: *BG + notification.warningBackground: *ORANGE + notification.warningForeground: *BG + + # Extensions + extensionButton.prominentForeground: *FG # Extension view button foreground color (for example Install button) + extensionButton.prominentBackground: *YARU_GRN # Extension view button background color + extensionButton.prominentHoverBackground: !alpha [*YARU_GRN, 90] # Extension view button background hover color + + # Quick Picker + pickerGroup.border: *UI_BTN # Quick picker (Quick Open) color for grouping borders + pickerGroup.foreground: *CYAN # Quick picker (Quick Open) color for grouping labels + + # Debug + debugToolBar.background: *BGDark # Debug toolbar background color + + # Welcome Page + welcomePage.buttonBackground: # Background color for the buttons on the Welcome page + welcomePage.buttonHoverBackground: # Hover background color for the buttons on the Welcome page + walkThrough.embeddedEditorBackground: *BGDark # Background color for the embedded editors on the Interactive Playground + + # Setting Editor + # settings.headerForeground: *FG # The foreground color for a section header or active title + # settings.modifiedItemForeground: *ORANGE # The foreground color for a the modified setting indicator + # settings.modifiedItemIndicator: *ORANGE # The color of the line that indicates a modified setting + # settings.inactiveSelectedItemBorder: # The color of the selected setting row border, when the settings list does not have focus + # settings.dropdownBackground: *BGDark # Dropdown background + # settings.dropdownForeground: *FG # Dropdown foreground + # settings.dropdownBorder: *BGDarker # Dropdown border + # settings.checkboxBackground: *BGDark # Checkbox background + # settings.checkboxForeground: *FG # Checkbox foreground + # settings.checkboxBorder: *BGDarker # Checkbox border + # settings.textInputBackground: *BGDark # Text input box background + # settings.textInputForeground: *FG # Text input box foreground + # settings.textInputBorder: *BGDarker # Text input box border + # settings.numberInputBackground: *BGDark # Number input box background + # settings.numberInputForeground: *FG # Number input box foreground + # settings.numberInputBorder: *BGDarker # Number input box border + + # Breadcrumbs + breadcrumb.foreground: *COMMENT # Color of breadcrumb items + breadcrumb.background: *BG + breadcrumb.focusForeground: *FG # Color of focused breadcrumb items + breadcrumb.activeSelectionForeground: *FG # Color of selected breadcrumb items + breadcrumbPicker.background: *BG # Background color of breadcrumb item picker + + # Misc + + # MINIMAP + minimap.selectionHighlight: !alpha [*CYAN, 50] + minimap.findMatchHighlight: !alpha [*ORANGE, 85] + + # MENI + menu.background: *BGLight + menu.selectionBackground: *YARU_ORG + menu.selectionForeground: *COLOR15 + menu.foreground: *TXT_FADED + menu.separatorBackground: *BGLighter + menubar.selectionBackground: *YARU_ORG + menubar.selectionForeground: *COLOR15 + + listFilterWidget.background: *BGLight # Background color of the type filter widget in lists and trees. + listFilterWidget.outline: *BGLighter # Outline color of the type filter widget in lists and trees. + listFilterWidget.noMatchesOutline: *RED # Outline color of the type filter widget in lists and trees, when there are no matches. + +# Syntaxes +tokenColors: + # ============================================================================= + # General + # ============================================================================= + + - scope: + - emphasis + settings: + fontStyle: italic + - scope: + - strong + settings: + fontStyle: bold + - scope: + - header + settings: + foreground: *PURPLE + - scope: + - source + settings: + foreground: *FG + + # Diffs + # ====== + - scope: + - meta.diff + - meta.diff.header + settings: + foreground: *COMMENT + - scope: + - markup.inserted + settings: + foreground: *GREEN + - scope: + - markup.deleted + settings: + foreground: *RED + - scope: + - markup.changed + settings: + foreground: *ORANGE + - scope: + - invalid + settings: + foreground: *RED + fontStyle: underline italic + - scope: + - invalid.deprecated + settings: + foreground: *FG + fontStyle: underline italic + - scope: + - entity.name.filename + settings: + foreground: *YELLOW + - scope: + - markup.error + settings: + foreground: *RED + + # Markdown / RST / Prose + # ====================== + + - name: Underlined markup + scope: + - markup.underline + settings: + fontStyle: underline + + - name: Bold markup + scope: + - markup.bold + settings: + fontStyle: bold + foreground: *ORANGE + + - name: Markup headings + scope: + - markup.heading + settings: + fontStyle: bold + foreground: *PURPLE + + - name: Markup italic + scope: + - markup.italic + settings: + foreground: *YELLOW + fontStyle: italic + + - name: Bullets, lists (prose) + scope: + - beginning.punctuation.definition.list.markdown + - beginning.punctuation.definition.quote.markdown + - punctuation.definition.link.restructuredtext + settings: + foreground: *CYAN + + - name: Inline code (prose) + scope: + - markup.inline.raw + - markup.raw.restructuredtext + settings: + foreground: *GREEN + + - name: Links (prose) + scope: + - markup.underline.link + - markup.underline.link.image + settings: + foreground: *CYAN + + - 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: *PINK + + - name: Blockquotes (prose) + scope: + - entity.name.directive.restructuredtext + - markup.quote + settings: + foreground: *YELLOW + fontStyle: italic + + - name: Horizontal rule (prose) + scope: + - meta.separator.markdown + settings: + foreground: *COMMENT + + - name: Code blocks + scope: + - fenced_code.block.language + - markup.raw.inner.restructuredtext + - markup.fenced_code.block.markdown punctuation.definition.markdown + settings: + foreground: *GREEN + + - name: Prose constants + scope: + - punctuation.definition.constant.restructuredtext + settings: + foreground: *PURPLE + + - name: Braces in markdown headings + scope: + - markup.heading.markdown punctuation.definition.string.begin + - markup.heading.markdown punctuation.definition.string.end + settings: + foreground: *PURPLE + + - name: Braces in markdown paragraphs + scope: + - meta.paragraph.markdown punctuation.definition.string.begin + - meta.paragraph.markdown punctuation.definition.string.end + settings: + foreground: *FG + + - 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: *YELLOW + + # ============================================================================= + # Classes + # ============================================================================= + + - name: User-defined class names + scope: + - entity.name.type.class + - entity.name.class + settings: + foreground: *CYAN + fontStyle: normal + + - name: this, super, self, etc. + scope: + - keyword.expressions-and-types.swift + - keyword.other.this + - variable.language + - variable.language punctuation.definition.variable.php # the "$" symbol in $this + - variable.other.readwrite.instance.ruby # ruby's "@" instance symbol + - variable.parameter.function.language.special # Special words as parameters + settings: + foreground: *PURPLE + fontStyle: italic + + - name: Inherited classes + scope: + - entity.other.inherited-class + settings: + fontStyle: italic + foreground: *CYAN + + # ============================================================================= + # Comments + # ============================================================================= + + - name: Comments + scope: + - comment + - punctuation.definition.comment + - unused.comment + - wildcard.comment + settings: + foreground: *COMMENT + + - name: JSDoc-style keywords + scope: + - comment keyword.codetag.notation + - comment.block.documentation keyword + - comment.block.documentation storage.type.class + settings: + foreground: *PINK + + - name: JSDoc-style types + scope: + - comment.block.documentation entity.name.type + settings: + foreground: *CYAN + fontStyle: italic + + - name: JSDoc-style type brackets + scope: + - comment.block.documentation entity.name.type punctuation.definition.bracket + settings: + foreground: *CYAN + + - name: JSDoc-style comment parameters + scope: + - comment.block.documentation variable + settings: + foreground: *ORANGE + fontStyle: italic + + # ============================================================================= + # Constants + # ============================================================================= + + - name: Constants + scope: + - constant + - variable.other.constant + settings: + foreground: *PURPLE + + - name: Constant escape sequences + scope: + - constant.character.escape + - constant.character.string.escape + - constant.regexp + settings: + foreground: *PINK + + # ============================================================================= + # Entities + # ============================================================================= + + - name: HTML tags + scope: + - entity.name.tag + settings: + foreground: *PINK + + - name: CSS attribute parent selectors ('&') + scope: + - entity.other.attribute-name.parent-selector + settings: + foreground: *PINK + + - name: HTML/CSS attribute names + scope: + - entity.other.attribute-name + settings: + foreground: *GREEN + fontStyle: italic + + # ============================================================================= + # Functions/Methods + # ============================================================================= + + - name: Function names + scope: + - entity.name.function + - meta.function-call.generic + - 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: *GREEN + + - name: Function parameters + scope: + - entity.name.variable.parameter + - meta.at-rule.function variable # Sass function params + - meta.at-rule.mixin variable # Sass mixin params + - meta.function.arguments variable.other.php + - meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql + - variable.parameter + settings: + fontStyle: italic + foreground: *ORANGE + + - name: Decorators + scope: + - meta.decorator variable.other.readwrite + - meta.decorator variable.other.property + settings: + foreground: *GREEN + fontStyle: italic + + - name: Decorator Objects + scope: + - meta.decorator variable.other.object + settings: + foreground: *GREEN + + # ============================================================================= + # Keywords + # ============================================================================= + + - name: Keywords + scope: + - keyword + - punctuation.definition.keyword + settings: + foreground: *PINK + + - 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: *PINK + + # ============================================================================= + # Language Built-ins + # ============================================================================= + + - name: Language Built-ins + scope: + - support + settings: + fontStyle: italic + foreground: *CYAN + + - name: Built-in magic functions and constants + scope: + - support.function.magic + - support.variable + - variable.other.predefined + settings: + fontStyle: regular + foreground: *PURPLE + + - name: Built-in functions / properties + scope: + - support.function + - support.type.property-name + settings: + fontStyle: regular + + # ============================================================================= + # Punctuation + # ============================================================================= + + - 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 # Sass placeholder `%` symbols + - 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: *PINK + + - name: Brackets, braces, parens, etc. + scope: + - keyword.operator.other.powershell # Commas + - 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 # HTML tags in comments + - punctuation.definition.type.begin + - punctuation.definition.type.end + - punctuation.section.scope.begin + - punctuation.section.scope.end + - storage.type.generic.java + - string.template meta.brace + - string.template punctuation.accessor + settings: + foreground: *FG + + - 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 # PHP edge case + - punctuation.section.embedded.end source.ruby # Issue with ruby's tmLanguage + - punctuation.definition.variable.makefile + settings: + foreground: *PINK + + # ============================================================================= + # Serializable / Config Langages + # ============================================================================= + + - name: Keys (serializable languages) + scope: + - entity.name.function.target.makefile + - entity.name.section.toml + - entity.name.tag.yaml + - variable.other.key.toml + settings: + foreground: *CYAN + + - name: Dates / timestamps (serializable languages) + scope: + - constant.other.date + - constant.other.timestamp + settings: + foreground: *ORANGE + + - name: YAML aliases + scope: + - variable.other.alias.yaml + settings: + fontStyle: italic underline + foreground: *GREEN + + # ============================================================================= + # Storage + # ============================================================================= + + - 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: *PINK + + - 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: *CYAN + + - name: Generics, templates, and mapped type declarations + scope: + - entity.name.type.type-parameter + - meta.indexer.mappedtype.declaration entity.name.type # Mapped type declarations + - meta.type.parameters entity.name.type # Generic type declarations + settings: + foreground: *ORANGE + + - name: Modifiers + scope: + - storage.modifier + settings: + foreground: *PINK + + # ============================================================================= + # RegExp + # ============================================================================= + + - name: RegExp string + scope: + - string.regexp + - constant.other.character-class.set.regexp + - constant.character.escape.backslash.regexp + settings: + foreground: *YELLOW + + - name: Non-capture operators + scope: + # NOTE: The scope name is a misnomer. It is actually non-capture operators + - punctuation.definition.group.capture.regexp + settings: + foreground: *PINK + + - name: RegExp start and end characters + scope: + - string.regexp punctuation.definition.string.begin + - string.regexp punctuation.definition.string.end + settings: + foreground: *RED + + - name: Character group + scope: + - punctuation.definition.character-class.regexp + settings: + foreground: *CYAN + + - name: Capture groups + scope: + - punctuation.definition.group.regexp + settings: + foreground: *ORANGE + + - name: Assertion operators + scope: + - punctuation.definition.group.assertion.regexp + - keyword.operator.negation.regexp + settings: + foreground: *RED + + - name: Positive lookaheads + scope: + - meta.assertion.look-ahead.regexp + settings: + foreground: *GREEN + + # ============================================================================= + # Strings + # ============================================================================= + + - name: Strings + scope: + - string + settings: + foreground: *YELLOW + + - name: String quotes (temporary vscode fix) + scope: + # NOTE: This is a temporary fix for VSCode expand selection. + # See (https://github.com/Microsoft/vscode/issues/4795) + - punctuation.definition.string.begin + - punctuation.definition.string.end + settings: + foreground: *TEMP_QUOTES + + - name: Property quotes (temporary vscode fix) + scope: + # NOTE: Same as above + - punctuation.support.type.property-name.begin + - punctuation.support.type.property-name.end + settings: + foreground: *TEMP_PROPERTY_QUOTES + + - 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: *COMMENT + + # ============================================================================= + # Variables + # ============================================================================= + + - name: Variables and object properties + scope: + - variable + - constant.other.key.perl # Perl edge case + - support.variable.property # Object properties + - variable.other.constant.js # Fix incorrect highlighting of pseudo-constants in js, jsx + - variable.other.constant.ts # Fixes incorrect highlighting of pseudo-constants in ts + - variable.other.constant.tsx # Fixes incorrect highlighting of pseudo-constants in tsx + settings: + foreground: *FG + + - name: Destructuring / aliasing reference name (LHS) + scope: + - meta.import variable.other.readwrite # Module import aliasing (real name) + - meta.object-binding-pattern-variable variable.object.property # Object destructuring property + - meta.variable.assignment.destructured.object.coffee variable # Object destructuring property (coffeescript) + settings: + fontStyle: italic + foreground: *ORANGE + + - name: Destructuring / aliasing variable name (RHS) + scope: + - meta.import variable.other.readwrite.alias # Module import aliasing (alias name) + - meta.export variable.other.readwrite.alias # Module import aliasing (alias name) + - meta.variable.assignment.destructured.object.coffee variable variable # Object destructuring variable (coffeescript) + settings: + fontStyle: normal + foreground: *FG + + # ============================================================================= + # Language Extensions / Edge Cases + # ============================================================================= + + # GraphQL + # ======= + - name: GraphQL keys + scope: + - meta.selectionset.graphql variable + settings: + foreground: *YELLOW + + - name: GraphQL function arguments + scope: + - meta.selectionset.graphql meta.arguments variable + settings: + foreground: *FG + + - name: GraphQL fragment name (definition) + scope: + - entity.name.fragment.graphql + - variable.fragment.graphql + settings: + foreground: *CYAN + + # Edge Cases + # ========== + - name: Edge cases (foreground color resets) + scope: + - constant.other.symbol.hashkey.ruby # Ruby hash keys + - keyword.operator.dereference.java # Java dot access + - keyword.operator.navigation.groovy # groovy dot access + - 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 # Java / Groovy imports + - 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 # Commas separating selectors in CSS + - constant.language.empty-list.haskell + settings: + foreground: *FG + + # This is set to conform to the standard of coloring langage constants purple. + # In this case, this colors "$?", "$@", "$*", "$1", etc.. + - name: Shell variables prefixed with "$" (edge case) + scope: + - source.shell variable.other + settings: + foreground: *PURPLE + + - name: Powershell constants mistakenly scoped to `support`, rather than `constant` (edge) + scope: + - support.constant + settings: + fontStyle: normal + foreground: *PURPLE + + - name: Makefile prerequisite names + scope: + - meta.scope.prerequisites.makefile + settings: + foreground: *YELLOW + + - name: SCSS attibute selector strings + scope: + - meta.attribute-selector.scss + settings: + foreground: *YELLOW + + - name: SCSS attribute selector brackets + scope: + - punctuation.definition.attribute-selector.end.bracket.square.scss + - punctuation.definition.attribute-selector.begin.bracket.square.scss + settings: + foreground: *FG + + - name: Haskell Pragmas + scope: + - meta.preprocessor.haskell + settings: + foreground: *COMMENT diff --git a/src/yaru-dark.yml b/src/yaru-dark.yml new file mode 100644 index 0000000..7d33e3e --- /dev/null +++ b/src/yaru-dark.yml @@ -0,0 +1,1147 @@ +name: Yaru Dark +author: Adson CIcilioti +maintainers: + - Adson Cicilioti +semanticClass: theme.yaru +semanticHighlighting: true +yaru: + base: + - &BG '#222222' + - &FG '#fdfdfd' + - &SELECTION '#1BAEE23f' + - &COMMENT '#97918F' + - &ORANGE '#FFA267' + - &RED '#FF794A' + - &GREEN '#52D866' + - &YELLOW '#FFDC98' + - &PURPLE '#EE80D6' + - &PINK '#FF9D88' + - &CYAN '#60D4FD' + ansi: + - &COLOR0 '#222222' + - &COLOR1 '#FF794A' + - &COLOR2 '#52D866' + - &COLOR3 '#FFDC98' + - &COLOR4 '#EE80D6' + - &COLOR5 '#FF9D88' + - &COLOR6 '#60D4FD' + - &COLOR7 '#fdfdfd' + - &COLOR8 '#928986' + - &COLOR9 '#FF6D4C' + - &COLOR10 '#69FF94' + - &COLOR11 '#FFF5BC' + - &COLOR12 '#FFA2EB' + - &COLOR13 '#FFAEA0' + - &COLOR14 '#98E4FF' + - &COLOR15 '#FFFFFF' + brightOther: + # Temporary (awaiting fix) + - &TEMP_QUOTES '#FFF5BC' + - &TEMP_PROPERTY_QUOTES '#98E4FF' + other: + - &LineHighlight '#343434' + - &NonText '#FFFFFF1A' + - &WHITE '#FFFFFF' + - &TAB_DROP_BG '#2c2c2c' + # UI Variants + - &BGLighter '#343434' + - &BGLight '#2C2C2C' # + - &BGDark '#222222' # + - &BGDarker '#1A1A1A' # + # YARU COLORS + - &OUTLINE '#EF8661b3' + - &YARU_ORG '#DF4A16' + - &YARU_PRP '#773F72' + - &YARU_GRN '#0C6D1A' + - &TXT_FADED '#c2c2c2' + - &UI_BTN '#484848' + +# User Interface (more info: https://code.visualstudio.com/docs/getstarted/theme-color-reference) +colors: + # Integrated Terminal Colors + terminal.background: *BG + terminal.foreground: *FG + terminal.ansiBrightBlack: *COLOR8 + terminal.ansiBrightRed: *COLOR9 + terminal.ansiBrightGreen: *COLOR10 + terminal.ansiBrightYellow: *COLOR11 + terminal.ansiBrightBlue: *COLOR12 + terminal.ansiBrightMagenta: *COLOR13 + terminal.ansiBrightCyan: *COLOR14 + terminal.ansiBrightWhite: *COLOR15 + terminal.ansiBlack: *COLOR0 + terminal.ansiRed: *COLOR1 + terminal.ansiGreen: *COLOR2 + terminal.ansiYellow: *COLOR3 + terminal.ansiBlue: *COLOR4 + terminal.ansiMagenta: *COLOR5 + terminal.ansiCyan: *COLOR6 + terminal.ansiWhite: *COLOR7 + + # Contrast Colors + contrastBorder: *BGDarker # An extra border around elements to separate them from others for greater contrast + contrastActiveBorder: # An extra border around active elements to separate them from others for greater contrast + + # Base Colors + focusBorder: *OUTLINE # Overall border color for focused elements. This color is only used if not overridden by a component + foreground: *FG # Overall foreground color. This color is only used if not overridden by a component + widget.shadow: *BGDarker # Shadow color of widgets such as Find/Replace inside the editor + selection.background: *YARU_PRP # Background color of text selections in the workbench (for input fields or text areas, does not apply to selections within the editor and the terminal) + errorForeground: *RED # Overall foreground color for error messages (this color is only used if not overridden by a component) + + # Button Control + button.background: *UI_BTN # Button background color + button.foreground: *FG # Button foreground color + button.hoverBackground: *YARU_GRN # Button background color when hovering + button.secondaryBackground: *YARU_ORG + button.secondaryForeground: + + # Dropdown Control + dropdown.background: *BGLight # Dropdown background + dropdown.border: *OUTLINE # Dropdown border + dropdown.foreground: *FG # Dropdown foreground + + # Input Control + input.background: *BGLight # Input box background + input.foreground: *FG # Input box foreground + input.border: *OUTLINE # Input box border + input.placeholderForeground: !alpha [*TXT_FADED, 70] # Input box foreground color for placeholder text + inputOption.activeBorder: *YARU_ORG # Border color of activated options in input fields + inputValidation.infoForeground: # Input validation foreground color for information severity + inputValidation.infoBackground: # Input validation background color for information severity + inputValidation.infoBorder: *PINK # Input validation border color for information severity + inputValidation.warningForeground: # Input validation foreground color for warning severity + inputValidation.warningBackground: # Input validation background color for information warning + inputValidation.warningBorder: *ORANGE # Input validation border color for warning severity + inputValidation.errorForeground: # Input validation foreground color for error severity + inputValidation.errorBackground: # Input validation background color for error severity + inputValidation.errorBorder: *RED # Input validation border color for error severity + + # Scroll Bar Control + scrollbar.shadow: *BGDarker # Scroll Bar shadow to indicate that the view is scrolled + scrollbarSlider.activeBackground: *TXT_FADED # Slider background color when active + scrollbarSlider.background: *BGLighter # Slider background color + scrollbarSlider.hoverBackground: # Slider background color when hovering + + # Badge + badge.foreground: *COLOR15 # Badge foreground color + badge.background: *YARU_PRP # Badge background color + + # Progress Bar + progressBar.background: *PINK # Background color of the progress bar shown for long running operations + + # List & Trees + list.activeSelectionBackground: *BGLight # List/Tree background color for the selected item when the list/tree is active + list.activeSelectionForeground: *FG # List/Tree foreground color for the selected item when the list/tree is active + list.dropBackground: !alpha [*YARU_PRP, 50] # List/Tree drag and drop background when moving items around using the mouse + list.focusBackground: !alpha [*YARU_PRP, 30] # List/Tree background color for the focused item when the list/tree is active + list.highlightForeground: *CYAN # List/Tree foreground color of the match highlights when searching inside the list/tree + list.hoverBackground: !alpha [*YARU_PRP, 30] # List/Tree background when hovering over items using the mouse + list.inactiveSelectionBackground: !alpha [*BGLight, 50] # List/Tree background color for the selected item when the list/tree is inactive + list.inactiveSelectionForeground: # List/Tree foreground color for the selected item when the list/tree is inactive. An active list/tree has keyboard focus, an inactive does not + list.warningForeground: *ORANGE # Color of warning decorations in the explorer + list.errorForeground: *RED # Color of error decorations in the explorer + list.hoverForeground: # List/Tree foreground when hovering over items using the mouse + list.focusForeground: # List/Tree foreground color for the focused item when the list/tree is active. An active list/tree has keyboard focus, an inactive does not + + # Activity Bar + activityBar.background: *BGLight # Activity Bar background color + activityBar.inactiveForeground: *TXT_FADED # Activity bar item foreground color when it is inactive + activityBar.dropBackground: # Drag and drop feedback color for the Activity Bar items + activityBar.dropBorder: *CYAN + activityBar.foreground: *FG # Activity bar foreground color (for example used for the icons) + activityBar.border: # Activity Bar border color with the Side Bar + activityBar.activeBorder: *YARU_ORG # Activity Bar indicator color + activityBar.activeBackground: *YARU_ORG # Activity Bar indicator background color + activityBarBadge.background: *YARU_ORG # Activity notification badge background color + activityBarBadge.foreground: *COLOR15 # Activity notification badge foreground color + + # Side Bar + sideBar.background: *BGDark # Side Bar background color + sideBar.foreground: *TXT_FADED # Side Bar foreground color. The Side Bar is the container for views like Explorer and Search + sideBar.border: # Side Bar border color on the side separating the editor + sideBarTitle.foreground: *FG # Side Bar title foreground color + sideBarSectionHeader.background: !alpha [*BGLight, 50] # Side Bar section header background color + sideBarSectionHeader.foreground: *TXT_FADED # Side Bar section header foreground color + sideBarSectionHeader.border: *BGDarker # Side bar section header border color + + # Editor Group & Tabs + editorGroup.background: # Background color of an editor group. The background color shows up when dragging editor groups around + editorGroup.border: *BGLighter # Color to separate multiple editor groups from each other + editorGroup.dropBackground: *TAB_DROP_BG # Background color when dragging editors around + editorGroupHeader.noTabsBackground: # Background color of the editor group title header when Tabs are disabled + editorGroupHeader.tabsBackground: *BGLight # Background color of the Tabs container + editorGroupHeader.tabsBorder: # Border color of the editor group title header when tabs are enabled. Editor groups are the containers of editors + tab.activeBackground: *BG # Active Tab background color + tab.activeForeground: *FG # Active Tab foreground color in an active group + tab.border: *BGDarker # Border to separate Tabs from each other + tab.activeBorderTop: *CYAN # A border drawn to the top of the active tab + tab.activeBorder: # A border drawn to the bottom of the active tab + tab.unfocusedActiveBorder: # A border drawn to the bottom of the active tab in an editor group that is not focused + tab.inactiveBackground: *BGLight # Inactive Tab background color + tab.inactiveModifiedBorder: *YARU_ORG + tab.inactiveForeground: *TXT_FADED # Inactive Tab foreground color in an active group + tab.unfocusedActiveForeground: # Active tab foreground color in an inactive editor group + tab.unfocusedInactiveForeground: # Inactive tab foreground color in an inactive editor group + tab.activeModifiedBorder: *CYAN + + # Editor Colors + editor.foreground: *FG + editor.background: *BG + editorLineNumber.foreground: !alpha [*COMMENT, 75] + editorCursor.foreground: + + editor.selectionBackground: *SELECTION # Color of the editor selection + editor.selectionHighlightBackground: *BGLighter # Color for regions with the same content as the selection + editor.inactiveSelectionBackground: # Color of the selection in an inactive editor + editor.foldBackground: *BGDark # Background color for folded ranges + + editor.wordHighlightBackground: !alpha [*CYAN, 50] # Background color of a symbol during read-access, for example when reading a variable + editor.wordHighlightStrongBackground: !alpha [*GREEN, 30] # Background color of a symbol during write-access, for example when writing to a variable + + editor.findMatchBackground: !alpha [*ORANGE, 80] + editor.findMatchHighlightBackground: !alpha [*WHITE, 40] # Color of the other search matches + editor.findRangeHighlightBackground: *LineHighlight # Color the range limiting the search + + editor.hoverHighlightBackground: !alpha [*CYAN, 50] # Highlight below the word for which a hover is shown + + editor.lineHighlightBackground: *BGLighter # Background color for the highlight of line at the cursor position + editor.lineHighlightBorder: *BGLighter # Background color for the border around the line at the cursor position + + editorLink.activeForeground: *CYAN # Color of active links + editor.rangeHighlightBackground: !alpha [*YARU_PRP, 15] # Background color of highlighted ranges, like by Quick Open and Find features + + editor.snippetTabstopHighlightBackground: *BG # Highlight background color of a snippet tabstop + editor.snippetTabstopHighlightBorder: *COMMENT # Highlight border color of a snippet tabstop + editor.snippetFinalTabstopHighlightBackground: *BG # Highlight background color of the final tabstop of a snippet + editor.snippetFinalTabstopHighlightBorder: *GREEN # Highlight border color of the final tabstop of a snippet + + editorWhitespace.foreground: *NonText # Color of whitespace characters in the editor + editorIndentGuide.background: *NonText # Color of the editor indentation guides + editorIndentGuide.activeBackground: !alpha [*WHITE, 45] # Color of the active indentation guide + editorRuler.foreground: *NonText # Color of the editor rulers + + editorCodeLens.foreground: *COMMENT # Foreground color of an editor CodeLens + + # NOTE: These are not set because they tend to be highly contested from + # person to person. Thus, setting these is probably better suited + # for workbench.colorCustomizations in User Settings + editorBracketMatch.background: # Background color behind matching brackets + editorBracketMatch.border: # Color for matching brackets boxes + + editorOverviewRuler.border: *BGDarker # Color of the overview ruler border + editorOverviewRuler.findMatchForeground: + editorOverviewRuler.rangeHighlightForeground: + editorOverviewRuler.selectionHighlightForeground: *ORANGE + editorOverviewRuler.wordHighlightForeground: *CYAN + editorOverviewRuler.wordHighlightStrongForeground: *GREEN + editorOverviewRuler.modifiedForeground: !alpha [*CYAN, 80] + editorOverviewRuler.addedForeground: !alpha [*GREEN, 80] + editorOverviewRuler.deletedForeground: !alpha [*RED, 80] + editorOverviewRuler.errorForeground: !alpha [*RED, 80] + editorOverviewRuler.warningForeground: !alpha [*ORANGE, 80] + editorOverviewRuler.infoForeground: !alpha [*CYAN, 80] + + editorError.foreground: *RED # Foreground color of error squigglies in the editor + editorError.border: # Border color of error squigglies in the editor + editorWarning.foreground: *CYAN # Foreground color of warning squigglies in the editor + editorWarning.border: # Border color of warning squigglies in the editor + + editorGutter.background: # Background color of the editor gutter + editorGutter.modifiedBackground: !alpha [*CYAN, 80] # Editor gutter background color for lines that are modified + editorGutter.addedBackground: !alpha [*GREEN, 80] # Editor gutter background color for lines that are added + editorGutter.deletedBackground: !alpha [*RED, 80] # Editor gutter background color for lines that are deleted + + # Explorer Colors + gitDecoration.modifiedResourceForeground: *CYAN + gitDecoration.deletedResourceForeground: *RED + gitDecoration.untrackedResourceForeground: *GREEN + gitDecoration.ignoredResourceForeground: *COMMENT + gitDecoration.conflictingResourceForeground: *ORANGE + + # Diff Editor Colors + diffEditor.insertedTextBackground: !alpha [*GREEN, 20] # Background color for inserted text + diffEditor.insertedTextBorder: # Outline color for inserted text + diffEditor.removedTextBackground: !alpha [*RED, 50] # Background color for removed text + diffEditor.removedTextBorder: # Outline color for removed text + + # Editor Widget Colors + editorWidget.background: *BGDark # Background color of editor widgets, such as Find/Replace + editorWidgetBorder: # Border color of the editor widget unless the widget does not contain a border or defines its own border color + + editorSuggestWidget.background: *BGDark # Background color of the suggestion widget + editorSuggestWidget.border: # Border color of the suggestion widget + editorSuggestWidget.foreground: *FG # Foreground color of the suggestion widget + editorSuggestWidget.highlightForeground: # Color of the match highlights in the suggestion widget + editorSuggestWidget.selectedBackground: *SELECTION # Background color of the selected entry in the suggestion widget + + editorHoverWidget.background: *BG # Background color of the editor hover + editorHoverWidget.border: *COMMENT # Border color of the editor hover + + debugExceptionWidget.background: # Exception widget background color + debugExceptionWidget.border: # Exception widget border color + + editorMarkerNavigation.background: *BGDark # Editor marker navigation widget background + editorMarkerNavigationError.background: # Editor marker navigation widget error color + editorMarkerNavigationWarning.background: # Editor marker navigation widget warning color + + # Peek View Colors + peekView.border: *SELECTION # Color of the peek view borders and arrow + peekViewEditor.background: *BG # Background color of the peek view editor + peekViewEditorGutter.background: # Background color of the gutter in the peek view editor + peekViewEditor.matchHighlightBackground: !alpha [*YELLOW, 80] # Match highlight color in the peek view editor + peekViewResult.background: *BGDark # Background color of the peek view result list + peekViewResult.fileForeground: *FG # Foreground color for file nodes in the peek view result list + peekViewResult.lineForeground: *FG # Foreground color for line nodes in the peek view result list + peekViewResult.matchHighlightBackground: !alpha [*YELLOW, 80] # Match highlight color in the peek view result list + peekViewResult.selectionBackground: *SELECTION # Background color of the selected entry in the peek view result list + peekViewResult.selectionForeground: *FG # Foreground color of the selected entry in the peek view result list + peekViewTitle.background: *BGDarker # Background color of the peek view title area + peekViewTitleDescription.foreground: *COMMENT # Color of the peek view title info + peekViewTitleLabel.foreground: *FG # Color of the peek view title + + # Merge Conflicts + merge.currentHeaderBackground: !alpha [*GREEN, 90] # Current header background in inline merge conflicts + merge.currentContentBackground: # Current content background in inline merge conflicts + merge.incomingHeaderBackground: !alpha [*YARU_ORG, 90] # Incoming header background in inline merge conflicts + merge.incomingContentBackground: # Incoming content background in inline merge conflicts + merge.border: # Border color on headers and the splitter in inline merge conflicts + editorOverviewRuler.currentContentForeground: *GREEN # Current overview ruler foreground for inline merge conflicts + editorOverviewRuler.incomingContentForeground: *YARU_ORG # Incoming overview ruler foreground for inline merge conflicts + + # Panel Colors + panel.background: *BG # Panel background color + panel.border: *BGLighter # Panel border color on the top separating to the editor + panelTitle.activeBorder: *YARU_ORG # Border color for the active panel title + panelTitle.activeForeground: *FG # Title color for the active panel + panelTitle.inactiveForeground: *TXT_FADED # Title color for the inactive panel + + # Status Bar Colors + statusBar.background: !alpha [*BGLight, 50] # Standard Status Bar background color + statusBar.foreground: *TXT_FADED # Status Bar foreground color + statusBar.debuggingBackground: # Status Bar background color when a program is being debugged + statusBar.debuggingForeground: # Status Bar foreground color when a program is being debugged + statusBar.noFolderBackground: *BGDarker # Status Bar foreground color when no folder is opened + statusBar.noFolderForeground: *FG # Status Bar background color when no folder is opened + statusBarItem.activeBackground: # Status Bar item background color when clicking + statusBarItem.hoverBackground: # Status Bar item background color when hovering + statusBarItem.prominentBackground: *RED # Status Bar prominent items background color. Prominent items stand out from other Status Bar entries to indicate importance + statusBarItem.prominentHoverBackground: *ORANGE # Status Bar prominent items background color when hovering. Prominent items stand out from other Status Bar entries to indicate importance + statusBarItem.remoteForeground: *COLOR15 # Background color for the remote indicator on the status bar + statusBarItem.remoteBackground: *YARU_GRN # Foreground color for the remote indicator on the status bar + statusBar.border: + + # Title Bar Colors (MacOS Only) + titleBar.activeBackground: *BGLight # Title Bar background when the window is active + titleBar.activeForeground: *FG # Title Bar foreground when the window is active + titleBar.inactiveBackground: *BGDark # Title Bar background when the window is inactive + titleBar.inactiveForeground: *TXT_FADED # Title Bar foreground when the window is inactive + + # Notification Dialog Colors + notification.background: *BG # Notifications background color + notification.foreground: *FG # Notifications foreground color + notification.buttonBackground: *YARU_ORG + notification.buttonForeground: *FG + notification.buttonHoverBackground: *LineHighlight + notification.errorBackground: *RED + notification.errorForeground: *FG + notification.infoBackground: *CYAN + notification.infoForeground: *BG + notification.warningBackground: *ORANGE + notification.warningForeground: *BG + + # Extensions + extensionButton.prominentForeground: *FG # Extension view button foreground color (for example Install button) + extensionButton.prominentBackground: *YARU_GRN # Extension view button background color + extensionButton.prominentHoverBackground: !alpha [*YARU_GRN, 90] # Extension view button background hover color + + # Quick Picker + pickerGroup.border: *UI_BTN # Quick picker (Quick Open) color for grouping borders + pickerGroup.foreground: *CYAN # Quick picker (Quick Open) color for grouping labels + + # Debug + debugToolBar.background: *BGDark # Debug toolbar background color + + # Welcome Page + welcomePage.buttonBackground: # Background color for the buttons on the Welcome page + welcomePage.buttonHoverBackground: # Hover background color for the buttons on the Welcome page + walkThrough.embeddedEditorBackground: *BGDark # Background color for the embedded editors on the Interactive Playground + + # Setting Editor + # settings.headerForeground: *FG # The foreground color for a section header or active title + # settings.modifiedItemForeground: *ORANGE # The foreground color for a the modified setting indicator + # settings.modifiedItemIndicator: *ORANGE # The color of the line that indicates a modified setting + # settings.inactiveSelectedItemBorder: # The color of the selected setting row border, when the settings list does not have focus + # settings.dropdownBackground: *BGDark # Dropdown background + # settings.dropdownForeground: *FG # Dropdown foreground + # settings.dropdownBorder: *BGDarker # Dropdown border + # settings.checkboxBackground: *BGDark # Checkbox background + # settings.checkboxForeground: *FG # Checkbox foreground + # settings.checkboxBorder: *BGDarker # Checkbox border + # settings.textInputBackground: *BGDark # Text input box background + # settings.textInputForeground: *FG # Text input box foreground + # settings.textInputBorder: *BGDarker # Text input box border + # settings.numberInputBackground: *BGDark # Number input box background + # settings.numberInputForeground: *FG # Number input box foreground + # settings.numberInputBorder: *BGDarker # Number input box border + + # Breadcrumbs + breadcrumb.foreground: *COMMENT # Color of breadcrumb items + breadcrumb.background: *BG + breadcrumb.focusForeground: *FG # Color of focused breadcrumb items + breadcrumb.activeSelectionForeground: *FG # Color of selected breadcrumb items + breadcrumbPicker.background: *BG # Background color of breadcrumb item picker + + # Misc + + # MINIMAP + minimap.selectionHighlight: !alpha [*CYAN, 50] + minimap.findMatchHighlight: !alpha [*ORANGE, 85] + + # MENI + menu.background: *BGLight + menu.selectionBackground: *YARU_ORG + menu.selectionForeground: *COLOR15 + menu.foreground: *TXT_FADED + menu.separatorBackground: *BGLighter + menubar.selectionBackground: *YARU_ORG + menubar.selectionForeground: *COLOR15 + + listFilterWidget.background: *BGLight # Background color of the type filter widget in lists and trees. + listFilterWidget.outline: *BGLighter # Outline color of the type filter widget in lists and trees. + listFilterWidget.noMatchesOutline: *RED # Outline color of the type filter widget in lists and trees, when there are no matches. + +# Syntaxes +tokenColors: + # ============================================================================= + # General + # ============================================================================= + + - scope: + - emphasis + settings: + fontStyle: italic + - scope: + - strong + settings: + fontStyle: bold + - scope: + - header + settings: + foreground: *PURPLE + - scope: + - source + settings: + foreground: *FG + + # Diffs + # ====== + - scope: + - meta.diff + - meta.diff.header + settings: + foreground: *COMMENT + - scope: + - markup.inserted + settings: + foreground: *GREEN + - scope: + - markup.deleted + settings: + foreground: *RED + - scope: + - markup.changed + settings: + foreground: *ORANGE + - scope: + - invalid + settings: + foreground: *RED + fontStyle: underline italic + - scope: + - invalid.deprecated + settings: + foreground: *FG + fontStyle: underline italic + - scope: + - entity.name.filename + settings: + foreground: *YELLOW + - scope: + - markup.error + settings: + foreground: *RED + + # Markdown / RST / Prose + # ====================== + + - name: Underlined markup + scope: + - markup.underline + settings: + fontStyle: underline + + - name: Bold markup + scope: + - markup.bold + settings: + fontStyle: bold + foreground: *ORANGE + + - name: Markup headings + scope: + - markup.heading + settings: + fontStyle: bold + foreground: *PURPLE + + - name: Markup italic + scope: + - markup.italic + settings: + foreground: *YELLOW + fontStyle: italic + + - name: Bullets, lists (prose) + scope: + - beginning.punctuation.definition.list.markdown + - beginning.punctuation.definition.quote.markdown + - punctuation.definition.link.restructuredtext + settings: + foreground: *CYAN + + - name: Inline code (prose) + scope: + - markup.inline.raw + - markup.raw.restructuredtext + settings: + foreground: *GREEN + + - name: Links (prose) + scope: + - markup.underline.link + - markup.underline.link.image + settings: + foreground: *CYAN + + - 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: *PINK + + - name: Blockquotes (prose) + scope: + - entity.name.directive.restructuredtext + - markup.quote + settings: + foreground: *YELLOW + fontStyle: italic + + - name: Horizontal rule (prose) + scope: + - meta.separator.markdown + settings: + foreground: *COMMENT + + - name: Code blocks + scope: + - fenced_code.block.language + - markup.raw.inner.restructuredtext + - markup.fenced_code.block.markdown punctuation.definition.markdown + settings: + foreground: *GREEN + + - name: Prose constants + scope: + - punctuation.definition.constant.restructuredtext + settings: + foreground: *PURPLE + + - name: Braces in markdown headings + scope: + - markup.heading.markdown punctuation.definition.string.begin + - markup.heading.markdown punctuation.definition.string.end + settings: + foreground: *PURPLE + + - name: Braces in markdown paragraphs + scope: + - meta.paragraph.markdown punctuation.definition.string.begin + - meta.paragraph.markdown punctuation.definition.string.end + settings: + foreground: *FG + + - 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: *YELLOW + + # ============================================================================= + # Classes + # ============================================================================= + + - name: User-defined class names + scope: + - entity.name.type.class + - entity.name.class + settings: + foreground: *CYAN + fontStyle: normal + + - name: this, super, self, etc. + scope: + - keyword.expressions-and-types.swift + - keyword.other.this + - variable.language + - variable.language punctuation.definition.variable.php # the "$" symbol in $this + - variable.other.readwrite.instance.ruby # ruby's "@" instance symbol + - variable.parameter.function.language.special # Special words as parameters + settings: + foreground: *PURPLE + fontStyle: italic + + - name: Inherited classes + scope: + - entity.other.inherited-class + settings: + fontStyle: italic + foreground: *CYAN + + # ============================================================================= + # Comments + # ============================================================================= + + - name: Comments + scope: + - comment + - punctuation.definition.comment + - unused.comment + - wildcard.comment + settings: + foreground: *COMMENT + + - name: JSDoc-style keywords + scope: + - comment keyword.codetag.notation + - comment.block.documentation keyword + - comment.block.documentation storage.type.class + settings: + foreground: *PINK + + - name: JSDoc-style types + scope: + - comment.block.documentation entity.name.type + settings: + foreground: *CYAN + fontStyle: italic + + - name: JSDoc-style type brackets + scope: + - comment.block.documentation entity.name.type punctuation.definition.bracket + settings: + foreground: *CYAN + + - name: JSDoc-style comment parameters + scope: + - comment.block.documentation variable + settings: + foreground: *ORANGE + fontStyle: italic + + # ============================================================================= + # Constants + # ============================================================================= + + - name: Constants + scope: + - constant + - variable.other.constant + settings: + foreground: *PURPLE + + - name: Constant escape sequences + scope: + - constant.character.escape + - constant.character.string.escape + - constant.regexp + settings: + foreground: *PINK + + # ============================================================================= + # Entities + # ============================================================================= + + - name: HTML tags + scope: + - entity.name.tag + settings: + foreground: *PINK + + - name: CSS attribute parent selectors ('&') + scope: + - entity.other.attribute-name.parent-selector + settings: + foreground: *PINK + + - name: HTML/CSS attribute names + scope: + - entity.other.attribute-name + settings: + foreground: *GREEN + fontStyle: italic + + # ============================================================================= + # Functions/Methods + # ============================================================================= + + - name: Function names + scope: + - entity.name.function + - meta.function-call.generic + - 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: *GREEN + + - name: Function parameters + scope: + - entity.name.variable.parameter + - meta.at-rule.function variable # Sass function params + - meta.at-rule.mixin variable # Sass mixin params + - meta.function.arguments variable.other.php + - meta.selectionset.graphql meta.arguments.graphql variable.arguments.graphql + - variable.parameter + settings: + fontStyle: italic + foreground: *ORANGE + + - name: Decorators + scope: + - meta.decorator variable.other.readwrite + - meta.decorator variable.other.property + settings: + foreground: *GREEN + fontStyle: italic + + - name: Decorator Objects + scope: + - meta.decorator variable.other.object + settings: + foreground: *GREEN + + # ============================================================================= + # Keywords + # ============================================================================= + + - name: Keywords + scope: + - keyword + - punctuation.definition.keyword + settings: + foreground: *PINK + + - 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: *PINK + + # ============================================================================= + # Language Built-ins + # ============================================================================= + + - name: Language Built-ins + scope: + - support + settings: + fontStyle: italic + foreground: *CYAN + + - name: Built-in magic functions and constants + scope: + - support.function.magic + - support.variable + - variable.other.predefined + settings: + fontStyle: regular + foreground: *PURPLE + + - name: Built-in functions / properties + scope: + - support.function + - support.type.property-name + settings: + fontStyle: regular + + # ============================================================================= + # Punctuation + # ============================================================================= + + - 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 # Sass placeholder `%` symbols + - 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: *PINK + + - name: Brackets, braces, parens, etc. + scope: + - keyword.operator.other.powershell # Commas + - 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 # HTML tags in comments + - punctuation.definition.type.begin + - punctuation.definition.type.end + - punctuation.section.scope.begin + - punctuation.section.scope.end + - storage.type.generic.java + - string.template meta.brace + - string.template punctuation.accessor + settings: + foreground: *FG + + - 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 # PHP edge case + - punctuation.section.embedded.end source.ruby # Issue with ruby's tmLanguage + - punctuation.definition.variable.makefile + settings: + foreground: *PINK + + # ============================================================================= + # Serializable / Config Langages + # ============================================================================= + + - name: Keys (serializable languages) + scope: + - entity.name.function.target.makefile + - entity.name.section.toml + - entity.name.tag.yaml + - variable.other.key.toml + settings: + foreground: *CYAN + + - name: Dates / timestamps (serializable languages) + scope: + - constant.other.date + - constant.other.timestamp + settings: + foreground: *ORANGE + + - name: YAML aliases + scope: + - variable.other.alias.yaml + settings: + fontStyle: italic underline + foreground: *GREEN + + # ============================================================================= + # Storage + # ============================================================================= + + - 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: *PINK + + - 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: *CYAN + + - name: Generics, templates, and mapped type declarations + scope: + - entity.name.type.type-parameter + - meta.indexer.mappedtype.declaration entity.name.type # Mapped type declarations + - meta.type.parameters entity.name.type # Generic type declarations + settings: + foreground: *ORANGE + + - name: Modifiers + scope: + - storage.modifier + settings: + foreground: *PINK + + # ============================================================================= + # RegExp + # ============================================================================= + + - name: RegExp string + scope: + - string.regexp + - constant.other.character-class.set.regexp + - constant.character.escape.backslash.regexp + settings: + foreground: *YELLOW + + - name: Non-capture operators + scope: + # NOTE: The scope name is a misnomer. It is actually non-capture operators + - punctuation.definition.group.capture.regexp + settings: + foreground: *PINK + + - name: RegExp start and end characters + scope: + - string.regexp punctuation.definition.string.begin + - string.regexp punctuation.definition.string.end + settings: + foreground: *RED + + - name: Character group + scope: + - punctuation.definition.character-class.regexp + settings: + foreground: *CYAN + + - name: Capture groups + scope: + - punctuation.definition.group.regexp + settings: + foreground: *ORANGE + + - name: Assertion operators + scope: + - punctuation.definition.group.assertion.regexp + - keyword.operator.negation.regexp + settings: + foreground: *RED + + - name: Positive lookaheads + scope: + - meta.assertion.look-ahead.regexp + settings: + foreground: *GREEN + + # ============================================================================= + # Strings + # ============================================================================= + + - name: Strings + scope: + - string + settings: + foreground: *YELLOW + + - name: String quotes (temporary vscode fix) + scope: + # NOTE: This is a temporary fix for VSCode expand selection. + # See (https://github.com/Microsoft/vscode/issues/4795) + - punctuation.definition.string.begin + - punctuation.definition.string.end + settings: + foreground: *TEMP_QUOTES + + - name: Property quotes (temporary vscode fix) + scope: + # NOTE: Same as above + - punctuation.support.type.property-name.begin + - punctuation.support.type.property-name.end + settings: + foreground: *TEMP_PROPERTY_QUOTES + + - 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: *COMMENT + + # ============================================================================= + # Variables + # ============================================================================= + + - name: Variables and object properties + scope: + - variable + - constant.other.key.perl # Perl edge case + - support.variable.property # Object properties + - variable.other.constant.js # Fix incorrect highlighting of pseudo-constants in js, jsx + - variable.other.constant.ts # Fixes incorrect highlighting of pseudo-constants in ts + - variable.other.constant.tsx # Fixes incorrect highlighting of pseudo-constants in tsx + settings: + foreground: *FG + + - name: Destructuring / aliasing reference name (LHS) + scope: + - meta.import variable.other.readwrite # Module import aliasing (real name) + - meta.object-binding-pattern-variable variable.object.property # Object destructuring property + - meta.variable.assignment.destructured.object.coffee variable # Object destructuring property (coffeescript) + settings: + fontStyle: italic + foreground: *ORANGE + + - name: Destructuring / aliasing variable name (RHS) + scope: + - meta.import variable.other.readwrite.alias # Module import aliasing (alias name) + - meta.export variable.other.readwrite.alias # Module import aliasing (alias name) + - meta.variable.assignment.destructured.object.coffee variable variable # Object destructuring variable (coffeescript) + settings: + fontStyle: normal + foreground: *FG + + # ============================================================================= + # Language Extensions / Edge Cases + # ============================================================================= + + # GraphQL + # ======= + - name: GraphQL keys + scope: + - meta.selectionset.graphql variable + settings: + foreground: *YELLOW + + - name: GraphQL function arguments + scope: + - meta.selectionset.graphql meta.arguments variable + settings: + foreground: *FG + + - name: GraphQL fragment name (definition) + scope: + - entity.name.fragment.graphql + - variable.fragment.graphql + settings: + foreground: *CYAN + + # Edge Cases + # ========== + - name: Edge cases (foreground color resets) + scope: + - constant.other.symbol.hashkey.ruby # Ruby hash keys + - keyword.operator.dereference.java # Java dot access + - keyword.operator.navigation.groovy # groovy dot access + - 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 # Java / Groovy imports + - 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 # Commas separating selectors in CSS + - constant.language.empty-list.haskell + settings: + foreground: *FG + + # This is set to conform to the standard of coloring langage constants purple. + # In this case, this colors "$?", "$@", "$*", "$1", etc.. + - name: Shell variables prefixed with "$" (edge case) + scope: + - source.shell variable.other + settings: + foreground: *PURPLE + + - name: Powershell constants mistakenly scoped to `support`, rather than `constant` (edge) + scope: + - support.constant + settings: + fontStyle: normal + foreground: *PURPLE + + - name: Makefile prerequisite names + scope: + - meta.scope.prerequisites.makefile + settings: + foreground: *YELLOW + + - name: SCSS attibute selector strings + scope: + - meta.attribute-selector.scss + settings: + foreground: *YELLOW + + - name: SCSS attribute selector brackets + scope: + - punctuation.definition.attribute-selector.end.bracket.square.scss + - punctuation.definition.attribute-selector.begin.bracket.square.scss + settings: + foreground: *FG + + - name: Haskell Pragmas + scope: + - meta.preprocessor.haskell + settings: + foreground: *COMMENT diff --git a/theme/yaru.json b/theme/yaru-dark-grape.json similarity index 98% rename from theme/yaru.json rename to theme/yaru-dark-grape.json index dd64bd8..e24475c 100644 --- a/theme/yaru.json +++ b/theme/yaru-dark-grape.json @@ -1,8 +1,8 @@ { - "name": "Yaru", - "author": "Zeno Rocha", + "name": "Yaru Dark Grape", + "author": "Adson CIcilioti", "maintainers": [ - "Derek P Sifford " + "Adson Cicilioti " ], "semanticClass": "theme.yaru", "semanticHighlighting": true, @@ -86,7 +86,7 @@ "errorForeground": "#FF794A", "button.background": "#484848", "button.foreground": "#fdfdfd", - "button.hoverBackground": "#DF4A16", + "button.hoverBackground": "#0C6D1A", "button.secondaryBackground": "#DF4A16", "dropdown.background": "#2C2C2C", "dropdown.border": "#EF8661b3", @@ -125,10 +125,10 @@ "sideBar.background": "#222222", "sideBar.foreground": "#c2c2c2", "sideBarTitle.foreground": "#fdfdfd", - "sideBarSectionHeader.background": "#2C2C2C30", + "sideBarSectionHeader.background": "#2C2C2C50", "sideBarSectionHeader.foreground": "#c2c2c2", "sideBarSectionHeader.border": "#1A1A1A", - "editorGroup.border": "#DF4A16", + "editorGroup.border": "#343434", "editorGroup.dropBackground": "#2c2c2c", "editorGroupHeader.tabsBackground": "#2C2C2C", "tab.activeBackground": "#222222", @@ -152,6 +152,7 @@ "editor.findRangeHighlightBackground": "#343434", "editor.hoverHighlightBackground": "#60D4FD50", "editor.lineHighlightBackground": "#343434", + "editor.lineHighlightBorder": "#343434", "editorLink.activeForeground": "#60D4FD", "editor.rangeHighlightBackground": "#773F7215", "editor.snippetTabstopHighlightBackground": "#222222", @@ -209,12 +210,12 @@ "editorOverviewRuler.currentContentForeground": "#52D866", "editorOverviewRuler.incomingContentForeground": "#DF4A16", "panel.background": "#222222", - "panel.border": "#1A1A1A", + "panel.border": "#773F72", "panelTitle.activeBorder": "#DF4A16", "panelTitle.activeForeground": "#fdfdfd", "panelTitle.inactiveForeground": "#c2c2c2", - "statusBar.background": "#DF4A16", - "statusBar.foreground": "#fdfdfd", + "statusBar.background": "#773F72", + "statusBar.foreground": "#FFFFFF", "statusBar.noFolderBackground": "#1A1A1A", "statusBar.noFolderForeground": "#fdfdfd", "statusBarItem.prominentBackground": "#FF794A", @@ -237,9 +238,9 @@ "notification.warningBackground": "#FFA267", "notification.warningForeground": "#222222", "extensionButton.prominentForeground": "#fdfdfd", - "extensionButton.prominentBackground": "#52D86690", - "extensionButton.prominentHoverBackground": "#52D86660", - "pickerGroup.border": "#DF4A16", + "extensionButton.prominentBackground": "#0C6D1A", + "extensionButton.prominentHoverBackground": "#0C6D1A90", + "pickerGroup.border": "#484848", "pickerGroup.foreground": "#60D4FD", "debugToolBar.background": "#222222", "walkThrough.embeddedEditorBackground": "#222222", diff --git a/theme/yaru-soft.json b/theme/yaru-dark-pumpkin.json similarity index 78% rename from theme/yaru-soft.json rename to theme/yaru-dark-pumpkin.json index 7926545..9815fff 100644 --- a/theme/yaru-soft.json +++ b/theme/yaru-dark-pumpkin.json @@ -1,8 +1,8 @@ { - "name": "Yaru", - "author": "Zeno Rocha", + "name": "Yaru Dark Pumpkin", + "author": "Adson CIcilioti", "maintainers": [ - "Derek P Sifford " + "Adson Cicilioti " ], "semanticClass": "theme.yaru", "semanticHighlighting": true, @@ -13,39 +13,39 @@ "#1BAEE23f", "#97918F", "#FFA267", - "#ed825c", - "#67c375", - "#f5d9a2", - "#e08ece", - "#f3a594", - "#70cced" + "#FF794A", + "#52D866", + "#FFDC98", + "#EE80D6", + "#FF9D88", + "#60D4FD" ], "ansi": [ "#222222", - "#ed825c", - "#67c375", - "#f5d9a2", - "#e08ece", - "#f3a594", - "#70cced", + "#FF794A", + "#52D866", + "#FFDC98", + "#EE80D6", + "#FF9D88", + "#60D4FD", "#fdfdfd", - "#8c8c8c", - "#ed785e", - "#78f09a", - "#f8f0c3", - "#f6abe6", - "#f5b5a9", - "#a2dff5", - "#ffffff" + "#928986", + "#FF6D4C", + "#69FF94", + "#FFF5BC", + "#FFA2EB", + "#FFAEA0", + "#98E4FF", + "#FFFFFF" ], "brightOther": [ - "#f8f0c3", - "#a2dff5" + "#FFF5BC", + "#98E4FF" ], "other": [ "#343434", - "#ffffff1A", - "#ffffff", + "#FFFFFF1A", + "#FFFFFF", "#2c2c2c", "#343434", "#2C2C2C", @@ -62,34 +62,32 @@ "colors": { "terminal.background": "#222222", "terminal.foreground": "#fdfdfd", - "terminal.ansiBrightBlack": "#8c8c8c", - "terminal.ansiBrightRed": "#ed785e", - "terminal.ansiBrightGreen": "#78f09a", - "terminal.ansiBrightYellow": "#f8f0c3", - "terminal.ansiBrightBlue": "#f6abe6", - "terminal.ansiBrightMagenta": "#f5b5a9", - "terminal.ansiBrightCyan": "#a2dff5", - "terminal.ansiBrightWhite": "#ffffff", + "terminal.ansiBrightBlack": "#928986", + "terminal.ansiBrightRed": "#FF6D4C", + "terminal.ansiBrightGreen": "#69FF94", + "terminal.ansiBrightYellow": "#FFF5BC", + "terminal.ansiBrightBlue": "#FFA2EB", + "terminal.ansiBrightMagenta": "#FFAEA0", + "terminal.ansiBrightCyan": "#98E4FF", + "terminal.ansiBrightWhite": "#FFFFFF", "terminal.ansiBlack": "#222222", - "terminal.ansiRed": "#ed825c", - "terminal.ansiGreen": "#67c375", - "terminal.ansiYellow": "#f5d9a2", - "terminal.ansiBlue": "#e08ece", - "terminal.ansiMagenta": "#f3a594", - "terminal.ansiCyan": "#70cced", + "terminal.ansiRed": "#FF794A", + "terminal.ansiGreen": "#52D866", + "terminal.ansiYellow": "#FFDC98", + "terminal.ansiBlue": "#EE80D6", + "terminal.ansiMagenta": "#FF9D88", + "terminal.ansiCyan": "#60D4FD", "terminal.ansiWhite": "#fdfdfd", "contrastBorder": "#1A1A1A", - "contrastActiveBorder": null, "focusBorder": "#EF8661b3", "foreground": "#fdfdfd", "widget.shadow": "#1A1A1A", "selection.background": "#773F72", - "errorForeground": "#ed825c", + "errorForeground": "#FF794A", "button.background": "#484848", "button.foreground": "#fdfdfd", - "button.hoverBackground": "#DF4A16", + "button.hoverBackground": "#0C6D1A", "button.secondaryBackground": "#DF4A16", - "button.secondaryForeground": null, "dropdown.background": "#2C2C2C", "dropdown.border": "#EF8661b3", "dropdown.foreground": "#fdfdfd", @@ -98,179 +96,132 @@ "input.border": "#EF8661b3", "input.placeholderForeground": "#c2c2c270", "inputOption.activeBorder": "#DF4A16", - "inputValidation.infoForeground": null, - "inputValidation.infoBackground": null, - "inputValidation.infoBorder": "#f3a594", - "inputValidation.warningForeground": null, - "inputValidation.warningBackground": null, + "inputValidation.infoBorder": "#FF9D88", "inputValidation.warningBorder": "#FFA267", - "inputValidation.errorForeground": null, - "inputValidation.errorBackground": null, - "inputValidation.errorBorder": "#ed825c", + "inputValidation.errorBorder": "#FF794A", "scrollbar.shadow": "#1A1A1A", "scrollbarSlider.activeBackground": "#c2c2c2", "scrollbarSlider.background": "#343434", - "scrollbarSlider.hoverBackground": null, - "badge.foreground": "#ffffff", - "badge.background": "#773F72", - "progressBar.background": "#f3a594", + "badge.foreground": "#FFFFFF", + "badge.background": "#0C6D1A", + "progressBar.background": "#FF9D88", "list.activeSelectionBackground": "#2C2C2C", "list.activeSelectionForeground": "#fdfdfd", "list.dropBackground": "#773F7250", "list.focusBackground": "#773F7230", - "list.highlightForeground": "#70cced", + "list.highlightForeground": "#60D4FD", "list.hoverBackground": "#773F7230", "list.inactiveSelectionBackground": "#2C2C2C50", - "list.inactiveSelectionForeground": null, "list.warningForeground": "#FFA267", - "list.errorForeground": "#ed825c", - "list.hoverForeground": null, - "list.focusForeground": null, + "list.errorForeground": "#FF794A", "activityBar.background": "#2C2C2C", "activityBar.inactiveForeground": "#c2c2c2", - "activityBar.dropBackground": null, - "activityBar.dropBorder": "#70cced", + "activityBar.dropBorder": "#60D4FD", "activityBar.foreground": "#fdfdfd", - "activityBar.border": null, "activityBar.activeBorder": "#DF4A16", "activityBar.activeBackground": "#DF4A16", "activityBarBadge.background": "#DF4A16", - "activityBarBadge.foreground": "#ffffff", + "activityBarBadge.foreground": "#FFFFFF", "sideBar.background": "#222222", "sideBar.foreground": "#c2c2c2", - "sideBar.border": null, "sideBarTitle.foreground": "#fdfdfd", - "sideBarSectionHeader.background": "#2C2C2C30", + "sideBarSectionHeader.background": "#2C2C2C50", "sideBarSectionHeader.foreground": "#c2c2c2", "sideBarSectionHeader.border": "#1A1A1A", - "editorGroup.background": null, - "editorGroup.border": "#DF4A16", + "editorGroup.border": "#343434", "editorGroup.dropBackground": "#2c2c2c", - "editorGroupHeader.noTabsBackground": null, "editorGroupHeader.tabsBackground": "#2C2C2C", - "editorGroupHeader.tabsBorder": null, "tab.activeBackground": "#222222", "tab.activeForeground": "#fdfdfd", "tab.border": "#1A1A1A", - "tab.activeBorderTop": "#DF4A16", - "tab.activeBorder": null, - "tab.unfocusedActiveBorder": null, + "tab.activeBorderTop": "#60D4FD", "tab.inactiveBackground": "#2C2C2C", - "tab.inactiveModifiedBorder": "#773F72", + "tab.inactiveModifiedBorder": "#DF4A16", "tab.inactiveForeground": "#c2c2c2", - "tab.unfocusedActiveForeground": null, - "tab.unfocusedInactiveForeground": null, - "tab.activeModifiedBorder": "#DF4A16", + "tab.activeModifiedBorder": "#60D4FD", "editor.foreground": "#fdfdfd", "editor.background": "#222222", "editorLineNumber.foreground": "#97918F75", - "editorCursor.foreground": null, "editor.selectionBackground": "#1BAEE23f", "editor.selectionHighlightBackground": "#343434", - "editor.inactiveSelectionBackground": null, "editor.foldBackground": "#222222", - "editor.wordHighlightBackground": "#70cced50", - "editor.wordHighlightStrongBackground": "#67c37530", + "editor.wordHighlightBackground": "#60D4FD50", + "editor.wordHighlightStrongBackground": "#52D86630", "editor.findMatchBackground": "#FFA26780", - "editor.findMatchHighlightBackground": "#ffffff40", + "editor.findMatchHighlightBackground": "#FFFFFF40", "editor.findRangeHighlightBackground": "#343434", - "editor.hoverHighlightBackground": "#70cced50", + "editor.hoverHighlightBackground": "#60D4FD50", "editor.lineHighlightBackground": "#343434", - "editor.lineHighlightBorder": null, - "editorLink.activeForeground": "#70cced", + "editor.lineHighlightBorder": "#343434", + "editorLink.activeForeground": "#60D4FD", "editor.rangeHighlightBackground": "#773F7215", "editor.snippetTabstopHighlightBackground": "#222222", "editor.snippetTabstopHighlightBorder": "#97918F", "editor.snippetFinalTabstopHighlightBackground": "#222222", - "editor.snippetFinalTabstopHighlightBorder": "#67c375", - "editorWhitespace.foreground": "#ffffff1A", - "editorIndentGuide.background": "#ffffff1A", - "editorIndentGuide.activeBackground": "#ffffff45", - "editorRuler.foreground": "#ffffff1A", + "editor.snippetFinalTabstopHighlightBorder": "#52D866", + "editorWhitespace.foreground": "#FFFFFF1A", + "editorIndentGuide.background": "#FFFFFF1A", + "editorIndentGuide.activeBackground": "#FFFFFF45", + "editorRuler.foreground": "#FFFFFF1A", "editorCodeLens.foreground": "#97918F", - "editorBracketMatch.background": null, - "editorBracketMatch.border": null, "editorOverviewRuler.border": "#1A1A1A", - "editorOverviewRuler.findMatchForeground": null, - "editorOverviewRuler.rangeHighlightForeground": null, "editorOverviewRuler.selectionHighlightForeground": "#FFA267", - "editorOverviewRuler.wordHighlightForeground": "#70cced", - "editorOverviewRuler.wordHighlightStrongForeground": "#67c375", - "editorOverviewRuler.modifiedForeground": "#70cced80", - "editorOverviewRuler.addedForeground": "#67c37580", - "editorOverviewRuler.deletedForeground": "#ed825c80", - "editorOverviewRuler.errorForeground": "#ed825c80", + "editorOverviewRuler.wordHighlightForeground": "#60D4FD", + "editorOverviewRuler.wordHighlightStrongForeground": "#52D866", + "editorOverviewRuler.modifiedForeground": "#60D4FD80", + "editorOverviewRuler.addedForeground": "#52D86680", + "editorOverviewRuler.deletedForeground": "#FF794A80", + "editorOverviewRuler.errorForeground": "#FF794A80", "editorOverviewRuler.warningForeground": "#FFA26780", - "editorOverviewRuler.infoForeground": "#70cced80", - "editorError.foreground": "#ed825c", - "editorError.border": null, - "editorWarning.foreground": "#70cced", - "editorWarning.border": null, - "editorGutter.background": null, - "editorGutter.modifiedBackground": "#70cced80", - "editorGutter.addedBackground": "#67c37580", - "editorGutter.deletedBackground": "#ed825c80", - "gitDecoration.modifiedResourceForeground": "#70cced", - "gitDecoration.deletedResourceForeground": "#ed825c", - "gitDecoration.untrackedResourceForeground": "#67c375", + "editorOverviewRuler.infoForeground": "#60D4FD80", + "editorError.foreground": "#FF794A", + "editorWarning.foreground": "#60D4FD", + "editorGutter.modifiedBackground": "#60D4FD80", + "editorGutter.addedBackground": "#52D86680", + "editorGutter.deletedBackground": "#FF794A80", + "gitDecoration.modifiedResourceForeground": "#60D4FD", + "gitDecoration.deletedResourceForeground": "#FF794A", + "gitDecoration.untrackedResourceForeground": "#52D866", "gitDecoration.ignoredResourceForeground": "#97918F", "gitDecoration.conflictingResourceForeground": "#FFA267", - "diffEditor.insertedTextBackground": "#67c37520", - "diffEditor.insertedTextBorder": null, - "diffEditor.removedTextBackground": "#ed825c50", - "diffEditor.removedTextBorder": null, + "diffEditor.insertedTextBackground": "#52D86620", + "diffEditor.removedTextBackground": "#FF794A50", "editorWidget.background": "#222222", - "editorWidgetBorder": null, "editorSuggestWidget.background": "#222222", - "editorSuggestWidget.border": null, "editorSuggestWidget.foreground": "#fdfdfd", - "editorSuggestWidget.highlightForeground": null, "editorSuggestWidget.selectedBackground": "#1BAEE23f", "editorHoverWidget.background": "#222222", "editorHoverWidget.border": "#97918F", - "debugExceptionWidget.background": null, - "debugExceptionWidget.border": null, "editorMarkerNavigation.background": "#222222", - "editorMarkerNavigationError.background": null, - "editorMarkerNavigationWarning.background": null, "peekView.border": "#1BAEE23f", "peekViewEditor.background": "#222222", - "peekViewEditorGutter.background": null, - "peekViewEditor.matchHighlightBackground": "#f5d9a280", + "peekViewEditor.matchHighlightBackground": "#FFDC9880", "peekViewResult.background": "#222222", "peekViewResult.fileForeground": "#fdfdfd", "peekViewResult.lineForeground": "#fdfdfd", - "peekViewResult.matchHighlightBackground": "#f5d9a280", + "peekViewResult.matchHighlightBackground": "#FFDC9880", "peekViewResult.selectionBackground": "#1BAEE23f", "peekViewResult.selectionForeground": "#fdfdfd", "peekViewTitle.background": "#1A1A1A", "peekViewTitleDescription.foreground": "#97918F", "peekViewTitleLabel.foreground": "#fdfdfd", - "merge.currentHeaderBackground": "#67c37590", - "merge.currentContentBackground": null, + "merge.currentHeaderBackground": "#52D86690", "merge.incomingHeaderBackground": "#DF4A1690", - "merge.incomingContentBackground": null, - "merge.border": null, - "editorOverviewRuler.currentContentForeground": "#67c375", + "editorOverviewRuler.currentContentForeground": "#52D866", "editorOverviewRuler.incomingContentForeground": "#DF4A16", "panel.background": "#222222", - "panel.border": "#1A1A1A", + "panel.border": "#DF4A16", "panelTitle.activeBorder": "#DF4A16", "panelTitle.activeForeground": "#fdfdfd", "panelTitle.inactiveForeground": "#c2c2c2", "statusBar.background": "#DF4A16", - "statusBar.foreground": "#fdfdfd", - "statusBar.debuggingBackground": null, - "statusBar.debuggingForeground": null, + "statusBar.foreground": "#FFFFFF", "statusBar.noFolderBackground": "#1A1A1A", "statusBar.noFolderForeground": "#fdfdfd", - "statusBarItem.activeBackground": null, - "statusBarItem.hoverBackground": null, - "statusBarItem.prominentBackground": "#ed825c", + "statusBarItem.prominentBackground": "#FF794A", "statusBarItem.prominentHoverBackground": "#FFA267", - "statusBarItem.remoteForeground": "#ffffff", + "statusBarItem.remoteForeground": "#FFFFFF", "statusBarItem.remoteBackground": "#0C6D1A", - "statusBar.border": null, "titleBar.activeBackground": "#2C2C2C", "titleBar.activeForeground": "#fdfdfd", "titleBar.inactiveBackground": "#222222", @@ -280,38 +231,36 @@ "notification.buttonBackground": "#DF4A16", "notification.buttonForeground": "#fdfdfd", "notification.buttonHoverBackground": "#343434", - "notification.errorBackground": "#ed825c", + "notification.errorBackground": "#FF794A", "notification.errorForeground": "#fdfdfd", - "notification.infoBackground": "#70cced", + "notification.infoBackground": "#60D4FD", "notification.infoForeground": "#222222", "notification.warningBackground": "#FFA267", "notification.warningForeground": "#222222", "extensionButton.prominentForeground": "#fdfdfd", - "extensionButton.prominentBackground": "#67c37590", - "extensionButton.prominentHoverBackground": "#67c37560", - "pickerGroup.border": "#DF4A16", - "pickerGroup.foreground": "#70cced", + "extensionButton.prominentBackground": "#0C6D1A", + "extensionButton.prominentHoverBackground": "#0C6D1A90", + "pickerGroup.border": "#484848", + "pickerGroup.foreground": "#60D4FD", "debugToolBar.background": "#222222", - "welcomePage.buttonBackground": null, - "welcomePage.buttonHoverBackground": null, "walkThrough.embeddedEditorBackground": "#222222", "breadcrumb.foreground": "#97918F", "breadcrumb.background": "#222222", "breadcrumb.focusForeground": "#fdfdfd", "breadcrumb.activeSelectionForeground": "#fdfdfd", "breadcrumbPicker.background": "#222222", - "minimap.selectionHighlight": "#70cced50", + "minimap.selectionHighlight": "#60D4FD50", "minimap.findMatchHighlight": "#FFA26785", "menu.background": "#2C2C2C", "menu.selectionBackground": "#DF4A16", - "menu.selectionForeground": "#ffffff", + "menu.selectionForeground": "#FFFFFF", "menu.foreground": "#c2c2c2", "menu.separatorBackground": "#343434", "menubar.selectionBackground": "#DF4A16", - "menubar.selectionForeground": "#ffffff", + "menubar.selectionForeground": "#FFFFFF", "listFilterWidget.background": "#2C2C2C", "listFilterWidget.outline": "#343434", - "listFilterWidget.noMatchesOutline": "#ed825c" + "listFilterWidget.noMatchesOutline": "#FF794A" }, "tokenColors": [ { @@ -335,7 +284,7 @@ "header" ], "settings": { - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -360,7 +309,7 @@ "markup.inserted" ], "settings": { - "foreground": "#67c375" + "foreground": "#52D866" } }, { @@ -368,7 +317,7 @@ "markup.deleted" ], "settings": { - "foreground": "#ed825c" + "foreground": "#FF794A" } }, { @@ -384,7 +333,7 @@ "invalid" ], "settings": { - "foreground": "#ed825c", + "foreground": "#FF794A", "fontStyle": "underline italic" } }, @@ -402,7 +351,7 @@ "entity.name.filename" ], "settings": { - "foreground": "#f5d9a2" + "foreground": "#FFDC98" } }, { @@ -410,7 +359,7 @@ "markup.error" ], "settings": { - "foreground": "#ed825c" + "foreground": "#FF794A" } }, { @@ -439,7 +388,7 @@ ], "settings": { "fontStyle": "bold", - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -448,7 +397,7 @@ "markup.italic" ], "settings": { - "foreground": "#f5d9a2", + "foreground": "#FFDC98", "fontStyle": "italic" } }, @@ -460,7 +409,7 @@ "punctuation.definition.link.restructuredtext" ], "settings": { - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -470,7 +419,7 @@ "markup.raw.restructuredtext" ], "settings": { - "foreground": "#67c375" + "foreground": "#52D866" } }, { @@ -480,7 +429,7 @@ "markup.underline.link.image" ], "settings": { - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -492,7 +441,7 @@ "string.other.link.title" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -502,7 +451,7 @@ "markup.quote" ], "settings": { - "foreground": "#f5d9a2", + "foreground": "#FFDC98", "fontStyle": "italic" } }, @@ -523,7 +472,7 @@ "markup.fenced_code.block.markdown punctuation.definition.markdown" ], "settings": { - "foreground": "#67c375" + "foreground": "#52D866" } }, { @@ -532,7 +481,7 @@ "punctuation.definition.constant.restructuredtext" ], "settings": { - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -542,7 +491,7 @@ "markup.heading.markdown punctuation.definition.string.end" ], "settings": { - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -562,7 +511,7 @@ "markup.quote.markdown meta.paragraph.markdown punctuation.definition.string.end" ], "settings": { - "foreground": "#f5d9a2" + "foreground": "#FFDC98" } }, { @@ -572,7 +521,7 @@ "entity.name.class" ], "settings": { - "foreground": "#70cced", + "foreground": "#60D4FD", "fontStyle": "normal" } }, @@ -587,7 +536,7 @@ "variable.parameter.function.language.special" ], "settings": { - "foreground": "#e08ece", + "foreground": "#EE80D6", "fontStyle": "italic" } }, @@ -598,7 +547,7 @@ ], "settings": { "fontStyle": "italic", - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -621,7 +570,7 @@ "comment.block.documentation storage.type.class" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -630,7 +579,7 @@ "comment.block.documentation entity.name.type" ], "settings": { - "foreground": "#70cced", + "foreground": "#60D4FD", "fontStyle": "italic" } }, @@ -640,7 +589,7 @@ "comment.block.documentation entity.name.type punctuation.definition.bracket" ], "settings": { - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -660,7 +609,7 @@ "variable.other.constant" ], "settings": { - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -671,7 +620,7 @@ "constant.regexp" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -680,7 +629,7 @@ "entity.name.tag" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -689,7 +638,7 @@ "entity.other.attribute-name.parent-selector" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -698,7 +647,7 @@ "entity.other.attribute-name" ], "settings": { - "foreground": "#67c375", + "foreground": "#52D866", "fontStyle": "italic" } }, @@ -716,7 +665,7 @@ "keyword.operator.function.infix" ], "settings": { - "foreground": "#67c375" + "foreground": "#52D866" } }, { @@ -741,7 +690,7 @@ "meta.decorator variable.other.property" ], "settings": { - "foreground": "#67c375", + "foreground": "#52D866", "fontStyle": "italic" } }, @@ -751,7 +700,7 @@ "meta.decorator variable.other.object" ], "settings": { - "foreground": "#67c375" + "foreground": "#52D866" } }, { @@ -761,7 +710,7 @@ "punctuation.definition.keyword" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -780,7 +729,7 @@ "meta.selector" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -790,7 +739,7 @@ ], "settings": { "fontStyle": "italic", - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -802,7 +751,7 @@ ], "settings": { "fontStyle": "regular", - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -844,7 +793,7 @@ "punctuation.separator.annotation" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -887,7 +836,7 @@ "punctuation.definition.variable.makefile" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -899,7 +848,7 @@ "variable.other.key.toml" ], "settings": { - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -919,7 +868,7 @@ ], "settings": { "fontStyle": "italic underline", - "foreground": "#67c375" + "foreground": "#52D866" } }, { @@ -932,7 +881,7 @@ ], "settings": { "fontStyle": "regular", - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -960,7 +909,7 @@ ], "settings": { "fontStyle": "italic", - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -980,7 +929,7 @@ "storage.modifier" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -991,7 +940,7 @@ "constant.character.escape.backslash.regexp" ], "settings": { - "foreground": "#f5d9a2" + "foreground": "#FFDC98" } }, { @@ -1000,7 +949,7 @@ "punctuation.definition.group.capture.regexp" ], "settings": { - "foreground": "#f3a594" + "foreground": "#FF9D88" } }, { @@ -1010,7 +959,7 @@ "string.regexp punctuation.definition.string.end" ], "settings": { - "foreground": "#ed825c" + "foreground": "#FF794A" } }, { @@ -1019,7 +968,7 @@ "punctuation.definition.character-class.regexp" ], "settings": { - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -1038,7 +987,7 @@ "keyword.operator.negation.regexp" ], "settings": { - "foreground": "#ed825c" + "foreground": "#FF794A" } }, { @@ -1047,7 +996,7 @@ "meta.assertion.look-ahead.regexp" ], "settings": { - "foreground": "#67c375" + "foreground": "#52D866" } }, { @@ -1056,7 +1005,7 @@ "string" ], "settings": { - "foreground": "#f5d9a2" + "foreground": "#FFDC98" } }, { @@ -1066,7 +1015,7 @@ "punctuation.definition.string.end" ], "settings": { - "foreground": "#f8f0c3" + "foreground": "#FFF5BC" } }, { @@ -1076,7 +1025,7 @@ "punctuation.support.type.property-name.end" ], "settings": { - "foreground": "#a2dff5" + "foreground": "#98E4FF" } }, { @@ -1135,7 +1084,7 @@ "meta.selectionset.graphql variable" ], "settings": { - "foreground": "#f5d9a2" + "foreground": "#FFDC98" } }, { @@ -1154,7 +1103,7 @@ "variable.fragment.graphql" ], "settings": { - "foreground": "#70cced" + "foreground": "#60D4FD" } }, { @@ -1184,7 +1133,7 @@ "source.shell variable.other" ], "settings": { - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -1194,7 +1143,7 @@ ], "settings": { "fontStyle": "normal", - "foreground": "#e08ece" + "foreground": "#EE80D6" } }, { @@ -1203,7 +1152,7 @@ "meta.scope.prerequisites.makefile" ], "settings": { - "foreground": "#f5d9a2" + "foreground": "#FFDC98" } }, { @@ -1212,7 +1161,7 @@ "meta.attribute-selector.scss" ], "settings": { - "foreground": "#f5d9a2" + "foreground": "#FFDC98" } }, { diff --git a/theme/yaru-dark.json b/theme/yaru-dark.json new file mode 100644 index 0000000..6d7f306 --- /dev/null +++ b/theme/yaru-dark.json @@ -0,0 +1,1187 @@ +{ + "name": "Yaru Dark", + "author": "Adson CIcilioti", + "maintainers": [ + "Adson Cicilioti " + ], + "semanticClass": "theme.yaru", + "semanticHighlighting": true, + "yaru": { + "base": [ + "#222222", + "#fdfdfd", + "#1BAEE23f", + "#97918F", + "#FFA267", + "#FF794A", + "#52D866", + "#FFDC98", + "#EE80D6", + "#FF9D88", + "#60D4FD" + ], + "ansi": [ + "#222222", + "#FF794A", + "#52D866", + "#FFDC98", + "#EE80D6", + "#FF9D88", + "#60D4FD", + "#fdfdfd", + "#928986", + "#FF6D4C", + "#69FF94", + "#FFF5BC", + "#FFA2EB", + "#FFAEA0", + "#98E4FF", + "#FFFFFF" + ], + "brightOther": [ + "#FFF5BC", + "#98E4FF" + ], + "other": [ + "#343434", + "#FFFFFF1A", + "#FFFFFF", + "#2c2c2c", + "#343434", + "#2C2C2C", + "#222222", + "#1A1A1A", + "#EF8661b3", + "#DF4A16", + "#773F72", + "#0C6D1A", + "#c2c2c2", + "#484848" + ] + }, + "colors": { + "terminal.background": "#222222", + "terminal.foreground": "#fdfdfd", + "terminal.ansiBrightBlack": "#928986", + "terminal.ansiBrightRed": "#FF6D4C", + "terminal.ansiBrightGreen": "#69FF94", + "terminal.ansiBrightYellow": "#FFF5BC", + "terminal.ansiBrightBlue": "#FFA2EB", + "terminal.ansiBrightMagenta": "#FFAEA0", + "terminal.ansiBrightCyan": "#98E4FF", + "terminal.ansiBrightWhite": "#FFFFFF", + "terminal.ansiBlack": "#222222", + "terminal.ansiRed": "#FF794A", + "terminal.ansiGreen": "#52D866", + "terminal.ansiYellow": "#FFDC98", + "terminal.ansiBlue": "#EE80D6", + "terminal.ansiMagenta": "#FF9D88", + "terminal.ansiCyan": "#60D4FD", + "terminal.ansiWhite": "#fdfdfd", + "contrastBorder": "#1A1A1A", + "focusBorder": "#EF8661b3", + "foreground": "#fdfdfd", + "widget.shadow": "#1A1A1A", + "selection.background": "#773F72", + "errorForeground": "#FF794A", + "button.background": "#484848", + "button.foreground": "#fdfdfd", + "button.hoverBackground": "#0C6D1A", + "button.secondaryBackground": "#DF4A16", + "dropdown.background": "#2C2C2C", + "dropdown.border": "#EF8661b3", + "dropdown.foreground": "#fdfdfd", + "input.background": "#2C2C2C", + "input.foreground": "#fdfdfd", + "input.border": "#EF8661b3", + "input.placeholderForeground": "#c2c2c270", + "inputOption.activeBorder": "#DF4A16", + "inputValidation.infoBorder": "#FF9D88", + "inputValidation.warningBorder": "#FFA267", + "inputValidation.errorBorder": "#FF794A", + "scrollbar.shadow": "#1A1A1A", + "scrollbarSlider.activeBackground": "#c2c2c2", + "scrollbarSlider.background": "#343434", + "badge.foreground": "#FFFFFF", + "badge.background": "#773F72", + "progressBar.background": "#FF9D88", + "list.activeSelectionBackground": "#2C2C2C", + "list.activeSelectionForeground": "#fdfdfd", + "list.dropBackground": "#773F7250", + "list.focusBackground": "#773F7230", + "list.highlightForeground": "#60D4FD", + "list.hoverBackground": "#773F7230", + "list.inactiveSelectionBackground": "#2C2C2C50", + "list.warningForeground": "#FFA267", + "list.errorForeground": "#FF794A", + "activityBar.background": "#2C2C2C", + "activityBar.inactiveForeground": "#c2c2c2", + "activityBar.dropBorder": "#60D4FD", + "activityBar.foreground": "#fdfdfd", + "activityBar.activeBorder": "#DF4A16", + "activityBar.activeBackground": "#DF4A16", + "activityBarBadge.background": "#DF4A16", + "activityBarBadge.foreground": "#FFFFFF", + "sideBar.background": "#222222", + "sideBar.foreground": "#c2c2c2", + "sideBarTitle.foreground": "#fdfdfd", + "sideBarSectionHeader.background": "#2C2C2C50", + "sideBarSectionHeader.foreground": "#c2c2c2", + "sideBarSectionHeader.border": "#1A1A1A", + "editorGroup.border": "#343434", + "editorGroup.dropBackground": "#2c2c2c", + "editorGroupHeader.tabsBackground": "#2C2C2C", + "tab.activeBackground": "#222222", + "tab.activeForeground": "#fdfdfd", + "tab.border": "#1A1A1A", + "tab.activeBorderTop": "#60D4FD", + "tab.inactiveBackground": "#2C2C2C", + "tab.inactiveModifiedBorder": "#DF4A16", + "tab.inactiveForeground": "#c2c2c2", + "tab.activeModifiedBorder": "#60D4FD", + "editor.foreground": "#fdfdfd", + "editor.background": "#222222", + "editorLineNumber.foreground": "#97918F75", + "editor.selectionBackground": "#1BAEE23f", + "editor.selectionHighlightBackground": "#343434", + "editor.foldBackground": "#222222", + "editor.wordHighlightBackground": "#60D4FD50", + "editor.wordHighlightStrongBackground": "#52D86630", + "editor.findMatchBackground": "#FFA26780", + "editor.findMatchHighlightBackground": "#FFFFFF40", + "editor.findRangeHighlightBackground": "#343434", + "editor.hoverHighlightBackground": "#60D4FD50", + "editor.lineHighlightBackground": "#343434", + "editor.lineHighlightBorder": "#343434", + "editorLink.activeForeground": "#60D4FD", + "editor.rangeHighlightBackground": "#773F7215", + "editor.snippetTabstopHighlightBackground": "#222222", + "editor.snippetTabstopHighlightBorder": "#97918F", + "editor.snippetFinalTabstopHighlightBackground": "#222222", + "editor.snippetFinalTabstopHighlightBorder": "#52D866", + "editorWhitespace.foreground": "#FFFFFF1A", + "editorIndentGuide.background": "#FFFFFF1A", + "editorIndentGuide.activeBackground": "#FFFFFF45", + "editorRuler.foreground": "#FFFFFF1A", + "editorCodeLens.foreground": "#97918F", + "editorOverviewRuler.border": "#1A1A1A", + "editorOverviewRuler.selectionHighlightForeground": "#FFA267", + "editorOverviewRuler.wordHighlightForeground": "#60D4FD", + "editorOverviewRuler.wordHighlightStrongForeground": "#52D866", + "editorOverviewRuler.modifiedForeground": "#60D4FD80", + "editorOverviewRuler.addedForeground": "#52D86680", + "editorOverviewRuler.deletedForeground": "#FF794A80", + "editorOverviewRuler.errorForeground": "#FF794A80", + "editorOverviewRuler.warningForeground": "#FFA26780", + "editorOverviewRuler.infoForeground": "#60D4FD80", + "editorError.foreground": "#FF794A", + "editorWarning.foreground": "#60D4FD", + "editorGutter.modifiedBackground": "#60D4FD80", + "editorGutter.addedBackground": "#52D86680", + "editorGutter.deletedBackground": "#FF794A80", + "gitDecoration.modifiedResourceForeground": "#60D4FD", + "gitDecoration.deletedResourceForeground": "#FF794A", + "gitDecoration.untrackedResourceForeground": "#52D866", + "gitDecoration.ignoredResourceForeground": "#97918F", + "gitDecoration.conflictingResourceForeground": "#FFA267", + "diffEditor.insertedTextBackground": "#52D86620", + "diffEditor.removedTextBackground": "#FF794A50", + "editorWidget.background": "#222222", + "editorSuggestWidget.background": "#222222", + "editorSuggestWidget.foreground": "#fdfdfd", + "editorSuggestWidget.selectedBackground": "#1BAEE23f", + "editorHoverWidget.background": "#222222", + "editorHoverWidget.border": "#97918F", + "editorMarkerNavigation.background": "#222222", + "peekView.border": "#1BAEE23f", + "peekViewEditor.background": "#222222", + "peekViewEditor.matchHighlightBackground": "#FFDC9880", + "peekViewResult.background": "#222222", + "peekViewResult.fileForeground": "#fdfdfd", + "peekViewResult.lineForeground": "#fdfdfd", + "peekViewResult.matchHighlightBackground": "#FFDC9880", + "peekViewResult.selectionBackground": "#1BAEE23f", + "peekViewResult.selectionForeground": "#fdfdfd", + "peekViewTitle.background": "#1A1A1A", + "peekViewTitleDescription.foreground": "#97918F", + "peekViewTitleLabel.foreground": "#fdfdfd", + "merge.currentHeaderBackground": "#52D86690", + "merge.incomingHeaderBackground": "#DF4A1690", + "editorOverviewRuler.currentContentForeground": "#52D866", + "editorOverviewRuler.incomingContentForeground": "#DF4A16", + "panel.background": "#222222", + "panel.border": "#343434", + "panelTitle.activeBorder": "#DF4A16", + "panelTitle.activeForeground": "#fdfdfd", + "panelTitle.inactiveForeground": "#c2c2c2", + "statusBar.background": "#2C2C2C50", + "statusBar.foreground": "#c2c2c2", + "statusBar.noFolderBackground": "#1A1A1A", + "statusBar.noFolderForeground": "#fdfdfd", + "statusBarItem.prominentBackground": "#FF794A", + "statusBarItem.prominentHoverBackground": "#FFA267", + "statusBarItem.remoteForeground": "#FFFFFF", + "statusBarItem.remoteBackground": "#0C6D1A", + "titleBar.activeBackground": "#2C2C2C", + "titleBar.activeForeground": "#fdfdfd", + "titleBar.inactiveBackground": "#222222", + "titleBar.inactiveForeground": "#c2c2c2", + "notification.background": "#222222", + "notification.foreground": "#fdfdfd", + "notification.buttonBackground": "#DF4A16", + "notification.buttonForeground": "#fdfdfd", + "notification.buttonHoverBackground": "#343434", + "notification.errorBackground": "#FF794A", + "notification.errorForeground": "#fdfdfd", + "notification.infoBackground": "#60D4FD", + "notification.infoForeground": "#222222", + "notification.warningBackground": "#FFA267", + "notification.warningForeground": "#222222", + "extensionButton.prominentForeground": "#fdfdfd", + "extensionButton.prominentBackground": "#0C6D1A", + "extensionButton.prominentHoverBackground": "#0C6D1A90", + "pickerGroup.border": "#484848", + "pickerGroup.foreground": "#60D4FD", + "debugToolBar.background": "#222222", + "walkThrough.embeddedEditorBackground": "#222222", + "breadcrumb.foreground": "#97918F", + "breadcrumb.background": "#222222", + "breadcrumb.focusForeground": "#fdfdfd", + "breadcrumb.activeSelectionForeground": "#fdfdfd", + "breadcrumbPicker.background": "#222222", + "minimap.selectionHighlight": "#60D4FD50", + "minimap.findMatchHighlight": "#FFA26785", + "menu.background": "#2C2C2C", + "menu.selectionBackground": "#DF4A16", + "menu.selectionForeground": "#FFFFFF", + "menu.foreground": "#c2c2c2", + "menu.separatorBackground": "#343434", + "menubar.selectionBackground": "#DF4A16", + "menubar.selectionForeground": "#FFFFFF", + "listFilterWidget.background": "#2C2C2C", + "listFilterWidget.outline": "#343434", + "listFilterWidget.noMatchesOutline": "#FF794A" + }, + "tokenColors": [ + { + "scope": [ + "emphasis" + ], + "settings": { + "fontStyle": "italic" + } + }, + { + "scope": [ + "strong" + ], + "settings": { + "fontStyle": "bold" + } + }, + { + "scope": [ + "header" + ], + "settings": { + "foreground": "#EE80D6" + } + }, + { + "scope": [ + "source" + ], + "settings": { + "foreground": "#fdfdfd" + } + }, + { + "scope": [ + "meta.diff", + "meta.diff.header" + ], + "settings": { + "foreground": "#97918F" + } + }, + { + "scope": [ + "markup.inserted" + ], + "settings": { + "foreground": "#52D866" + } + }, + { + "scope": [ + "markup.deleted" + ], + "settings": { + "foreground": "#FF794A" + } + }, + { + "scope": [ + "markup.changed" + ], + "settings": { + "foreground": "#FFA267" + } + }, + { + "scope": [ + "invalid" + ], + "settings": { + "foreground": "#FF794A", + "fontStyle": "underline italic" + } + }, + { + "scope": [ + "invalid.deprecated" + ], + "settings": { + "foreground": "#fdfdfd", + "fontStyle": "underline italic" + } + }, + { + "scope": [ + "entity.name.filename" + ], + "settings": { + "foreground": "#FFDC98" + } + }, + { + "scope": [ + "markup.error" + ], + "settings": { + "foreground": "#FF794A" + } + }, + { + "name": "Underlined markup", + "scope": [ + "markup.underline" + ], + "settings": { + "fontStyle": "underline" + } + }, + { + "name": "Bold markup", + "scope": [ + "markup.bold" + ], + "settings": { + "fontStyle": "bold", + "foreground": "#FFA267" + } + }, + { + "name": "Markup headings", + "scope": [ + "markup.heading" + ], + "settings": { + "fontStyle": "bold", + "foreground": "#EE80D6" + } + }, + { + "name": "Markup italic", + "scope": [ + "markup.italic" + ], + "settings": { + "foreground": "#FFDC98", + "fontStyle": "italic" + } + }, + { + "name": "Bullets, lists (prose)", + "scope": [ + "beginning.punctuation.definition.list.markdown", + "beginning.punctuation.definition.quote.markdown", + "punctuation.definition.link.restructuredtext" + ], + "settings": { + "foreground": "#60D4FD" + } + }, + { + "name": "Inline code (prose)", + "scope": [ + "markup.inline.raw", + "markup.raw.restructuredtext" + ], + "settings": { + "foreground": "#52D866" + } + }, + { + "name": "Links (prose)", + "scope": [ + "markup.underline.link", + "markup.underline.link.image" + ], + "settings": { + "foreground": "#60D4FD" + } + }, + { + "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": "#FF9D88" + } + }, + { + "name": "Blockquotes (prose)", + "scope": [ + "entity.name.directive.restructuredtext", + "markup.quote" + ], + "settings": { + "foreground": "#FFDC98", + "fontStyle": "italic" + } + }, + { + "name": "Horizontal rule (prose)", + "scope": [ + "meta.separator.markdown" + ], + "settings": { + "foreground": "#97918F" + } + }, + { + "name": "Code blocks", + "scope": [ + "fenced_code.block.language", + "markup.raw.inner.restructuredtext", + "markup.fenced_code.block.markdown punctuation.definition.markdown" + ], + "settings": { + "foreground": "#52D866" + } + }, + { + "name": "Prose constants", + "scope": [ + "punctuation.definition.constant.restructuredtext" + ], + "settings": { + "foreground": "#EE80D6" + } + }, + { + "name": "Braces in markdown headings", + "scope": [ + "markup.heading.markdown punctuation.definition.string.begin", + "markup.heading.markdown punctuation.definition.string.end" + ], + "settings": { + "foreground": "#EE80D6" + } + }, + { + "name": "Braces in markdown paragraphs", + "scope": [ + "meta.paragraph.markdown punctuation.definition.string.begin", + "meta.paragraph.markdown punctuation.definition.string.end" + ], + "settings": { + "foreground": "#fdfdfd" + } + }, + { + "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": "#FFDC98" + } + }, + { + "name": "User-defined class names", + "scope": [ + "entity.name.type.class", + "entity.name.class" + ], + "settings": { + "foreground": "#60D4FD", + "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": "#EE80D6", + "fontStyle": "italic" + } + }, + { + "name": "Inherited classes", + "scope": [ + "entity.other.inherited-class" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#60D4FD" + } + }, + { + "name": "Comments", + "scope": [ + "comment", + "punctuation.definition.comment", + "unused.comment", + "wildcard.comment" + ], + "settings": { + "foreground": "#97918F" + } + }, + { + "name": "JSDoc-style keywords", + "scope": [ + "comment keyword.codetag.notation", + "comment.block.documentation keyword", + "comment.block.documentation storage.type.class" + ], + "settings": { + "foreground": "#FF9D88" + } + }, + { + "name": "JSDoc-style types", + "scope": [ + "comment.block.documentation entity.name.type" + ], + "settings": { + "foreground": "#60D4FD", + "fontStyle": "italic" + } + }, + { + "name": "JSDoc-style type brackets", + "scope": [ + "comment.block.documentation entity.name.type punctuation.definition.bracket" + ], + "settings": { + "foreground": "#60D4FD" + } + }, + { + "name": "JSDoc-style comment parameters", + "scope": [ + "comment.block.documentation variable" + ], + "settings": { + "foreground": "#FFA267", + "fontStyle": "italic" + } + }, + { + "name": "Constants", + "scope": [ + "constant", + "variable.other.constant" + ], + "settings": { + "foreground": "#EE80D6" + } + }, + { + "name": "Constant escape sequences", + "scope": [ + "constant.character.escape", + "constant.character.string.escape", + "constant.regexp" + ], + "settings": { + "foreground": "#FF9D88" + } + }, + { + "name": "HTML tags", + "scope": [ + "entity.name.tag" + ], + "settings": { + "foreground": "#FF9D88" + } + }, + { + "name": "CSS attribute parent selectors ('&')", + "scope": [ + "entity.other.attribute-name.parent-selector" + ], + "settings": { + "foreground": "#FF9D88" + } + }, + { + "name": "HTML/CSS attribute names", + "scope": [ + "entity.other.attribute-name" + ], + "settings": { + "foreground": "#52D866", + "fontStyle": "italic" + } + }, + { + "name": "Function names", + "scope": [ + "entity.name.function", + "meta.function-call.generic", + "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": "#52D866" + } + }, + { + "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": "#FFA267" + } + }, + { + "name": "Decorators", + "scope": [ + "meta.decorator variable.other.readwrite", + "meta.decorator variable.other.property" + ], + "settings": { + "foreground": "#52D866", + "fontStyle": "italic" + } + }, + { + "name": "Decorator Objects", + "scope": [ + "meta.decorator variable.other.object" + ], + "settings": { + "foreground": "#52D866" + } + }, + { + "name": "Keywords", + "scope": [ + "keyword", + "punctuation.definition.keyword" + ], + "settings": { + "foreground": "#FF9D88" + } + }, + { + "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": "#FF9D88" + } + }, + { + "name": "Language Built-ins", + "scope": [ + "support" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#60D4FD" + } + }, + { + "name": "Built-in magic functions and constants", + "scope": [ + "support.function.magic", + "support.variable", + "variable.other.predefined" + ], + "settings": { + "fontStyle": "regular", + "foreground": "#EE80D6" + } + }, + { + "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": "#FF9D88" + } + }, + { + "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", + "storage.type.generic.java", + "string.template meta.brace", + "string.template punctuation.accessor" + ], + "settings": { + "foreground": "#fdfdfd" + } + }, + { + "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": "#FF9D88" + } + }, + { + "name": "Keys (serializable languages)", + "scope": [ + "entity.name.function.target.makefile", + "entity.name.section.toml", + "entity.name.tag.yaml", + "variable.other.key.toml" + ], + "settings": { + "foreground": "#60D4FD" + } + }, + { + "name": "Dates / timestamps (serializable languages)", + "scope": [ + "constant.other.date", + "constant.other.timestamp" + ], + "settings": { + "foreground": "#FFA267" + } + }, + { + "name": "YAML aliases", + "scope": [ + "variable.other.alias.yaml" + ], + "settings": { + "fontStyle": "italic underline", + "foreground": "#52D866" + } + }, + { + "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": "#FF9D88" + } + }, + { + "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": "#60D4FD" + } + }, + { + "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": "#FFA267" + } + }, + { + "name": "Modifiers", + "scope": [ + "storage.modifier" + ], + "settings": { + "foreground": "#FF9D88" + } + }, + { + "name": "RegExp string", + "scope": [ + "string.regexp", + "constant.other.character-class.set.regexp", + "constant.character.escape.backslash.regexp" + ], + "settings": { + "foreground": "#FFDC98" + } + }, + { + "name": "Non-capture operators", + "scope": [ + "punctuation.definition.group.capture.regexp" + ], + "settings": { + "foreground": "#FF9D88" + } + }, + { + "name": "RegExp start and end characters", + "scope": [ + "string.regexp punctuation.definition.string.begin", + "string.regexp punctuation.definition.string.end" + ], + "settings": { + "foreground": "#FF794A" + } + }, + { + "name": "Character group", + "scope": [ + "punctuation.definition.character-class.regexp" + ], + "settings": { + "foreground": "#60D4FD" + } + }, + { + "name": "Capture groups", + "scope": [ + "punctuation.definition.group.regexp" + ], + "settings": { + "foreground": "#FFA267" + } + }, + { + "name": "Assertion operators", + "scope": [ + "punctuation.definition.group.assertion.regexp", + "keyword.operator.negation.regexp" + ], + "settings": { + "foreground": "#FF794A" + } + }, + { + "name": "Positive lookaheads", + "scope": [ + "meta.assertion.look-ahead.regexp" + ], + "settings": { + "foreground": "#52D866" + } + }, + { + "name": "Strings", + "scope": [ + "string" + ], + "settings": { + "foreground": "#FFDC98" + } + }, + { + "name": "String quotes (temporary vscode fix)", + "scope": [ + "punctuation.definition.string.begin", + "punctuation.definition.string.end" + ], + "settings": { + "foreground": "#FFF5BC" + } + }, + { + "name": "Property quotes (temporary vscode fix)", + "scope": [ + "punctuation.support.type.property-name.begin", + "punctuation.support.type.property-name.end" + ], + "settings": { + "foreground": "#98E4FF" + } + }, + { + "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": "#97918F" + } + }, + { + "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": "#fdfdfd" + } + }, + { + "name": "Destructuring / aliasing reference name (LHS)", + "scope": [ + "meta.import variable.other.readwrite", + "meta.object-binding-pattern-variable variable.object.property", + "meta.variable.assignment.destructured.object.coffee variable" + ], + "settings": { + "fontStyle": "italic", + "foreground": "#FFA267" + } + }, + { + "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": "#fdfdfd" + } + }, + { + "name": "GraphQL keys", + "scope": [ + "meta.selectionset.graphql variable" + ], + "settings": { + "foreground": "#FFDC98" + } + }, + { + "name": "GraphQL function arguments", + "scope": [ + "meta.selectionset.graphql meta.arguments variable" + ], + "settings": { + "foreground": "#fdfdfd" + } + }, + { + "name": "GraphQL fragment name (definition)", + "scope": [ + "entity.name.fragment.graphql", + "variable.fragment.graphql" + ], + "settings": { + "foreground": "#60D4FD" + } + }, + { + "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": "#fdfdfd" + } + }, + { + "name": "Shell variables prefixed with \"$\" (edge case)", + "scope": [ + "source.shell variable.other" + ], + "settings": { + "foreground": "#EE80D6" + } + }, + { + "name": "Powershell constants mistakenly scoped to `support`, rather than `constant` (edge)", + "scope": [ + "support.constant" + ], + "settings": { + "fontStyle": "normal", + "foreground": "#EE80D6" + } + }, + { + "name": "Makefile prerequisite names", + "scope": [ + "meta.scope.prerequisites.makefile" + ], + "settings": { + "foreground": "#FFDC98" + } + }, + { + "name": "SCSS attibute selector strings", + "scope": [ + "meta.attribute-selector.scss" + ], + "settings": { + "foreground": "#FFDC98" + } + }, + { + "name": "SCSS attribute selector brackets", + "scope": [ + "punctuation.definition.attribute-selector.end.bracket.square.scss", + "punctuation.definition.attribute-selector.begin.bracket.square.scss" + ], + "settings": { + "foreground": "#fdfdfd" + } + }, + { + "name": "Haskell Pragmas", + "scope": [ + "meta.preprocessor.haskell" + ], + "settings": { + "foreground": "#97918F" + } + } + ] +} \ No newline at end of file