Merge pull request #8 from KacperHemperek/main

Add option to disable bold styles across the theme
This commit is contained in:
Webhooked
2025-05-26 10:55:55 +02:00
committed by GitHub
7 changed files with 671 additions and 633 deletions
+1
View File
@@ -74,6 +74,7 @@ There is no need to call setup if you are ok with the defaults.
```lua ```lua
-- Default options: -- Default options:
require('kanso').setup({ require('kanso').setup({
bold = true, -- enable bold fonts
compile = false, -- enable compiling the colorscheme compile = false, -- enable compiling the colorscheme
undercurl = true, -- enable undercurls undercurl = true, -- enable undercurls
commentStyle = { italic = true }, commentStyle = { italic = true },
+40 -13
View File
@@ -11,9 +11,9 @@ function M.setup(colors, config)
-- ColorColumn Used for the columns set with 'colorcolumn'. -- ColorColumn Used for the columns set with 'colorcolumn'.
ColorColumn = { bg = theme.ui.bg_p1 }, ColorColumn = { bg = theme.ui.bg_p1 },
-- Conceal Placeholder characters substituted for concealed text (see 'conceallevel'). -- 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 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 Character under the cursor.
Cursor = { fg = theme.ui.cursor_fg, bg = theme.ui.cursor_bg }, Cursor = { fg = theme.ui.cursor_fg, bg = theme.ui.cursor_bg },
-- lCursor Character under the cursor when |language-mapping| is used (see 'guicursor'). -- 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. -- CursorLineFold Like FoldColumn when 'cursorline' is set for the cursor line.
-- CursorLineSign Like SignColumn 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 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 '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 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 Separator for scrolled messages |msgsep|.
MsgSeparator = { bg = vim.o.cmdheight == 0 and theme.ui.bg or theme.ui.bg_m3 }, MsgSeparator = { bg = vim.o.cmdheight == 0 and theme.ui.bg or theme.ui.bg_m3 },
-- MoreMsg |more-prompt| -- MoreMsg |more-prompt|
@@ -78,9 +78,16 @@ function M.setup(colors, config)
-- NormalFloat Normal text in floating windows. -- NormalFloat Normal text in floating windows.
NormalFloat = { fg = theme.ui.float.fg, bg = config.transparent and theme.ui.none or theme.ui.float.bg }, NormalFloat = { fg = theme.ui.float.fg, bg = config.transparent and theme.ui.none or theme.ui.float.bg },
-- FloatBorder Border of floating windows. -- 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 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 Footer of floating windows.
FloatFooter = { fg = theme.ui.nontext, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border }, 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. -- 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 Tab pages line, where there are no labels.
TabLineFill = { bg = theme.ui.none }, TabLineFill = { bg = theme.ui.none },
-- TabLineSel Tab pages line, active tab page label. -- 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 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 Visual mode selection.
Visual = { bg = theme.ui.bg_visual }, Visual = { bg = theme.ui.bg_visual },
-- VisualNOS Visual mode selection when vim is "Not Owning the Selection". -- VisualNOS Visual mode selection when vim is "Not Owning the Selection".
@@ -177,10 +188,26 @@ function M.setup(colors, config)
DiagnosticVirtualTextInfo = { link = "DiagnosticInfo" }, DiagnosticVirtualTextInfo = { link = "DiagnosticInfo" },
DiagnosticVirtualTextHint = { link = "DiagnosticHint" }, DiagnosticVirtualTextHint = { link = "DiagnosticHint" },
DiagnosticUnderlineError = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.error }, DiagnosticUnderlineError = {
DiagnosticUnderlineWarn = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.warning }, undercurl = config.undercurl,
DiagnosticUnderlineInfo = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.info }, underline = not config.undercurl,
DiagnosticUnderlineHint = { undercurl = config.undercurl, underline = not config.undercurl, sp = theme.diag.hint }, 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 }, LspSignatureActiveParameter = { fg = theme.diag.warning },
LspCodeLens = { fg = theme.syn.comment }, LspCodeLens = { fg = theme.syn.comment },
+1 -1
View File
@@ -52,7 +52,7 @@ function M.setup(colors, config)
["@lsp.typemod.variable.injected"] = { link = "@variable" }, ["@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 end
+35 -35
View File
@@ -51,7 +51,7 @@ function M.setup(colors, config)
-- NvimTree -- NvimTree
NvimTreeNormal = { link = "Normal" }, NvimTreeNormal = { link = "Normal" },
NvimTreeNormalNC = { link = "NvimTreeNormal" }, NvimTreeNormalNC = { link = "NvimTreeNormal" },
NvimTreeRootFolder = { fg = theme.syn.identifier, bold = true }, NvimTreeRootFolder = { fg = theme.syn.identifier, bold = config.bold },
NvimTreeGitDirty = { fg = theme.vcs.changed }, NvimTreeGitDirty = { fg = theme.vcs.changed },
NvimTreeGitNew = { fg = theme.vcs.added }, NvimTreeGitNew = { fg = theme.vcs.added },
NvimTreeGitDeleted = { fg = theme.vcs.removed }, NvimTreeGitDeleted = { fg = theme.vcs.removed },
@@ -61,20 +61,20 @@ function M.setup(colors, config)
NvimTreeImageFile = { fg = theme.syn.special2 }, NvimTreeImageFile = { fg = theme.syn.special2 },
NvimTreeSymlink = { link = "Type" }, NvimTreeSymlink = { link = "Type" },
NvimTreeFolderName = { link = "Directory" }, NvimTreeFolderName = { link = "Directory" },
NvimTreeExecFile = { fg = theme.syn.string, bold = true }, NvimTreeExecFile = { fg = theme.syn.string, bold = config.bold },
NvimTreeOpenedFile = { fg = theme.syn.special1, italic = not config.disableItalics }, NvimTreeOpenedFile = { fg = theme.syn.special1, italic = not config.disableItalics },
NvimTreeWinSeparator = { link = "WinSeparator" }, NvimTreeWinSeparator = { link = "WinSeparator" },
NvimTreeWindowPicker = { NvimTreeWindowPicker = {
bg = config.transparent and theme.ui.none or theme.ui.bg_m1, bg = config.transparent and theme.ui.none or theme.ui.bg_m1,
fg = theme.syn.special1, fg = theme.syn.special1,
bold = true, bold = config.bold,
}, },
-- NeoTree -- NeoTree
NeoTreeTabInactive = { fg = theme.ui.special, bg = config.transparent and theme.ui.none or theme.ui.bg }, NeoTreeTabInactive = { fg = theme.ui.special, bg = config.transparent and theme.ui.none or theme.ui.bg },
NeoTreeTabActive = { NeoTreeTabActive = {
fg = theme.ui.fg_dim, fg = theme.ui.fg_dim,
bg = config.transparent and theme.ui.none or theme.ui.bg_p1, bg = config.transparent and theme.ui.none or theme.ui.bg_p1,
bold = true, bold = config.bold,
}, },
NeoTreeTabSeparatorInactive = { NeoTreeTabSeparatorInactive = {
fg = theme.ui.special, fg = theme.ui.special,
@@ -84,7 +84,7 @@ function M.setup(colors, config)
fg = theme.ui.fg_dim, fg = theme.ui.fg_dim,
bg = config.transparent and theme.ui.none or theme.ui.bg_p1, bg = config.transparent and theme.ui.none or theme.ui.bg_p1,
}, },
NeoTreeRootName = { fg = theme.syn.identifier, bold = true }, NeoTreeRootName = { fg = theme.syn.identifier, bold = config.bold },
NeoTreeModified = { link = "String" }, NeoTreeModified = { link = "String" },
NeoTreeGitModified = { fg = theme.vcs.changed }, NeoTreeGitModified = { fg = theme.vcs.changed },
NeoTreeGitAdded = { fg = theme.vcs.added }, NeoTreeGitAdded = { fg = theme.vcs.added },
@@ -130,7 +130,7 @@ function M.setup(colors, config)
DapUIScope = { link = "Special" }, -- guifg=#00F1F5" DapUIScope = { link = "Special" }, -- guifg=#00F1F5"
DapUIType = { link = "Type" }, -- guifg=#D484FF" DapUIType = { link = "Type" }, -- guifg=#D484FF"
-- DapUIValue = { link = "Normal" }, -- DapUIValue = { link = "Normal" },
DapUIModifiedValue = { fg = theme.syn.special1, bold = true }, -- guifg=#00F1F5 gui=bold" DapUIModifiedValue = { fg = theme.syn.special1, bold = config.bold }, -- guifg=#00F1F5 gui=bold"
DapUIDecoration = { fg = theme.ui.float.fg_border }, -- guifg=#00F1F5" DapUIDecoration = { fg = theme.ui.float.fg_border }, -- guifg=#00F1F5"
DapUIThread = { fg = theme.syn.identifier }, --guifg=#A9FF68" DapUIThread = { fg = theme.syn.identifier }, --guifg=#A9FF68"
DapUIStoppedThread = { fg = theme.syn.special1 }, --guifg=#00f1f5" DapUIStoppedThread = { fg = theme.syn.special1 }, --guifg=#00f1f5"
@@ -143,7 +143,7 @@ function M.setup(colors, config)
DapUIWatchesError = { fg = theme.diag.error }, --guifg=#F70067" DapUIWatchesError = { fg = theme.diag.error }, --guifg=#F70067"
DapUIBreakpointsPath = { link = "Directory" }, --guifg=#00F1F5" DapUIBreakpointsPath = { link = "Directory" }, --guifg=#00F1F5"
DapUIBreakpointsInfo = { fg = theme.diag.info }, --guifg=#A9FF68" DapUIBreakpointsInfo = { fg = theme.diag.info }, --guifg=#A9FF68"
DapUIBreakpointsCurrentLine = { fg = theme.syn.identifier, bold = true }, --guifg=#A9FF68 gui=bold" DapUIBreakpointsCurrentLine = { fg = theme.syn.identifier, bold = config.bold }, --guifg=#A9FF68 gui=bold"
-- DapUIBreakpointsLine = {}, -- DapUILineNumber" -- DapUIBreakpointsLine = {}, -- DapUILineNumber"
DapUIBreakpointsDisabledLine = { link = "Comment" }, --guifg=#424242" DapUIBreakpointsDisabledLine = { link = "Comment" }, --guifg=#424242"
-- DapUICurrentFrameName = {}, -- DapUIBreakpointsCurrentLine" -- DapUICurrentFrameName = {}, -- DapUIBreakpointsCurrentLine"
@@ -375,18 +375,18 @@ function M.setup(colors, config)
MiniFilesTitle = { MiniFilesTitle = {
fg = theme.ui.special, fg = theme.ui.special,
bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border,
bold = true, bold = config.bold,
}, },
MiniFilesTitleFocused = { MiniFilesTitleFocused = {
fg = theme.ui.fg, fg = theme.ui.fg,
bg = config.transparent and theme.ui.none or theme.ui.float.bg_border, bg = config.transparent and theme.ui.none or theme.ui.float.bg_border,
bold = true, bold = config.bold,
}, },
MiniHipatternsFixme = { fg = theme.ui.bg, bg = theme.diag.error, bold = true }, MiniHipatternsFixme = { fg = theme.ui.bg, bg = theme.diag.error, bold = config.bold },
MiniHipatternsHack = { fg = theme.ui.bg, bg = theme.diag.warning, bold = true }, MiniHipatternsHack = { fg = theme.ui.bg, bg = theme.diag.warning, bold = config.bold },
MiniHipatternsNote = { fg = theme.ui.bg, bg = theme.diag.info, bold = true }, MiniHipatternsNote = { fg = theme.ui.bg, bg = theme.diag.info, bold = config.bold },
MiniHipatternsTodo = { fg = theme.ui.bg, bg = theme.diag.hint, bold = true }, MiniHipatternsTodo = { fg = theme.ui.bg, bg = theme.diag.hint, bold = config.bold },
MiniIconsAzure = { fg = theme.syn.special1 }, MiniIconsAzure = { fg = theme.syn.special1 },
MiniIconsBlue = { fg = theme.syn.fun }, MiniIconsBlue = { fg = theme.syn.fun },
@@ -404,9 +404,9 @@ function M.setup(colors, config)
MiniJump = { link = "SpellRare" }, MiniJump = { link = "SpellRare" },
MiniJump2dDim = { link = "Comment" }, MiniJump2dDim = { link = "Comment" },
MiniJump2dSpot = { fg = theme.syn.constant, bold = true, nocombine = true }, MiniJump2dSpot = { fg = theme.syn.constant, bold = config.bold, nocombine = true },
MiniJump2dSpotAhead = { fg = theme.diag.hint, bg = theme.ui.bg_dim, nocombine = true }, MiniJump2dSpotAhead = { fg = theme.diag.hint, bg = theme.ui.bg_dim, nocombine = true },
MiniJump2dSpotUnique = { fg = theme.syn.special1, bold = true, nocombine = true }, MiniJump2dSpotUnique = { fg = theme.syn.special1, bold = config.bold, nocombine = true },
MiniMapNormal = { link = "NormalFloat" }, MiniMapNormal = { link = "NormalFloat" },
MiniMapSymbolCount = { link = "Special" }, MiniMapSymbolCount = { link = "Special" },
@@ -447,41 +447,41 @@ function M.setup(colors, config)
MiniStatuslineFileinfo = { 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 }, MiniStatuslineFilename = { fg = theme.ui.fg_dim, bg = config.transparent and theme.ui.none or theme.ui.bg_dim },
MiniStatuslineInactive = { link = "StatusLineNC" }, MiniStatuslineInactive = { link = "StatusLineNC" },
MiniStatuslineModeCommand = { fg = theme.ui.bg, bg = theme.syn.operator, bold = true }, MiniStatuslineModeCommand = { fg = theme.ui.bg, bg = theme.syn.operator, bold = config.bold },
MiniStatuslineModeInsert = { fg = theme.ui.bg, bg = theme.diag.ok, bold = true }, MiniStatuslineModeInsert = { fg = theme.ui.bg, bg = theme.diag.ok, bold = config.bold },
MiniStatuslineModeNormal = { fg = theme.ui.bg_m3, bg = theme.syn.fun, bold = true }, MiniStatuslineModeNormal = { fg = theme.ui.bg_m3, bg = theme.syn.fun, bold = config.bold },
MiniStatuslineModeOther = { fg = theme.ui.bg, bg = theme.syn.type, bold = true }, MiniStatuslineModeOther = { fg = theme.ui.bg, bg = theme.syn.type, bold = config.bold },
MiniStatuslineModeReplace = { fg = theme.ui.bg, bg = theme.syn.constant, bold = true }, MiniStatuslineModeReplace = { fg = theme.ui.bg, bg = theme.syn.constant, bold = config.bold },
MiniStatuslineModeVisual = { fg = theme.ui.bg, bg = theme.syn.keyword, bold = true }, MiniStatuslineModeVisual = { fg = theme.ui.bg, bg = theme.syn.keyword, bold = config.bold },
MiniSurround = { link = "IncSearch" }, MiniSurround = { link = "IncSearch" },
MiniTablineCurrent = { MiniTablineCurrent = {
fg = theme.ui.fg_dim, fg = theme.ui.fg_dim,
bg = config.transparent and theme.ui.none or theme.ui.bg_p1, bg = config.transparent and theme.ui.none or theme.ui.bg_p1,
bold = true, bold = config.bold,
}, },
MiniTablineFill = { link = "TabLineFill" }, MiniTablineFill = { link = "TabLineFill" },
MiniTablineHidden = { fg = theme.ui.special, bg = theme.ui.bg_m3 }, MiniTablineHidden = { fg = theme.ui.special, bg = theme.ui.bg_m3 },
MiniTablineModifiedCurrent = { fg = theme.ui.bg_p1, bg = theme.ui.fg_dim, bold = true }, MiniTablineModifiedCurrent = { fg = theme.ui.bg_p1, bg = theme.ui.fg_dim, bold = config.bold },
MiniTablineModifiedHidden = { fg = theme.ui.bg_m3, bg = theme.ui.special }, MiniTablineModifiedHidden = { fg = theme.ui.bg_m3, bg = theme.ui.special },
MiniTablineModifiedVisible = { fg = theme.ui.bg_m3, bg = theme.ui.special, bold = true }, MiniTablineModifiedVisible = { fg = theme.ui.bg_m3, bg = theme.ui.special, bold = config.bold },
MiniTablineTabpagesection = { fg = theme.ui.fg, bg = theme.ui.bg_search, bold = true }, MiniTablineTabpagesection = { fg = theme.ui.fg, bg = theme.ui.bg_search, bold = config.bold },
MiniTablineVisible = { fg = theme.ui.special, bg = theme.ui.bg_m3, bold = true }, MiniTablineVisible = { fg = theme.ui.special, bg = theme.ui.bg_m3, bold = config.bold },
MiniTestEmphasis = { bold = true }, MiniTestEmphasis = { bold = config.bold },
MiniTestFail = { fg = theme.diag.error, bold = true }, MiniTestFail = { fg = theme.diag.error, bold = config.bold },
MiniTestPass = { fg = theme.diag.ok, bold = true }, MiniTestPass = { fg = theme.diag.ok, bold = config.bold },
MiniTrailspace = { bg = theme.vcs.removed }, MiniTrailspace = { bg = theme.vcs.removed },
NeotestAdapterName = { fg = theme.syn.special3 }, NeotestAdapterName = { fg = theme.syn.special3 },
NeotestDir = { fg = theme.syn.fun }, NeotestDir = { fg = theme.syn.fun },
NeotestExpandMarker = { fg = theme.syn.punct, bold = true }, NeotestExpandMarker = { fg = theme.syn.punct, bold = config.bold },
NeotestFailed = { fg = theme.diag.error }, NeotestFailed = { fg = theme.diag.error },
NeotestFile = { fg = theme.syn.fun }, NeotestFile = { fg = theme.syn.fun },
NeotestFocused = { bold = true, underline = true }, NeotestFocused = { bold = config.bold, underline = true },
NeotestIndent = { fg = theme.ui.special, bold = true }, NeotestIndent = { fg = theme.ui.special, bold = config.bold },
NeotestMarked = { fg = theme.diag.warning, italic = not config.disableItalics }, NeotestMarked = { fg = theme.diag.warning, italic = not config.disableItalics },
NeotestNamespace = { fg = theme.syn.fun }, NeotestNamespace = { fg = theme.syn.fun },
NeotestPassed = { fg = theme.diag.ok }, NeotestPassed = { fg = theme.diag.ok },
@@ -510,17 +510,17 @@ function M.setup(colors, config)
bg = config.transparent and theme.ui.none or theme.ui.bg, 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 }, SnacksPickerInputTitle = { fg = theme.ui.bg, bg = config.transparent and theme.ui.none or theme.ui.bg },
SnacksPickerBoxTitle = { fg = theme.ui.fg, 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 }, SnacksPickerSelected = { fg = theme.ui.bg },
SnacksPickerPickWinCurrent = { SnacksPickerPickWinCurrent = {
fg = theme.ui.fg, fg = theme.ui.fg,
bg = config.transparent and theme.ui.none or theme.ui.bg, bg = config.transparent and theme.ui.none or theme.ui.bg,
bold = true, bold = config.bold,
}, },
SnacksPickerPickWin = { SnacksPickerPickWin = {
fg = theme.ui.fg, fg = theme.ui.fg,
bg = config.transparent and theme.ui.none or theme.ui.bg_search, bg = config.transparent and theme.ui.none or theme.ui.bg_search,
bold = true, bold = config.bold,
}, },
BufferLineBackground = { fg = theme.ui.none, bg = theme.ui.none }, BufferLineBackground = { fg = theme.ui.none, bg = theme.ui.none },
+12 -6
View File
@@ -9,8 +9,11 @@ function M.setup(colors, config)
return { return {
-- *Comment any comment -- *Comment any comment
Comment = vim.tbl_extend("force", { fg = theme.syn.comment }, config.disableItalics and {} or config Comment = vim.tbl_extend(
.commentStyle), "force",
{ fg = theme.syn.comment },
config.disableItalics and {} or config.commentStyle
),
-- *Constant any constant -- *Constant any constant
Constant = { fg = theme.syn.constant }, Constant = { fg = theme.syn.constant },
@@ -38,8 +41,11 @@ function M.setup(colors, config)
-- Operator "sizeof", "+", "*", etc. -- Operator "sizeof", "+", "*", etc.
Operator = { fg = theme.syn.operator }, Operator = { fg = theme.syn.operator },
-- Keyword any other keyword -- Keyword any other keyword
Keyword = vim.tbl_extend("force", { fg = theme.syn.keyword }, config.disableItalics and {} or config Keyword = vim.tbl_extend(
.keywordStyle), "force",
{ fg = theme.syn.keyword },
config.disableItalics and {} or config.keywordStyle
),
-- Exception try, catch, throw -- Exception try, catch, throw
Exception = { fg = theme.syn.special2 }, Exception = { fg = theme.syn.special2 },
@@ -67,7 +73,7 @@ function M.setup(colors, config)
-- *Underlined text that stands out, HTML links -- *Underlined text that stands out, HTML links
Underlined = { fg = theme.syn.special1, underline = true }, Underlined = { fg = theme.syn.special1, underline = true },
Bold = { bold = true }, Bold = { bold = config.bold },
Italic = { italic = not config.disableItalics }, Italic = { italic = not config.disableItalics },
-- *Ignore left blank, hidden |hl-Ignore| -- *Ignore left blank, hidden |hl-Ignore|
@@ -77,7 +83,7 @@ function M.setup(colors, config)
Error = { fg = theme.diag.error }, Error = { fg = theme.diag.error },
-- *Todo anything that needs extra attention; mostly the keywords TODO FIXME WARNING and XXX -- *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" }, qfLineNr = { link = "lineNr" },
qfFileName = { link = "Directory" }, qfFileName = { link = "Directory" },
+9 -6
View File
@@ -77,8 +77,11 @@ function M.setup(colors, config)
-- @keyword.modifier keywords defining type modifiers (e.g. `const`, `static`, `public`) -- @keyword.modifier keywords defining type modifiers (e.g. `const`, `static`, `public`)
-- @keyword.repeat keywords related to loops (e.g. `for`, `while`) -- @keyword.repeat keywords related to loops (e.g. `for`, `while`)
-- @keyword.return keywords like `return` and `yield` -- @keyword.return keywords like `return` and `yield`
["@keyword.return"] = vim.tbl_extend("force", { fg = theme.syn.special3 }, ["@keyword.return"] = vim.tbl_extend(
config.disableItalics and {} or config.keywordStyle), "force",
{ fg = theme.syn.special3 },
config.disableItalics and {} or config.keywordStyle
),
-- @keyword.debug keywords related to debugging -- @keyword.debug keywords related to debugging
-- @keyword.exception keywords related to exceptions (e.g. `throw`, `catch`) -- @keyword.exception keywords related to exceptions (e.g. `throw`, `catch`)
["@keyword.exception"] = vim.tbl_extend("force", { fg = theme.syn.special3 }, config.statementStyle), ["@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.documentation comments documenting code
-- --
-- @comment.error error-type comments (e.g. `ERROR`, `FIXME`, `DEPRECATED`) -- @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 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.todo todo-type comments (e.g. `TODO`, `WIP`)
-- @comment.note note-type comments (e.g. `NOTE`, `INFO`, `XXX`) -- @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 text
["@markup.strong"] = { bold = true }, ["@markup.strong"] = { bold = config.bold },
-- @markup.italic italic text -- @markup.italic italic text
["@markup.italic"] = { italic = true }, ["@markup.italic"] = { italic = true },
-- @markup.strikethrough struck-through text -- @markup.strikethrough struck-through text
+1
View File
@@ -8,6 +8,7 @@ local M = {}
--- default config --- default config
---@class KansoConfig ---@class KansoConfig
M.config = { M.config = {
bold = true,
undercurl = true, undercurl = true,
commentStyle = { italic = true }, commentStyle = { italic = true },
functionStyle = {}, functionStyle = {},