fix: respect explicitly loaded theme variants (#29)

This commit is contained in:
Webhooked 2025-07-28 09:52:50 +02:00
commit 4823dfda15
2 changed files with 10 additions and 4 deletions

View file

@ -95,8 +95,8 @@ require('kanso').setup({
return {}
end,
background = { -- map the value of 'background' option to a theme
dark = "ink", -- try "zen" !
light = "pearl" -- try "mist" !
dark = "ink", -- try "zen", "mist" or "pearl" !
light = "ink" -- try "zen", "mist" or "pearl" !
},
foreground = "default", -- "default" or "saturated" (can also be a table like background)
})

View file

@ -25,7 +25,7 @@ M.config = {
return {}
end,
---@type { dark: string, light: string }
background = { dark = "ink", light = "pearl" },
background = { dark = "ink", light = "ink" },
theme = "ink",
---@type { dark: "default"|"saturated", light: "default"|"saturated" }|"default"|"saturated"
foreground = "default",
@ -52,7 +52,13 @@ end
function M.load(theme)
local utils = require("kanso.utils")
theme = theme or M.config.background[vim.o.background] or M.config.theme
-- If theme is explicitly provided, use it and disable background-based switching
if theme then
M._EXPLICIT_THEME = theme
end
-- Use explicit theme if set, otherwise fall back to background-based selection
theme = M._EXPLICIT_THEME or M.config.background[vim.o.background] or M.config.theme
M._CURRENT_THEME = theme
if vim.g.colors_name then