local custom_highlights = function(C) return { HopNextKey = { bg = C.text, fg = C.base, style = { "bold", "underline" } }, HopNextKey1 = { bg = C.text, fg = C.base, style = { "bold" } }, HopNextKey2 = { bg = C.text, fg = C.base, style = { "bold", "italic" } }, DiagnosticUnderlineError = { style = { "undercurl" } }, DiagnosticUnderlineWarn = { style = { "undercurl" } }, DiagnosticUnderlineInfo = { style = { "undercurl" } }, DiagnosticUnderlineHint = { style = { "undercurl" } }, DiagnosticUnderlineOk = { style = { "undercurl" } }, -- Function = { fg = C.blue, style = { "bold" } }, -- Keyword = { fg = C.black, style = { "italic" } }, Type = { fg = C.text }, -- -- syntax Constant = { fg = C.text }, String = { fg = C.text }, Character = { fg = C.text }, Number = { fg = C.text }, Float = { fg = C.text }, Boolean = { fg = C.text }, Identifier = { fg = C.text }, Function = { fg = C.text }, Statement = { fg = C.text }, Conditional = { fg = C.text }, Repeat = { fg = C.text }, Label = { fg = C.text }, Operator = { fg = C.text }, Keyword = { fg = C.text }, Exception = { fg = C.text }, PreProc = { fg = C.pink }, Include = { fg = C.pink }, Define = { fg = C.pink }, Macro = { fg = C.pink }, PreCondit = { fg = C.pink }, StorageClass = { fg = C.text }, Structure = { fg = C.text }, Special = { fg = C.text }, Type = { fg = C.text }, Typedef = { fg = C.text }, SpecialChar = { fg = C.text }, Tag = { fg = C.text }, Delimiter = { fg = C.text }, Debug = { fg = C.text }, -- Underlined = { style = { "underline" } }, -- (preferred) text that stands out, HTML links -- Bold = { style = { "bold" } }, -- Italic = { style = { "italic" } }, -- ("Ignore", below, may be invisible...) -- Ignore = { }, -- (preferred) left blank, hidden |hl-Ignore| -- Error = { fg = C.red }, -- (preferred) any erroneous construct -- Todo = { bg = C.flamingo, fg = C.base, style = { "bold" } }, -- (preferred) anything that needs extra attention; mostly the keywords TODO FIXME and XXX -- qfLineNr = { fg = C.yellow }, -- qfFileName = { fg = C.blue }, -- htmlH1 = { fg = C.pink, style = { "bold" } }, -- htmlH2 = { fg = C.blue, style = { "bold" } }, -- -- mkdHeading = { fg = C.peach, style = { "bold" } }, -- -- mkdCode = { bg = C.terminal_black, fg = C.text }, -- mkdCodeDelimiter = { bg = C.base, fg = C.text }, -- mkdCodeStart = { fg = C.flamingo, style = { "bold" } }, -- mkdCodeEnd = { fg = C.flamingo, style = { "bold" } }, -- -- mkdLink = { fg = C.blue, style = { "underline" } }, -- -- -- debugging -- debugPC = { bg = O.transparent_background and C.none or C.crust }, -- used for highlighting the current line in terminal-debug -- debugBreakpoint = { bg = C.base, fg = C.overlay0 }, -- used for breakpoint colors in terminal-debug -- -- illuminate -- illuminatedWord = { bg = C.surface1 }, -- illuminatedCurWord = { bg = C.surface1 }, -- -- diff -- diffAdded = { fg = C.green }, -- diffRemoved = { fg = C.red }, -- diffChanged = { fg = C.blue }, -- diffOldFile = { fg = C.yellow }, -- diffNewFile = { fg = C.peach }, -- diffFile = { fg = C.blue }, -- diffLine = { fg = C.overlay0 }, -- diffIndexLine = { fg = C.teal }, -- DiffAdd = { bg = U.darken(C.green, 0.18, C.base) }, -- diff mode: Added line |diff.txt| -- DiffChange = { bg = U.darken(C.blue, 0.07, C.base) }, -- diff mode: Changed line |diff.txt| -- DiffDelete = { bg = U.darken(C.red, 0.18, C.base) }, -- diff mode: Deleted line |diff.txt| -- DiffText = { bg = U.darken(C.blue, 0.30, C.base) }, -- diff mode: Changed text within a changed line |diff.txt| -- -- NeoVim -- healthError = { fg = C.red }, -- healthSuccess = { fg = C.teal }, -- healthWarning = { fg = C.yellow }, -- -- misc -- -- -- glyphs -- GlyphPalette1 = { fg = C.red }, -- GlyphPalette2 = { fg = C.teal }, -- GlyphPalette3 = { fg = C.yellow }, -- GlyphPalette4 = { fg = C.blue }, -- GlyphPalette6 = { fg = C.teal }, -- GlyphPalette7 = { fg = C.text }, -- GlyphPalette9 = { fg = C.red }, -- -- -- rainbow -- rainbow1 = { fg = C.red }, -- rainbow2 = { fg = C.peach }, -- rainbow3 = { fg = C.yellow }, -- rainbow4 = { fg = C.green }, -- rainbow5 = { fg = C.sapphire }, -- rainbow6 = { fg = C.lavender }, -- -- -- csv -- csvCol0 = { fg = C.red }, -- csvCol1 = { fg = C.peach }, -- csvCol2 = { fg = C.yellow }, -- csvCol3 = { fg = C.green }, -- csvCol4 = { fg = C.sky }, -- csvCol5 = { fg = C.blue }, -- csvCol6 = { fg = C.lavender }, -- csvCol7 = { fg = C.mauve }, -- csvCol8 = { fg = C.pink }, } end return custom_highlights