local base = { Normal = { fg = C.fg, bg = C.bg }, NormalNC = { fg = C.fg, bg = C.black }, Comment = { fg = C.grey_2, bg = C.none }, Constant = { fg = C.yellow, bg = C.none }, String = { fg = C.green, bg = C.none }, Character = { fg = C.green, bg = C.none }, Number = { fg = C.orange, bg = C.none }, Boolean = { fg = C.blue, bg = C.none }, Float = { fg = C.yellow, bg = C.none }, Identifier = { fg = C.blue, bg = C.none }, Function = { fg = C.yellow, bg = C.none }, Statement = { fg = C.purple, bg = C.none }, Conditional = { fg = C.purple_1, bg = C.none }, Repeat = { fg = C.purple, bg = C.none }, Label = { fg = C.blue, bg = C.none }, Operator = { fg = C.purple, bg = C.none }, Keyword = { fg = C.purple, bg = C.none }, Exception = { fg = C.purple, bg = C.none }, Preproc = { fg = C.yellow, bg = C.none }, Include = { fg = C.purple, bg = C.none }, Define = { fg = C.purple, bg = C.none }, Title = { fg = C.cyan, bg = C.none }, Macro = { fg = C.purple, bg = C.none }, PreCondit = { fg = C.blue, bg = C.none }, Type = { fg = C.blue, bg = C.none }, StorageClass = { fg = C.blue, bg = C.none }, Structure = { fg = C.yellow, bg = C.none }, Typedef = { fg = C.yellow, bg = C.none }, Special = { fg = C.blue, bg = C.none }, SpecialComment = { fg = C.grey, bg = C.none }, Error = { fg = C.red, bg = C.none }, Todo = { fg = C.purple, bg = C.none }, Underlined = { fg = C.cyan, bg = C.none }, Cursor = { fg = C.none, bg = C.none }, ColorColumn = { fg = C.none, bg = C.grey_4 }, CursorLineNr = { fg = C.fg, bg = C.none }, Conceal = { fg = C.grey, bg = C.none }, CursorColumn = { fg = C.none, bg = C.grey_4 }, CursorLine = { fg = C.none, bg = C.grey_8 }, Directory = { fg = C.blue, bg = C.none }, DiffAdd = { fg = C.grey_3, bg = C.green }, DiffChange = { fg = C.yellow, bg = C.none }, DiffDelete = { fg = C.grey_3, bg = C.red }, DiffText = { fg = C.grey_3, bg = C.yellow }, ErrorMsg = { fg = C.red, bg = C.none }, WinSeparator = { fg = C.grey_4, bg = C.none }, Folded = { fg = C.grey, bg = C.none }, FoldColumn = { fg = C.none, bg = C.none }, IncSearch = { fg = C.yellow, bg = C.grey }, LineNr = { fg = C.grey_1, bg = C.none }, NonText = { fg = C.grey_1, bg = C.none }, Pmenu = { fg = C.fg, bg = C.bg }, PmenuSel = { fg = C.none, bg = C.grey_4 }, PmenuSbar = { fg = C.none, bg = C.grey_3 }, PmenuThumb = { fg = C.none, bg = C.fg }, Question = { fg = C.purple, bg = C.none }, QuickFixLine = { fg = C.grey_3, bg = C.yellow }, Search = { fg = C.grey_3, bg = C.yellow }, SignColumn = { fg = C.none, bg = C.none }, SpecialKey = { fg = C.grey_1, bg = C.none }, SpellBad = { undercurl = true }, SpellCap = { undercurl = true }, SpellLocal = { undercurl = true }, SpellRare = { undercurl = true }, StatusLine = { fg = C.fg, bg = C.grey_4 }, StatusLineNC = { fg = C.grey, bg = C.none }, StatusLineTerm = { fg = C.fg, bg = C.grey_4 }, StatusLineTermNC = { fg = C.grey_4, bg = C.none }, WinBar = { fg = C.grey_2, bg = C.bg }, WinBarNC = { fg = C.grey, bg = C.black }, TabLine = { fg = C.grey, bg = C.none }, TabLineSel = { fg = C.fg, bg = C.none }, TabLineFill = { fg = C.none, bg = C.grey_3 }, Terminal = { fg = C.fg, bg = C.grey_3 }, Visual = { fg = C.none, bg = C.grey_5 }, VisualNOS = { fg = C.grey_5, bg = C.none }, WarningMsg = { fg = C.yellow, bg = C.none }, WildMenu = { fg = C.grey_3, bg = C.blue }, EndOfBuffer = { fg = C.bg, bg = C.none }, FloatBorder = { fg = C.grey_6, bg = C.bg }, MatchParen = { fg = C.none, bg = C.grey_5 }, } return base