maxmx03 / solarized.nvim

Solarized is a sixteen color palette (eight monotones, eight accent colors) designed for use with terminal and gui applications. Solarized port for Neovim
https://ethanschoonover.com/solarized/
MIT License
149 stars 16 forks source link

Lualine config does not use the custom colors set by 'on_colors' #100

Open skamsie opened 1 month ago

skamsie commented 1 month ago

Not sure if this is the intended behavior here, but I expected the colors set via on_colors option would override the corresponding color globally, however it's not applied for lualine. Please see the following example:

-- ~/.config/nvim/lua/plugins/solarized.lua
return {
  'maxmx03/solarized.nvim',
  enabled = true,
  lazy = false,
  priority = 1000,
  opts = {
    on_colors = function()
      -- setting to red just for exemplification purpose
      return { blue   = '#BD3613' }
    end,
  },

  config = function(_, opts)
    require('solarized').setup(opts)
    vim.cmd.colorscheme 'solarized'

    require('lualine').setup {
      options = {
        theme = require('lualine.themes.solarized')
      }
    }
  end
}

This change would replace everything that was normally blue originally with #BD3613 with the exception of the lualine which still shows the 'old blue' #268BD2

Screenshot 2024-10-07 at 18 39 14
maxmx03 commented 1 month ago

You can't use on_colors to override Lualine's colors. Click here to see an example of how to customize it.

skamsie commented 1 month ago

@maxmx03 thanks but you are basically suggesting to start writing the whole lualine theme from scratch 😅. As far as I know if I change only one field, eg normal = { a = { fg = colors.base04, bg = colors.blue }, } then I have to update the others as well b = ..., c =... and for the other modes. I was hoping that I can only overwrite lualine_a_normal but it does not work