liviuschera / noctis

Noctis is a collection of light & dark themes with a well balanced blend of warm and cold colors
https://marketplace.visualstudio.com/items?itemName=liviuschera.noctis
MIT License
547 stars 66 forks source link

VSCode Bracket Pair Colorization Theme Compatibility #70

Open JustinNusca opened 2 years ago

JustinNusca commented 2 years ago

As of VSCode 1.67, released in April 2022, the colorize bracket pairs option has been enabled by default.

This results in many bracket pairs using unexpected colors. In particular, some pairs may use colors that are too harsh and saturated compared to the rest of the colors in the theme's palette, and others may be too subtle and hard to differentiate from surrounding content.

For an example, see this comparison of the "Lilac" theme as displayed in the readme, and the appearance of the theme in VSCode with bracket pair colorization on:

Example Screenshot from ReadMe VSCode v1.67
Screen Shot 2022-05-17 at 9 45 14 AM

This occurs with all Noctis themes, and is now the default user experience, since bracket pair colorization is enabled by default. This can be worked around by turning the feature off.

I'm not familiar with building themes for VSCode, but is it possible to update the theme and/or locally modify my preferences, so that the colors used with this feature are more compatible with those used with the rest of the theme?

JMayfield commented 2 years ago

@JustinNusca you can update the bracket colors with whatever you like. Update your settings.json with something like this:

{
  "editor.bracketPairColorization.enabled": true,
  "workbench.colorCustomizations": {
    "editorBracketHighlight.foreground1": "#5caeef",
    "editorBracketHighlight.foreground2": "#dfb976",
    "editorBracketHighlight.foreground3": "#c172d9",
    "editorBracketHighlight.foreground4": "#4fb1bc",
    "editorBracketHighlight.foreground5": "#97c26c",
    "editorBracketHighlight.foreground6": "#abb2c0",
    "editorBracketHighlight.unexpectedBracket.foreground": "#db6165"
  },
}