helix icon indicating copy to clipboard operation
helix copied to clipboard

Improve/fix some built in themes

Open ChrHorn opened this issue 3 years ago • 14 comments

Some themes that come with helix need some polish.

acme: statusline, menu, maybe errors acme

base_16_transparent: menu bg same as standard bg (intentional, add border once it's possible) base16_transparent

nord_light: ui menu selected bg very similar to standard bg nord_light

rose_pine_dawn: ui menu selected bg same as standard bg rose_pine_dawn

FIXED

dark_plus: indent guide bg dark_plus

ayu_light: statusline fg, menu fg ayu_light

ChrHorn avatar Aug 03 '22 09:08 ChrHorn

I agree, and made a tool for helping out #3234. A lot of the issues you point out are not yet checked against, but they could :)

AlexanderBrevig avatar Aug 03 '22 12:08 AlexanderBrevig

About base16_transparent, it is intentionally the same as the background. The reason for this is to maintain the uniformity of transparency. I agree that it is hard to see, but it is not possible to change the transparency #2751 or add a border of the pop-up background.

GreasySlug avatar Aug 04 '22 06:08 GreasySlug

Some of these might be intentional and fixes would be a bit opinionated. Pinging

@two-six for Acme, Nord Light @enkodr for Ayu Light @chunghha for Rose Pine Dawn

About base16_transparent, it is intentionally the same as the background. The reason for this is to maintain the uniformity of transparency. I agree that it is hard to see, but it is not possible to change the transparency #2751 or add a border of the pop-up background.

Makes sense, added a note.

ChrHorn avatar Aug 04 '22 08:08 ChrHorn

Thanks for the ping, I'll look into fixing acme. The main point of the nord light is the low contrast between elements of the ui, so in my opinion it looks just like it should although I'll try experimenting a little with it.

xcdkz avatar Aug 04 '22 09:08 xcdkz

Thanks for the ping, I'll look into fixing acme. The main point of the nord light is the low contrast between elements of the ui, so in my opinion it looks just like it should although I'll try experimenting a little with it.

It is very hard to read the undefined ["warning","error","info","hint","diagnostic"].

image

AlexanderBrevig avatar Aug 04 '22 09:08 AlexanderBrevig

Thanks for the ping, I'll look into fixing acme. The main point of the nord light is the low contrast between elements of the ui, so in my opinion it looks just like it should although I'll try experimenting a little with it.

I think the main issue is that the code and the selected element blend into each other a bit too much. The contrast looks fine for the standard nord theme: nord Looks also fine in the VSCode Nord Light theme: image

ChrHorn avatar Aug 04 '22 09:08 ChrHorn

Are the colors terminal-dependent? I have no problems in Konsole, can you tell me what terminal do you use? scrot helix

xcdkz avatar Aug 04 '22 20:08 xcdkz

It maybe/probably falls back to some base16 color set for the terminal? I use a gruvbox theme.

| alacritty | wezterm |
|   Foot    |  kitty  |

image

AlexanderBrevig avatar Aug 04 '22 20:08 AlexanderBrevig

Acme uses a mix of hard coded colors and colors derived from the terminal theme. That's why it can look pretty bad when a dark terminal theme is used.

The issue for the Nord Light errors is that you used diagnostic.error instead of error. error will color the gutter and the overlaid text, diagnostic.error will only color the text.

ChrHorn avatar Aug 04 '22 21:08 ChrHorn

Using Acme theme on iterm2 (acme theme also), and I got this white background for errors don't know if it is related to this issue. Thanks!

EDIT: also the buffer line background.

image

yelfathi avatar Jan 10 '23 13:01 yelfathi

@olbitset I have already fixed this in #5019, it just wasn't included in the latest release. You would need to compile helix from source or update $HOME/.config/helix/runtime/themes/acme.toml file to the current version.

xcdkz avatar Jan 10 '23 14:01 xcdkz

Thanks @two-six I included as a personal theme. What about the TOP bufferline (as the selection one), is it expected to have a gray background? If so what is the parameter in the toml config to adapt it to my need?

yelfathi avatar Jan 10 '23 15:01 yelfathi

Thanks @two-six I included as a personal theme. What about the TOP bufferline (as the selection one), is it expected to have a gray background? If so what is the parameter in the toml config to adapt it to my need?

Do you mean foreground? I see background is light blue in your screenshot, not gray.

Set "ui.bufferline" = { fg = "indent", bg = "acme_bar_bg" } to "ui.bufferline" = { fg = "black", bg = "acme_bar_bg" }. If you want you can put any color you want there instead of black, like this: "ui.bufferline" = { fg = "#000000", bg = "acme_bar_bg" }

I've never used bufferline before, but as you mentioned current configuration doesn't really fit this theme really well. I will open a pull request to change it from gray to black.

xcdkz avatar Jan 10 '23 15:01 xcdkz

Sorry I was talking about the bg. Thanks for the inputs I will adapt to my preferences!

yelfathi avatar Jan 10 '23 16:01 yelfathi