diff --git a/lua/kanso/highlights/editor.lua b/lua/kanso/highlights/editor.lua index a6e776d..61c83ba 100644 --- a/lua/kanso/highlights/editor.lua +++ b/lua/kanso/highlights/editor.lua @@ -11,9 +11,9 @@ function M.setup(colors, config) -- ColorColumn Used for the columns set with 'colorcolumn'. ColorColumn = { bg = theme.ui.bg_p1 }, -- Conceal Placeholder characters substituted for concealed text (see 'conceallevel'). - Conceal = { fg = theme.ui.special, bold = true }, + Conceal = { fg = theme.ui.special, bold = config.bold }, -- CurSearch Used for highlighting a search pattern under the cursor (see 'hlsearch'). - CurSearch = { fg = theme.ui.fg, bg = theme.ui.bg_search, bold = true }, + CurSearch = { fg = theme.ui.fg, bg = theme.ui.bg_search, bold = config.bold }, -- Cursor Character under the cursor. Cursor = { fg = theme.ui.cursor_fg, bg = theme.ui.cursor_bg }, -- lCursor Character under the cursor when |language-mapping| is used (see 'guicursor'). @@ -62,11 +62,11 @@ function M.setup(colors, config) -- CursorLineFold Like FoldColumn when 'cursorline' is set for the cursor line. -- CursorLineSign Like SignColumn when 'cursorline' is set for the cursor line. -- MatchParen Character under the cursor or just before it, if it is a paired bracket, and its match. |pi_paren.txt| - MatchParen = { fg = theme.diag.warning, bold = true }, + MatchParen = { fg = theme.diag.warning, bold = config.bold }, -- ModeMsg 'showmode' message (e.g., "-- INSERT --"). - ModeMsg = { fg = theme.diag.warning, bold = true }, + ModeMsg = { fg = theme.diag.warning, bold = config.bold }, -- MsgArea Area for messages and cmdline. - MsgArea = vim.o.cmdheight == 0 and { link = 'StatusLine' } or { fg = theme.ui.fg_dim }, + MsgArea = vim.o.cmdheight == 0 and { link = "StatusLine" } or { fg = theme.ui.fg_dim }, -- MsgSeparator Separator for scrolled messages |msgsep|. MsgSeparator = { bg = vim.o.cmdheight == 0 and theme.ui.bg or theme.ui.bg_m3 }, -- MoreMsg |more-prompt| @@ -78,9 +78,16 @@ function M.setup(colors, config) -- NormalFloat Normal text in floating windows. NormalFloat = { fg = theme.ui.float.fg, bg = config.transparent and theme.ui.none or theme.ui.float.bg }, -- FloatBorder Border of floating windows. - FloatBorder = { fg = theme.ui.float.fg_border, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border }, + FloatBorder = { + fg = theme.ui.float.fg_border, + bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, + }, -- FloatTitle Title of floating windows. - FloatTitle = { fg = theme.ui.special, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, bold = true }, + FloatTitle = { + fg = theme.ui.special, + bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, + bold = config.bold, + }, -- FloatFooter Footer of floating windows. FloatFooter = { fg = theme.ui.nontext, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border }, -- NormalNC Normal text in non-current windows. @@ -126,9 +133,13 @@ function M.setup(colors, config) -- TabLineFill Tab pages line, where there are no labels. TabLineFill = { bg = theme.ui.none }, -- TabLineSel Tab pages line, active tab page label. - TabLineSel = { fg = theme.ui.fg_dim, bg = not config.transparent and theme.ui.bg_p1 or theme.ui.none, bold = true }, + TabLineSel = { + fg = theme.ui.fg_dim, + bg = not config.transparent and theme.ui.bg_p1 or theme.ui.none, + bold = config.bold, + }, -- Title Titles for output from ":set all", ":autocmd" etc. - Title = { fg = theme.syn.fun, bold = true }, + Title = { fg = theme.syn.fun, bold = config.bold }, -- Visual Visual mode selection. Visual = { bg = theme.ui.bg_visual }, -- VisualNOS Visual mode selection when vim is "Not Owning the Selection". @@ -177,10 +188,26 @@ function M.setup(colors, config) DiagnosticVirtualTextInfo = { link = "DiagnosticInfo" }, DiagnosticVirtualTextHint = { link = "DiagnosticHint" }, - DiagnosticUnderlineError = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.error }, - DiagnosticUnderlineWarn = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.warning }, - DiagnosticUnderlineInfo = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.info }, - DiagnosticUnderlineHint = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.hint }, + DiagnosticUnderlineError = { + undercurl = config.undercurl, + underline = not config.undercurl, + sp = theme.diag.error, + }, + DiagnosticUnderlineWarn = { + undercurl = config.undercurl, + underline = not config.undercurl, + sp = theme.diag.warning, + }, + DiagnosticUnderlineInfo = { + undercurl = config.undercurl, + underline = not config.undercurl, + sp = theme.diag.info, + }, + DiagnosticUnderlineHint = { + undercurl = config.undercurl, + underline = not config.undercurl, + sp = theme.diag.hint, + }, LspSignatureActiveParameter = { fg = theme.diag.warning }, LspCodeLens = { fg = theme.syn.comment }, diff --git a/lua/kanso/highlights/lsp.lua b/lua/kanso/highlights/lsp.lua index b1b1075..5aaf300 100644 --- a/lua/kanso/highlights/lsp.lua +++ b/lua/kanso/highlights/lsp.lua @@ -12,15 +12,15 @@ function M.setup(colors, config) -- ["@lsp.type.function"] = { link = "Function" }, -- ["@lsp.type.interface"] = { link = "Structure" }, ["@lsp.type.macro"] = { link = "Macro" }, - ["@lsp.type.method"] = { link = "@function.method" }, -- Function - ["@lsp.type.namespace"] = { link = "@module" }, -- Structure + ["@lsp.type.method"] = { link = "@function.method" }, -- Function + ["@lsp.type.namespace"] = { link = "@module" }, -- Structure ["@lsp.type.parameter"] = { link = "@variable.parameter" }, -- Identifier -- ["@lsp.type.property"] = { link = "Identifier" }, -- ["@lsp.type.struct"] = { link = "Structure" }, -- ["@lsp.type.type"] = { link = "Type" }, -- ["@lsp.type.typeParameter"] = { link = "TypeDef" }, ["@lsp.type.variable"] = { fg = "none" }, -- Identifier - ["@lsp.type.comment"] = { link = "Comment" }, -- Comment + ["@lsp.type.comment"] = { link = "Comment" }, -- Comment ["@lsp.type.const"] = { link = "Constant" }, ["@lsp.type.comparison"] = { link = "Operator" }, @@ -52,7 +52,7 @@ function M.setup(colors, config) ["@lsp.typemod.variable.injected"] = { link = "@variable" }, - ["@lsp.typemod.function.readonly"] = { fg = theme.syn.fun, bold = true }, + ["@lsp.typemod.function.readonly"] = { fg = theme.syn.fun, bold = config.bold }, } end diff --git a/lua/kanso/highlights/plugins.lua b/lua/kanso/highlights/plugins.lua index fb3266b..1e4b3ed 100644 --- a/lua/kanso/highlights/plugins.lua +++ b/lua/kanso/highlights/plugins.lua @@ -22,530 +22,567 @@ function M.setup(colors, config) -- vcsSignsDeleteLn = { bg = theme.diff.delete }, -- Gitsigns - GitSignsAdd = { fg = theme.vcs.added, bg = theme.ui.none }, - GitSignsChange = { fg = theme.vcs.changed, bg = theme.ui.none }, - GitSignsDelete = { fg = theme.vcs.removed, bg = theme.ui.none }, - GitSignsChangedelete = { fg = theme.vcs.removed, bg = theme.ui.none }, - GitSignsTopdelete = { fg = theme.vcs.removed, bg = theme.ui.none }, - GitSignsUntracked = { fg = theme.vcs.untracked, bg = theme.ui.none }, + GitSignsAdd = { fg = theme.vcs.added, bg = theme.ui.none }, + GitSignsChange = { fg = theme.vcs.changed, bg = theme.ui.none }, + GitSignsDelete = { fg = theme.vcs.removed, bg = theme.ui.none }, + GitSignsChangedelete = { fg = theme.vcs.removed, bg = theme.ui.none }, + GitSignsTopdelete = { fg = theme.vcs.removed, bg = theme.ui.none }, + GitSignsUntracked = { fg = theme.vcs.untracked, bg = theme.ui.none }, -- Neogit - NeogitDiffContextHighlight = { bg = theme.diff.change }, --[[ guibg=#333333 guifg=#b2b2b2 ]] - NeogitHunkHeader = { fg = theme.syn.fun }, --[[ guifg=#cccccc guibg=#404040 ]] - NeogitHunkHeaderHighlight = { fg = theme.syn.constant, bg = theme.diff.change }, --[[ guifg=#cccccc guibg=#4d4d4d ]] - NeogitDiffAddHighlight = { bg = theme.diff.add }, - NeogitDiffDeleteHighlight = { bg = theme.diff.delete }, + NeogitDiffContextHighlight = { bg = theme.diff.change }, --[[ guibg=#333333 guifg=#b2b2b2 ]] + NeogitHunkHeader = { fg = theme.syn.fun }, --[[ guifg=#cccccc guibg=#404040 ]] + NeogitHunkHeaderHighlight = { fg = theme.syn.constant, bg = theme.diff.change }, --[[ guifg=#cccccc guibg=#4d4d4d ]] + NeogitDiffAddHighlight = { bg = theme.diff.add }, + NeogitDiffDeleteHighlight = { bg = theme.diff.delete }, -- TreeSitter Extensions - TreesitterContext = { link = "Folded" }, - TreesitterContextLineNumber = { fg = theme.ui.special, bg = theme.ui.none }, + TreesitterContext = { link = "Folded" }, + TreesitterContextLineNumber = { fg = theme.ui.special, bg = theme.ui.none }, -- Telescope - TelescopeBorder = { fg = theme.ui.float.fg_border, bg = config.transparent and theme.ui.none or theme.ui.bg }, - TelescopeTitle = { fg = theme.ui.special }, - TelescopeSelection = { link = "CursorLine" }, - TelescopeSelectionCaret = { link = "CursorLineNr" }, - TelescopeResultsClass = { link = "Structure" }, - TelescopeResultsStruct = { link = "Structure" }, - TelescopeResultsField = { link = "@field" }, - TelescopeResultsMethod = { link = "Function" }, - TelescopeResultsVariable = { link = "@variable" }, + TelescopeBorder = { fg = theme.ui.float.fg_border, bg = config.transparent and theme.ui.none or theme.ui.bg }, + TelescopeTitle = { fg = theme.ui.special }, + TelescopeSelection = { link = "CursorLine" }, + TelescopeSelectionCaret = { link = "CursorLineNr" }, + TelescopeResultsClass = { link = "Structure" }, + TelescopeResultsStruct = { link = "Structure" }, + TelescopeResultsField = { link = "@field" }, + TelescopeResultsMethod = { link = "Function" }, + TelescopeResultsVariable = { link = "@variable" }, -- NvimTree - NvimTreeNormal = { link = "Normal" }, - NvimTreeNormalNC = { link = "NvimTreeNormal" }, - NvimTreeRootFolder = { fg = theme.syn.identifier, bold = true }, - NvimTreeGitDirty = { fg = theme.vcs.changed }, - NvimTreeGitNew = { fg = theme.vcs.added }, - NvimTreeGitDeleted = { fg = theme.vcs.removed }, - NvimTreeGitStaged = { fg = theme.vcs.added }, - NvimTreeSpecialFile = { fg = theme.syn.special1 }, + NvimTreeNormal = { link = "Normal" }, + NvimTreeNormalNC = { link = "NvimTreeNormal" }, + NvimTreeRootFolder = { fg = theme.syn.identifier, bold = config.bold }, + NvimTreeGitDirty = { fg = theme.vcs.changed }, + NvimTreeGitNew = { fg = theme.vcs.added }, + NvimTreeGitDeleted = { fg = theme.vcs.removed }, + NvimTreeGitStaged = { fg = theme.vcs.added }, + NvimTreeSpecialFile = { fg = theme.syn.special1 }, -- NvimTreeIndentMarker = {}, - NvimTreeImageFile = { fg = theme.syn.special2 }, - NvimTreeSymlink = { link = "Type" }, - NvimTreeFolderName = { link = "Directory" }, - NvimTreeExecFile = { fg = theme.syn.string, bold = true }, - NvimTreeOpenedFile = { fg = theme.syn.special1, italic = not config.disableItalics }, - NvimTreeWinSeparator = { link = "WinSeparator" }, - NvimTreeWindowPicker = { bg = config.transparent and theme.ui.none or theme.ui.bg_m1, fg = theme.syn.special1, bold = true }, + NvimTreeImageFile = { fg = theme.syn.special2 }, + NvimTreeSymlink = { link = "Type" }, + NvimTreeFolderName = { link = "Directory" }, + NvimTreeExecFile = { fg = theme.syn.string, bold = config.bold }, + NvimTreeOpenedFile = { fg = theme.syn.special1, italic = not config.disableItalics }, + NvimTreeWinSeparator = { link = "WinSeparator" }, + NvimTreeWindowPicker = { + bg = config.transparent and theme.ui.none or theme.ui.bg_m1, + fg = theme.syn.special1, + bold = config.bold, + }, -- NeoTree - NeoTreeTabInactive = { fg = theme.ui.special, bg = config.transparent and theme.ui.none or theme.ui.bg }, - NeoTreeTabActive = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_p1, bold = true }, - NeoTreeTabSeparatorInactive = { fg = theme.ui.special, bg = config.transparent and theme.ui.none or theme.ui.bg }, - NeoTreeTabSeparatorActive = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_p1 }, - NeoTreeRootName = { fg = theme.syn.identifier, bold = true }, - NeoTreeModified = { link = "String" }, - NeoTreeGitModified = { fg = theme.vcs.changed }, - NeoTreeGitAdded = { fg = theme.vcs.added }, - NeoTreeGitDeleted = { fg = theme.vcs.removed }, - NeoTreeGitStaged = { fg = theme.vcs.added }, - NeoTreeGitConflict = { fg = theme.diag.error }, - NeoTreeGitUntracked = { link = "NeoTreeGitModified", default = true }, - NeoTreeGitUnstaged = { link = "NeoTreeGitModified", default = true }, - NeoTreeIndentMarker = { link = "NonText" }, + NeoTreeTabInactive = { fg = theme.ui.special, bg = config.transparent and theme.ui.none or theme.ui.bg }, + NeoTreeTabActive = { + fg = theme.ui.fg_dim, + bg = config.transparent and theme.ui.none or theme.ui.bg_p1, + bold = config.bold, + }, + NeoTreeTabSeparatorInactive = { + fg = theme.ui.special, + bg = config.transparent and theme.ui.none or theme.ui.bg, + }, + NeoTreeTabSeparatorActive = { + fg = theme.ui.fg_dim, + bg = config.transparent and theme.ui.none or theme.ui.bg_p1, + }, + NeoTreeRootName = { fg = theme.syn.identifier, bold = config.bold }, + NeoTreeModified = { link = "String" }, + NeoTreeGitModified = { fg = theme.vcs.changed }, + NeoTreeGitAdded = { fg = theme.vcs.added }, + NeoTreeGitDeleted = { fg = theme.vcs.removed }, + NeoTreeGitStaged = { fg = theme.vcs.added }, + NeoTreeGitConflict = { fg = theme.diag.error }, + NeoTreeGitUntracked = { link = "NeoTreeGitModified", default = true }, + NeoTreeGitUnstaged = { link = "NeoTreeGitModified", default = true }, + NeoTreeIndentMarker = { link = "NonText" }, -- WindowPicker -- NvimWindowSwitch = { bg = theme.ui.bg_m3, fg = theme.diag.warning }, -- NvimWindowSwitchNC = { link = "NvimWindowSwitch" }, -- Dashboard - DashboardShortCut = { fg = theme.syn.special1 }, - DashboardHeader = { fg = theme.vcs.removed }, - DashboardCenter = { fg = theme.syn.identifier }, - DashboardFooter = { fg = theme.syn.comment }, - DashboardDesc = { fg = theme.syn.identifier }, - DashboardKey = { fg = theme.syn.special1 }, - DashboardIcon = { fg = theme.ui.special }, + DashboardShortCut = { fg = theme.syn.special1 }, + DashboardHeader = { fg = theme.vcs.removed }, + DashboardCenter = { fg = theme.syn.identifier }, + DashboardFooter = { fg = theme.syn.comment }, + DashboardDesc = { fg = theme.syn.identifier }, + DashboardKey = { fg = theme.syn.special1 }, + DashboardIcon = { fg = theme.ui.special }, -- Notify - NotifyBackground = { bg = config.transparent and theme.ui.none or theme.ui.bg }, - NotifyERRORBorder = { link = "DiagnosticError" }, - NotifyWARNBorder = { link = "DiagnosticWarn" }, - NotifyINFOBorder = { link = "DiagnosticInfo" }, - NotifyHINTBorder = { link = "DiagnosticHint" }, - NotifyDEBUGBorder = { link = "Debug" }, - NotifyTRACEBorder = { link = "Comment" }, - NotifyERRORIcon = { link = "DiagnosticError" }, - NotifyWARNIcon = { link = "DiagnosticWarn" }, - NotifyINFOIcon = { link = "DiagnosticInfo" }, - NotifyHINTIcon = { link = "DiagnosticHint" }, - NotifyDEBUGIcon = { link = "Debug" }, - NotifyTRACEIcon = { link = "Comment" }, - NotifyERRORTitle = { link = "DiagnosticError" }, - NotifyWARNTitle = { link = "DiagnosticWarn" }, - NotifyINFOTitle = { link = "DiagnosticInfo" }, - NotifyHINTTitle = { link = "DiagnosticHint" }, - NotifyDEBUGTitle = { link = "Debug" }, - NotifyTRACETitle = { link = "Comment" }, + NotifyBackground = { bg = config.transparent and theme.ui.none or theme.ui.bg }, + NotifyERRORBorder = { link = "DiagnosticError" }, + NotifyWARNBorder = { link = "DiagnosticWarn" }, + NotifyINFOBorder = { link = "DiagnosticInfo" }, + NotifyHINTBorder = { link = "DiagnosticHint" }, + NotifyDEBUGBorder = { link = "Debug" }, + NotifyTRACEBorder = { link = "Comment" }, + NotifyERRORIcon = { link = "DiagnosticError" }, + NotifyWARNIcon = { link = "DiagnosticWarn" }, + NotifyINFOIcon = { link = "DiagnosticInfo" }, + NotifyHINTIcon = { link = "DiagnosticHint" }, + NotifyDEBUGIcon = { link = "Debug" }, + NotifyTRACEIcon = { link = "Comment" }, + NotifyERRORTitle = { link = "DiagnosticError" }, + NotifyWARNTitle = { link = "DiagnosticWarn" }, + NotifyINFOTitle = { link = "DiagnosticInfo" }, + NotifyHINTTitle = { link = "DiagnosticHint" }, + NotifyDEBUGTitle = { link = "Debug" }, + NotifyTRACETitle = { link = "Comment" }, -- Dap-UI -- DapUIVariable = { link = "Normal" }, - DapUIScope = { link = "Special" }, -- guifg=#00F1F5" - DapUIType = { link = "Type" }, -- guifg=#D484FF" + DapUIScope = { link = "Special" }, -- guifg=#00F1F5" + DapUIType = { link = "Type" }, -- guifg=#D484FF" -- DapUIValue = { link = "Normal" }, - DapUIModifiedValue = { fg = theme.syn.special1, bold = true }, -- guifg=#00F1F5 gui=bold" - DapUIDecoration = { fg = theme.ui.float.fg_border }, -- guifg=#00F1F5" - DapUIThread = { fg = theme.syn.identifier }, --guifg=#A9FF68" - DapUIStoppedThread = { fg = theme.syn.special1 }, --guifg=#00f1f5" + DapUIModifiedValue = { fg = theme.syn.special1, bold = config.bold }, -- guifg=#00F1F5 gui=bold" + DapUIDecoration = { fg = theme.ui.float.fg_border }, -- guifg=#00F1F5" + DapUIThread = { fg = theme.syn.identifier }, --guifg=#A9FF68" + DapUIStoppedThread = { fg = theme.syn.special1 }, --guifg=#00f1f5" -- DapUIFrameName = { link = "Normal"}, - DapUISource = { fg = theme.syn.special2 }, -- guifg=#D484FF" - DapUILineNumber = { fg = theme.syn.special1 }, -- guifg=#00f1f5" - DapUIFloatBorder = { fg = theme.ui.float.fg_border }, -- guifg=#00F1F5" - DapUIWatchesEmpty = { fg = theme.diag.error }, -- guifg=#F70067" - DapUIWatchesValue = { fg = theme.syn.identifier }, -- guifg=#A9FF68" - DapUIWatchesError = { fg = theme.diag.error }, --guifg=#F70067" - DapUIBreakpointsPath = { link = "Directory" }, --guifg=#00F1F5" - DapUIBreakpointsInfo = { fg = theme.diag.info }, --guifg=#A9FF68" - DapUIBreakpointsCurrentLine = { fg = theme.syn.identifier, bold = true }, --guifg=#A9FF68 gui=bold" + DapUISource = { fg = theme.syn.special2 }, -- guifg=#D484FF" + DapUILineNumber = { fg = theme.syn.special1 }, -- guifg=#00f1f5" + DapUIFloatBorder = { fg = theme.ui.float.fg_border }, -- guifg=#00F1F5" + DapUIWatchesEmpty = { fg = theme.diag.error }, -- guifg=#F70067" + DapUIWatchesValue = { fg = theme.syn.identifier }, -- guifg=#A9FF68" + DapUIWatchesError = { fg = theme.diag.error }, --guifg=#F70067" + DapUIBreakpointsPath = { link = "Directory" }, --guifg=#00F1F5" + DapUIBreakpointsInfo = { fg = theme.diag.info }, --guifg=#A9FF68" + DapUIBreakpointsCurrentLine = { fg = theme.syn.identifier, bold = config.bold }, --guifg=#A9FF68 gui=bold" -- DapUIBreakpointsLine = {}, -- DapUILineNumber" - DapUIBreakpointsDisabledLine = { link = "Comment" }, --guifg=#424242" + DapUIBreakpointsDisabledLine = { link = "Comment" }, --guifg=#424242" -- DapUICurrentFrameName = {}, -- DapUIBreakpointsCurrentLine" - DapUIStepOver = { fg = theme.syn.special1 }, --guifg=#00f1f5" - DapUIStepInto = { fg = theme.syn.special1 }, --guifg=#00f1f5" - DapUIStepBack = { fg = theme.syn.special1 }, --guifg=#00f1f5" - DapUIStepOut = { fg = theme.syn.special1 }, --guifg=#00f1f5" - DapUIStop = { fg = theme.diag.error }, --guifg=#F70067" - DapUIPlayPause = { fg = theme.syn.string }, --guifg=#A9FF68" - DapUIRestart = { fg = theme.syn.string }, --guifg=#A9FF68" - DapUIUnavailable = { fg = theme.syn.comment }, --guifg=#424242" + DapUIStepOver = { fg = theme.syn.special1 }, --guifg=#00f1f5" + DapUIStepInto = { fg = theme.syn.special1 }, --guifg=#00f1f5" + DapUIStepBack = { fg = theme.syn.special1 }, --guifg=#00f1f5" + DapUIStepOut = { fg = theme.syn.special1 }, --guifg=#00f1f5" + DapUIStop = { fg = theme.diag.error }, --guifg=#F70067" + DapUIPlayPause = { fg = theme.syn.string }, --guifg=#A9FF68" + DapUIRestart = { fg = theme.syn.string }, --guifg=#A9FF68" + DapUIUnavailable = { fg = theme.syn.comment }, --guifg=#424242" -- Floaterm - FloatermBorder = { fg = theme.ui.float.fg_border, bg = config.transparent and theme.ui.none or theme.ui.bg }, + FloatermBorder = { fg = theme.ui.float.fg_border, bg = config.transparent and theme.ui.none or theme.ui.bg }, -- NeoVim = {}, - healthError = { fg = theme.diag.error }, - healthSuccess = { fg = theme.diag.ok }, - healthWarning = { fg = theme.diag.warning }, + healthError = { fg = theme.diag.error }, + healthSuccess = { fg = theme.diag.ok }, + healthWarning = { fg = theme.diag.warning }, -- Cmp - CmpDocumentation = { link = "NormalFloat" }, - CmpDocumentationBorder = { link = "FloatBorder" }, - CmpCompletion = { link = "Pmenu" }, - CmpCompletionSel = { link = "PmenuSel" }, - CmpCompletionBorder = { fg = theme.ui.bg_search, bg = theme.ui.pmenu.bg }, - CmpCompletionThumb = { link = "PmenuThumb" }, - CmpCompletionSbar = { link = "PmenuSbar" }, - CmpItemAbbr = { fg = theme.ui.pmenu.fg }, - CmpItemAbbrDeprecated = { fg = theme.syn.comment, strikethrough = true }, - CmpItemAbbrMatch = { fg = theme.syn.fun }, - CmpItemAbbrMatchFuzzy = { link = "CmpItemAbbrMatch" }, - CmpItemKindDefault = { fg = theme.ui.fg_dim }, - CmpItemMenu = { fg = theme.ui.fg_dim }, - CmpGhostText = { fg = theme.syn.comment }, + CmpDocumentation = { link = "NormalFloat" }, + CmpDocumentationBorder = { link = "FloatBorder" }, + CmpCompletion = { link = "Pmenu" }, + CmpCompletionSel = { link = "PmenuSel" }, + CmpCompletionBorder = { fg = theme.ui.bg_search, bg = theme.ui.pmenu.bg }, + CmpCompletionThumb = { link = "PmenuThumb" }, + CmpCompletionSbar = { link = "PmenuSbar" }, + CmpItemAbbr = { fg = theme.ui.pmenu.fg }, + CmpItemAbbrDeprecated = { fg = theme.syn.comment, strikethrough = true }, + CmpItemAbbrMatch = { fg = theme.syn.fun }, + CmpItemAbbrMatchFuzzy = { link = "CmpItemAbbrMatch" }, + CmpItemKindDefault = { fg = theme.ui.fg_dim }, + CmpItemMenu = { fg = theme.ui.fg_dim }, + CmpGhostText = { fg = theme.syn.comment }, - CmpItemKindText = { fg = theme.ui.fg }, - CmpItemKindMethod = { link = "@function.method" }, - CmpItemKindFunction = { link = "Function" }, - CmpItemKindConstructor = { link = "@constructor" }, - CmpItemKindField = { link = "@variable.member" }, - CmpItemKindVariable = { fg = theme.ui.fg_dim }, - CmpItemKindClass = { link = "Type" }, - CmpItemKindInterface = { link = "Type" }, - CmpItemKindModule = { link = "@module" }, - CmpItemKindProperty = { link = "@property" }, - CmpItemKindUnit = { link = "Number" }, - CmpItemKindValue = { link = "String" }, - CmpItemKindEnum = { link = "Type" }, - CmpItemKindKeyword = { link = "Keyword" }, - CmpItemKindSnippet = { link = "Special" }, - CmpItemKindColor = { link = "Special" }, - CmpItemKindFile = { link = "Directory" }, - CmpItemKindReference = { link = "Special" }, - CmpItemKindFolder = { link = "Directory" }, - CmpItemKindEnumMember = { link = "Constant" }, - CmpItemKindConstant = { link = "Constant" }, - CmpItemKindStruct = { link = "Type" }, - CmpItemKindEvent = { link = "Type" }, - CmpItemKindOperator = { link = "Operator" }, - CmpItemKindTypeParameter = { link = "Type" }, - CmpItemKindCopilot = { link = "String" }, + CmpItemKindText = { fg = theme.ui.fg }, + CmpItemKindMethod = { link = "@function.method" }, + CmpItemKindFunction = { link = "Function" }, + CmpItemKindConstructor = { link = "@constructor" }, + CmpItemKindField = { link = "@variable.member" }, + CmpItemKindVariable = { fg = theme.ui.fg_dim }, + CmpItemKindClass = { link = "Type" }, + CmpItemKindInterface = { link = "Type" }, + CmpItemKindModule = { link = "@module" }, + CmpItemKindProperty = { link = "@property" }, + CmpItemKindUnit = { link = "Number" }, + CmpItemKindValue = { link = "String" }, + CmpItemKindEnum = { link = "Type" }, + CmpItemKindKeyword = { link = "Keyword" }, + CmpItemKindSnippet = { link = "Special" }, + CmpItemKindColor = { link = "Special" }, + CmpItemKindFile = { link = "Directory" }, + CmpItemKindReference = { link = "Special" }, + CmpItemKindFolder = { link = "Directory" }, + CmpItemKindEnumMember = { link = "Constant" }, + CmpItemKindConstant = { link = "Constant" }, + CmpItemKindStruct = { link = "Type" }, + CmpItemKindEvent = { link = "Type" }, + CmpItemKindOperator = { link = "Operator" }, + CmpItemKindTypeParameter = { link = "Type" }, + CmpItemKindCopilot = { link = "String" }, -- blink.cmp - BlinkCmpMenu = { link = "Pmenu" }, - BlinkCmpMenuSelection = { link = "PmenuSel" }, - BlinkCmpMenuBorder = { fg = theme.ui.bg_search, bg = theme.ui.pmenu.bg }, - BlinkCmpScrollBarThumb = { link = "PmenuThumb" }, - BlinkCmpScrollBarGutter = { link = "PmenuSbar" }, - BlinkCmpLabel = { fg = theme.ui.pmenu.fg }, - BlinkCmpLabelMatch = { fg = theme.syn.fun }, - BlinkCmpLabelDetails = { fg = theme.syn.comment }, - BlinkCmpLabelDeprecated = { fg = theme.syn.comment, strikethrough = true }, - BlinkCmpGhostText = { fg = theme.syn.comment }, - BlinkCmpDoc = { link = "NormalFloat" }, - BlinkCmpDocBorder = { link = "FloatBorder" }, - BlinkCmpDocCursorLine = { link = "Visual" }, - BlinkCmpSignatureHelp = { link = "NormalFloat" }, - BlinkCmpSignatureHelpBorder = { link = "FloatBorder" }, + BlinkCmpMenu = { link = "Pmenu" }, + BlinkCmpMenuSelection = { link = "PmenuSel" }, + BlinkCmpMenuBorder = { fg = theme.ui.bg_search, bg = theme.ui.pmenu.bg }, + BlinkCmpScrollBarThumb = { link = "PmenuThumb" }, + BlinkCmpScrollBarGutter = { link = "PmenuSbar" }, + BlinkCmpLabel = { fg = theme.ui.pmenu.fg }, + BlinkCmpLabelMatch = { fg = theme.syn.fun }, + BlinkCmpLabelDetails = { fg = theme.syn.comment }, + BlinkCmpLabelDeprecated = { fg = theme.syn.comment, strikethrough = true }, + BlinkCmpGhostText = { fg = theme.syn.comment }, + BlinkCmpDoc = { link = "NormalFloat" }, + BlinkCmpDocBorder = { link = "FloatBorder" }, + BlinkCmpDocCursorLine = { link = "Visual" }, + BlinkCmpSignatureHelp = { link = "NormalFloat" }, + BlinkCmpSignatureHelpBorder = { link = "FloatBorder" }, BlinkCmpSignatureHelpActiveParameter = { link = "LspSignatureActiveParameter" }, - BlinkCmpKind = { fg = theme.ui.fg_dim }, - BlinkCmpKindText = { fg = theme.ui.fg }, - BlinkCmpKindMethod = { link = "@function.method" }, - BlinkCmpKindFunction = { link = "Function" }, - BlinkCmpKindConstructor = { link = "@constructor" }, - BlinkCmpKindField = { link = "@variable.member" }, - BlinkCmpKindVariable = { fg = theme.ui.fg_dim }, - BlinkCmpKindClass = { link = "Type" }, - BlinkCmpKindInterface = { link = "Type" }, - BlinkCmpKindModule = { link = "@module" }, - BlinkCmpKindProperty = { link = "@property" }, - BlinkCmpKindUnit = { link = "Number" }, - BlinkCmpKindValue = { link = "String" }, - BlinkCmpKindEnum = { link = "Type" }, - BlinkCmpKindKeyword = { link = "Keyword" }, - BlinkCmpKindSnippet = { link = "Special" }, - BlinkCmpKindColor = { link = "Special" }, - BlinkCmpKindFile = { link = "Directory" }, - BlinkCmpKindReference = { link = "Special" }, - BlinkCmpKindFolder = { link = "Directory" }, - BlinkCmpKindEnumMember = { link = "Constant" }, - BlinkCmpKindConstant = { link = "Constant" }, - BlinkCmpKindStruct = { link = "Type" }, - BlinkCmpKindEvent = { link = "Type" }, - BlinkCmpKindOperator = { link = "Operator" }, - BlinkCmpKindTypeParameter = { link = "Type" }, - BlinkCmpKindCopilot = { link = "String" }, + BlinkCmpKind = { fg = theme.ui.fg_dim }, + BlinkCmpKindText = { fg = theme.ui.fg }, + BlinkCmpKindMethod = { link = "@function.method" }, + BlinkCmpKindFunction = { link = "Function" }, + BlinkCmpKindConstructor = { link = "@constructor" }, + BlinkCmpKindField = { link = "@variable.member" }, + BlinkCmpKindVariable = { fg = theme.ui.fg_dim }, + BlinkCmpKindClass = { link = "Type" }, + BlinkCmpKindInterface = { link = "Type" }, + BlinkCmpKindModule = { link = "@module" }, + BlinkCmpKindProperty = { link = "@property" }, + BlinkCmpKindUnit = { link = "Number" }, + BlinkCmpKindValue = { link = "String" }, + BlinkCmpKindEnum = { link = "Type" }, + BlinkCmpKindKeyword = { link = "Keyword" }, + BlinkCmpKindSnippet = { link = "Special" }, + BlinkCmpKindColor = { link = "Special" }, + BlinkCmpKindFile = { link = "Directory" }, + BlinkCmpKindReference = { link = "Special" }, + BlinkCmpKindFolder = { link = "Directory" }, + BlinkCmpKindEnumMember = { link = "Constant" }, + BlinkCmpKindConstant = { link = "Constant" }, + BlinkCmpKindStruct = { link = "Type" }, + BlinkCmpKindEvent = { link = "Type" }, + BlinkCmpKindOperator = { link = "Operator" }, + BlinkCmpKindTypeParameter = { link = "Type" }, + BlinkCmpKindCopilot = { link = "String" }, -- IndentBlankline - IndentBlanklineChar = { fg = theme.ui.indent_line, nocombine = true }, - IndentBlanklineSpaceChar = { fg = theme.ui.indent_line, nocombine = true }, - IndentBlanklineSpaceCharBlankline = { fg = theme.ui.indent_line, nocombine = true }, - IndentBlanklineContextChar = { fg = theme.ui.active_indent_line, nocombine = true }, - IndentBlanklineContextStart = { sp = theme.ui.active_indent_line, underline = true, nocombine = true }, - IblIndent = { fg = theme.ui.indent_line, nocombine = true }, - IblWhitespace = { fg = theme.ui.indent_line, nocombine = true }, - IblScope = { fg = theme.ui.active_indent_line, nocombine = true }, + IndentBlanklineChar = { fg = theme.ui.indent_line, nocombine = true }, + IndentBlanklineSpaceChar = { fg = theme.ui.indent_line, nocombine = true }, + IndentBlanklineSpaceCharBlankline = { fg = theme.ui.indent_line, nocombine = true }, + IndentBlanklineContextChar = { fg = theme.ui.active_indent_line, nocombine = true }, + IndentBlanklineContextStart = { sp = theme.ui.active_indent_line, underline = true, nocombine = true }, + IblIndent = { fg = theme.ui.indent_line, nocombine = true }, + IblWhitespace = { fg = theme.ui.indent_line, nocombine = true }, + IblScope = { fg = theme.ui.active_indent_line, nocombine = true }, -- Other indent plugins - IndentLine = { fg = theme.ui.indent_line, nocombine = true }, - Indent = { fg = theme.ui.indent_line, nocombine = true }, - IndentGuide = { fg = theme.ui.indent_line, nocombine = true }, - IndentGuidesOdd = { fg = theme.ui.indent_line, nocombine = true }, - IndentGuidesEven = { fg = theme.ui.indent_line, nocombine = true }, + IndentLine = { fg = theme.ui.indent_line, nocombine = true }, + Indent = { fg = theme.ui.indent_line, nocombine = true }, + IndentGuide = { fg = theme.ui.indent_line, nocombine = true }, + IndentGuidesOdd = { fg = theme.ui.indent_line, nocombine = true }, + IndentGuidesEven = { fg = theme.ui.indent_line, nocombine = true }, -- Lazy - LazyProgressTodo = { fg = theme.ui.nontext }, + LazyProgressTodo = { fg = theme.ui.nontext }, -- Trouble - TroubleIndent = { fg = theme.ui.whitespace }, - TroublePos = { fg = theme.ui.special }, + TroubleIndent = { fg = theme.ui.whitespace }, + TroublePos = { fg = theme.ui.special }, -- Nvim-Navic - NavicIconsFile = { link = "Directory" }, - NavicIconsModule = { link = "@module" }, - NavicIconsNamespace = { link = "@module" }, - NavicIconsPackage = { link = "@module" }, - NavicIconsClass = { link = "Type" }, - NavicIconsMethod = { link = "@function.method" }, - NavicIconsProperty = { link = "@property" }, - NavicIconsField = { link = "@variable.member" }, - NavicIconsConstructor = { link = "@constructor" }, - NavicIconsEnum = { link = "Type" }, - NavicIconsInterface = { link = "Type" }, - NavicIconsFunction = { link = "Function" }, - NavicIconsVariable = { link = "@variable" }, - NavicIconsConstant = { link = "Constant" }, - NavicIconsString = { link = "String" }, - NavicIconsNumber = { link = "Number" }, - NavicIconsBoolean = { link = "Boolean" }, - NavicIconsArray = { link = "Type" }, - NavicIconsObject = { link = "Type" }, - NavicIconsKey = { link = "Identifier" }, - NavicIconsNull = { link = "Type" }, - NavicIconsEnumMember = { link = "Constant" }, - NavicIconsStruct = { link = "Structure" }, - NavicIconsEvent = { link = "Structure" }, - NavicIconsOperator = { link = "Operator" }, - NavicIconsTypeParameter = { link = "Type" }, - NavicText = { fg = theme.ui.fg }, - NavicSeparator = { fg = theme.ui.fg }, + NavicIconsFile = { link = "Directory" }, + NavicIconsModule = { link = "@module" }, + NavicIconsNamespace = { link = "@module" }, + NavicIconsPackage = { link = "@module" }, + NavicIconsClass = { link = "Type" }, + NavicIconsMethod = { link = "@function.method" }, + NavicIconsProperty = { link = "@property" }, + NavicIconsField = { link = "@variable.member" }, + NavicIconsConstructor = { link = "@constructor" }, + NavicIconsEnum = { link = "Type" }, + NavicIconsInterface = { link = "Type" }, + NavicIconsFunction = { link = "Function" }, + NavicIconsVariable = { link = "@variable" }, + NavicIconsConstant = { link = "Constant" }, + NavicIconsString = { link = "String" }, + NavicIconsNumber = { link = "Number" }, + NavicIconsBoolean = { link = "Boolean" }, + NavicIconsArray = { link = "Type" }, + NavicIconsObject = { link = "Type" }, + NavicIconsKey = { link = "Identifier" }, + NavicIconsNull = { link = "Type" }, + NavicIconsEnumMember = { link = "Constant" }, + NavicIconsStruct = { link = "Structure" }, + NavicIconsEvent = { link = "Structure" }, + NavicIconsOperator = { link = "Operator" }, + NavicIconsTypeParameter = { link = "Type" }, + NavicText = { fg = theme.ui.fg }, + NavicSeparator = { fg = theme.ui.fg }, -- Aerial icons - AerialFileIcon = { link = "Directory" }, - AerialModuleIcon = { link = "@module" }, - AerialNamespaceIcon = { link = "@module" }, - AerialPackageIcon = { link = "@module" }, - AerialClassIcon = { link = "Type" }, - AerialMethodIcon = { link = "@function.method" }, - AerialPropertyIcon = { link = "@property" }, - AerialFieldIcon = { link = "@variable.member" }, - AerialConstructorIcon = { link = "@constructor" }, - AerialEnumIcon = { link = "Type" }, - AerialInterfaceIcon = { link = "Type" }, - AerialFunctionIcon = { link = "Function" }, - AerialVariableIcon = { link = "@variable" }, - AerialConstantIcon = { link = "Constant" }, - AerialStringIcon = { link = "String" }, - AerialNumberIcon = { link = "Number" }, - AerialBooleanIcon = { link = "Boolean" }, - AerialArrayIcon = { link = "Type" }, - AerialObjectIcon = { link = "Type" }, - AerialKeyIcon = { link = "Identifier" }, - AerialNullIcon = { link = "Type" }, - AerialEnumMemberIcon = { link = "Constant" }, - AerialStructIcon = { link = "Structure" }, - AerialEventIcon = { link = "Structure" }, - AerialOperatorIcon = { link = "Operator" }, - AerialTypeParameterIcon = { link = "Type" }, + AerialFileIcon = { link = "Directory" }, + AerialModuleIcon = { link = "@module" }, + AerialNamespaceIcon = { link = "@module" }, + AerialPackageIcon = { link = "@module" }, + AerialClassIcon = { link = "Type" }, + AerialMethodIcon = { link = "@function.method" }, + AerialPropertyIcon = { link = "@property" }, + AerialFieldIcon = { link = "@variable.member" }, + AerialConstructorIcon = { link = "@constructor" }, + AerialEnumIcon = { link = "Type" }, + AerialInterfaceIcon = { link = "Type" }, + AerialFunctionIcon = { link = "Function" }, + AerialVariableIcon = { link = "@variable" }, + AerialConstantIcon = { link = "Constant" }, + AerialStringIcon = { link = "String" }, + AerialNumberIcon = { link = "Number" }, + AerialBooleanIcon = { link = "Boolean" }, + AerialArrayIcon = { link = "Type" }, + AerialObjectIcon = { link = "Type" }, + AerialKeyIcon = { link = "Identifier" }, + AerialNullIcon = { link = "Type" }, + AerialEnumMemberIcon = { link = "Constant" }, + AerialStructIcon = { link = "Structure" }, + AerialEventIcon = { link = "Structure" }, + AerialOperatorIcon = { link = "Operator" }, + AerialTypeParameterIcon = { link = "Type" }, -- Mini - MiniAnimateCursor = { reverse = true, nocombine = true }, - MiniAnimateNormalFloat = { link = "NormalFloat" }, + MiniAnimateCursor = { reverse = true, nocombine = true }, + MiniAnimateNormalFloat = { link = "NormalFloat" }, - MiniClueBorder = { link = "FloatBorder" }, - MiniClueDescGroup = { link = "DiagnosticFloatingWarn" }, - MiniClueDescSingle = { link = "NormalFloat" }, - MiniClueNextKey = { link = "DiagnosticFloatingHint" }, - MiniClueNextKeyWithPostkeys = { link = "DiagnosticFloatingError" }, - MiniClueSeparator = { link = "DiagnosticFloatingInfo" }, - MiniClueTitle = { link = "FloatTitle" }, + MiniClueBorder = { link = "FloatBorder" }, + MiniClueDescGroup = { link = "DiagnosticFloatingWarn" }, + MiniClueDescSingle = { link = "NormalFloat" }, + MiniClueNextKey = { link = "DiagnosticFloatingHint" }, + MiniClueNextKeyWithPostkeys = { link = "DiagnosticFloatingError" }, + MiniClueSeparator = { link = "DiagnosticFloatingInfo" }, + MiniClueTitle = { link = "FloatTitle" }, - MiniCompletionActiveParameter = { underline = true }, + MiniCompletionActiveParameter = { underline = true }, - MiniCursorword = { underline = true }, - MiniCursorwordCurrent = { underline = true }, + MiniCursorword = { underline = true }, + MiniCursorwordCurrent = { underline = true }, - MiniDepsChangeAdded = { link = "diffAdded" }, - MiniDepsChangeRemoved = { link = "diffRemoved" }, - MiniDepsHint = { fg = theme.diag.hint }, - MiniDepsInfo = { fg = theme.diag.info }, - MiniDepsMsgBreaking = { fg = theme.diag.warning }, - MiniDepsPlaceholder = { link = "Comment" }, - MiniDepsTitle = { link = "Title" }, - MiniDepsTitleError = { link = "DiffDelete" }, - MiniDepsTitleSame = { link = "DiffText" }, - MiniDepsTitleUpdate = { link = "DiffAdd" }, + MiniDepsChangeAdded = { link = "diffAdded" }, + MiniDepsChangeRemoved = { link = "diffRemoved" }, + MiniDepsHint = { fg = theme.diag.hint }, + MiniDepsInfo = { fg = theme.diag.info }, + MiniDepsMsgBreaking = { fg = theme.diag.warning }, + MiniDepsPlaceholder = { link = "Comment" }, + MiniDepsTitle = { link = "Title" }, + MiniDepsTitleError = { link = "DiffDelete" }, + MiniDepsTitleSame = { link = "DiffText" }, + MiniDepsTitleUpdate = { link = "DiffAdd" }, - MiniDiffSignAdd = { fg = theme.vcs.added, bg = theme.ui.none }, - MiniDiffSignChange = { fg = theme.vcs.changed, bg = theme.ui.none }, - MiniDiffSignDelete = { fg = theme.vcs.removed, bg = theme.ui.none }, - MiniDiffOverAdd = { link = "DiffAdd" }, - MiniDiffOverChange = { link = "DiffText" }, - MiniDiffOverContext = { link = "DiffChange" }, - MiniDiffOverDelete = { link = "DiffDelete" }, + MiniDiffSignAdd = { fg = theme.vcs.added, bg = theme.ui.none }, + MiniDiffSignChange = { fg = theme.vcs.changed, bg = theme.ui.none }, + MiniDiffSignDelete = { fg = theme.vcs.removed, bg = theme.ui.none }, + MiniDiffOverAdd = { link = "DiffAdd" }, + MiniDiffOverChange = { link = "DiffText" }, + MiniDiffOverContext = { link = "DiffChange" }, + MiniDiffOverDelete = { link = "DiffDelete" }, - MiniFilesBorder = { link = "FloatBorder" }, - MiniFilesBorderModified = { link = "DiagnosticFloatingWarn" }, - MiniFilesCursorLine = { link = "CursorLine" }, - MiniFilesDirectory = { link = "Directory" }, - MiniFilesFile = { fg = theme.ui.fg }, - MiniFilesNormal = { link = "NormalFloat" }, - MiniFilesTitle = { fg = theme.ui.special, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, bold = true }, - MiniFilesTitleFocused = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, bold = true }, + MiniFilesBorder = { link = "FloatBorder" }, + MiniFilesBorderModified = { link = "DiagnosticFloatingWarn" }, + MiniFilesCursorLine = { link = "CursorLine" }, + MiniFilesDirectory = { link = "Directory" }, + MiniFilesFile = { fg = theme.ui.fg }, + MiniFilesNormal = { link = "NormalFloat" }, + MiniFilesTitle = { + fg = theme.ui.special, + bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, + bold = config.bold, + }, + MiniFilesTitleFocused = { + fg = theme.ui.fg, + bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, + bold = config.bold, + }, - MiniHipatternsFixme = { fg = theme.ui.bg, bg = theme.diag.error, bold = true }, - MiniHipatternsHack = { fg = theme.ui.bg, bg = theme.diag.warning, bold = true }, - MiniHipatternsNote = { fg = theme.ui.bg, bg = theme.diag.info, bold = true }, - MiniHipatternsTodo = { fg = theme.ui.bg, bg = theme.diag.hint, bold = true }, + MiniHipatternsFixme = { fg = theme.ui.bg, bg = theme.diag.error, bold = config.bold }, + MiniHipatternsHack = { fg = theme.ui.bg, bg = theme.diag.warning, bold = config.bold }, + MiniHipatternsNote = { fg = theme.ui.bg, bg = theme.diag.info, bold = config.bold }, + MiniHipatternsTodo = { fg = theme.ui.bg, bg = theme.diag.hint, bold = config.bold }, - MiniIconsAzure = { fg = theme.syn.special1 }, - MiniIconsBlue = { fg = theme.syn.fun }, - MiniIconsCyan = { fg = theme.syn.type }, - MiniIconsGreen = { fg = theme.syn.string }, - MiniIconsGrey = { fg = theme.ui.fg }, - MiniIconsOrange = { fg = theme.syn.constant }, - MiniIconsPurple = { fg = theme.syn.keyword }, - MiniIconsRed = { fg = theme.syn.special3 }, - MiniIconsYellow = { fg = theme.syn.identifier }, + MiniIconsAzure = { fg = theme.syn.special1 }, + MiniIconsBlue = { fg = theme.syn.fun }, + MiniIconsCyan = { fg = theme.syn.type }, + MiniIconsGreen = { fg = theme.syn.string }, + MiniIconsGrey = { fg = theme.ui.fg }, + MiniIconsOrange = { fg = theme.syn.constant }, + MiniIconsPurple = { fg = theme.syn.keyword }, + MiniIconsRed = { fg = theme.syn.special3 }, + MiniIconsYellow = { fg = theme.syn.identifier }, - MiniIndentscopeSymbol = { fg = theme.syn.special1 }, - MiniIndentscopePrefix = { nocombine = true }, -- Make it invisible + MiniIndentscopeSymbol = { fg = theme.syn.special1 }, + MiniIndentscopePrefix = { nocombine = true }, -- Make it invisible - MiniJump = { link = "SpellRare" }, + MiniJump = { link = "SpellRare" }, - MiniJump2dDim = { link = "Comment" }, - MiniJump2dSpot = { fg = theme.syn.constant, bold = true, nocombine = true }, - MiniJump2dSpotAhead = { fg = theme.diag.hint, bg = theme.ui.bg_dim, nocombine = true }, - MiniJump2dSpotUnique = { fg = theme.syn.special1, bold = true, nocombine = true }, + MiniJump2dDim = { link = "Comment" }, + MiniJump2dSpot = { fg = theme.syn.constant, bold = config.bold, nocombine = true }, + MiniJump2dSpotAhead = { fg = theme.diag.hint, bg = theme.ui.bg_dim, nocombine = true }, + MiniJump2dSpotUnique = { fg = theme.syn.special1, bold = config.bold, nocombine = true }, - MiniMapNormal = { link = "NormalFloat" }, - MiniMapSymbolCount = { link = "Special" }, - MiniMapSymbolLine = { link = "Title" }, - MiniMapSymbolView = { link = "Delimiter" }, + MiniMapNormal = { link = "NormalFloat" }, + MiniMapSymbolCount = { link = "Special" }, + MiniMapSymbolLine = { link = "Title" }, + MiniMapSymbolView = { link = "Delimiter" }, - MiniNotifyBorder = { link = "FloatBorder" }, - MiniNotifyNormal = { link = "NormalFloat" }, - MiniNotifyTitle = { link = "FloatTitle" }, + MiniNotifyBorder = { link = "FloatBorder" }, + MiniNotifyNormal = { link = "NormalFloat" }, + MiniNotifyTitle = { link = "FloatTitle" }, - MiniOperatorsExchangeFrom = { link = "IncSearch" }, + MiniOperatorsExchangeFrom = { link = "IncSearch" }, - MiniPickBorder = { link = "FloatBorder" }, - MiniPickBorderBusy = { link = "DiagnosticFloatingWarn" }, - MiniPickBorderText = { link = "FloatTitle" }, - MiniPickIconDirectory = { link = "Directory" }, - MiniPickIconFile = { link = "MiniPickNormal" }, - MiniPickHeader = { link = "DiagnosticFloatingHint" }, - MiniPickMatchCurrent = { link = "CursorLine" }, - MiniPickMatchMarked = { link = "Visual" }, - MiniPickMatchRanges = { link = "DiagnosticFloatingHint" }, - MiniPickNormal = { link = "NormalFloat" }, - MiniPickPreviewLine = { link = "CursorLine" }, - MiniPickPreviewRegion = { link = "IncSearch" }, - MiniPickPrompt = { fg = theme.syn.fun, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border }, + MiniPickBorder = { link = "FloatBorder" }, + MiniPickBorderBusy = { link = "DiagnosticFloatingWarn" }, + MiniPickBorderText = { link = "FloatTitle" }, + MiniPickIconDirectory = { link = "Directory" }, + MiniPickIconFile = { link = "MiniPickNormal" }, + MiniPickHeader = { link = "DiagnosticFloatingHint" }, + MiniPickMatchCurrent = { link = "CursorLine" }, + MiniPickMatchMarked = { link = "Visual" }, + MiniPickMatchRanges = { link = "DiagnosticFloatingHint" }, + MiniPickNormal = { link = "NormalFloat" }, + MiniPickPreviewLine = { link = "CursorLine" }, + MiniPickPreviewRegion = { link = "IncSearch" }, + MiniPickPrompt = { fg = theme.syn.fun, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border }, - MiniStarterCurrent = { nocombine = true }, - MiniStarterFooter = { fg = theme.syn.deprecated }, - MiniStarterHeader = { link = "Title" }, - MiniStarterInactive = { link = "Comment" }, - MiniStarterItem = { link = "Normal" }, - MiniStarterItemBullet = { link = "Delimiter" }, - MiniStarterItemPrefix = { fg = theme.diag.warning }, - MiniStarterSection = { fg = theme.diag.ok }, - MiniStarterQuery = { fg = theme.diag.info }, + MiniStarterCurrent = { nocombine = true }, + MiniStarterFooter = { fg = theme.syn.deprecated }, + MiniStarterHeader = { link = "Title" }, + MiniStarterInactive = { link = "Comment" }, + MiniStarterItem = { link = "Normal" }, + MiniStarterItemBullet = { link = "Delimiter" }, + MiniStarterItemPrefix = { fg = theme.diag.warning }, + MiniStarterSection = { fg = theme.diag.ok }, + MiniStarterQuery = { fg = theme.diag.info }, - MiniStatuslineDevinfo = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_p1 }, - MiniStatuslineFileinfo = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_p1 }, - MiniStatuslineFilename = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_dim }, - MiniStatuslineInactive = { link = "StatusLineNC" }, - MiniStatuslineModeCommand = { fg = theme.ui.bg, bg = theme.syn.operator, bold = true }, - MiniStatuslineModeInsert = { fg = theme.ui.bg, bg = theme.diag.ok, bold = true }, - MiniStatuslineModeNormal = { fg = theme.ui.bg_m3, bg = theme.syn.fun, bold = true }, - MiniStatuslineModeOther = { fg = theme.ui.bg, bg = theme.syn.type, bold = true }, - MiniStatuslineModeReplace = { fg = theme.ui.bg, bg = theme.syn.constant, bold = true }, - MiniStatuslineModeVisual = { fg = theme.ui.bg, bg = theme.syn.keyword, bold = true }, + MiniStatuslineDevinfo = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_p1 }, + MiniStatuslineFileinfo = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_p1 }, + MiniStatuslineFilename = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_dim }, + MiniStatuslineInactive = { link = "StatusLineNC" }, + MiniStatuslineModeCommand = { fg = theme.ui.bg, bg = theme.syn.operator, bold = config.bold }, + MiniStatuslineModeInsert = { fg = theme.ui.bg, bg = theme.diag.ok, bold = config.bold }, + MiniStatuslineModeNormal = { fg = theme.ui.bg_m3, bg = theme.syn.fun, bold = config.bold }, + MiniStatuslineModeOther = { fg = theme.ui.bg, bg = theme.syn.type, bold = config.bold }, + MiniStatuslineModeReplace = { fg = theme.ui.bg, bg = theme.syn.constant, bold = config.bold }, + MiniStatuslineModeVisual = { fg = theme.ui.bg, bg = theme.syn.keyword, bold = config.bold }, - MiniSurround = { link = "IncSearch" }, + MiniSurround = { link = "IncSearch" }, - MiniTablineCurrent = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_p1, bold = true }, - MiniTablineFill = { link = "TabLineFill" }, - MiniTablineHidden = { fg = theme.ui.special, bg = theme.ui.bg_m3 }, - MiniTablineModifiedCurrent = { fg = theme.ui.bg_p1, bg = theme.ui.fg_dim, bold = true }, - MiniTablineModifiedHidden = { fg = theme.ui.bg_m3, bg = theme.ui.special }, - MiniTablineModifiedVisible = { fg = theme.ui.bg_m3, bg = theme.ui.special, bold = true }, - MiniTablineTabpagesection = { fg = theme.ui.fg, bg = theme.ui.bg_search, bold = true }, - MiniTablineVisible = { fg = theme.ui.special, bg = theme.ui.bg_m3, bold = true }, + MiniTablineCurrent = { + fg = theme.ui.fg_dim, + bg = config.transparent and theme.ui.none or theme.ui.bg_p1, + bold = config.bold, + }, + MiniTablineFill = { link = "TabLineFill" }, + MiniTablineHidden = { fg = theme.ui.special, bg = theme.ui.bg_m3 }, + MiniTablineModifiedCurrent = { fg = theme.ui.bg_p1, bg = theme.ui.fg_dim, bold = config.bold }, + MiniTablineModifiedHidden = { fg = theme.ui.bg_m3, bg = theme.ui.special }, + MiniTablineModifiedVisible = { fg = theme.ui.bg_m3, bg = theme.ui.special, bold = config.bold }, + MiniTablineTabpagesection = { fg = theme.ui.fg, bg = theme.ui.bg_search, bold = config.bold }, + MiniTablineVisible = { fg = theme.ui.special, bg = theme.ui.bg_m3, bold = config.bold }, - MiniTestEmphasis = { bold = true }, - MiniTestFail = { fg = theme.diag.error, bold = true }, - MiniTestPass = { fg = theme.diag.ok, bold = true }, + MiniTestEmphasis = { bold = config.bold }, + MiniTestFail = { fg = theme.diag.error, bold = config.bold }, + MiniTestPass = { fg = theme.diag.ok, bold = config.bold }, - MiniTrailspace = { bg = theme.vcs.removed }, + MiniTrailspace = { bg = theme.vcs.removed }, - NeotestAdapterName = { fg = theme.syn.special3, }, - NeotestDir = { fg = theme.syn.fun, }, - NeotestExpandMarker = { fg = theme.syn.punct, bold = true, }, - NeotestFailed = { fg = theme.diag.error }, - NeotestFile = { fg = theme.syn.fun, }, - NeotestFocused = { bold = true, underline = true, }, - NeotestIndent = { fg = theme.ui.special, bold = true, }, - NeotestMarked = { fg = theme.diag.warning, italic = not config.disableItalics, }, - NeotestNamespace = { fg = theme.syn.fun, }, - NeotestPassed = { fg = theme.diag.ok }, - NeotestRunning = { fg = theme.vcs.changed, }, - NeotestWinSelect = { fg = theme.diag.hint }, - NeotestSkipped = { fg = theme.syn.special1 }, - NeotestTarget = { fg = theme.syn.special3 }, - NeotestTest = { fg = theme.ui.float.fg }, - NeotestUnknown = { fg = theme.syn.deprecated }, - NeotestWatching = { fg = theme.vcs.changed, }, + NeotestAdapterName = { fg = theme.syn.special3 }, + NeotestDir = { fg = theme.syn.fun }, + NeotestExpandMarker = { fg = theme.syn.punct, bold = config.bold }, + NeotestFailed = { fg = theme.diag.error }, + NeotestFile = { fg = theme.syn.fun }, + NeotestFocused = { bold = config.bold, underline = true }, + NeotestIndent = { fg = theme.ui.special, bold = config.bold }, + NeotestMarked = { fg = theme.diag.warning, italic = not config.disableItalics }, + NeotestNamespace = { fg = theme.syn.fun }, + NeotestPassed = { fg = theme.diag.ok }, + NeotestRunning = { fg = theme.vcs.changed }, + NeotestWinSelect = { fg = theme.diag.hint }, + NeotestSkipped = { fg = theme.syn.special1 }, + NeotestTarget = { fg = theme.syn.special3 }, + NeotestTest = { fg = theme.ui.float.fg }, + NeotestUnknown = { fg = theme.syn.deprecated }, + NeotestWatching = { fg = theme.vcs.changed }, - SnacksPicker = { bg = config.transparent and theme.ui.none or theme.ui.bg }, - SnacksPickerTitle = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg }, - SnacksPickerBorder = { fg = theme.ui.none, bg = theme.ui.none }, - SnacksPickerNormal = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg }, - SnacksPickerMatch = { fg = theme.ui.fg }, - SnacksPickerCursor = { fg = theme.ui.bg, bg = theme.ui.bg }, - SnacksPickerPrompt = { fg = theme.ui.fg }, - SnacksPickerDim = { fg = theme.ui.fg_dim }, - SnacksInputIcon = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg }, - SnacksIndent = { fg = theme.ui.indent_line, nocombine = true }, - SnacksIndentChunk = { fg = theme.ui.active_indent_line, nocombine = true }, - SnacksIndentScope = { fg = theme.ui.active_indent_line, nocombine = true }, - SnacksPickerInputBorder = { fg = theme.ui.float.bg_border, bg = config.transparent and theme.ui.none or theme.ui.bg }, - SnacksPickerInputTitle = { fg = theme.ui.bg, bg = config.transparent and theme.ui.none or theme.ui.bg }, - SnacksPickerBoxTitle = { fg = theme.ui.bg, bg = config.transparent and theme.ui.none or theme.ui.bg }, - SnacksPickerSelected = { fg = theme.ui.bg }, - SnacksPickerPickWinCurrent = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg, bold = true }, - SnacksPickerPickWin = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg_search, bold = true }, + SnacksPicker = { bg = config.transparent and theme.ui.none or theme.ui.bg }, + SnacksPickerTitle = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg }, + SnacksPickerBorder = { fg = theme.ui.none, bg = theme.ui.none }, + SnacksPickerNormal = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg }, + SnacksPickerMatch = { fg = theme.ui.fg }, + SnacksPickerCursor = { fg = theme.ui.bg, bg = theme.ui.bg }, + SnacksPickerPrompt = { fg = theme.ui.fg }, + SnacksPickerDim = { fg = theme.ui.fg_dim }, + SnacksInputIcon = { fg = theme.ui.fg, bg = config.transparent and theme.ui.none or theme.ui.bg }, + SnacksIndent = { fg = theme.ui.indent_line, nocombine = true }, + SnacksIndentChunk = { fg = theme.ui.active_indent_line, nocombine = true }, + SnacksIndentScope = { fg = theme.ui.active_indent_line, nocombine = true }, + SnacksPickerInputBorder = { + fg = theme.ui.float.bg_border, + bg = config.transparent and theme.ui.none or theme.ui.bg, + }, + SnacksPickerInputTitle = { fg = theme.ui.bg, bg = config.transparent and theme.ui.none or theme.ui.bg }, + SnacksPickerBoxTitle = { fg = theme.ui.bg, bg = config.transparent and theme.ui.none or theme.ui.bg }, + SnacksPickerSelected = { fg = theme.ui.bg }, + SnacksPickerPickWinCurrent = { + fg = theme.ui.fg, + bg = config.transparent and theme.ui.none or theme.ui.bg, + bold = config.bold, + }, + SnacksPickerPickWin = { + fg = theme.ui.fg, + bg = config.transparent and theme.ui.none or theme.ui.bg_search, + bold = config.bold, + }, - BufferLineBackground = { fg = theme.ui.none, bg = theme.ui.none }, - BufferLineBuffer = { fg = theme.ui.none, bg = theme.ui.none }, - BufferLineBufferSelected = { bg = theme.ui.none }, - BufferLineBufferVisible = { bg = theme.ui.none }, - BufferLineCloseButton = { bg = theme.ui.none }, - BufferLineCloseButtonSelected = { bg = theme.ui.none }, - BufferLineCloseButtonVisible = { bg = theme.ui.none }, - BufferLineDuplicate = { bg = theme.ui.none }, - BufferLineDuplicateSelected = { bg = theme.ui.none }, - BufferLineDuplicateVisible = { bg = theme.ui.none }, - BufferLineError = { bg = theme.ui.none, sp = theme.ui.none }, - BufferLineErrorDiagnostic = { bg = theme.ui.none, sp = theme.ui.none }, - BufferLineErrorDiagnosticSelected = { bg = theme.ui.none, sp = theme.ui.none }, - BufferLineErrorDiagnosticVisible = { bg = theme.ui.none }, - BufferLineErrorSelected = { bg = theme.ui.none, sp = theme.ui.none }, - BufferLineErrorVisible = { bg = theme.ui.none }, - BufferLineFill = { bg = theme.ui.none }, - BufferLineHint = { sp = theme.ui.none, bg = theme.ui.none }, - BufferLineHintDiagnostic = { sp = theme.ui.none, bg = theme.ui.none }, - BufferLineHintDiagnosticSelected = { bg = theme.ui.none, sp = theme.ui.none }, - BufferLineHintDiagnosticVisible = { bg = theme.ui.none }, - BufferLineHintSelected = { bg = theme.ui.none, sp = theme.ui.none }, - BufferLineHintVisible = { bg = theme.ui.none }, - BufferLineInfo = { sp = theme.ui.none, bg = theme.ui.none }, - BufferLineInfoDiagnostic = { sp = theme.ui.none, bg = theme.ui.none }, - BufferLineInfoDiagnosticSelected = { sp = theme.ui.none, bg = theme.ui.none }, - BufferLineInfoDiagnosticVisible = { bg = theme.ui.none }, - BufferLineInfoSelected = { bg = theme.ui.none, sp = theme.ui.none }, - BufferLineInfoVisible = { bg = theme.ui.none }, - BufferLineIndicatorSelected = { bg = theme.ui.none }, - BufferLineModified = { bg = theme.ui.none }, - BufferLineModifiedSelected = { bg = theme.ui.none }, - BufferLineModifiedVisible = { bg = theme.ui.none }, - BufferLineNumbers = { bg = theme.ui.none }, - BufferLineNumbersSelected = { bg = theme.ui.none }, - BufferLineNumbersVisible = { bg = theme.ui.none }, - BufferLineOffsetSeparator = { bg = theme.ui.none }, - BufferLineSeparator = { bg = theme.ui.none }, - BufferLineSeparatorSelected = { bg = theme.ui.none }, - BufferLineSeparatorVisible = { bg = theme.ui.none }, - BufferLineTab = { bg = theme.ui.none }, - BufferLinePick = { bg = theme.ui.none }, - BufferLinePickSelected = { bg = theme.ui.none }, - BufferLineDevIconLua = { bg = theme.ui.none }, - BufferLineDevIconLuaSelected = { bg = theme.ui.none }, - BufferLineDevIconLuaVisible = { bg = theme.ui.none }, - BufferLineDevIconLuaInactive = { bg = theme.ui.none }, - BufferLinePickVisible = { bg = theme.ui.none }, - BufferLineIndicatorVisible = { bg = theme.ui.none }, - BufferLineTabClose = { bg = theme.ui.none }, - BufferLineTabSelected = { bg = theme.ui.none }, - BufferLineTabSeparator = { bg = theme.ui.none }, - BufferLineTabSeparatorSelected = { bg = theme.ui.none }, - BufferLineTruncMarker = { bg = theme.ui.none }, - BufferLineWarning = { bg = theme.ui.none }, - BufferLineWarningDiagnostic = { bg = theme.ui.none }, - BufferLineWarningDiagnosticSelected = { bg = theme.ui.none }, - BufferLineWarningDiagnosticVisible = { bg = theme.ui.none }, - BufferLineWarningSelected = { bg = theme.ui.none }, - BufferLineWarningVisible = { bg = theme.ui.none }, + BufferLineBackground = { fg = theme.ui.none, bg = theme.ui.none }, + BufferLineBuffer = { fg = theme.ui.none, bg = theme.ui.none }, + BufferLineBufferSelected = { bg = theme.ui.none }, + BufferLineBufferVisible = { bg = theme.ui.none }, + BufferLineCloseButton = { bg = theme.ui.none }, + BufferLineCloseButtonSelected = { bg = theme.ui.none }, + BufferLineCloseButtonVisible = { bg = theme.ui.none }, + BufferLineDuplicate = { bg = theme.ui.none }, + BufferLineDuplicateSelected = { bg = theme.ui.none }, + BufferLineDuplicateVisible = { bg = theme.ui.none }, + BufferLineError = { bg = theme.ui.none, sp = theme.ui.none }, + BufferLineErrorDiagnostic = { bg = theme.ui.none, sp = theme.ui.none }, + BufferLineErrorDiagnosticSelected = { bg = theme.ui.none, sp = theme.ui.none }, + BufferLineErrorDiagnosticVisible = { bg = theme.ui.none }, + BufferLineErrorSelected = { bg = theme.ui.none, sp = theme.ui.none }, + BufferLineErrorVisible = { bg = theme.ui.none }, + BufferLineFill = { bg = theme.ui.none }, + BufferLineHint = { sp = theme.ui.none, bg = theme.ui.none }, + BufferLineHintDiagnostic = { sp = theme.ui.none, bg = theme.ui.none }, + BufferLineHintDiagnosticSelected = { bg = theme.ui.none, sp = theme.ui.none }, + BufferLineHintDiagnosticVisible = { bg = theme.ui.none }, + BufferLineHintSelected = { bg = theme.ui.none, sp = theme.ui.none }, + BufferLineHintVisible = { bg = theme.ui.none }, + BufferLineInfo = { sp = theme.ui.none, bg = theme.ui.none }, + BufferLineInfoDiagnostic = { sp = theme.ui.none, bg = theme.ui.none }, + BufferLineInfoDiagnosticSelected = { sp = theme.ui.none, bg = theme.ui.none }, + BufferLineInfoDiagnosticVisible = { bg = theme.ui.none }, + BufferLineInfoSelected = { bg = theme.ui.none, sp = theme.ui.none }, + BufferLineInfoVisible = { bg = theme.ui.none }, + BufferLineIndicatorSelected = { bg = theme.ui.none }, + BufferLineModified = { bg = theme.ui.none }, + BufferLineModifiedSelected = { bg = theme.ui.none }, + BufferLineModifiedVisible = { bg = theme.ui.none }, + BufferLineNumbers = { bg = theme.ui.none }, + BufferLineNumbersSelected = { bg = theme.ui.none }, + BufferLineNumbersVisible = { bg = theme.ui.none }, + BufferLineOffsetSeparator = { bg = theme.ui.none }, + BufferLineSeparator = { bg = theme.ui.none }, + BufferLineSeparatorSelected = { bg = theme.ui.none }, + BufferLineSeparatorVisible = { bg = theme.ui.none }, + BufferLineTab = { bg = theme.ui.none }, + BufferLinePick = { bg = theme.ui.none }, + BufferLinePickSelected = { bg = theme.ui.none }, + BufferLineDevIconLua = { bg = theme.ui.none }, + BufferLineDevIconLuaSelected = { bg = theme.ui.none }, + BufferLineDevIconLuaVisible = { bg = theme.ui.none }, + BufferLineDevIconLuaInactive = { bg = theme.ui.none }, + BufferLinePickVisible = { bg = theme.ui.none }, + BufferLineIndicatorVisible = { bg = theme.ui.none }, + BufferLineTabClose = { bg = theme.ui.none }, + BufferLineTabSelected = { bg = theme.ui.none }, + BufferLineTabSeparator = { bg = theme.ui.none }, + BufferLineTabSeparatorSelected = { bg = theme.ui.none }, + BufferLineTruncMarker = { bg = theme.ui.none }, + BufferLineWarning = { bg = theme.ui.none }, + BufferLineWarningDiagnostic = { bg = theme.ui.none }, + BufferLineWarningDiagnosticSelected = { bg = theme.ui.none }, + BufferLineWarningDiagnosticVisible = { bg = theme.ui.none }, + BufferLineWarningSelected = { bg = theme.ui.none }, + BufferLineWarningVisible = { bg = theme.ui.none }, } end diff --git a/lua/kanso/highlights/syntax.lua b/lua/kanso/highlights/syntax.lua index 63052a7..390e710 100644 --- a/lua/kanso/highlights/syntax.lua +++ b/lua/kanso/highlights/syntax.lua @@ -9,8 +9,11 @@ function M.setup(colors, config) return { -- *Comment any comment - Comment = vim.tbl_extend("force", { fg = theme.syn.comment }, config.disableItalics and {} or config - .commentStyle), + Comment = vim.tbl_extend( + "force", + { fg = theme.syn.comment }, + config.disableItalics and {} or config.commentStyle + ), -- *Constant any constant Constant = { fg = theme.syn.constant }, @@ -38,8 +41,11 @@ function M.setup(colors, config) -- Operator "sizeof", "+", "*", etc. Operator = { fg = theme.syn.operator }, -- Keyword any other keyword - Keyword = vim.tbl_extend("force", { fg = theme.syn.keyword }, config.disableItalics and {} or config - .keywordStyle), + Keyword = vim.tbl_extend( + "force", + { fg = theme.syn.keyword }, + config.disableItalics and {} or config.keywordStyle + ), -- Exception try, catch, throw Exception = { fg = theme.syn.special2 }, @@ -67,7 +73,7 @@ function M.setup(colors, config) -- *Underlined text that stands out, HTML links Underlined = { fg = theme.syn.special1, underline = true }, - Bold = { bold = true }, + Bold = { bold = config.bold }, Italic = { italic = not config.disableItalics }, -- *Ignore left blank, hidden |hl-Ignore| @@ -77,7 +83,7 @@ function M.setup(colors, config) Error = { fg = theme.diag.error }, -- *Todo anything that needs extra attention; mostly the keywords TODO FIXME WARNING and XXX - Todo = { fg = theme.ui.fg_reverse, bg = theme.diag.info, bold = true }, + Todo = { fg = theme.ui.fg_reverse, bg = theme.diag.info, bold = config.bold }, qfLineNr = { link = "lineNr" }, qfFileName = { link = "Directory" }, diff --git a/lua/kanso/highlights/treesitter.lua b/lua/kanso/highlights/treesitter.lua index 965799f..583437d 100644 --- a/lua/kanso/highlights/treesitter.lua +++ b/lua/kanso/highlights/treesitter.lua @@ -77,8 +77,11 @@ function M.setup(colors, config) -- @keyword.modifier keywords defining type modifiers (e.g. `const`, `static`, `public`) -- @keyword.repeat keywords related to loops (e.g. `for`, `while`) -- @keyword.return keywords like `return` and `yield` - ["@keyword.return"] = vim.tbl_extend("force", { fg = theme.syn.special3 }, - config.disableItalics and {} or config.keywordStyle), + ["@keyword.return"] = vim.tbl_extend( + "force", + { fg = theme.syn.special3 }, + config.disableItalics and {} or config.keywordStyle + ), -- @keyword.debug keywords related to debugging -- @keyword.exception keywords related to exceptions (e.g. `throw`, `catch`) ["@keyword.exception"] = vim.tbl_extend("force", { fg = theme.syn.special3 }, config.statementStyle), @@ -102,15 +105,15 @@ function M.setup(colors, config) -- @comment.documentation comments documenting code -- -- @comment.error error-type comments (e.g. `ERROR`, `FIXME`, `DEPRECATED`) - ["@comment.error"] = { fg = theme.ui.fg, bg = theme.diag.error, bold = true }, + ["@comment.error"] = { fg = theme.ui.fg, bg = theme.diag.error, bold = config.bold }, -- @comment.warning warning-type comments (e.g. `WARNING`, `FIX`, `HACK`) - ["@comment.warning"] = { fg = theme.ui.fg_reverse, bg = theme.diag.warning, bold = true }, + ["@comment.warning"] = { fg = theme.ui.fg_reverse, bg = theme.diag.warning, bold = config.bold }, -- @comment.todo todo-type comments (e.g. `TODO`, `WIP`) -- @comment.note note-type comments (e.g. `NOTE`, `INFO`, `XXX`) - ["@comment.note"] = { fg = theme.ui.fg_reverse, bg = theme.diag.hint, bold = true }, + ["@comment.note"] = { fg = theme.ui.fg_reverse, bg = theme.diag.hint, bold = config.bold }, -- -- @markup.strong bold text - ["@markup.strong"] = { bold = true }, + ["@markup.strong"] = { bold = config.bold }, -- @markup.italic italic text ["@markup.italic"] = { italic = true }, -- @markup.strikethrough struck-through text diff --git a/lua/kanso/init.lua b/lua/kanso/init.lua index 1a0ed43..140c827 100644 --- a/lua/kanso/init.lua +++ b/lua/kanso/init.lua @@ -8,89 +8,90 @@ local M = {} --- default config ---@class KansoConfig M.config = { - undercurl = true, - commentStyle = { italic = true }, - functionStyle = {}, - keywordStyle = { italic = true }, - statementStyle = {}, - typeStyle = {}, - transparent = false, - dimInactive = false, - terminalColors = true, - disableItalics = false, - colors = { theme = { zen = {}, pearl = {}, ink = {}, all = {} }, palette = {} }, - ---@type fun(colors: KansoColorsSpec): table - overrides = function() - return {} - end, - ---@type { dark: string, light: string } - background = { dark = "ink", light = "pearl" }, - theme = "ink", - compile = false, + bold = true, + undercurl = true, + commentStyle = { italic = true }, + functionStyle = {}, + keywordStyle = { italic = true }, + statementStyle = {}, + typeStyle = {}, + transparent = false, + dimInactive = false, + terminalColors = true, + disableItalics = false, + colors = { theme = { zen = {}, pearl = {}, ink = {}, all = {} }, palette = {} }, + ---@type fun(colors: KansoColorsSpec): table + overrides = function() + return {} + end, + ---@type { dark: string, light: string } + background = { dark = "ink", light = "pearl" }, + theme = "ink", + compile = false, } local function check_config(config) - local err - return not err + local err + return not err end --- update global configuration with user settings ---@param config? KansoConfig user configuration function M.setup(config) - if check_config(config) then - M.config = vim.tbl_deep_extend("force", M.config, config or {}) - else - vim.notify("Kanso: Errors found while loading user config. Using default config.", vim.log.levels.ERROR) - end + if check_config(config) then + M.config = vim.tbl_deep_extend("force", M.config, config or {}) + else + vim.notify("Kanso: Errors found while loading user config. Using default config.", vim.log.levels.ERROR) + end end --- load the colorscheme ---@param theme? string function M.load(theme) - local utils = require("kanso.utils") + local utils = require("kanso.utils") - theme = theme or M.config.background[vim.o.background] or M.config.theme - M._CURRENT_THEME = theme + theme = theme or M.config.background[vim.o.background] or M.config.theme + M._CURRENT_THEME = theme - if vim.g.colors_name then - vim.cmd("hi clear") - end + if vim.g.colors_name then + vim.cmd("hi clear") + end - vim.g.colors_name = "kanso" - vim.o.termguicolors = true + vim.g.colors_name = "kanso" + vim.o.termguicolors = true - if M.config.compile then - if utils.load_compiled(theme) then - return - end + if M.config.compile then + if utils.load_compiled(theme) then + return + end - M.compile() - utils.load_compiled(theme) - else - local colors = require("kanso.colors").setup({ theme = theme, colors = M.config.colors }) - local highlights = require("kanso.highlights").setup(colors, M.config) - require("kanso.highlights").highlight(highlights, M.config.terminalColors and colors.theme.term or {}) - end + M.compile() + utils.load_compiled(theme) + else + local colors = require("kanso.colors").setup({ theme = theme, colors = M.config.colors }) + local highlights = require("kanso.highlights").setup(colors, M.config) + require("kanso.highlights").highlight(highlights, M.config.terminalColors and colors.theme.term or {}) + end end function M.compile() - for theme, _ in pairs(require("kanso.themes")) do - local colors = require("kanso.colors").setup({ theme = theme, colors = M.config.colors }) - local highlights = require("kanso.highlights").setup(colors, M.config) - require("kanso.utils").compile(theme, highlights, M.config.terminalColors and colors.theme.term or {}) - end + for theme, _ in pairs(require("kanso.themes")) do + local colors = require("kanso.colors").setup({ theme = theme, colors = M.config.colors }) + local highlights = require("kanso.highlights").setup(colors, M.config) + require("kanso.utils").compile(theme, highlights, M.config.terminalColors and colors.theme.term or {}) + end end vim.api.nvim_create_user_command("KansoCompile", function() - for mod, _ in pairs(package.loaded) do - if mod:match("^kanso%.") then - package.loaded[mod] = nil - end - end - M.compile() - vim.notify("Kanso: compiled successfully!", vim.log.levels.INFO) - M.load(M._CURRENT_THEME) - vim.api.nvim_exec_autocmds("ColorScheme", { modeline = false }) + for mod, _ in pairs(package.loaded) do + if mod:match("^kanso%.") then + package.loaded[mod] = nil + end + end + M.compile() + vim.notify("Kanso: compiled successfully!", vim.log.levels.INFO) + M.load(M._CURRENT_THEME) + vim.api.nvim_exec_autocmds("ColorScheme", { modeline = false }) end, {}) return M