65 lines
2.8 KiB
Nix
65 lines
2.8 KiB
Nix
{ themeName }:
|
|
''
|
|
require("kanagawa").setup({
|
|
dimInactive = true,
|
|
colors = {
|
|
theme = {
|
|
all = {
|
|
ui = {
|
|
bg_gutter = "none"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
|
|
overrides = function(colors)
|
|
local theme = colors.theme
|
|
|
|
local makeDiagnosticColor = function(color)
|
|
local c = require("kanagawa.lib.color")
|
|
return { fg = color, bg = c(color):blend(theme.ui.bg, 0.95):to_hex() }
|
|
end
|
|
|
|
return {
|
|
TelescopeTitle = { fg = theme.ui.special, bold = true },
|
|
TelescopePromptNormal = { bg = theme.ui.bg_p1 },
|
|
TelescopePromptBorder = { fg = theme.ui.bg_p1, bg = theme.ui.bg_p1 },
|
|
TelescopeResultsNormal = { fg = theme.ui.fg_dim, bg = theme.ui.bg_m1 },
|
|
TelescopeResultsBorder = { fg = theme.ui.bg_m1, bg = theme.ui.bg_m1 },
|
|
TelescopePreviewNormal = { bg = theme.ui.bg_dim },
|
|
TelescopePreviewBorder = { bg = theme.ui.bg_dim, fg = theme.ui.bg_dim },
|
|
|
|
Pmenu = { fg = theme.ui.shade0, bg = theme.ui.bg_p1 }, -- add `blend = vim.o.pumblend` to enable transparency
|
|
PmenuSel = { fg = "NONE", bg = theme.ui.bg_p2 },
|
|
PmenuSbar = { bg = theme.ui.bg_m1 },
|
|
PmenuThumb = { bg = theme.ui.bg_p2 },
|
|
|
|
DiagnosticVirtualTextHint = makeDiagnosticColor(theme.diag.hint),
|
|
DiagnosticVirtualTextInfo = makeDiagnosticColor(theme.diag.info),
|
|
DiagnosticVirtualTextWarn = makeDiagnosticColor(theme.diag.warning),
|
|
DiagnosticVirtualTextError = makeDiagnosticColor(theme.diag.error),
|
|
|
|
DiagnosticVirtualLinesHint = makeDiagnosticColor(theme.diag.hint),
|
|
DiagnosticVirtualLinesInfo = makeDiagnosticColor(theme.diag.info),
|
|
DiagnosticVirtualLinesWarn = makeDiagnosticColor(theme.diag.warning),
|
|
DiagnosticVirtualLinesError = makeDiagnosticColor(theme.diag.error),
|
|
|
|
FloatBorder = { fg = theme.ui.float.fg_border, bg = theme.ui.float.bg },
|
|
NormalFloat = { fg = theme.ui.float.fg, bg = theme.ui.float.bg },
|
|
WinBar = { fg = theme.ui.fg_dim, bg = "NONE" },
|
|
WinBarNC = { fg = theme.ui.nontext, bg = theme.ui.bg_dim },
|
|
|
|
BufferLineFill = { bg = theme.ui.bg_m3 },
|
|
BufferLineBackground = { fg = theme.ui.fg_dim, bg = theme.ui.bg_m3 },
|
|
BufferLineBufferSelected = { fg = theme.ui.fg, bg = theme.ui.bg, bold = true },
|
|
BufferLineModified = { fg = theme.vcs.changed, bg = theme.ui.bg_m3 },
|
|
BufferLineModifiedSelected = { fg = theme.vcs.changed, bg = theme.ui.bg },
|
|
BufferLineDiagnostic = { fg = theme.ui.nontext, bg = theme.ui.bg_m3 },
|
|
BufferLineDiagnosticSelected = { fg = theme.ui.fg_dim, bg = theme.ui.bg },
|
|
}
|
|
end,
|
|
})
|
|
|
|
vim.cmd.colorscheme("${themeName}")
|
|
''
|