ellisonleao / gruvbox.nvim

Lua port of the most famous vim colorscheme
MIT License
1.96k stars 210 forks source link

[FEATURE] override colors of each variant specifically #370

Open caarlos0 opened 8 hours ago

caarlos0 commented 8 hours ago

Is your feature request related to a problem? Please describe.

neovim merged DEC private mode 2031 support, which means it can now in theory automatically set background=light/dark.

It would be amazing to use gruvbox like that!

Only problem is that I do have some overrides, e.g.:

local bg0 = "#1b1b1b"
require("gruvbox").setup({
  contrast = "hard",
  overrides = {
    GruvboxBg0 = { fg = bg0 },
    SignColumn = { bg = bg0 },
    GruvboxRedSign = { bg = bg0 },
    GruvboxYellowSign = { bg = bg0 },
    GruvboxGreenSign = { bg = bg0 },
    GruvboxAquaSign = { bg = bg0 },
    GruvboxOrangeSign = { bg = bg0 },
    GruvboxPurpleSign = { bg = bg0 },
    GruvboxBlueSign = { bg = bg0 },
    Normal = { bg = bg0 },
  },
})
vim.cmd("colorscheme gruvbox")

as you can see, these would not look good on the light colorscheme.

Describe the solution you'd like

I only need these overrides because gruvbox.nvim background's color is a bit different than my terminal's gruvbox theme background color.

I also do change other things other then this (e.g. sign columns bg), but I guess these could be solved with Link?

In any case, it would be amazing to be able to override colors for a specific variant of the theme, maybe something like what cappuccin does.

ellisonleao commented 4 hours ago

hey @caarlos0 thanks for bringing this up. Maybe it's related to #306

caarlos0 commented 2 hours ago

hey @caarlos0 thanks for bringing this up. Maybe it's related to #306

seems to me that it would be part of it, yes.