neovide / neovide

No Nonsense Neovim Client in Rust
https://neovide.dev
MIT License
12.83k stars 518 forks source link

Lualine background transparency #2275

Open Theaninova opened 8 months ago

Theaninova commented 8 months ago

Describe the bug Lualine background inherits the window transparency regardless of colour while the separators don't.

To Reproduce Steps to reproduce the behavior:

  1. Set neovide_transparency to 0.8 or any other non-opaque option
  2. Set (or any other block-drawing character) as a separator in Lualine
  3. See error

Expected behavior The background should only be transparent for the background colour or also blend block-drawing elements, however the second option leaves the statusline completely transparent (aka gone) with Neovide's transparency option set to 0 which I would definitely not consider expected behaviour.

Screenshots

Neovide: image

Kitty: image

Desktop:

neovide-wrapped_rCURRENT.log

Additional context Add any other context about the problem here.

fredizzimo commented 8 months ago

Those elements are actually drawn with foreground colors, and we can't apply transparency to that, or the text would be transparent as well.

So, we need more support from Neovim

fredizzimo commented 8 months ago

Meanwhile, we could perhaps add a setting that only applies transparency to the default neovim background color. ~But that will come with other drawbacks like this~

Edit: that was not what that issue is about, the drawback is that the whole lualine and other elements becomes opaque.

But it would work similarly to the transparency of a terminal.

falcucci commented 8 months ago

@fredizzimo that sounds reasonable

iafshinafshin commented 7 months ago

Hello, i used this code for transparency neovide in neovim configvim.g.neovide_transparency = 0.8for lua language but if you use with vim language for your config you should this code let g:neovide_transparency=0.8

fredizzimo commented 6 months ago

I created a proposal for dealing with global transparency

fredizzimo commented 4 months ago

I'm re-opening, since #2478 was reverted.

TRPB commented 3 days ago

is there any way to exclude lualine entirely from transparency?

Really I'd just like to set the background color using neovide_background_color so that the window background is transparent but everything else is opaque inside it. It feels like the simplest approach but unfortunately it's deprecated any doesn't work on linux.