piousdeer / vscode-adwaita

VS Code theme for the GNOME desktop
146 stars 11 forks source link

too language-specific coloring #5

Closed Telpenarmo closed 2 years ago

Telpenarmo commented 2 years ago

With current configuration only several languages are really colored, with rest being just dichromatic, having almost everything colored in the default and a bit in keywordish. For example, Haskell looks like this:

I understand that the goal of this theme is to be as similar to Gnome Builder as possible, and any language support could be ruled out the same way as it did happen with YAML and Rust, but VS Code is environment of countless languages, you cannot handle them all.

Therefore, I think you should consider dropping language-specific rules where possible, potentially losing compatibility with Gnome Builder in some cases: I think it is better to have one color more in one language, than one color less in the rest, as it is easier for the user to make small changes, aimed at specific target. It is a design decision though.

Besides, I am really grateful for that theme, it feels really great overall!

piousdeer commented 2 years ago

Thanks, I've found and fixed some scopes that were unnecessarily language-specific.

The main issue, though, is that some language extensions (JS, Rust) incorrectly use storage.type (should be used for types: int, char, bool, etc) instead of keyword or storage.modifier (should be used for keywords that affect the storage of a variable/function/data structure: static, inline, const, public, etc). So I treated storage.type as keywords, painting them orange, but then languages that use this scope correctly (like Go and Haskell) were affected, painting their types orange which should have been teal. Up to this point I've included a workaround for Go that reversed this.

I've inverted this behavior. Now storage.type will be correctly colored teal for all languages except JS and Rust. I don't think there's a better way around this except maybe trying to get it fixed upstream. Haskell is a bit more colorful now but still largely white, let me know if that's unsatisfactory.