-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Dark+ #6176
Comments
My main objection to this is that the white and brightWhite colors are identical. UI elements that are meant to be distinguishable may look exactly the same with this scheme, or in some cases text could be completely invisible. |
|
Yeah, I was thinking the same thing. We may not want to deviate from the original colors if there is an official source somewhere, but I see that the iTerm2 Themes collection has a Dark+ color scheme which is very different from this, so maybe it's less of an issue in this case. |
If the name |
I reviewed the definitions and this is as they are defined. Some colors like red, blue, magenta (purple), and cyan are the same for the regular color and the bright color definitions for the Light scheme. I think those should be fixed, but it does match the source. |
Okay, I think I'm okay with the idea of this - it's well sourced, the "VSCode *" names won't conflict with something else. Though, Dark+ on iTerm2-Color-Schemes does look like it's the same thing to me. It makes sense to me to include this theme with the Terminal, esp. considering there's product synergy (or some corporate spiel like that) I think we'll need to come up with an official party line though regarding what schemes we can include by default and which we shouldn't. We've already gotten ourselves into a mess with the Solarized themes. We probably don't want to unnecessarily clutter the defaults file (otherwise we'd just import everything from https://github.com/mbadolato/iTerm2-Color-Schemes immediately). This is something relevant to discussions we're having with @cinnamon-msft. For now, I'm okay with a PR to add these. |
So, I took the time to take screenshots of Dark+, Light+ and High Contrast to reveal the apparent colours. VSCode might apply some transformations to the terminal's colours, giving a different result than from the source code, which might explain why @rbeesley's red cc @bpasero, @iansan5653, @Tyriar, @sbatten Here's the colours I picked (excluding [
{
"name": "Dark+",
"foreground": "#cccccc",
"background": "#1e1e1e",
"cursorColor": "#cccccc",
"black": "#000000",
"red": "#c62f37",
"green": "#37be78",
"yellow": "#e2e822",
"blue": "#396ec7",
"purple": "#b835bc",
"cyan": "#3ba7cc",
"white": "#cccccc",
"brightBlack": "#666666",
"brightRed": "#e94a51",
"brightGreen": "#45d38a",
"brightYellow": "#f2f84a",
"brightBlue": "#4e8ae9",
"brightPurple": "#d26ad6",
"brightCyan": "#49b7da",
"brightWhite": "#e5e5e5"
},
{
"name": "Light+",
"foreground": "#333333",
"background": "#ffffff",
"cursorColor": "#333333",
"black": "#000000",
"red": "#c62f37",
"green": "#30bf03",
"yellow": "#929a0d",
"blue": "#214da4",
"purple": "#b700bc",
"cyan": "#3297bb",
"white": "#555555",
"brightBlack": "#666666",
"brightRed": "#c62f37",
"brightGreen": "#3ad116",
"brightYellow": "#b3bc13",
"brightBlue": "#214da4",
"brightPurple": "#b700bc",
"brightCyan": "#3297bb",
"brightWhite": "#a5a5a5"
},
{
"name": "High Contrast",
"foreground": "#ffffff",
"background": "#000000",
"cursorColor": "#ffffff",
"black": "#000000",
"red": "#c50015",
"green": "#35d003",
"yellow": "#cbd017",
"blue": "#2800ed",
"purple": "#c800cd",
"cyan": "#40cdcc",
"white": "#e5e5e5",
"brightBlack": "#7f7f7f",
"brightRed": "#f5001d",
"brightGreen": "#44ff05",
"brightYellow": "#fcff1f",
"brightBlue": "#6551fe",
"brightPurple": "#f800ff",
"brightCyan": "#52fffe",
"brightWhite": "#ffffff"
}
] After testing Light+ and High Contrast, I have to say... Those themes are unfortunate looking. |
If you want the actual colors the terminal uses in VS Code you can run the
This will likely happen in the form of pulling the terminal/panel out into a separate window which is tracked in microsoft/vscode#34442 and microsoft/vscode#10121
This is driven by the |
Now that's some better sourcing. {
"terminal.ansiBlack": "#000000",
"terminal.ansiBlue": "#2472c8",
"terminal.ansiBrightBlack": "#666666",
"terminal.ansiBrightBlue": "#3b8eea",
"terminal.ansiBrightCyan": "#29b8db",
"terminal.ansiBrightGreen": "#23d18b",
"terminal.ansiBrightMagenta": "#d670d6",
"terminal.ansiBrightRed": "#f14c4c",
"terminal.ansiBrightWhite": "#e5e5e5",
"terminal.ansiBrightYellow": "#f5f543",
"terminal.ansiCyan": "#11a8cd",
"terminal.ansiGreen": "#0dbc79",
"terminal.ansiMagenta": "#bc3fbc",
"terminal.ansiRed": "#cd3131",
"terminal.ansiWhite": "#e5e5e5",
"terminal.ansiYellow": "#e5e510",
"terminal.border": "#80808059",
"terminal.foreground": "#cccccc",
"terminal.selectionBackground": "#ffffff40"
} That gives the following scheme : {
"name": "Dark+",
"foreground": "#cccccc",
"background": "#1e1e1e",
"cursorColor": "#808080",
"selectionBackground": "#ffffff",
"black": "#000000",
"red": "#cd3131",
"green": "#0dbc79",
"yellow": "#e5e510",
"blue": "#2472c8",
"purple": "#bc3fbc",
"cyan": "#11a8cd",
"white": "#e5e5e5",
"brightBlack": "#666666",
"brightRed": "#f14c4c",
"brightGreen": "#23d18b",
"brightYellow": "#f5f543",
"brightBlue": "#3b8eea",
"brightPurple": "#d670d6",
"brightCyan": "#29b8db",
"brightWhite": "#e5e5e5"
} |
@NatoBoram this would get blended with the background |
As a tool for being able to see these schemes applied in a terminal, I wrote this cmd script, ansi-colors.cmd, which can be used to put all the SGR parameters together. It is currently configured for showing 1, 4, 7, 30-37, 40-47, and 100-107, and the combinations of those which make sense. While not written for creating this specific color scheme, I think this might be a tool worth adding to the repo to make it easier to see the different color combinations. It is all self-contained in one .cmd file with no necessary external dependencies. There is an option to use PowerShell to generate the ESC non-printable character, but in this gist it just uses one saved in the file. There is also an optional dependency on CHCP if the output is going to show Unicode, but it does not need to be required. It uses a data segment embedded in the file itself, so the definition of what is shown can quickly and easily be changed to something else. |
Yea I'd welcome that PR. IMO the |
@Tyriar It seems like Terminal already gives a different opacity to |
Sorry about that. The original render engine from conhost that we started specializing never supported rendering backgrounds and text separately, so we had to improvise a bit. We've got work booked to fix that and make selection background AND FOREGROUND work properly. |
Shouldn't it just be a modification for Color Tool? |
I mean, ideally, yes. I'm open to the idea of "good" being better than "perfect" in this case, considering this is just a helper tool. |
Just telling everyone, I would like to work on this. Thanks |
@Chips1234, I encourage you to use my gist, ansi-color.cmd, to assist you with this endeavor. I've been distracted with work so I haven't been able to address the final layout situations I've been wanting to fix, but it is absolutely usable in its current form and I'm hoping to get some feedback. |
Alright.
|
Any updates? |
Not really. Adding this to the JSON is super trivial, but comes with a slight annoyance. Every scheme we include by default gets written back to the user's Last I heard @DHowett had a prototype for remedying the settings, in #12800. Alas, we haven't had the cycles to close on that one yet. It's got a number of wacky edge cases. |
As discussed in #6176 and #16754. The "CGA" and "IBM 5153" names I'm told are the right ones to use: #16754 (comment) Closes #6176 Closes #16754
Description of the new feature/enhancement
VSCode's theme, Dark+, is absolutely gorgeous.
I think it would be totally appropriate to add it to the default schemes.
Proposed technical implementation details (optional)
The text was updated successfully, but these errors were encountered: