aboutsummaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
authorEllison Leão <ellisonleao@gmail.com>2021-02-24 11:38:07 -0300
committerEllison Leão <ellisonleao@gmail.com>2021-02-24 11:38:07 -0300
commit2f276d3461421974d861e95623ae653796f7ff4f (patch)
tree5222ba2e5890ab032df257c871da2eb572b72a8c /lua
parentbe9a2c3c20ec760a12d85373ccfbc4fa4fe58c26 (diff)
parent33e0dfaba8944e428dfe55f68381c607d87dce9a (diff)
downloadgruvbox-2f276d3461421974d861e95623ae653796f7ff4f.tar.gz
gruvbox-2f276d3461421974d861e95623ae653796f7ff4f.tar.xz
Merge branch 'lush' into main
* lush: adding terminal_color_* #8 adding more plugin support changed gruvbox lua module namespace adding more highlight groups initial changes on moving to lush.nvim
Diffstat (limited to 'lua')
-rw-r--r--lua/gruvbox.lua841
-rw-r--r--lua/gruvbox/init.lua985
-rw-r--r--lua/gruvbox/palette.lua41
3 files changed, 985 insertions, 882 deletions
diff --git a/lua/gruvbox.lua b/lua/gruvbox.lua
deleted file mode 100644
index 1fa7b62..0000000
--- a/lua/gruvbox.lua
+++ /dev/null
@@ -1,841 +0,0 @@
-local Color, colors, Group, groups, styles = require("colorbuddy").setup()
-local palette = require("gruvbox.palette")
-
-for k, item in pairs(palette) do
- Color.new(k, item)
-end
-
--- options (dark mode by default)
-local bg0 = colors.dark0
-local bg1 = colors.dark1
-local bg2 = colors.dark2
-local bg3 = colors.dark3
-local bg4 = colors.dark4
-
-local fg0 = colors.light0
-local fg1 = colors.light1
-local fg2 = colors.light2
-local fg3 = colors.light3
-local fg4 = colors.light4
-
-local red = colors.bright_red
-local green = colors.bright_green
-local yellow = colors.bright_yellow
-local blue = colors.bright_blue
-local purple = colors.bright_purple
-local aqua = colors.bright_aqua
-local orange = colors.bright_orange
-local sign_column = bg1
-
--- global settings
-local settings = {
- contrast_dark = "medium",
- contrart_light = "medium",
- bold = true,
- italic = true,
- undercurl = true,
- underline = true,
- improved_strings = false,
- improved_warnings = false,
- invert_signs = false,
- invert_selection = true,
- invert_tabline = false,
- italicize_comments = true,
- italicize_strings = false,
-}
-
--- setting default values
-for k, val in pairs(settings) do
- local key = "gruvbox_" .. k
- if vim.g[key] == nil then
- vim.g[key] = val
- end
-end
-
--- handle light/dark contrast settings
-local bg = vim.o.background
-local contrast = vim.g["gruvbox_contrast_" .. bg]
-if contrast == "hard" then
- bg0 = colors[bg .. "0_hard"]
-elseif contrast == "soft" then
- bg0 = colors[bg .. "0_soft"]
-end
-
--- swap colors if light mode
-if bg == "light" then
- bg0 = colors.light0
- bg1 = colors.light1
- bg2 = colors.light2
- bg3 = colors.light3
- bg4 = colors.light4
-
- fg0 = colors.dark0
- fg1 = colors.dark1
- fg2 = colors.dark2
- fg3 = colors.dark3
- fg4 = colors.dark4
-
- red = colors.faded_red
- green = colors.faded_green
- yellow = colors.faded_yellow
- blue = colors.faded_blue
- purple = colors.faded_purple
- aqua = colors.faded_aqua
- orange = colors.faded_orange
-end
-
-local hls_cursor = orange
-if vim.g.gruvbox_hls_cursor ~= nil then
- hls_cursor = colors[vim.g.gruvbox_hls_cursor]
-end
-
-local hls_highlight = yellow
-if vim.g.gruvbox_hls_highlight ~= nil then
- hls_highlight = colors[vim.g.gruvbox_hls_highlight]
-end
-
-local number_column
-if vim.g.gruvbox_number_column ~= nil then
- number_column = colors[vim.g.gruvbox_number_column]
-end
-
-local color_column = bg1
-if vim.g.gruvbox_color_column ~= nil then
- color_column = colors[vim.g.gruvbox_color_column]
-end
-
-local vert_split = bg0
-if vim.g.gruvbox_vert_split ~= nil then
- vert_split = colors[vim.g.gruvbox_vert_split]
-end
-
-local invert_signs
-if vim.g.gruvbox_invert_signs then
- invert_signs = styles.inverse
-end
-
-local invert_selection = styles.inverse
-if not vim.g.gruvbox_invert_selection then
- invert_selection = nil
-end
-
-local invert_tabline
-if vim.g.gruvbox_invert_tabline then
- invert_tabline = styles.inverse
-end
-
-local tabline_sel = green
-if vim.g.gruvbox_tabline_sel then
- tabline_sel = colors[vim.g.gruvbox_tabline_sel]
-end
-
-local italic_comments = styles.italic
-if not vim.g.gruvbox_italicize_comments then
- italic_comments = nil
-end
-
-local italic_strings
-if vim.g.gruvbox_italicize_strings then
- italic_strings = styles.italic
-end
-
--- foregrounds
-Group.new("GruvboxGray", colors.gray)
-Group.new("GruvboxFg0", fg0)
-Group.new("GruvboxFg1", fg1)
-Group.new("GruvboxFg2", fg2)
-Group.new("GruvboxFg3", fg3)
-Group.new("GruvboxFg4", fg4)
-Group.new("GruvboxGray", colors.gray)
-
--- backgrounds
-Group.new("GruvboxBg0", bg0)
-Group.new("GruvboxBg1", bg1)
-Group.new("GruvboxBg2", bg2)
-Group.new("GruvboxBg3", bg3)
-Group.new("GruvboxBg4", bg4)
-
--- color groups
-Group.new("GruvboxAqua", aqua)
-Group.new("GruvboxAquaBold", aqua, nil, styles.bold)
-Group.new("GruvboxBlue", blue)
-Group.new("GruvboxBlueBold", blue, nil, styles.bold)
-Group.new("GruvboxGreen", green)
-Group.new("GruvboxGreenBold", green, nil, styles.bold)
-Group.new("GruvboxOrange", orange)
-Group.new("GruvboxOrangeBold", orange, nil, styles.bold)
-Group.new("GruvboxPurple", purple)
-Group.new("GruvboxPurpleBold", purple, nil, styles.bold)
-Group.new("GruvboxRed", red)
-Group.new("GruvboxRedBold", red, nil, styles.bold)
-Group.new("GruvboxYellow", yellow)
-Group.new("GruvboxYellowBold", yellow, nil, styles.bold)
-
--- signs
-Group.new("GruvboxAquaSign", aqua, sign_column, invert_signs)
-Group.new("GruvboxBlueSign", blue, sign_column, invert_signs)
-Group.new("GruvboxGreenSign", green, sign_column, invert_signs)
-Group.new("GruvboxOrangeSign", orange, sign_column, invert_signs)
-Group.new("GruvboxPurpleSign", purple, sign_column, invert_signs)
-Group.new("GruvboxRedSign", red, sign_column, invert_signs)
-Group.new("GruvboxYellowSign", yellow, sign_column, invert_signs)
-
--- underlines
-Group.new("GruvboxAquaUnderline", nil, nil, styles.undercurl, red)
-Group.new("GruvboxBlueUnderline", nil, nil, styles.undercurl, blue)
-Group.new("GruvboxGreenUnderline", nil, nil, styles.undercurl, green)
-Group.new("GruvboxOrangeUnderline", nil, nil, styles.undercurl, orange)
-Group.new("GruvboxPurpleUnderline", nil, nil, styles.undercurl, purple)
-Group.new("GruvboxRedUnderline", nil, nil, styles.undercurl, red)
-Group.new("GruvboxYellowUnderline", nil, nil, styles.undercurl, yellow)
-
--- base highlight groups
-Group.new("Normal", fg0, bg0)
-Group.new("CursorLine", nil, bg1)
-Group.new("CursorColumn", groups.CursorLine, groups.CursorLine, groups.CursorLine)
-Group.new("TabLineFill", bg4, bg1, invert_tabline)
-Group.new("TabLineSel", tabline_sel, bg1, invert_tabline)
-Group.new("TabLine", groups.TabLineFill, groups.TabLineFill, groups.TabLineFill)
-Group.new("MatchParen", nil, bg3, styles.bold)
-Group.new("ColorColumn", nil, color_column)
-Group.new("Conceal", blue, nil)
-Group.new("CursorLineNr", yellow, bg1)
-Group.new("NonText", groups.GruvboxBg2, groups.GruvboxBg2, groups.GruvboxBg2)
-Group.new("SpecialKey", groups.GruvboxFg4, groups.GruvboxFg4, groups.GruvboxFg4)
-Group.new("Visual", nil, bg3, invert_selection)
-Group.new("VisualNOS", groups.Visual, groups.Visual, groups.Visual)
-Group.new("Search", hls_highlight, bg0, styles.inverse)
-Group.new("IncSearch", hls_cursor, bg0, styles.inverse)
-Group.new("QuickFixLine", bg0, yellow, styles.bold)
-Group.new("Underlined", blue, nil, styles.underline)
-Group.new("StatusLine", bg2, fg1, styles.inverse)
-Group.new("StatusLineNC", bg1, fg4, styles.inverse)
-Group.new("VertSplit", bg3, vert_split)
-Group.new("WildMenu", blue, bg2, styles.bold)
-Group.new("Directory", groups.GruvboxGreenBold, groups.GruvboxGreenBold,
- groups.GruvboxGreenBold)
-Group.new("Title", groups.GruvboxGreenBold, groups.GruvboxGreenBold,
- groups.GruvboxGreenBold)
-Group.new("ErrorMsg", bg0, red, styles.bold)
-Group.new("MoreMsg", groups.GruvboxYellowBold, groups.GruvboxYellowBold,
- groups.GruvboxYellowBold)
-Group.new("ModeMsg", groups.GruvboxYellowBold, groups.GruvboxYellowBold,
- groups.GruvboxYellowBold)
-Group.new("Question", groups.GruvboxOrangeBold, groups.GruvboxOrangeBold,
- groups.GruvboxOrangeBold)
-Group.new("WarningMsg", groups.GruvboxRedBold, groups.GruvboxRedBold,
- groups.GruvboxRedBold)
-Group.new("LineNr", bg4, number_column)
-Group.new("SignColumn", nil, sign_column)
-Group.new("Folded", colors.gray, bg1, styles.italic)
-Group.new("FoldColumn", colors.gray, groups.GruvboxBg1)
-Group.new("Cursor", nil, nil, styles.inverse)
-Group.new("iCursor", groups.Cursor, groups.Cursor, groups.Cursor)
-Group.new("lCursor", groups.Cursor, groups.Cursor, groups.Cursor)
-Group.new("vCursor", groups.Cursor, groups.Cursor, groups.Cursor)
-
--- Syntax highlight
-if vim.g.gruvbox_improved_strings then
- Group.new("Special", orange, bg1, italic_strings)
- Group.new("String", fg1, bg1, italic_strings)
-else
- Group.new("Special", groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange)
- Group.new("String", green, nil, italic_strings)
-end
-
-Group.new("Delimiter", fg0)
-Group.new("Comment", colors.gray, nil, italic_comments)
-Group.new("Todo", fg0, nil, styles.bold + styles.italic)
-Group.new("Error", red, nil, styles.bold + styles.inverse)
-Group.new("Statement", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("Conditional", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("Repeat", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("Label", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("Exception", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("Operator", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("Keyword", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("Identifier", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("Function", groups.GruvboxGreenBold, groups.GruvboxGreenBold,
- groups.GruvboxGreenBold)
-Group.new("PreProc", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("Include", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("Define", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("Macro", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("PreCondit", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("Constant", groups.GruvboxPurple, groups.GruvboxPurple, groups.GruvboxPurple)
-Group.new("Character", groups.GruvboxPurple, groups.GruvboxPurple, groups.GruvboxPurple)
-Group.new("Boolean", groups.GruvboxPurple, groups.GruvboxPurple, groups.GruvboxPurple)
-Group.new("Number", groups.GruvboxPurple, groups.GruvboxPurple, groups.GruvboxPurple)
-Group.new("Float", groups.GruvboxPurple, groups.GruvboxPurple, groups.GruvboxPurple)
-Group.new("Type", groups.GruvboxYellow, groups.GruvboxYellow, groups.GruvboxYellow)
-Group.new("StorageClass", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("Structure", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("Typedef", groups.GruvboxYellow, groups.GruvboxYellow, groups.GruvboxYellow)
-
--- Completion menu
-Group.new("Pmenu", fg1, bg2)
-Group.new("PmenuSel", bg2, blue, styles.bold)
-Group.new("PmenuSbar", nil, bg2)
-Group.new("PmenuThumb", nil, bg4)
-
--- Diffs
-Group.new("DiffDelete", red, bg1, invert_signs)
-Group.new("DiffAdd", green, bg1, invert_signs)
-Group.new("DiffChange", aqua, bg1, invert_signs)
-Group.new("DiffText", yellow, bg1, invert_signs)
-
--- Spelling
-if vim.fn.has("spell") == 1 then
- Group.new("SpellBad", groups.GruvboxRedUnderline, groups.GruvboxRedUnderline,
- groups.GruvboxRedUnderline)
- Group.new("SpellLocal", groups.GruvboxAquaUnderline, groups.GruvboxAquaUnderline,
- groups.GruvboxAquaUnderline)
- Group.new("SpellRare", groups.GruvboxPurpleUnderline, groups.GruvboxPurpleUnderline,
- groups.GruvboxPurpleUnderline)
-
- if vim.g.gruvbox_improved_warnings then
- Group.new("SpellCap", green, nil, styles.bold + styles.underline)
- else
- Group.new("SpellRare", groups.GruvboxBlueUnderline, groups.GruvboxBlueUnderline,
- groups.GruvboxBlueUnderline)
- end
-end
-
--- Filetype specific
-
--- HTML
-Group.new("htmlTag", groups.GruvboxAquaBold, groups.GruvboxAquaBold,
- groups.GruvboxAquaBold)
-Group.new("htmlEndTag", groups.GruvboxAquaBold, groups.GruvboxAquaBold,
- groups.GruvboxAquaBold)
-Group.new("htmlTagName", groups.GruvboxBlueBold, groups.GruvboxBlueBold,
- groups.GruvboxBlueBold)
-Group.new("htmlArg", groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange, groups.GruvboxOrange)
-Group.new("htmlScriptTag", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("htmlTagN", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("htmlSpecialTagName", groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue)
-Group.new("htmlLink", fg4, nil, styles.underline)
-Group.new("htmlSpecialChar", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("htmlBold", fg0, bg0, styles.bold)
-Group.new("htmlBoldUnderline", fg0, bg0, styles.bold + styles.underline)
-Group.new("htmlBoldItalic", fg0, bg0, styles.bold + styles.italic)
-Group.new("htmlBoldUnderlineItalic", fg0, bg0,
- styles.bold + styles.underline + styles.italic)
-Group.new("htmlUnderline", fg0, bg0, styles.underline)
-Group.new("htmlUnderlineItalic", fg0, bg0, styles.underline + styles.italic)
-Group.new("htmlItalic", fg0, bg0, styles.italic)
-Group.new("htmlH1", groups.String, groups.String, groups.String)
-
--- XML
-Group.new("xmlTag", groups.GruvboxAquaBold, groups.GruvboxAquaBold,
- groups.GruvboxAquaBold)
-Group.new("xmlEndTag", groups.GruvboxAquaBold, groups.GruvboxAquaBold,
- groups.GruvboxAquaBold)
-Group.new("xmlTagName", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("xmlEqual", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("docbkKeyword", groups.GruvboxAquaBold, groups.GruvboxAquaBold,
- groups.GruvboxAquaBold)
-Group.new("xmlDocTypeDecl", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("xmlDocTypeKeyword", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("xmlCdataStart", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("xmlCdataCdata", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("dtdFunction", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("dtdTagName", groups.GruvboxPurple, groups.GruvboxPurple, groups.GruvboxPurple)
-Group.new("xmlAttrib", groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange)
-Group.new("xmlProcessingDelim", groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray)
-Group.new("dtdParamEntityPunct", groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray)
-Group.new("dtdParamEntityDPunct", groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray)
-Group.new("xmlAttribPunct", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("xmlEntity", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("xmlEntityPunct", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-
--- VimL
-Group.new("vimCommentTitle", fg4, nil, styles.bold + italic_comments)
-Group.new("vimNotation", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("vimBracket", groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange)
-Group.new("vimMapModKey", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("vimFuncSID", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("vimSetSep", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("vimSep", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("vimContinue", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-
--- Python
-Group.new("pythonBuiltin", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("pythonBuiltinObj", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("pythonBuiltinFunc", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("pythonFunction", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("pythonDecorator", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed, groups.GruvboxRed)
-Group.new("pythonInclude", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("pythonImport", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("pythonRun", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("pythonCoding", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("pythonOperator", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed, groups.GruvboxRed)
-Group.new("pythonException", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed, groups.GruvboxRed)
-Group.new("pythonExceptions", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("pythonBoolean", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("pythonDot", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("pythonConditional", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed, groups.GruvboxRed)
-Group.new("pythonRepeat", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed, groups.GruvboxRed)
-Group.new("pythonDottedName", groups.GruvboxGreenBold, groups.GruvboxGreenBold,
- groups.GruvboxGreenBold)
-
--- CSS
-Group.new("cssBraces", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("cssFunctionName", groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow)
-Group.new("cssIdentifier", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("cssClassName", groups.GruvboxGreen, groups.GruvboxGreen, groups.GruvboxGreen,
- groups.GruvboxGreen, groups.GruvboxGreen)
-Group.new("cssColor", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("cssSelectorOp", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("cssSelectorOp2", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("cssImportant", groups.GruvboxGreen, groups.GruvboxGreen, groups.GruvboxGreen,
- groups.GruvboxGreen, groups.GruvboxGreen)
-Group.new("cssVendor", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("cssTextProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssAnimationProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssUIProp", groups.GruvboxYellow, groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow, groups.GruvboxYellow)
-Group.new("cssTransformProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssTransitionProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("cssPrintProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssPositioningProp", groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow)
-Group.new("cssBoxProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssFontDescriptorProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("cssFlexibleBoxProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("cssBorderOutlineProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("cssBackgroundProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("cssMarginProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssListProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssTableProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssFontProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssPaddingProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssDimensionProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssRenderProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssColorProp", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("cssGeneratedContentProp", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-
--- JavaScript
-
-Group.new("javaScriptBraces", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("javaScriptFunction", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("javaScriptIdentifier", groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed)
-Group.new("javaScriptMember", groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("javaScriptNumber", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("javaScriptNull", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("javaScriptParens", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-
--- TypeScript
-Group.new("typeScriptReserved", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("typeScriptLabel", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("typeScriptFuncKeyword", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("typeScriptIdentifier", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("typeScriptBraces", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("typeScriptEndColons", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("typeScriptDOMObjects", groups.GruvboxFg1, groups.GruvboxFg1,
- groups.GruvboxFg1)
-Group.new("typeScriptAjaxMethods", groups.GruvboxFg1, groups.GruvboxFg1,
- groups.GruvboxFg1)
-Group.new("typeScriptLogicSymbols", groups.GruvboxFg1, groups.GruvboxFg1,
- groups.GruvboxFg1)
-Group.new("typeScriptDocSeeTag", groups.Comment)
-Group.new("typeScriptDocParam", groups.Comment)
-Group.new("typeScriptDocTags", groups.vimCommentTitle)
-Group.new("typeScriptGlobalObjects", groups.GruvboxFg1, groups.GruvboxFg1,
- groups.GruvboxFg1)
-Group.new("typeScriptParens", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("typeScriptOpSymbols", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("typeScriptHtmlElemProperties", groups.GruvboxFg1, groups.GruvboxFg1,
- groups.GruvboxFg1)
-Group.new("typeScriptNull", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("typeScriptInterpolationDelimiter", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-
--- Ruby
-Group.new("rubyStringDelimiter", groups.GruvboxGreen, groups.GruvboxGreen,
- groups.GruvboxGreen)
-Group.new("rubyInterpolationDelimiter", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-
--- Go
-Group.new("goDirective", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("goConstants", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("goDeclaration", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed, groups.GruvboxRed)
-Group.new("goDeclType", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("goBuiltins", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange)
-
--- Lua
-Group.new("luaIn", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed, groups.GruvboxRed)
-Group.new("luaFunction", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("luaTable", groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange, groups.GruvboxOrange)
-
--- Java
-Group.new("javaAnnotation", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("javaDocTags", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("javaCommentTitle", groups.vimCommentTitle, groups.vimCommentTitle,
- groups.vimCommentTitle)
-Group.new("javaParen", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("javaParen1", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("javaParen2", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("javaParen3", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("javaParen4", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("javaParen5", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("javaOperator", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("javaVarArg", groups.GruvboxGreen, groups.GruvboxGreen, groups.GruvboxGreen,
- groups.GruvboxGreen, groups.GruvboxGreen)
-
--- Elixir
-Group.new("elixirDocString", groups.Comment, groups.Comment, groups.Comment)
-Group.new("elixirStringDelimiter", groups.GruvboxGreen, groups.GruvboxGreen,
- groups.GruvboxGreen)
-Group.new("elixirInterpolationDelimiter", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("elixirModuleDeclaration", groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow)
-
--- Markdown
-Group.new("markdownItalic", fg3, nil, styles.italic)
-Group.new("markdownLinkText", colors.gray, nil, styles.underline)
-Group.new("markdownH1", groups.GruvboxGreenBold, groups.GruvboxGreenBold,
- groups.GruvboxGreenBold)
-Group.new("markdownH2", groups.GruvboxGreenBold, groups.GruvboxGreenBold,
- groups.GruvboxGreenBold)
-Group.new("markdownH3", groups.GruvboxYellowBold, groups.GruvboxYellowBold,
- groups.GruvboxYellowBold)
-Group.new("markdownH4", groups.GruvboxYellowBold, groups.GruvboxYellowBold,
- groups.GruvboxYellowBold)
-Group.new("markdownH5", groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow, groups.GruvboxYellow, groups.GruvboxYellow)
-Group.new("markdownH6", groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow, groups.GruvboxYellow, groups.GruvboxYellow)
-Group.new("markdownCode", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("markdownCodeBlock", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("markdownCodeDelimiter", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("markdownBlockquote", groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray)
-Group.new("markdownListMarker", groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray)
-Group.new("markdownOrderedListMarker", groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray)
-Group.new("markdownRule", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray, groups.GruvboxGray)
-Group.new("markdownHeadingRule", groups.GruvboxGray, groups.GruvboxGray,
- groups.GruvboxGray)
-Group.new("markdownUrlDelimiter", groups.GruvboxFg3, groups.GruvboxFg3,
- groups.GruvboxFg3)
-Group.new("markdownLinkDelimiter", groups.GruvboxFg3, groups.GruvboxFg3,
- groups.GruvboxFg3)
-Group.new("markdownLinkTextDelimiter", groups.GruvboxFg3, groups.GruvboxFg3,
- groups.GruvboxFg3)
-Group.new("markdownHeadingDelimiter", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("markdownUrl", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("markdownUrlTitleDelimiter", groups.GruvboxGreen, groups.GruvboxGreen,
- groups.GruvboxGreen)
-Group.new("markdownIdDeclaration", groups.markdownLinkText, groups.markdownLinkText,
- groups.markdownLinkText)
-
--- Haskell
-Group.new("haskellType", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("haskellIdentifier", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("haskellSeparator", groups.GruvboxFg4, groups.GruvboxFg4, groups.GruvboxFg4)
-Group.new("haskellDelimiter", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("haskellOperators", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-
-Group.new("haskellBacktick", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("haskellStatement", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("haskellConditional", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-
-Group.new("haskellLet", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("haskellDefault", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("haskellWhere", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("haskellBottom", groups.GruvboxRedBold, groups.GruvboxRedBold,
- groups.GruvboxRedBold)
-Group.new("haskellImportKeywords", groups.GruvboxPurpleBold, groups.GruvboxPurpleBold,
- groups.GruvboxPurpleBold)
-Group.new("haskellDeclKeyword", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("haskellDecl", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("haskellDeriving", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("haskellAssocType", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-
-Group.new("haskellNumber", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("haskellPragma", groups.GruvboxRedBold, groups.GruvboxRedBold,
- groups.GruvboxRedBold)
-
-Group.new("haskellTH", groups.GruvboxAquaBold, groups.GruvboxAquaBold,
- groups.GruvboxAquaBold)
-Group.new("haskellForeignKeywords", groups.GruvboxGreen, groups.GruvboxGreen,
- groups.GruvboxGreen)
-Group.new("haskellKeyword", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("haskellFloat", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("haskellInfix", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("haskellQuote", groups.GruvboxGreenBold, groups.GruvboxGreenBold,
- groups.GruvboxGreenBold)
-Group.new("haskellShebang", groups.GruvboxYellowBold, groups.GruvboxYellowBold,
- groups.GruvboxYellowBold)
-Group.new("haskellLiquid", groups.GruvboxPurpleBold, groups.GruvboxPurpleBold,
- groups.GruvboxPurpleBold)
-Group.new("haskellQuasiQuoted", groups.GruvboxBlueBold, groups.GruvboxBlueBold,
- groups.GruvboxBlueBold)
-Group.new("haskellRecursiveDo", groups.GruvboxPurple, groups.GruvboxPurple,
- groups.GruvboxPurple)
-Group.new("haskellQuotedType", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("haskellPreProc", groups.GruvboxFg4, groups.GruvboxFg4, groups.GruvboxFg4)
-Group.new("haskellTypeRoles", groups.GruvboxRedBold, groups.GruvboxRedBold,
- groups.GruvboxRedBold)
-Group.new("haskellTypeForall", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("haskellPatternKeyword", groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue)
-
--- JSON
-Group.new("jsonKeyword", groups.GruvboxGreen, groups.GruvboxGreen, groups.GruvboxGreen)
-Group.new("jsonQuote", groups.GruvboxGreen, groups.GruvboxGreen, groups.GruvboxGreen)
-Group.new("jsonBraces", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("jsonString", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-
--- Rust
-Group.new("rustSigil", groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange)
-Group.new("rustEscape", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("rustStringContinuation", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("rustEnum", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("rustStructure", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("rustModPathSep", groups.GruvboxFg2, groups.GruvboxFg2, groups.GruvboxFg2)
-Group.new("rustCommentLineDoc", groups.Comment, groups.Comment, groups.Comment)
-Group.new("rustDefault", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-
--- Ocaml
-Group.new("ocamlOperator", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("ocamlKeyChar", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("ocamlArrow", groups.GruvboxOrange, groups.GruvboxOrange, groups.GruvboxOrange)
-Group.new("ocamlInfixOpKeyword", groups.GruvboxRed, groups.GruvboxRed, groups.GruvboxRed)
-Group.new("ocamlConstructor", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-
--- Plugin specific
-
--- vim-signify
-Group.new("SignifySignAdd", groups.GruvboxGreenSign, groups.GruvboxGreenSign,
- groups.GruvboxGreenSign)
-Group.new("SignifySignChange", groups.GruvboxAquaSign, groups.GruvboxAquaSign,
- groups.GruvboxAquaSign)
-Group.new("SignifySignDelete", groups.GruvboxRedSign, groups.GruvboxRedSign,
- groups.GruvboxRedSign)
-
--- vim-startify
-Group.new("StartifyBracket", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("StartifyFile", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("StartifyNumber", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("StartifyPath", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("StartifySlash", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("StartifySection", groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow)
-Group.new("StartifySpecial", groups.GruvboxBg2, groups.GruvboxBg2, groups.GruvboxBg2)
-Group.new("StartifyHeader", groups.GruvboxOrange, groups.GruvboxOrange,
- groups.GruvboxOrange)
-Group.new("StartifyFooter", groups.GruvboxBg2, groups.GruvboxBg2, groups.GruvboxBg2)
-
--- netrw
-Group.new("netrwDir", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("netrwClassify", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("netrwLink", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("netrwSymLink", groups.GruvboxFg1, groups.GruvboxFg1, groups.GruvboxFg1)
-Group.new("netrwExe", groups.GruvboxYellow, groups.GruvboxYellow, groups.GruvboxYellow)
-Group.new("netrwComment", groups.GruvboxGray, groups.GruvboxGray, groups.GruvboxGray)
-Group.new("netrwList", groups.GruvboxBlue, groups.GruvboxBlue, groups.GruvboxBlue)
-Group.new("netrwHelpCmd", groups.GruvboxAqua, groups.GruvboxAqua, groups.GruvboxAqua)
-Group.new("netrwCmdSep", groups.GruvboxFg3, groups.GruvboxFg3, groups.GruvboxFg3)
-Group.new("netrwVersion", groups.GruvboxGreen, groups.GruvboxGreen, groups.GruvboxGreen)
-
--- LSP
-Group.new("LspDiagnosticsDefaultError", groups.GruvboxRed, groups.GruvboxRed,
- groups.GruvboxRed)
-Group.new("LspDiagnosticsSignError", groups.GruvboxRedSign, groups.GruvboxRedSign,
- groups.GruvboxRedSign)
-Group.new("LspDiagnosticsUnderlineError", groups.GruvboxRedUnderline,
- groups.GruvboxRedUnderline, groups.GruvboxRedUnderline)
-
-Group.new("LspDiagnosticsDefaultWarning", groups.GruvboxYellow, groups.GruvboxYellow,
- groups.GruvboxYellow)
-Group.new("LspDiagnosticsSignWarning", groups.GruvboxYellowSign,
- groups.GruvboxYellowSign, groups.GruvboxYellowSign)
-Group.new("LspDiagnosticsUnderlineWarning", groups.GruvboxYellowUnderline,
- groups.GruvboxYellowUnderline, groups.GruvboxYellowUnderline)
-
-Group.new("LspDiagnosticsDefaultInformation", groups.GruvboxBlue, groups.GruvboxBlue,
- groups.GruvboxBlue)
-Group.new("LspDiagnosticsSignInformation", groups.GruvboxBlueSign,
- groups.GruvboxBlueSign, groups.GruvboxBlueSign)
-Group.new("LspDiagnosticsUnderlineInformation", groups.GruvboxBlueUnderline,
- groups.GruvboxBlueUnderline, groups.GruvboxBlueUnderline)
-
-Group.new("LspDiagnosticsDefaultHint", groups.GruvboxAqua, groups.GruvboxAqua,
- groups.GruvboxAqua)
-Group.new("LspDiagnosticsSignHint", groups.GruvboxAquaSign, groups.GruvboxAquaSign,
- groups.GruvboxAquaSign)
-Group.new("LspDiagnosticsUnderlineHint", groups.GruvboxAquaUnderline,
- groups.GruvboxAquaUnderline, groups.GruvboxAquaUnderline)
-
--- Galaxyline default providers
-Group.new("GalaxyGitBranch", fg0, colors.faded_aqua, nil)
-Group.new("GalaxyGitBranchSeparator", yellow, bg0, nil)
-Group.new("GalaxyDiffAdd", groups.DiffAdd, nil, styles.bold)
-Group.new("GalaxyDiffModified", groups.DiffChange, nil, styles.bold)
-Group.new("GalaxyDiffRemove", groups.DiffDelete, nil, styles.bold)
-Group.new("GalaxyScrollbar", green, bg0, nil)
-Group.new("GalaxyLinePercent", fg0, bg0, nil)
-Group.new("GalaxyFileTypeName", fg0, bg0, styles.bold)
-Group.new("GalaxyFileName", blue, bg0, styles.bold)
-Group.new("GalaxyFileIcon", groups.GalaxyFileName, groups.GalaxyFileName,
- groups.GalaxyFileName)
-Group.new("GalaxyFileSize", groups.GalaxyFileName, groups.GalaxyFileName,
- groups.GalaxyFileName)
-Group.new("GalaxyFileEncode", groups.GalaxyFileName, groups.GalaxyFileName,
- groups.GalaxyFileName)
-Group.new("GalaxyFileFormat", groups.GalaxyFileName, groups.GalaxyFileName,
- groups.GalaxyFileName)
-Group.new("GalaxyDiagnosticError", groups.LspDiagnosticsDefaultError,
- groups.LspDiagnosticsDefaultError, groups.LspDiagnosticsDefaultError)
-Group.new("GalaxyDiagnosticWarn", groups.LspDiagnosticsDefaultWarning,
- groups.LspDiagnosticsDefaultWarning, groups.LspDiagnosticsDefaultWarning)
-Group.new("GalaxyDiagnosticHint", groups.LspDiagnosticsDefaultHint,
- groups.LspDiagnosticsDefaultHint, groups.LspDiagnosticsDefaultHint)
-Group.new("GalaxyDiagnosticInformation", groups.LspDiagnosticsDefaultInformation,
- groups.LspDiagnosticsDefaultInformation,
- groups.LspDiagnosticsDefaultInformation)
-
--- Treesitter
-Group.new("TSNone", nil, nil, nil)
-Group.new("TSStrong", nil, nil, styles.bold)
-Group.new("TSUnderline", nil, nil, styles.underline)
-Group.new("TSEmphasis", nil, nil, styles.italic)
-Group.new("TSPunctDelimiter", groups.Delimiter, groups.Delimiter, groups.Delimiter)
-Group.new("TSPunctBracket", groups.Delimiter, groups.Delimiter, groups.Delimiter)
-Group.new("TSPunctSpecial", groups.Delimiter, groups.Delimiter, groups.Delimiter)
-Group.new("TSConstant", groups.Constant, groups.Constant, groups.Constant)
-Group.new("TSConstBuiltin", groups.Special, groups.Special, groups.Special)
-Group.new("TSConstMacro", groups.Define, groups.Define, groups.Define)
-Group.new("TSString", groups.String, groups.String, groups.String)
-Group.new("TSStringRegex", groups.String, groups.String, groups.String)
-Group.new("TSStringEscape", groups.SpecialChar, groups.SpecialChar, groups.SpecialChar)
-Group.new("TSCharacter", groups.Character, groups.Character, groups.Character)
-Group.new("TSNumber", groups.Number, groups.Number, groups.Number)
-Group.new("TSBoolean", groups.Boolean, groups.Boolean, groups.Boolean)
-Group.new("TSFloat", groups.Float, groups.Float, groups.Float)
-Group.new("TSFunction", groups.Function, groups.Function, groups.Function)
-Group.new("TSFuncBuiltin", groups.Special, groups.Special, groups.Special)
-Group.new("TSFuncMacro", groups.Macro, groups.Macro, groups.Macro)
-Group.new("TSParameter", groups.Identifier, groups.Identifier, groups.Identifier)
-Group.new("TSParameterReference", groups.TSParameter, groups.TSParameter,
- groups.TSParameter)
-Group.new("TSMethod", groups.Function, groups.Function, groups.Function)
-Group.new("TSField", groups.Identifier, groups.Identifier, groups.Identifier)
-Group.new("TSProperty", groups.Identifier, groups.Identifier, groups.Identifier)
-Group.new("TSConstructor", groups.Special, groups.Special, groups.Special)
-Group.new("TSAnnotation", groups.PreProc, groups.PreProc, groups.PreProc)
-Group.new("TSNamespace", groups.Include, groups.Include, groups.Include)
-Group.new("TSConditional", groups.Conditional, groups.Conditional, groups.Conditional)
-Group.new("TSRepeat", groups.Repeat, groups.Repeat, groups.Repeat, groups.Repeat)
-Group.new("TSLabel", groups.Label, groups.Label, groups.Label)
-Group.new("TSOperator", groups.Operator, groups.Operator, groups.Operator)
-Group.new("TSKeyword", groups.Keyword, groups.Keyword, groups.Keyword)
-Group.new("TSKeywordFunction", groups.Keyword, groups.Keyword, groups.Keyword)
-Group.new("TSKeywordOperator", groups.TSOperator, groups.TSOperator, groups.TSOperator)
-Group.new("TSException", groups.Exception, groups.Exception, groups.Exception)
-Group.new("TSType", groups.Type, groups.Type, groups.Type)
-Group.new("TSTypeBuiltin", groups.Type, groups.Type, groups.Type)
-Group.new("TSInclude", groups.Include, groups.Include, groups.Include)
-Group.new("TSVariableBuiltin", groups.Special, groups.Special, groups.Special)
-Group.new("TSText", groups.TSNone, groups.TSNone, groups.TSNone)
-Group.new("TSTitle", groups.Title, groups.Title, groups.Title)
-Group.new("TSLiteral", groups.String, groups.String, groups.String)
-Group.new("TSURI", groups.Underlined, groups.Underlined, groups.Underlined)
-Group.new("TSTag", groups.Label, groups.Label, groups.Label)
-Group.new("TSTagDelimiter", groups.Delimiter, groups.Delimiter, groups.Delimiter)
diff --git a/lua/gruvbox/init.lua b/lua/gruvbox/init.lua
new file mode 100644
index 0000000..5fb17e9
--- /dev/null
+++ b/lua/gruvbox/init.lua
@@ -0,0 +1,985 @@
+local lush = require("lush")
+local hsl = lush.hsl
+-- gruvbox palette
+local colors = {
+ dark0_hard = "#1d2021",
+ dark0 = "#282828",
+ dark0_soft = "#32302f",
+ dark1 = "#3c3836",
+ dark2 = "#504945",
+ dark3 = "#665c54",
+ dark4 = "#7c6f64",
+ light0_hard = "#f9f5d7",
+ light0 = "#fbf1c7",
+ light0_soft = "#f2e5bc",
+ light1 = "#ebdbb2",
+ light2 = "#d5c4a1",
+ light3 = "#bdae93",
+ light4 = "#a89984",
+ bright_red = "#fb4934",
+ bright_green = "#b8bb26",
+ bright_yellow = "#fabd2f",
+ bright_blue = "#83a598",
+ bright_purple = "#d3869b",
+ bright_aqua = "#8ec07c",
+ bright_orange = "#fe8019",
+ neutral_red = "#cc241d",
+ neutral_green = "#98971a",
+ neutral_yellow = "#d79921",
+ neutral_blue = "#458588",
+ neutral_purple = "#b16286",
+ neutral_aqua = "#689d6a",
+ neutral_orange = "#d65d0e",
+ faded_red = "#9d0006",
+ faded_green = "#79740e",
+ faded_yellow = "#b57614",
+ faded_blue = "#076678",
+ faded_purple = "#8f3f71",
+ faded_aqua = "#427b58",
+ faded_orange = "#af3a03",
+ gray = "#928374",
+}
+-- options (dark mode by default)
+local bg0 = colors.dark0
+local bg1 = colors.dark1
+local bg2 = colors.dark2
+local bg3 = colors.dark3
+local bg4 = colors.dark4
+
+local fg0 = colors.light0
+local fg1 = colors.light1
+local fg2 = colors.light2
+local fg3 = colors.light3
+local fg4 = colors.light4
+
+local red = colors.bright_red
+local green = colors.bright_green
+local yellow = colors.bright_yellow
+local blue = colors.bright_blue
+local purple = colors.bright_purple
+local aqua = colors.bright_aqua
+local orange = colors.bright_orange
+local sign_column = bg1
+local gray = colors.gray
+
+-- global settings
+local settings = {
+ contrast_dark = "medium",
+ contrart_light = "medium",
+ bold = true,
+ italic = true,
+ undercurl = true,
+ underline = true,
+ improved_strings = false,
+ improved_warnings = false,
+ invert_signs = false,
+ invert_selection = true,
+ invert_tabline = false,
+ italicize_comments = true,
+ italicize_strings = false,
+}
+
+local styles = {
+ italic = "italic",
+ inverse = "inverse",
+ bold = "bold",
+ undercurl = "undercurl",
+ underline = "underline",
+}
+
+-- setting default values
+for k, val in pairs(settings) do
+ local key = "gruvbox_" .. k
+ if vim.g[key] == nil then
+ vim.g[key] = val
+ end
+end
+
+-- set colors_name var
+vim.g.colors_name = "gruvbox"
+
+-- handle light/dark contrast settings
+local bg = vim.o.background
+if bg == nil then
+ bg = "dark"
+ vim.o.background = bg
+end
+
+local contrast = vim.g["gruvbox_contrast_" .. bg]
+if contrast == "hard" then
+ bg0 = colors[bg .. "0_hard"]
+elseif contrast == "soft" then
+ bg0 = colors[bg .. "0_soft"]
+end
+
+-- swap colors if light mode
+if bg == "light" then
+ bg0 = colors.light0
+ bg1 = colors.light1
+ bg2 = colors.light2
+ bg3 = colors.light3
+ bg4 = colors.light4
+ fg0 = colors.dark0
+ fg1 = colors.dark1
+ fg2 = colors.dark2
+ fg3 = colors.dark3
+ fg4 = colors.dark4
+ red = colors.faded_red
+ green = colors.faded_green
+ yellow = colors.faded_yellow
+ blue = colors.faded_blue
+ purple = colors.faded_purple
+ aqua = colors.faded_aqua
+ orange = colors.faded_orange
+end
+
+local hls_cursor = orange
+if vim.g.gruvbox_hls_cursor ~= nil then
+ hls_cursor = colors[vim.g.gruvbox_hls_cursor]
+end
+
+local hls_highlight = yellow
+if vim.g.gruvbox_hls_cursor ~= nil then
+ hls_cursor = colors[vim.g.gruvbox_hls_highlight]
+end
+
+local number_column
+if vim.g.gruvbox_number_column ~= nil then
+ number_column = hsl(colors[vim.g.gruvbox_number_column])
+end
+
+local color_column = bg1
+if vim.g.gruvbox_color_column ~= nil then
+ color_column = colors[vim.g.gruvbox_color_column]
+end
+
+local vert_split = bg0
+if vim.g.gruvbox_vert_split ~= nil then
+ vert_split = colors[vim.g.gruvbox_vert_split]
+end
+
+local invert_signs
+if vim.g.gruvbox_invert_signs then
+ invert_signs = styles.inverse
+end
+
+local invert_selection = styles.inverse
+if not vim.g.gruvbox_invert_selection then
+ invert_selection = nil
+end
+
+local invert_tabline
+if vim.g.gruvbox_invert_tabline then
+ invert_tabline = styles.inverse
+end
+
+local tabline_sel = green
+if vim.g.gruvbox_tabline_sel then
+ tabline_sel = colors[vim.g.gruvbox_tabline_sel]
+end
+
+local italic_comments = styles.italic
+if not vim.g.gruvbox_italicize_comments then
+ italic_comments = ""
+end
+
+local italic_strings = "NONE"
+if vim.g.gruvbox_italicize_strings then
+ italic_strings = styles.italic
+end
+
+local special = {fg = hsl(orange), bg = hsl(bg1), gui = italic_strings}
+local special_string = {fg = hsl(fg1), bg = hsl(bg1), italic_strings}
+if not vim.g.gruvbox_improved_strings then
+ special = {fg = hsl(orange)}
+ special_string = {fg = hsl(green), gui = italic_strings}
+end
+
+-- neovim terminal mode colors
+vim.g.terminal_color_0 = hsl(bg0)
+vim.g.terminal_color_8 = hsl(gray)
+vim.g.terminal_color_1 = hsl(colors.neutral_red)
+vim.g.terminal_color_2 = hsl(red)
+vim.g.terminal_color_10 = hsl(green)
+vim.g.terminal_color_3 = hsl(colors.neutral_yellow)
+vim.g.terminal_color_11 = hsl(yellow)
+vim.g.terminal_color_4 = hsl(colors.neutral_blue)
+vim.g.terminal_color_12 = hsl(blue)
+vim.g.terminal_color_5 = hsl(colors.neutral_purple)
+vim.g.terminal_color_13 = hsl(purple)
+vim.g.terminal_color_6 = hsl(colors.neutral_aqua)
+vim.g.terminal_color_14 = hsl(aqua)
+vim.g.terminal_color_7 = hsl(fg4)
+vim.g.terminal_color_15 = hsl(fg1)
+
+local theme = lush(function()
+ return {
+ -- EndOfBuffer { },
+ -- TermCursor { },
+ -- TermCursorNC { },
+ -- Substitute { },
+ -- MsgArea { },
+ -- MsgSeparator { },
+ -- Whitespace { },
+ -- Base groups
+ ColorColumn {bg = hsl(color_column)},
+ Conceal {bg = hsl(blue)},
+ Cursor {gui = styles.inverse},
+ lCursor {Cursor},
+ CursorIM {Cursor},
+ CursorColumn {bg = bg1},
+ CursorLine {CursorColumn},
+ Directory {fg = hsl(green), gui = styles.bold},
+ DiffAdd {fg = hsl(green), bg = hsl(bg1), gui = invert_signs},
+ DiffChange {fg = hsl(aqua), bg = hsl(bg1), gui = invert_signs},
+ DiffDelete {fg = hsl(red), bg = hsl(bg1), gui = invert_signs},
+ DiffText {fg = hsl(yellow), bg = hsl(bg1), gui = invert_signs},
+ ErrorMsg {fg = hsl(bg0), bg = hsl(red), gui = styles.bold},
+ VertSplit {fg = hsl(bg3), bgb = hsl(vert_split)},
+ Folded {fg = hsl(gray), bg = hsl(bg1), gui = italic_strings},
+ FoldColumn {fg = hsl(gray), bg = hsl(bg1)},
+ SignColumn {bg = hsl(sign_column)},
+ IncSearch {fg = hsl(hls_cursor), bg = hsl(bg0), gui = styles.inverse},
+ LineNr {fg = hsl(bg4), bg = number_column},
+ CursorLineNr {fg = hsl(yellow), bg = hsl(bg1)},
+ MatchParen {bg = hsl(bg3), gui = styles.bold},
+ ModeMsg {fg = hsl(yellow), gui = styles.bold},
+ MoreMsg {fg = hsl(yellow), gui = styles.bold},
+ NonText {fg = hsl(bg2)},
+ Normal {fg = hsl(fg1), bg = hsl(bg0)},
+ NormalFloat {Normal},
+ NormalNC {Normal},
+ Pmenu {fg = hsl(fg1), bg = hsl(bg2)},
+ PmenuSel {fg = hsl(bg2), bg = hsl(blue), gui = styles.bold},
+ PmenuSbar {bg = hsl(bg2)},
+ PmenuThumb {bg = hsl(bg4)},
+ Question {fg = hsl(orange), gui = styles.bold},
+ QuickFixLine {fg = hsl(fg0), bg = hsl(yellow), gui = styles.bold},
+ Search {fg = hsl(hls_highlight), bg = hsl(bg0), gui = styles.inverse},
+ SpecialKey {fg = hsl(fg4)},
+ SpellRare {gui = styles.undercurl, sep = hsl(purple)},
+ SpellBad {fg = hsl(red), gui = styles.underline},
+ StatusLine {fg = hsl(bg2), bg = hsl(fg1), gui = styles.inverse},
+ StatusLineNC {fg = hsl(bg1), bg = hsl(fg4), gui = styles.inverse},
+ TabLine {fg = hsl(bg4), bg = hsl(bg1), gui = invert_tabline},
+ TabLineFill {fg = hsl(bg4), bg = hsl(bg1), gui = invert_tabline},
+ TabLineSel {fg = hsl(tabline_sel), bg = hsl(bg1), gui = invert_tabline},
+ Title {fg = hsl(green), gui = styles.bold},
+ Visual {bg = hsl(bg3), gui = invert_selection},
+ VisualNOS {bg = hsl(bg3), gui = invert_selection},
+ WarningMsg {fg = hsl(red), gui = styles.bold},
+ WildMenu {fg = hsl(blue), bg = hsl(bg2), gui = styles.bold},
+ Constant {fg = hsl(purple)},
+ String {unpack(special_string)},
+ Character {fg = hsl(purple)},
+ Number {Character},
+ Boolean {Character},
+ Float {Character},
+ Identifier {fg = hsl(blue)},
+ Function {fg = hsl(green), gui = styles.bold},
+ Statement {fg = hsl(red)},
+ Conditional {fg = hsl(red)},
+ Repeat {fg = hsl(red)},
+ Label {fg = hsl(red)},
+ Keyword {fg = hsl(red)},
+ Exception {fg = hsl(red)},
+ Operator {fg = hsl(fg1)},
+ PreProc {fg = hsl(aqua)},
+ Include {fg = hsl(aqua)},
+ Define {fg = hsl(aqua)},
+ Macro {fg = hsl(aqua)},
+ PreCondit {fg = hsl(aqua)},
+ Type {fg = hsl(yellow)},
+ StorageClass {fg = hsl(orange)},
+ Structure {fg = hsl(aqua)},
+ Typedef {fg = hsl(yellow)},
+ Special {unpack(special)},
+ SpecialChar {fg = hsl(red)},
+ Tag {fg = hsl(aqua), gui = styles.bold},
+ Delimiter {fg = hsl(fg0)},
+ Comment {fg = hsl(gray), gui = italic_comments},
+ SpecialComment {fg = hsl(gray), gui = styles.bold .. "," .. italic_comments},
+ Debug {fg = hsl(red)},
+ Underlined {gui = styles.underline},
+ Bold {gui = styles.bold},
+ Italic {gui = styles.italic},
+ Ignore {},
+ Error {fg = hsl(red), gui = styles.bold .. "," .. styles.underline}, -- TODO: check if we have some abstraction to merge two styles
+ Todo {fg = hsl(fg0), gui = styles.bold .. "," .. italic_comments},
+
+ -- LSP
+ LspDiagnosticsError {Error},
+ LspDiagnosticsErrorSign {fg = hsl(red), bg = hsl(sign_column), gui = invert_signs},
+ LspDiagnosticsErrorFloating {LspDiagnosticsError},
+ LspDiagnosticsWarning {fg = hsl(yellow)},
+ LspDiagnosticsWarningSign {
+ LspDiagnosticsWarning,
+ bg = hsl(sign_column),
+ gui = styles.undercurl,
+ sp = hsl(yellow),
+ },
+ LspDiagnosticsWarningFloating {LspDiagnosticsWarning},
+ LspDiagnosticsInformation {fg = hsl(blue)},
+ LspDiagnosticsInformationSign {
+ LspDiagnosticsInformation,
+ bg = hsl(sign_column),
+ gui = invert_signs,
+ },
+ LspDiagnosticsInformationFloating {LspDiagnosticsInformation},
+ LspDiagnosticsHint {fg = hsl(aqua)},
+ LspDiagnosticsHintSign {
+ LspDiagnosticsHint,
+ bg = hsl(sign_column),
+ gui = invert_signs,
+ },
+ LspDiagnosticsHintFloating {LspDiagnosticsHint},
+
+ -- Treesitter
+ TSNone {},
+ TSError {Error},
+ TSPunctDelimiter {Delimiter},
+ TSPunctBracket {Delimiter},
+ TSPunctSpecial {Delimiter},
+ TSConstant {Constant},
+ TSConstBuiltin {Special},
+ TSConstMacro {Define},
+ TSString {String},
+ TSStringRegex {String},
+ TSStringEscape {SpecialChar},
+ TSCharacter {Character},
+ TSNumber {Number},
+ TSBoolean {Boolean},
+ TSFloat {Float},
+ TSFunction {Function},
+ TSFuncBuiltin {Special},
+ TSFuncMacro {Macro},
+ TSParameter {Identifier},
+ TSParameterReference {TSParameter},
+ TSMethod {Function},
+ TSField {Identifier},
+ TSProperty {Identifier},
+ TSConstructor {Special},
+ TSConditional {Conditional},
+ TSRepeat {Repeat},
+ TSLabel {Label},
+ TSOperator {Operator},
+ TSKeyword {Keyword},
+ TSKeywordFunction {Keyword},
+ TSException {Exception},
+ TSType {Type},
+ TSTypeBuiltin {Type},
+ TSNamespace {Include},
+ TSInclude {Include},
+ TSAnnotation {PreProc},
+ TSText {TSNone},
+ TSStrong {gui = styles.bold},
+ TSEmphasis {gui = italic_strings},
+ TSUnderline {gui = styles.underline},
+ TSTitle {Title},
+ TSLiteral {String},
+ TSURI {Underlined},
+ TSVariable {Special},
+ TSVariableBuiltin {Special},
+
+ -- netrw
+ netrwDir {fg = hsl(aqua)},
+ netrwClassify {netrwDir},
+ netrwLink {fg = hsl(gray)},
+ netrwSymLink {fg = hsl(fg1)},
+ netrwExe {fg = hsl(yellow)},
+ netrwComment {netrwLink},
+ netrwList {fg = hsl(blue)},
+ netrwHelpCmd {netrwDir},
+ netrwCmdSep {fg = hsl(fg3)},
+ netrwVersion {fg = hsl(green)},
+
+ -- vim-startify
+ StartifyBracket {fg = hsl(fg3)},
+ StartifyFile {fg = hsl(fg1)},
+ StartifyNumber {fg = hsl(blue)},
+ StartifyPath {fg = hsl(gray)},
+ StartifySlash {StartifyPath},
+ StartifySection {fg = hsl(yellow)},
+ StartifySpecial {fg = hsl(bg2)},
+ StartifyHeader {fg = hsl(orange)},
+ StartifyFooter {fg = hsl(bg2)},
+
+ -- vim-signify
+ SignifySignAdd {fg = hsl(green), bg = hsl(sign_column), gui = invert_signs},
+ SignifySignChange {fg = hsl(aqua), bg = hsl(sign_column), gui = invert_signs},
+ SignifySignDelete {fg = hsl(red), bg = hsl(sign_column), gui = invert_signs},
+
+ -- lua
+ luaIn {fg = hsl(red)},
+ luaFunction {fg = hsl(aqua)},
+ luaTable {fg = hsl(orange)},
+
+ -- golang
+ goDirective {fg = hsl(aqua)},
+ goConstants {fg = hsl(purple)},
+ goDeclaration {fg = hsl(red)},
+ goDeclType {fg = hsl(blue)},
+ goBuiltins {fg = hsl(orange)},
+
+ -- java
+ javaAnnotation {fg = hsl(blue)},
+ javaDocTags {fg = hsl(aqua)},
+ javaCommentTitle {SpecialComment},
+ javaParen {fg = hsl(fg3)},
+ javaParen1 {fg = hsl(fg3)},
+ javaParen2 {fg = hsl(fg3)},
+ javaParen3 {fg = hsl(fg3)},
+ javaParen4 {fg = hsl(fg3)},
+ javaParen5 {fg = hsl(fg3)},
+ javaOperator {fg = hsl(orange)},
+
+ -- xml
+ xmlTag {fg = hsl(aqua), gui = styles.bold},
+ xmlEndTag {fg = hsl(aqua), gui = styles.bold},
+ xmlTagName {fg = hsl(blue)},
+ xmlEqual {fg = hsl(blue)},
+ docbkKeyword {fg = hsl(aqua), gui = styles.bold},
+ xmlDocTypeDecl {fg = hsl(gray)},
+ xmlDocTypeKeyword {fg = hsl(purple)},
+ xmlCdataStart {fg = hsl(gray)},
+ xmlCdataCdata {fg = hsl(purple)},
+ dtdFunction {fg = hsl(gray)},
+ dtdTagName {fg = hsl(purple)},
+ xmlAttrib {fg = hsl(orange)},
+ xmlProcessingDelim {fg = hsl(gray)},
+ dtdParamEntityPunct {fg = hsl(gray)},
+ dtdParamEntityDPunct {fg = hsl(gray)},
+ xmlAttribPunct {fg = hsl(gray)},
+ xmlEntity {fg = hsl(red)},
+ xmlEntityPunct {fg = hsl(red)},
+
+ -- viml
+ vimNotation {fg = hsl(orange)},
+ vimBracket {fg = hsl(orange)},
+ vimMapModKey {fg = hsl(orange)},
+ vimFuncSID {fg = hsl(fg3)},
+ vimSetSep {fg = hsl(fg3)},
+ vimSep {fg = hsl(fg3)},
+ vimContinue {fg = hsl(fg3)},
+
+ -- c
+ cOperator {fg = hsl(purple)},
+ cppOperator {fg = hsl(purple)},
+ cStructure {fg = hsl(orange)},
+
+ -- python
+ pythonBuiltin {fg = hsl(orange)},
+ pythonBuiltinObj {fg = hsl(orange)},
+ pythonBuiltinFunc {fg = hsl(orange)},
+ pythonFunction {fg = hsl(aqua)},
+ pythonDecorator {fg = hsl(red)},
+ pythonInclude {fg = hsl(blue)},
+ pythonImport {fg = hsl(blue)},
+ pythonRun {fg = hsl(blue)},
+ pythonCoding {fg = hsl(blue)},
+ pythonOperator {fg = hsl(red)},
+ pythonException {fg = hsl(red)},
+ pythonExceptions {fg = hsl(purple)},
+ pythonBoolean {fg = hsl(purple)},
+ pythonDot {fg = hsl(fg3)},
+ pythonConditional {fg = hsl(red)},
+ pythonRepeat {fg = hsl(red)},
+ pythonDottedName {fg = hsl(green), gui = styles.bold},
+
+ -- clojure
+ clojureRegexpCharClass {fg = hsl(fg3), gui = styles.bold},
+ clojureKeyword {fg = hsl(blue)},
+ clojureCond {fg = hsl(orange)},
+ clojureSpecial {fg = hsl(orange)},
+ clojureDefine {fg = hsl(orange)},
+
+ clojureFunc {fg = hsl(yellow)},
+ clojureRepeat {fg = hsl(yellow)},
+ clojureCharacter {fg = hsl(aqua)},
+ clojureStringEscape {fg = hsl(aqua)},
+ clojureException {fg = hsl(red)},
+
+ clojureRegexp {fg = hsl(aqua)},
+ clojureRegexpEscape {fg = hsl(aqua)},
+ clojureRegexpMod {clojureRegexpCharClass},
+ clojureRegexpQuantifier {clojureRegexpCharClass},
+
+ clojureParen {fg = hsl(fg3)},
+ clojureAnonArg {fg = hsl(yellow)},
+ clojureVariable {fg = hsl(blue)},
+ clojureMacro {fg = hsl(orange)},
+
+ clojureMeta {fg = hsl(yellow)},
+ clojureDeref {fg = hsl(yellow)},
+ clojureQuote {fg = hsl(yellow)},
+ clojureUnquote {fg = hsl(yellow)},
+
+ -- html
+ htmlTag {fg = hsl(aqua), gui = styles.bold},
+ htmlEndTag {fg = hsl(aqua), gui = styles.bold},
+ htmlTagName {fg = hsl(blue)},
+ htmlArg {fg = hsl(orange)},
+ htmlScriptTag {fg = hsl(purple)},
+ htmlTagN {fg = hsl(fg1)},
+ htmlSpecialTagName {fg = hsl(blue)},
+ htmlSpecialChar {fg = hsl(red)},
+ htmlLink {fg = hsl(fg4), gui = styles.underline},
+ htmlBold {fg = hsl(fg1), gui = styles.bold},
+ htmlBoldUnderline {fg = hsl(fg1), gui = styles.bold .. "," .. styles.underline},
+ htmlBoldItalic {fg = hsl(fg1), gui = styles.bold .. "," .. italic_strings},
+ htmlBoldUnderlineItalic {
+ fg = hsl(fg1),
+ gui = styles.bold .. "," .. styles.underline .. "," .. italic_strings,
+ },
+ htmlItalic {fg = hsl(fg1), gui = italic_strings},
+
+ -- special diffs
+ diffAdded {fg = hsl(green)},
+ diffRemoved {fg = hsl(red)},
+ diffChanged {fg = hsl(aqua)},
+ diffFile {fg = hsl(orange)},
+ diffNewFile {fg = hsl(yellow)},
+ diffLine {fg = hsl(blue)},
+
+ -- css
+ cssBraces {fg = hsl(blue)},
+ cssFunctionName {fg = hsl(yellow)},
+ cssIdentifier {fg = hsl(orange)},
+ cssClassName {fg = hsl(green)},
+ cssColor {fg = hsl(blue)},
+ cssSelectorOp {fg = hsl(blue)},
+ cssSelectorOp2 {fg = hsl(blue)},
+ cssImportant {fg = hsl(green)},
+ cssVendor {fg = hsl(fg1)},
+ cssTextProp {fg = hsl(aqua)},
+ cssAnimationProp {fg = hsl(aqua)},
+ cssUIProp {fg = hsl(yellow)},
+ cssTransformProp {fg = hsl(aqua)},
+ cssTransitionProp {fg = hsl(aqua)},
+ cssPrintProp {fg = hsl(aqua)},
+ cssPositioningProp {fg = hsl(yellow)},
+ cssBoxProp {fg = hsl(aqua)},
+ cssFontDescriptorProp {fg = hsl(aqua)},
+ cssFlexibleBoxProp {fg = hsl(aqua)},
+ cssBorderOutlineProp {fg = hsl(aqua)},
+ cssBackgroundProp {fg = hsl(aqua)},
+ cssMarginProp {fg = hsl(aqua)},
+ cssListProp {fg = hsl(aqua)},
+ cssTableProp {fg = hsl(aqua)},
+ cssFontProp {fg = hsl(aqua)},
+ cssPaddingProp {fg = hsl(aqua)},
+ cssDimensionProp {fg = hsl(aqua)},
+ cssRenderProp {fg = hsl(aqua)},
+ cssColorProp {fg = hsl(aqua)},
+ cssGeneratedContentProp {fg = hsl(aqua)},
+
+ -- js
+ javaScriptBraces {fg = hsl(fg1)},
+ javaScriptFunction {fg = hsl(aqua)},
+ javaScriptIdentifier {fg = hsl(red)},
+ javaScriptMember {fg = hsl(blue)},
+ javaScriptNumber {fg = hsl(purple)},
+ javaScriptNull {fg = hsl(purple)},
+ javaScriptParens {fg = hsl(fg3)},
+ javascriptImport {fg = hsl(aqua)},
+ javascriptExport {fg = hsl(aqua)},
+ javascriptClassKeyword {fg = hsl(aqua)},
+ javascriptClassExtends {fg = hsl(aqua)},
+ javascriptDefault {fg = hsl(aqua)},
+ javascriptClassName {fg = hsl(yellow)},
+ javascriptClassSuperName {fg = hsl(yellow)},
+ javascriptGlobal {fg = hsl(yellow)},
+ javascriptEndColons {fg = hsl(fg1)},
+ javascriptFuncArg {fg = hsl(fg1)},
+ javascriptGlobalMethod {fg = hsl(fg1)},
+ javascriptNodeGlobal {fg = hsl(fg1)},
+ javascriptBOMWindowProp {fg = hsl(fg1)},
+ javascriptArrayMethod {fg = hsl(fg1)},
+ javascriptArrayStaticMethod {fg = hsl(fg1)},
+ javascriptCacheMethod {fg = hsl(fg1)},
+ javascriptDateMethod {fg = hsl(fg1)},
+ javascriptMathStaticMethod {fg = hsl(fg1)},
+ javascriptProp {fg = hsl(fg1)},
+ javascriptURLUtilsProp {fg = hsl(fg1)},
+ javascriptBOMNavigatorProp {fg = hsl(fg1)},
+ javascriptDOMDocMethod {fg = hsl(fg1)},
+ javascriptDOMDocProp {fg = hsl(fg1)},
+ javascriptBOMLocationMethod {fg = hsl(fg1)},
+ javascriptBOMWindowMethod {fg = hsl(fg1)},
+ javascriptStringMethod {fg = hsl(fg1)},
+ javascriptVariable {fg = hsl(orange)},
+ javascriptClassSuper {fg = hsl(orange)},
+ javascriptFuncKeyword {fg = hsl(aqua)},
+ javascriptAsyncFunc {fg = hsl(aqua)},
+ javascriptClassStatic {fg = hsl(orange)},
+ javascriptOperator {fg = hsl(red)},
+ javascriptForOperator {fg = hsl(red)},
+ javascriptYield {fg = hsl(red)},
+ javascriptExceptions {fg = hsl(red)},
+ javascriptMessage {fg = hsl(red)},
+ javascriptTemplateSB {fg = hsl(aqua)},
+ javascriptTemplateSubstitution {fg = hsl(fg1)},
+ javascriptLabel {fg = hsl(fg1)},
+ javascriptObjectLabel {fg = hsl(fg1)},
+ javascriptPropertyName {fg = hsl(fg1)},
+ javascriptLogicSymbols {fg = hsl(fg1)},
+ javascriptArrowFunc {fg = hsl(yellow)},
+ javascriptDocParamName {fg = hsl(fg4)},
+ javascriptDocTags {fg = hsl(fg4)},
+ javascriptDocNotation {fg = hsl(fg4)},
+ javascriptDocParamType {fg = hsl(fg4)},
+ javascriptDocNamedParamType {fg = hsl(fg4)},
+ javascriptBrackets {fg = hsl(fg1)},
+ javascriptDOMElemAttrs {fg = hsl(fg1)},
+ javascriptDOMEventMethod {fg = hsl(fg1)},
+ javascriptDOMNodeMethod {fg = hsl(fg1)},
+ javascriptDOMStorageMethod {fg = hsl(fg1)},
+ javascriptHeadersMethod {fg = hsl(fg1)},
+ javascriptAsyncFuncKeyword {fg = hsl(red)},
+ javascriptAwaitFuncKeyword {fg = hsl(red)},
+ jsClassKeyword {fg = hsl(aqua)},
+ jsExtendsKeyword {fg = hsl(aqua)},
+ jsExportDefault {fg = hsl(aqua)},
+ jsTemplateBraces {fg = hsl(aqua)},
+ jsGlobalNodeObjects {fg = hsl(blue)},
+ jsGlobalObjects {fg = hsl(blue)},
+ jsObjectKey {fg = hsl(green), gui = styles.bold},
+ jsFunction {fg = hsl(aqua)},
+ jsFuncCall {fg = hsl(blue)},
+ jsFuncParens {fg = hsl(fg3)},
+ jsParens {fg = hsl(fg3)},
+ jsNull {fg = hsl(purple)},
+ jsUndefined {fg = hsl(purple)},
+ jsClassDefinition {fg = hsl(yellow)},
+ jsOperatorKeyword {fg = hsl(red)},
+
+ -- typescript
+ typescriptReserved {fg = hsl(aqua)},
+ typescriptLabel {fg = hsl(aqua)},
+ typescriptFuncKeyword {fg = hsl(aqua)},
+ typescriptIdentifier {fg = hsl(orange)},
+ typescriptBraces {fg = hsl(fg1)},
+ typescriptEndColons {fg = hsl(fg1)},
+ typescriptDOMObjects {fg = hsl(fg1)},
+ typescriptAjaxMethods {fg = hsl(fg1)},
+ typescriptLogicSymbols {fg = hsl(fg1)},
+ typescriptDocSeeTag {SpecialComment},
+ typescriptDocParam {SpecialComment},
+ typescriptDocTags {SpecialComment},
+ typescriptGlobalObjects {fg = hsl(fg1)},
+ typescriptParens {fg = hsl(fg3)},
+ typescriptOpSymbols {fg = hsl(fg3)},
+ typescriptHtmlElemProperties {fg = hsl(fg1)},
+ typescriptNull {fg = hsl(purple)},
+ typescriptInterpolationDelimiter {fg = hsl(aqua)},
+
+ -- jsx
+ jsxTagName {fg = hsl(aqua)},
+ jsxComponentName {fg = hsl(green)},
+ jsxCloseString {fg = hsl(fg4)},
+ jsxAttrib {fg = hsl(yellow)},
+ jsxEqual {fg = hsl(aqua)},
+
+ -- purescript
+ purescriptModuleKeyword {fg = hsl(aqua)},
+ purescriptModuleName {fg = hsl(fg1)},
+ purescriptWhere {fg = hsl(aqua)},
+ purescriptDelimiter {fg = hsl(fg4)},
+ purescriptType {fg = hsl(fg1)},
+ purescriptImportKeyword {fg = hsl(aqua)},
+ purescriptHidingKeyword {fg = hsl(aqua)},
+ purescriptAsKeyword {fg = hsl(aqua)},
+ purescriptStructure {fg = hsl(aqua)},
+ purescriptOperator {fg = hsl(blue)},
+ purescriptTypeVar {fg = hsl(fg1)},
+ purescriptConstructor {fg = hsl(fg1)},
+ purescriptFunction {fg = hsl(fg1)},
+ purescriptConditional {fg = hsl(orange)},
+ purescriptBacktick {fg = hsl(orange)},
+
+ -- coffeescript
+ coffeeExtendedOp {fg = hsl(fg3)},
+ coffeeSpecialOp {fg = hsl(fg3)},
+ coffeeCurly {fg = hsl(orange)},
+ coffeeParen {fg = hsl(fg3)},
+ coffeeBracket {fg = hsl(orange)},
+
+ -- ruby
+ rubyStringDelimiter {fg = hsl(green)},
+ rubyInterpolationDelimiter {fg = hsl(aqua)},
+
+ -- obj-c
+ objcTypeModifier {fg = hsl(red)},
+ objcDirective {fg = hsl(blue)},
+
+ -- moonscript
+ moonSpecialOp {fg = hsl(fg3)},
+ moonExtendedOp {fg = hsl(fg3)},
+ moonFunction {fg = hsl(fg3)},
+ moonObject {fg = hsl(yellow)},
+
+ -- elixir
+ elixirDocString {SpecialComment},
+ elixirStringDelimiter {fg = hsl(green)},
+ elixirInterpolationDelimiter {fg = hsl(aqua)},
+ elixirModuleDeclaration {fg = hsl(yellow)},
+
+ -- scala
+ scalaNameDefinition {fg = hsl(fg1)},
+ scalaCaseFollowing {fg = hsl(fg1)},
+ scalaCapitalWord {fg = hsl(fg1)},
+ scalaTypeExtension {fg = hsl(fg1)},
+ scalaKeyword {fg = hsl(red)},
+ scalaKeywordModifier {fg = hsl(red)},
+ scalaSpecial {fg = hsl(aqua)},
+ scalaOperator {fg = hsl(fg1)},
+ scalaTypeDeclaration {fg = hsl(yellow)},
+ scalaTypeTypePostDeclaration {fg = hsl(yellow)},
+ scalaInstanceDeclaration {fg = hsl(fg1)},
+ scalaInterpolation {fg = hsl(aqua)},
+
+ -- markdown
+ markdownItalic {fg = hsl(fg3), gui = italic_strings},
+ markdownH1 {fg = hsl(green), gui = styles.bold},
+ markdownH2 {markdownH1},
+ markdownH3 {fg = hsl(yellow), gui = styles.bold},
+ markdownH4 {markdownH3},
+ markdownH5 {fg = hsl(yellow)},
+ markdownH6 {markdownH5},
+ markdownCode {fg = hsl(aqua)},
+ markdownCodeBlock {fg = hsl(aqua)},
+ markdownCodeDelimiter {fg = hsl(aqua)},
+ markdownBlockquote {fg = hsl(gray)},
+ markdownListMarker {fg = hsl(gray)},
+ markdownOrderedListMarker {fg = hsl(gray)},
+ markdownRule {fg = hsl(gray)},
+ markdownHeadingRule {fg = hsl(gray)},
+ markdownUrlDelimiter {fg = hsl(fg3)},
+ markdownLinkDelimiter {fg = hsl(fg3)},
+ markdownLinkTextDelimiter {fg = hsl(fg3)},
+ markdownHeadingDelimiter {fg = hsl(orange)},
+ markdownUrl {fg = hsl(purple)},
+ markdownUrlTitleDelimiter {fg = hsl(green)},
+ markdownLinkText {fg = hsl(gray), gui = styles.underline},
+ markdownIdDeclaration {markdownLinkText},
+
+ -- haskell
+ haskellType {fg = hsl(blue)},
+ haskellIdentifier {fg = hsl(aqua)},
+ haskellSeparator {fg = hsl(fg4)},
+ haskellDelimiter {fg = hsl(orange)},
+ haskellOperators {fg = hsl(purple)},
+ haskellBacktick {fg = hsl(orange)},
+ haskellStatement {fg = hsl(purple)},
+ haskellConditional {fg = hsl(purple)},
+ haskellLet {fg = hsl(red)},
+ haskellDefault {fg = hsl(red)},
+ haskellWhere {fg = hsl(red)},
+ haskellBottom {fg = hsl(red), gui = styles.bold},
+ haskellImportKeywords {fg = hsl(purple), gui = styles.bold},
+ haskellDeclKeyword {fg = hsl(orange)},
+ haskellDecl {fg = hsl(orange)},
+ haskellDeriving {fg = hsl(purple)},
+ haskellAssocType {fg = hsl(aqua)},
+ haskellNumber {fg = hsl(aqua)},
+ haskellPragma {fg = hsl(red), gui = styles.bold},
+ haskellTH {fg = hsl(aqua), gui = styles.bold},
+ haskellForeignKeywords {fg = hsl(green)},
+ haskellKeyword {fg = hsl(red)},
+ haskellFloat {fg = hsl(aqua)},
+ haskellInfix {fg = hsl(purple)},
+ haskellQuote {fg = hsl(green), gui = styles.bold},
+ haskellShebang {fg = hsl(yellow), gui = styles.bold},
+ haskellLiquid {fg = hsl(purple), gui = styles.bold},
+ haskellQuasiQuoted {fg = hsl(blue), gui = styles.bold},
+ haskellRecursiveDo {fg = hsl(purple)},
+ haskellQuotedType {fg = hsl(red)},
+ haskellPreProc {fg = hsl(fg4)},
+ haskellTypeRoles {fg = hsl(red), gui = styles.bold},
+ haskellTypeForall {fg = hsl(red)},
+ haskellPatternKeyword {fg = hsl(blue)},
+
+ -- json
+ jsonKeyword {fg = hsl(green)},
+ jsonQuote {fg = hsl(green)},
+ jsonBraces {fg = hsl(fg1)},
+ jsonString {fg = hsl(fg1)},
+
+ -- mail.vim
+ mailQuoted1 {fg = hsl(aqua)},
+ mailQuoted2 {fg = hsl(purple)},
+ mailQuoted3 {fg = hsl(yellow)},
+ mailQuoted4 {fg = hsl(green)},
+ mailQuoted5 {fg = hsl(red)},
+ mailQuoted6 {fg = hsl(orange)},
+ mailSignature {SpecialComment},
+
+ -- csharp
+ csBraces {fg = hsl(fg1)},
+ csEndColon {fg = hsl(fg1)},
+ csLogicSymbols {fg = hsl(fg1)},
+ csParens {fg = hsl(fg3)},
+ csOpSymbols {fg = hsl(fg3)},
+ csInterpolationDelimiter {fg = hsl(fg3)},
+ csInterpolationAlignDel {fg = hsl(aqua), gui = styles.bold},
+ csInterpolationFormat {fg = hsl(aqua)},
+ csInterpolationFormatDel {fg = hsl(aqua), gui = styles.bold},
+
+ -- rust
+ rustSigil {fg = hsl(orange)},
+ rustEscape {fg = hsl(aqua)},
+ rustStringContinuation {fg = hsl(aqua)},
+ rustEnum {fg = hsl(aqua)},
+ rustStructure {fg = hsl(aqua)},
+ rustModPathSep {fg = hsl(fg2)},
+ rustCommentLineDoc {SpecialComment},
+ rustDefault {fg = hsl(aqua)},
+
+ -- ocaml
+ ocamlOperator {fg = hsl(fg1)},
+ ocamlKeyChar {fg = hsl(orange)},
+ ocamlArrow {fg = hsl(orange)},
+ ocamlInfixOpKeyword {fg = hsl(red)},
+ ocamlConstructor {fg = hsl(orange)},
+
+ -- coc.nvim
+ CocErrorSign {fg = hsl(red), bg = hsl(sign_column)},
+ CocWarningSign {fg = hsl(orange), bg = hsl(sign_column)},
+ CocInfoSign {fg = hsl(blue), bg = hsl(sign_column)},
+ CocHintSign {fg = hsl(aqua), bg = hsl(sign_column)},
+ CocErrorFloat {fg = hsl(red)},
+ CocWarningFloat {fg = hsl(orange)},
+ CocInfoFloat {fg = hsl(blue)},
+ CocHintFloat {fg = hsl(aqua)},
+ CocDiagnosticsError {fg = hsl(red)},
+ CocDiagnosticsWarning {fg = hsl(orange)},
+ CocDiagnosticsInfo {fg = hsl(blue)},
+ CocDiagnosticsHint {fg = hsl(aqua)},
+ CocSelectedText {fg = hsl(red)},
+ CocCodeLens {fg = hsl(gray)},
+ CocErrorHighlight {fg = hsl(red), gui = styles.underline},
+ CocWarningHighlight {fg = hsl(orange), gui = styles.underline},
+ CocInfoHighlight {fg = hsl(blue), gui = styles.underline},
+ CocHintHighlight {fg = hsl(aqua), gui = styles.underline},
+
+ -- nerdtree
+ NERDTreeDir {fg = hsl(aqua)},
+ NERDTreeDirSlash {fg = hsl(aqua)},
+ NERDTreeOpenable {fg = hsl(orange)},
+ NERDTreeClosable {fg = hsl(orange)},
+ NERDTreeFile {fg = hsl(fg1)},
+ NERDTreeExecFile {fg = hsl(yellow)},
+ NERDTreeUp {fg = hsl(gray)},
+ NERDTreeCWD {fg = hsl(green)},
+ NERDTreeHelp {fg = hsl(fg1)},
+ NERDTreeToggleOn {fg = hsl(green)},
+ NERDTreeToggleOff {fg = hsl(red)},
+
+ -- vim dirvish
+ DirvishPathTail {fg = hsl(aqua)},
+ DirvishArg {fg = hsl(yellow)},
+
+ -- ale.vim
+ ALEError {fg = hsl(red), gui = styles.underline},
+ ALEWarning {fg = hsl(yellow), gui = styles.underline},
+ ALEInfo {fg = hsl(blue), gui = styles.underline},
+ ALEErrorSign {fg = hsl(red), bg = hsl(sign_column)},
+ ALEWarningSign {fg = hsl(yellow), bg = hsl(sign_column)},
+ ALEInfoSign {fg = hsl(blue), bg = hsl(sign_column)},
+ ALEVirtualTextError {fg = hsl(red)},
+ ALEVirtualTextWarning {fg = hsl(yellow)},
+ ALEVirtualTextInfo {fg = hsl(blue)},
+
+ -- BufTabLine
+ BufTabLineCurrent {fg = hsl(bg0), bg = hsl(fg4)},
+ BufTabLineActive {fg = hsl(fg4), bg = hsl(bg2)},
+ BufTabLineHidden {fg = hsl(bg4), bg = hsl(bg1)},
+ BufTabLineFill {fg = hsl(bg0), bg = hsl(bg0)},
+
+ -- fzf
+ Fzf1 {fg = hsl(blue), bg = hsl(bg1)},
+ Fzf2 {fg = hsl(orange), bg = hsl(bg1)},
+ Fzf3 {fg = hsl(fg4), bg = hsl(bg1)},
+
+ -- ctrlP
+ CtrlPMatch {fg = hsl(yellow)},
+ CtrlPNoEntries {fg = hsl(red)},
+ CtrlPPrtBase {fg = hsl(bg2)},
+ CtrlPPrtCursor {fg = hsl(blue)},
+ CtrlPLinePre {fg = hsl(bg2)},
+ CtrlPMode1 {fg = hsl(blue), bg = hsl(bg2), gui = styles.bold},
+ CtrlPMode2 {fg = hsl(bg0), bg = hsl(blue), gui = styles.bold},
+ CtrlPStats {fg = hsl(fg4), bg = hsl(bg2), gui = styles.bold},
+
+ -- showmarks
+ ShowMarksHLl {fg = hsl(blue), bg = hsl(sign_column)},
+ ShowMarksHLu {fg = hsl(blue), bg = hsl(sign_column)},
+ ShowMarksHLo {fg = hsl(blue), bg = hsl(sign_column)},
+ ShowMarksHLm {fg = hsl(blue), bg = hsl(sign_column)},
+
+ -- signature
+ SignatureMarkText {fg = hsl(blue), bg = hsl(sign_column)},
+ SignatureMarkerText {fg = hsl(purple), bg = hsl(sign_column)},
+
+ -- gitgutter
+ GitGutterAdd {fg = hsl(green), bg = hsl(sign_column)},
+ GitGutterChange {fg = hsl(aqua), bg = hsl(sign_column)},
+ GitGutterDelete {fg = hsl(red), bg = hsl(sign_column)},
+ GitGutterChangeDelete {fg = hsl(aqua), bg = hsl(sign_column)},
+
+ -- gitcommit
+ gitcommitSelectedFile {fg = hsl(green)},
+ gitcommitDiscardedFile {fg = hsl(red)},
+
+ -- lspsaga
+ LspSagaDiagnosticBorder {NormalNC},
+ LspSagaDiagnosticHeader {fg = hsl(red)},
+ LspSagaDiagnosticTruncateLine {NormalNC},
+ LspFloatWinBorder {NormalNC},
+ LspSagaBorderTitle {Title},
+ TargetWord {Error},
+ ReferencesCount {Title},
+ ReferencesIcon {Special},
+ DefinitionCount {Title},
+ TargetFileName {Comment},
+ DefinitionIcon {Special},
+ ProviderTruncateLine {NormalNC},
+ SagaShadow {bg = hsl(bg0)},
+ LspSagaFinderSelection {Search},
+ DiagnosticTruncateLine {NormalNC},
+ DiagnosticError {LspDiagnosticsError},
+ DiagnosticWarning {LspDiagnosticsWarning},
+ DiagnosticInformation {LspDiagnosticsInformation},
+ DiagnosticHint {LspDiagnosticsHint},
+ DefinitionPreviewTitle {Title},
+ LspSagaShTruncateLine {NormalNC},
+ LspSagaDocTruncateLine {NormalNC},
+ LineDiagTuncateLine {NormalNC},
+ LspSagaCodeActionTitle {Title},
+ LspSagaCodeActionTruncateLine {NormalNC},
+ LspSagaCodeActionContent {Normal},
+ LspSagaRenamePromptPrefix {fg = hsl(fg2)},
+ LspSagaRenameBorder {gui = styles.bold},
+ LspSagaHoverBorder {gui = styles.bold},
+ LspSagaSignatureHelpBorder {gui = styles.bold},
+ LspSagaCodeActionBorder {gui = styles.bold},
+ LspSagaAutoPreview {},
+ LspSagaDefPreviewBorder {gui = styles.bold},
+ LspLinesDiagBorder {gui = styles.bold},
+
+ -- telescope
+ TelescopeSelection {fg = hsl(orange), gui = styles.bold},
+ TelescopeSlectionCaret {fg = hsl(red)},
+ TelescopeMultiSelection {fg = hsl(gray)},
+ TelescopeNormal {fg = hsl(fg1)},
+ TelescopeBorder {TelescopeNormal},
+ TelescopePromptBorder {TelescopeNormal},
+ TelescopeResultsBorder {TelescopeNormal},
+ TelescopePreviewBorder {TelescopeNormal},
+ TelescopeMatching {fg = hsl(blue)},
+ TelescopePromptPrefix {fg = hsl(red)},
+ TelescopePrompt {TelescopeNormal},
+ }
+end)
+
+return theme
diff --git a/lua/gruvbox/palette.lua b/lua/gruvbox/palette.lua
deleted file mode 100644
index acd2677..0000000
--- a/lua/gruvbox/palette.lua
+++ /dev/null
@@ -1,41 +0,0 @@
--- gruvbox color palette
-local palette = {
- dark0_hard = "#1d2021",
- dark0 = "#282828",
- dark0_soft = "#32302f",
- dark1 = "#3c3836",
- dark2 = "#504945",
- dark3 = "#665c54",
- dark4 = "#7c6f64",
- light0_hard = "#f9f5d7",
- light0 = "#fbf1c7",
- light0_soft = "#f2e5bc",
- light1 = "#ebdbb2",
- light2 = "#d5c4a1",
- light3 = "#bdae93",
- light4 = "#a89984",
- bright_red = "#fb4934",
- bright_green = "#b8bb26",
- bright_yellow = "#fabd2f",
- bright_blue = "#83a598",
- bright_purple = "#d3869b",
- bright_aqua = "#8ec07c",
- bright_orange = "#fe8019",
- neutral_red = "#cc241d",
- neutral_green = "#98971a",
- neutral_yellow = "#d79921",
- neutral_blue = "#458588",
- neutral_purple = "#b16286",
- neutral_aqua = "#689d6a",
- neutral_orange = "#d65d0e",
- faded_red = "#9d0006",
- faded_green = "#79740e",
- faded_yellow = "#b57614",
- faded_blue = "#076678",
- faded_purple = "#8f3f71",
- faded_aqua = "#427b58",
- faded_orange = "#af3a03",
- gray = "#928374",
-}
-
-return palette