-
Notifications
You must be signed in to change notification settings - Fork 30.7k
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
Editor selection colors should be simplified #11354
Comments
@Tyriar Thanks a lot for bringing up the issues with colors and providing some suggestions. I agree that we have many color contrubutions and they get mix and matched. Please see Editor Decorations & Colors wiki which me and @alexandrudima came up with. Problem 1:Most of them define new colors and some reuse already defined. They should be defined such a way that they look good when applied individually with the given background. Otherwise, we have to go and fix them. As they are dependent on the theme (background etc), its hard to fix them for all themes. Hence, as a first step we fix them in our defaults and extract them as custom TM settings (just like Sublime) which fixes this problem. I tried to map the new settings as much with Sublime defined ones, but we differ a lot in usage. For eg: Sublime uses color value of Problem 2:When more than one functionalities overlap, we have unexpected colors. For eg: Find + Select or Select + Wordhighlight. We do not have a proper solution for this and may be I think we need UX assistance to tackle this. |
Why don't we try to align more with how Sublime behaves considering that's what the majority of the themes were designed for? I don't think the suggestion that users can just create an issue against the theme is realistic. To give an example, of the 10 top themes in the marketplace:
|
My 2 cents:
|
Hi I would like to share my point of view.
Thanks, and keep the great work! |
@Tyriar @bgashler1 As I mentioned in my (previous comment)[https://github.com//issues/11354#issuecomment-244065261] that I tried to match our keys/colors/behavior with those of Sublime. But they are not one-to-one. Refer here for Sublime color settings To be aligned with Sublime specific keys, we have to change our UI representations. Also we have new concepts which I think Sublime does not have. Hence, I am not in favor of this. Also note that, we aligned with some settings with Sublime which are in sync with VS Code. I agree with @alexandrudima to have VS Code specific color settings. |
+1 on @alexandrudima comment. While we have a easy way to start authoring a theme by importing an existing one from sublime or text mate, adaptation is required as there are feature differences between the products. Some of these feature differences are intended, some are given by the underlying architecture. Therefore also themes will not be interchangeable by products. This never was a goal, and should not become one. It's the same with Sublime customizing TextMate themes, or Atom customizing TextMate and Sublime themes. What I think would be great if the UX team could document and maybe simplify the different colors we use in our UI and the concept behind them (selection color, input border color, focus border color....). Not just in the editor and its contributions, but also in the workbench. I think there is a lot of potential of unifying the colors of the various widgets. The goal of this would be a more consistent UI as well as making it possible to theme the workbench (not just the editor). |
I think the Sublime theme compatibility topic is largely closed which is fine, let's commit to these new properties and document them to increase visibility to theme authors. So there are still a few more actions that should be taken/discussed:
I've started making a few PRs to themes (MS and external) to make them more presentable in the marketplace (repo links, screenshots, preview, etc.) to tackle a related problem with themes. Thanks all for having this discussion, this will help a lot with the issues I've been experiencing trying to build my own theme. |
After all, as a text editor rather than a neon displayer. |
I'm commenting here (as a daily VS Code user only, not a developer) because I found an earlier closed issue (Selection and selection matches highlight color #1636) - i.e. if you actually select some text, it's indistinguishable from the highlight used for matched code pairs, or matches to the current word at the cursor position. If the system-wide highlight colour (when selecting any text system-wide) isn't portable to VS Code, I need a way to edit it in a user-generated 'override css' file or something (like user settings), which appears to be impossible without creating a new theme. I'm using 'Dark'. Just to make sure I'm not missing something, I posted this as a question on StackOverflow |
@FabioAntunes |
@iulo have you looked at the screenshot? That's what's on my configs on the right |
Follow up from #1636
I think we need to take a step back and take a good look at editor selection colors. Currently there are so many states, it's very confusing as to what find match, selection match is what and even what the actual selection is.
Here are some of the states using my theme Glacier:
This is in no way an exhaustive list of states but I think it gets the point across. Here are some of my initial thoughts:
I'm quite perplexed by it, especially when things like this happen:
Why are both
userEnv
variables highlighted with the strong symbol highlight below but not above?The blue looks bad in my theme, is there a way we can get a more suitable color using existing colors?
.tmTheme
files and not adjusted to work better with vscode, we should make an effort to have the defaults work and only add additional tmTheme properties if they are absolutely necessary.findHighlight
is defined in many themes, why don't we adopt that since Sublime uses it?Personally I think something like below would be more usable despite being so simple (this is to illustrate my point, I'm not proposing this):
selection
color from themeselection
color at 50% opacityThe text was updated successfully, but these errors were encountered: