jan-warchol / selenized

Solarized redesigned: fine-tuned color palette for programmers with focus on readability.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

More granular styling for common languages?

jan-warchol opened this issue · comments

(this is about vim theme, but similar coloring rules will be used in other editors as well)

As of 76b0a15 vim theme only specifies styling for basic token groups (like solarized). I think that rather than sticking to solarized, it would be beneficial to have more detailed styling rules (e.g. highlight booleans differently than other constants, differentiate imports from other PreProc etc.). Note: it may be a good idea to use vim-polyglot.

Requires #67 to be done first.

Languages that I'm likely to work on first:

  • python
  • shell
  • vimscript

Languages that I'd like to work on but need help from people who know them better:

  • Javascript
  • ruby
  • Java

One thing I'm considering is differentiating numbers and booleans from strings in some way.

Python exceptions definitely need to be more visible. Currently they are linked to Type group, which is green and that doesn't have enough contrast from surrounding cyan and blue (check on this canonical example).

At first, it appeared that Selenized strives to become a simple and better implemented alternative to Solarized (which has been criticized for its implementation). That impression apparently has also led to a suggestion for shipping Selenized with Vim itself (vim/vim#1665 (comment)). Making Selenized reliant on third-party syntax scripts (vim-polyglot) means taking an entirely different route (and probably also means not being considered for being shipped with Vim). This is of course fine. Just something to be aware of.

Good point. Let me say that I'm definitely not going to make selenized dependent on vim-polyglot - what I'd like to see is selenized being able to take advantage of such plugin if the user has it installed.

commented

I support deviating to enhance the experience. Personally, I'm always evaluating themes based on how they highlight punctuation like separators, string identifiers, etc. Obviously there should be a sane default baseline, but as the theme progresses adding more specialization is welcome IMO.

I would refrain from using polyglot, as not everybody has it installed. Instead, I'd suggest loading up a bunch of filetypes in a vim --clean session, then do :highlight to see what highlight groups are defined by vanilla Vim out of the box, and target those.

I somewhat agree with @fladd, personally I don't like to see vim depend on a whole lot of third party plugins. I try to keep what I use to a minimum, which I think is prudent for security.