Skip to content
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

Vim mapping colours to highlight groups #69

Closed
fladd opened this issue Mar 13, 2020 · 10 comments
Closed

Vim mapping colours to highlight groups #69

fladd opened this issue Mar 13, 2020 · 10 comments

Comments

@fladd
Copy link

fladd commented Mar 13, 2020

The current mapping from the colours to their highlight groups does not seem to be optimal. I would have expected Selenized to look very similar to Solarized (just with better contrast and slightly different shades of the colours), but the syntax colours are completely shuffled around.

image
(left: Solarized8, right: Selenized)

Also, something weird is going on with the status line.

@jan-warchol
Copy link
Owner

Hello @fladd,

this opens a very interesting topic. To be honest, I don't particularly like Solarized's choice of token-color mappings (in particular I think using green for keywords is a bad choice). However, I'm not completely satisfied with current selenized coloring and I indeed intend to change it at least a bit.

There is also the issue with number of colors available: solarized uses 8 "accent" colors, but it requires an ugly hack that selenized aims to avoid. So, full solarized compatibility is impossible (at least with coloring based on terminal's ANSI codes).

My question is: is having selenized mimic solarized's syntax coloring a must-have for you (and any other people)? Would you be okay with some kind of middle ground?

(PS I'm not talking about the status line, that one is definitely a bug.)

@jan-warchol
Copy link
Owner

PS could you send me the source used to make the screenshots? I'm surprised that class name was colored green, it's supposed to be pink. I'd like to inspect it.

@fladd
Copy link
Author

fladd commented Mar 13, 2020

@jan-warchol: Thanks for the quick response.

I think Solarized's colour mappings are generally pretty well chosen. Something approaching this at least should be welcome by most people I think.

I map Python class names to Type in my .vimrc, because by default, Vim does not dissociate between class names and function names. I think this is a pretty common thing to do. Unfortunately, in Selenized, Type has the same colour as strings.

@jan-warchol
Copy link
Owner

@jan-warchol: Thanks for the quick response.

I think Solarized's colour mappings are generally pretty well chosen. Something approaching this at least should be welcome by most people I think.

Hmm. I'm close to being convinced. Would you be able to help me with testing?

Also, @dngray, what do you think? Have you started any work on #67?

I map Python class names to Type in my .vimrc, because by default, Vim does not dissociate between class names and function names. I think this is a pretty common thing to do. Unfortunately, in Selenized, Type has the same colour as strings.

Ah, ok. Thanks for explaining.

@fladd
Copy link
Author

fladd commented Mar 14, 2020

Hmm. I'm close to being convinced. Would you be able to help me with testing?

Sure.

@dngray
Copy link
Contributor

dngray commented Mar 15, 2020

Also, @dngray, what do you think? Have you started any work on #67?

No I have not yet, been meaning to get to it this week along with :set spell highlights.

@jan-warchol
Copy link
Owner

Okay, so I suggest the following plan:

  • I'll rework highlighting of syntax groups to be more like solarized
  • I like current syntax highlighting so I'll use it as a basis for another theme, most probably full-color version of limestone (I need to add some screenshots there...)
  • unstyled elements mentioned in Vim: style remaining default groups #67 are almost exclusively interface elements, so I'll leave them to @dngray
  • we'll need some code samples for testing. I'll setup a repo and I count on @fladd's help here :-)

@jan-warchol
Copy link
Owner

@fladd Here's the repo with samples for testing; feel free to comment or submit your own samples. https://github.com/jan-warchol/highlighting-code-samples

jan-warchol added a commit that referenced this issue Mar 15, 2020
Since Selenized ANSI palette doesn't have orange, I'm using magenta for
PreProc. Also, I strongly dislike Solarized's green keywords - I think
they are ugly and not very readable - so I use bold foreground for that.

One other thing I'm considering is differentiating numbers and booleans
from strings in some way, maybe using green?

Issue #69.
@dngray
Copy link
Contributor

dngray commented Mar 15, 2020

unstyled elements mentioned in #67 are almost exclusively interface elements, so I'll leave them to @dngray

I'll get on that this week.

I like current syntax highlighting so I'll use it as a basis for another theme, most probably full-color version of limestone (I need to add some screenshots there...)

I very much like the DESIGN.md for limestone and would be keen to keep that methodology for selenized.

jan-warchol added a commit that referenced this issue Mar 22, 2020
Since Selenized ANSI palette doesn't have orange, I'm using magenta for
PreProc. Also, I strongly dislike Solarized's green keywords - I think
they are ugly and not very readable - so I use bold foreground for that.

One other thing I'm considering is differentiating numbers and booleans
from strings in some way, maybe using green?

Issue #69.
jan-warchol added a commit that referenced this issue Mar 22, 2020
Since Selenized ANSI palette doesn't have orange, I'm using magenta for
PreProc. Also, I strongly dislike Solarized's green keywords - I think
they are ugly and not very readable - so I use bold foreground for that.

One other thing I'm considering is differentiating numbers and booleans
from strings in some way, maybe using green?

Issue #69.
jan-warchol added a commit that referenced this issue Mar 22, 2020
Since Selenized ANSI palette doesn't have orange, I'm using magenta for
PreProc. Also, I strongly dislike Solarized's green keywords - I think
they are ugly and not very readable - so I use yellow for that. Since
this choice was strongly opposed by @fladd, I've added an option to
override it.

Closes issue #69.
@jan-warchol
Copy link
Owner

Closed via #70, but part of the discussion is continued in #74.

clach04 pushed a commit to clach04/selenized that referenced this issue Dec 14, 2024
Since Selenized ANSI palette doesn't have orange, I'm using magenta for
PreProc. Also, I strongly dislike Solarized's green keywords - I think
they are ugly and not very readable - so I use yellow for that. Since
this choice was strongly opposed by @fladd, I've added an option to
override it.

Closes issue jan-warchol#69.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants