Personal remixThis is an experiment in rearranging the syntax highlight colors in the built-in Dark+ theme according to personal taste and supplementing it with some additional colors while preserving the general subdued feel. No guarantees are made about quality, support or anything else about this extension. Three themes in a trenchcoatThe interface colors only receive a couple of tweaks (the status bar, the current line highlight), almost all of the remixing applies to the syntax highlighting in the editor. The basic foreground/background are kept from the Dark+ itself and then the syntax colors are supplemented by colors from other subdued looking themes and arranged according to my own conceptions about what should be which kind of color. One variant takes all common semantic colors from the Nord theme, and another mixes semantic colors from Dark+ with a number of colors from One Dark theme. Both variants also use a few colors from the Solarized theme for less common stuff like annotations. The One Dark variant is reasonably subdued, and the Nord variant is extra pale, possibly too pale. The example image shows the Nord variant. CustomisationTo change a few things in a theme (any theme), add style overrides to the Specifically, to override syntax highlight colors, add a section like this:
The example above would change the color of the angle brackets on tags to be the same as the tag text in the Nord variant theme. To find out what scope something is, open the Command Palette and find "Developer: Inspect Editor Tokens and Scopes". While active, whatever the cursor is on will show its scopes and the currently applied style rule. The custom rules in the settings override the theme rules, and in a case of conflicting scopes in the settings, more specific scopes take precedence over more general ones. E.g. a rule for There can also be semantic highlight rules that have slightly different format (see the link). They seem to be rarely used (including in this extension), as they can just fall back onto the regular style rules as described, no need to duplicate styles. They can be overriden in a similar way. Put the overrides into Color SpecificationNot a strict technical specification, but a general idea of what kinds of color go where with their placeholder IDs as used in the theme template:
If bracket pair colorization is enabled, bracket pairs are highlighted in the following coloring order: #grey+, #yellow, #green, #blue, #violet, #red. Terminal colorsThe above doesn't quite fit into the 16 terminal colors, so some colors are not used and a few others are added just for the terminal:
Actual ColorsNord Variant
One Dark Variant
References |