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

dracula: Update to match Dracula Theme #21

Closed
wants to merge 1 commit into from

Conversation

RobLoach
Copy link
Contributor

@NovaViper
Copy link

Hey, I have no direct way of testing this at the moment since the module I'm using on NixOS is Stylix, which sadly has no base24 support as of the time of writing this 😢

@RobLoach
Copy link
Contributor Author

Hmm, it seems there are two Dracula themes. One for base16, another for base24. This is certainly confusing. Do we delete the base24 one?

@NovaViper
Copy link

I'm not sure.. I assume the base24 version is for stuff that can handle more color codes (like kitty terminal) afiak.

@JamyGolden
Copy link
Member

JamyGolden commented Aug 21, 2024

Background

Base24 was built to be a superset of Base16 and fully replace Base16 initially, but we didn't want to make the decision to change Base16 within tinted-theming - (it adds a lot of complication, even down to the naming, do we change the name Base16?). So what we did was set up a structure where people could create new scheme systems (maybe we create one called Base06 or do something entirely different like support vscode themes as the "scheme" and it builds with a lot more template variables than we have with Base16/Base24). Base24 lives alongside Base16, but if we had a matching scheme (with extra vars) for Base24 as we do for Base16, it would make sense to almost always use Base24 since it's the same thing but with brighter variants. Base16 has a life of it's own outside of tinted-theming so I don't think it would make sense to ever remove it.

Having this setup gives us more flexibility to explore different scheme systems without completely changing the Base16 spec (even though we are planning on expanding it quite a bit: tinted-theming/home#99). This is the reason we are also renaming template repos that support Base24 to tinted-*, eg: https://github.com/tinted-theming/tinted-tmux since it supports multiple builders, not just Base16.

If you have more questions about it let me know. I'll look at adding more information about this to the README.md or another file since there is confusion about it.

This PR

I like the idea of updating the dracula colours to their new ones, however the base* scheme systems have some limitations (which you can see an attempt to address in the previously linked PR: tinted-theming/home#99). It's not perfect, but Base24 has a nice styling.md file which mentions which colours the variables should be: https://github.com/tinted-theming/base24/blob/master/styling.md#specific-colours-and-their-usages

The template repos tend to expect that the colours generally match that colour mapping, with the dark/light gradient from base00 to base07 and then red, orange, yellow, green, cyan, blue, purple, brown for base08-base0F. Schemes don't HAVE to follow this, but it does mean that git diffs will be displayed as not red/yellow/green for deleted/changed/added for example.

The scheme you have added doesn't follow this so this wouldn't just be a colour update, but it would actually change some things people are expecting in their theme.

Also you are using the same colour values for base10-base17 that already exist previously, so it would essentially be making base24 render the way base16 would (since it's losing out on having different values for the brighter variants).

Left is old, Right is with your change:

image

So to fix this I'd suggest changing the colours to match the new colours, but keeping the colours in the base* positions mentioned in https://github.com/tinted-theming/base24/blob/master/styling.md#specific-colours-and-their-usages

Does this make sense? (Not sure if what I said was structured ok or not)

Edit: I've updated the tinted-theming/home/styling.md file to include more information. Let me know if anything is unclear and I can adjust.

@JamyGolden
Copy link
Member

@NovaViper it looks like Stylix should support Base24. I don't use it myself, but base16.nix has Base24 support: SenchoPens/base16.nix@0887742

@JamyGolden
Copy link
Member

I've just updated the dracula schemes for base16 and base24 with the latest colours that also match the styling spec. I'm going to close this PR but feel free to continue discussion here or to create a new github issue.

@JamyGolden JamyGolden closed this Aug 26, 2024
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

Successfully merging this pull request may close these issues.

(dracula) JetBrains Original vs Dracula Theme
3 participants