From e954e2ff96a148bdd12329912b70929f561e0212 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ellison=20Lea=CC=83o?= Date: Sat, 27 Feb 2021 23:51:50 -0300 Subject: now using gruvbox highlight groups to keep same consistency with vimscript --- lua/gruvbox/init.lua | 1238 ++++++++++++++++++++++++++------------------------ 1 file changed, 656 insertions(+), 582 deletions(-) (limited to 'lua') diff --git a/lua/gruvbox/init.lua b/lua/gruvbox/init.lua index 5277627..70c3357 100644 --- a/lua/gruvbox/init.lua +++ b/lua/gruvbox/init.lua @@ -39,6 +39,7 @@ local colors = { faded_orange = "#af3a03", gray = "#928374", } + -- options (dark mode by default) local bg0 = colors.dark0 local bg1 = colors.dark1 @@ -59,8 +60,8 @@ 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 +local sign_column = bg1 -- global settings local settings = { @@ -70,6 +71,7 @@ local settings = { italic = true, undercurl = true, underline = true, + inverse = true, improved_strings = false, improved_warnings = false, invert_signs = false, @@ -77,6 +79,7 @@ local settings = { invert_tabline = false, italicize_comments = true, italicize_strings = false, + invert_intend_guides = false, } local styles = { @@ -85,7 +88,6 @@ local styles = { bold = "bold", undercurl = "undercurl", underline = "underline", - boldunderline = "bold,underline", } -- setting default values @@ -96,6 +98,31 @@ for k, val in pairs(settings) do end end +-- styles check +if not vim.g.gruvbox_bold then + styles.bold = "" +end + +if not vim.g.gruvbox_underline then + styles.underline = "" +end + +if not vim.g.gruvbox_italic then + styles.italic = "" +end + +if not vim.g.gruvbox_inverse then + styles.inverse = "" +end + +if not vim.g.gruvbox_inverse then + styles.inverse = "" +end + +if not vim.g.gruvbox_undercurl then + styles.undercurl = "" +end + -- set colors_name var vim.g.colors_name = "gruvbox" @@ -134,14 +161,14 @@ if bg == "light" then orange = colors.faded_orange end -local hls_cursor = orange +local hls_cursor = hsl(orange) if vim.g.gruvbox_hls_cursor ~= nil then - hls_cursor = colors[vim.g.gruvbox_hls_cursor] + hls_cursor = hsl(colors[vim.g.gruvbox_hls_cursor]) end -local hls_highlight = yellow +local hls_highlight = hsl(yellow) if vim.g.gruvbox_hls_cursor ~= nil then - hls_cursor = colors[vim.g.gruvbox_hls_highlight] + hls_highlight = hsl(colors[vim.g.gruvbox_hls_highlight]) end local number_column @@ -149,14 +176,14 @@ if vim.g.gruvbox_number_column ~= nil then number_column = hsl(colors[vim.g.gruvbox_number_column]) end -local color_column = bg1 +local color_column = hsl(bg1) if vim.g.gruvbox_color_column ~= nil then - color_column = colors[vim.g.gruvbox_color_column] + color_column = hsl(colors[vim.g.gruvbox_color_column]) end -local vert_split = bg0 +local vert_split = hsl(bg0) if vim.g.gruvbox_vert_split ~= nil then - vert_split = colors[vim.g.gruvbox_vert_split] + vert_split = hsl(colors[vim.g.gruvbox_vert_split]) end local invert_signs @@ -174,9 +201,9 @@ if vim.g.gruvbox_invert_tabline then invert_tabline = styles.inverse end -local tabline_sel = green +local tabline_sel = hsl(green) if vim.g.gruvbox_tabline_sel then - tabline_sel = colors[vim.g.gruvbox_tabline_sel] + tabline_sel = hsl(colors[vim.g.gruvbox_tabline_sel]) end local italic_comments = styles.italic @@ -189,11 +216,20 @@ 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} +local improved_strings_fg = hsl(fg1) +local improved_strings_bg = hsl(bg1) +local improved_strings_gui = italic_strings + +local special_string_fg = hsl(orange) +local special_string_bg = hsl(bg1) +local special_string_gui = italic_strings + if not vim.g.gruvbox_improved_strings then - special = {fg = hsl(orange)} - special_string = {fg = hsl(green), gui = italic_strings} + improved_strings_fg = hsl(green) + improved_strings_bg = nil + + special_string_bg = nil + special_string_gui = nil end -- neovim terminal mode colors @@ -212,549 +248,583 @@ vim.g.terminal_color_6 = colors.neutral_aqua vim.g.terminal_color_14 = aqua vim.g.terminal_color_7 = fg4 vim.g.terminal_color_15 = fg1 +--[[ +]] local groups = lush(function() return { - -- EndOfBuffer { }, - -- TermCursor { }, - -- TermCursorNC { }, - -- Substitute { }, - -- MsgArea { }, - -- MsgSeparator { }, - -- Whitespace { }, -- Base groups - ColorColumn {bg = hsl(color_column)}, - Conceal {bg = hsl(blue)}, + GruvboxFg0 {fg = fg0}, + GruvboxFg1 {fg = fg1}, + GruvboxFg2 {fg = fg2}, + GruvboxFg3 {fg = fg3}, + GruvboxFg4 {fg = fg4}, + GruvboxGray {fg = gray}, + GruvboxBg0 {fg = bg0}, + GruvboxBg1 {fg = bg1}, + GruvboxBg2 {fg = bg2}, + GruvboxBg3 {fg = bg3}, + GruvboxBg4 {fg = bg4}, + + GruvboxRed {fg = red}, + GruvboxRedBold {fg = red, gui = styles.bold}, + GruvboxGreen {fg = green}, + GruvboxGreenBold {fg = green, gui = styles.bold}, + GruvboxYellow {fg = yellow}, + GruvboxYellowBold {fg = yellow, gui = styles.bold}, + GruvboxBlue {fg = blue}, + GruvboxBlueBold {fg = blue, gui = styles.bold}, + GruvboxPurple {fg = purple}, + GruvboxPurpleBold {fg = purple, gui = styles.bold}, + GruvboxAqua {fg = aqua}, + GruvboxAquaBold {fg = aqua, gui = styles.bold}, + GruvboxOrange {fg = orange}, + GruvboxOrangeBold {fg = orange, gui = styles.bold}, + + GruvboxRedSign {fg = red, bg = sign_column, gui = styles.inverse}, + GruvboxGreenSign {fg = green, bg = sign_column, gui = styles.inverse}, + GruvboxYellowSign {fg = yellow, bg = sign_column, gui = styles.inverse}, + GruvboxBlueSign {fg = blue, bg = sign_column, gui = styles.inverse}, + GruvboxPurpleSign {fg = purple, bg = sign_column, gui = styles.inverse}, + GruvboxAquaSign {fg = aqua, bg = sign_column, gui = styles.inverse}, + GruvboxOrangeSign {fg = orange, bg = sign_column, gui = styles.inverse}, + + GruvboxRedUnderline {gui = styles.undercurl, sp = red}, + GruvboxGreenUnderline {gui = styles.undercurl, sp = green}, + GruvboxYellowUnderline {gui = styles.undercurl, sp = yellow}, + GruvboxBlueUnderline {gui = styles.undercurl, sp = blue}, + GruvboxPurpleUnderline {gui = styles.undercurl, sp = purple}, + GruvboxAquaUnderline {gui = styles.undercurl, sp = aqua}, + GruvboxOrangeUnderline {gui = styles.undercurl, sp = orange}, + + ColorColumn {bg = color_column}, + Conceal {fg = blue}, Cursor {gui = styles.inverse}, lCursor {Cursor}, + iCursor {Cursor}, + vCursor {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)}, + CursorLine {bg = bg1}, + CursorColumn {CursorLine}, + Directory {GruvboxRedBold}, + DiffAdd {fg = green, bg = bg0, gui = invert_signs}, + DiffChange {fg = aqua, bg = bg0, gui = invert_signs}, + DiffDelete {fg = red, bg = bg0, gui = invert_signs}, + DiffText {fg = yellow, bg = bg0, gui = invert_signs}, + ErrorMsg {fg = bg0, bg = red, gui = styles.bold}, + VertSplit {fg = bg3, bg = vert_split}, + Folded {fg = gray, bg = bg1, gui = italic_strings}, + FoldColumn {fg = gray, bg = bg1}, + SignColumn {bg = sign_column}, + IncSearch {fg = hls_cursor, bg = bg0, gui = styles.inverse}, + LineNr {fg = bg4, bg = number_column}, + CursorLineNr {fg = yellow, bg = bg1}, + MatchParen {bg = bg3, gui = styles.bold}, + ModeMsg {GruvboxYellowBold}, + MoreMsg {GruvboxYellowBold}, + NonText {GruvboxBg2}, + Normal {fg = fg1, bg = 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(bg0), 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}, + Pmenu {fg = fg1, bg = bg2}, + PmenuSel {fg = bg2, bg = blue, gui = styles.bold}, + PmenuSbar {bg = bg2}, + PmenuThumb {bg = bg4}, + Question {GruvboxOrangeBold}, + QuickFixLine {fg = bg0, bg = yellow, gui = styles.bold}, + Search {fg = hls_highlight, bg = bg0, gui = styles.inverse}, + SpecialKey {GruvboxFg4}, + SpellRare {GruvboxPurpleUnderline}, + SpellBad {GruvboxRedUnderline}, + StatusLine {fg = bg2, bg = fg1, gui = styles.inverse}, + StatusLineNC {fg = bg1, bg = fg4, gui = styles.inverse}, + TabLineFill {fg = bg4, bg = bg1, gui = invert_tabline}, + TabLine {fg = bg4, bg = bg1, gui = invert_tabline}, + TabLineSel {fg = tabline_sel, bg = bg1, gui = invert_tabline}, + Title {GruvboxGreenBold}, + Visual {bg = bg3, gui = invert_selection}, + VisualNOS {Visual}, + WarningMsg {GruvboxRedBold}, + WildMenu {fg = blue, bg = bg2, gui = styles.bold}, + Constant {GruvboxPurple}, + -- Special {fg = special_string_fg, bg = special_string_bg, gui = special_string_gui}, + Special{}, + String { + fg = improved_strings_fg, + bg = improved_strings_bg, + gui = improved_strings_gui, + }, + Character {GruvboxPurple}, + Number {GruvboxPurple}, + Boolean {GruvboxPurple}, + Float {GruvboxPurple}, + Identifier {GruvboxBlue}, + Function {GruvboxGreenBold}, + Statement {GruvboxRed}, + Conditional {GruvboxRed}, + Repeat {GruvboxRed}, + Label {GruvboxRed}, + Exception {GruvboxRed}, + Keyword {GruvboxRed}, + Operator {GruvboxFg1}, + PreProc {GruvboxAqua}, + Include {GruvboxAqua}, + Define {GruvboxAqua}, + Macro {GruvboxAqua}, + PreCondit {GruvboxAqua}, + Type {GruvboxYellow}, + StorageClass {GruvboxOrange}, + Structure {GruvboxAqua}, + Typedef {GruvboxYellow}, + SpecialChar {GruvboxRed}, + Tag {GruvboxAquaBold}, + Delimiter {GruvboxFg0}, + Comment {fg = gray, gui = italic_comments}, + Debug {GruvboxRed}, + Underlined {fg = blue, gui = styles.underline}, Bold {gui = styles.bold}, Italic {gui = styles.italic}, Ignore {}, - Error {fg = hsl(red), gui = styles.boldunderline}, -- TODO: check if we have some abstraction to merge two styles - Todo {fg = hsl(fg0), gui = styles.bold .. "," .. italic_comments}, + Error {fg = red, gui = styles.bold .. "," .. styles.inverse}, + Todo {fg = fg0, gui = styles.bold .. "," .. italic_comments}, -- 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)}, + netrwDir {GruvboxAqua}, + netrwClassify {GruvboxAqua}, + netrwLink {GruvboxGray}, + netrwSymLink {GruvboxFg1}, + netrwExe {GruvboxYellow}, + netrwComment {GruvboxGray}, + netrwList {GruvboxBlue}, + netrwHelpCmd {GruvboxAqua}, + netrwCmdSep {GruvboxFg3}, + netrwVersion {GruvboxGreen}, -- golang - goDirective {fg = hsl(aqua)}, - goConstants {fg = hsl(purple)}, - goDeclaration {fg = hsl(red)}, - goDeclType {fg = hsl(blue)}, - goBuiltins {fg = hsl(orange)}, + goDirective {GruvboxAqua}, + goConstants {GruvboxPurple}, + goDeclaration {GruvboxRed}, + goDeclType {GruvboxBlue}, + goBuiltins {GruvboxOrange}, -- 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)}, + javaAnnotation {GruvboxBlue}, + javaDocTags {GruvboxAqua}, + javaCommentTitle {Comment}, + javaParen {GruvboxFg3}, + javaParen1 {GruvboxFg3}, + javaParen2 {GruvboxFg3}, + javaParen3 {GruvboxFg3}, + javaParen4 {GruvboxFg3}, + javaParen5 {GruvboxFg3}, + javaOperator {GruvboxOrange}, -- 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)}, + xmlTag {GruvboxAquaBold}, + xmlEndTag {GruvboxAquaBold}, + xmlTagName {GruvboxBlue}, + xmlEqual {GruvboxBlue}, + docbkKeyword {GruvboxAquaBold}, + xmlDocTypeDecl {GruvboxGray}, + xmlDocTypeKeyword {GruvboxPurple}, + xmlCdataStart {GruvboxGray}, + xmlCdataCdata {GruvboxPurple}, + dtdFunction {GruvboxGray}, + dtdTagName {GruvboxPurple}, + xmlAttrib {GruvboxOrange}, + xmlProcessingDelim {GruvboxGray}, + dtdParamEntityPunct {GruvboxGray}, + dtdParamEntityDPunct {GruvboxGray}, + xmlAttribPunct {GruvboxGray}, + xmlEntity {GruvboxRed}, + xmlEntityPunct {GruvboxRed}, -- 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)}, + vimNotation {GruvboxOrange}, + vimBracket {GruvboxOrange}, + vimMapModKey {GruvboxOrange}, + vimFuncSID {GruvboxFg3}, + vimSetSep {GruvboxFg3}, + vimSep {GruvboxFg3}, + vimContinue {GruvboxFg3}, -- c - cOperator {fg = hsl(purple)}, - cppOperator {fg = hsl(purple)}, - cStructure {fg = hsl(orange)}, + cOperator {GruvboxPurple}, + cppOperator {GruvboxPurple}, + cStructure {GruvboxOrange}, -- 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}, + pythonBuiltin {GruvboxOrange}, + pythonBuiltinObj {GruvboxOrange}, + pythonBuiltinFunc {GruvboxOrange}, + pythonFunction {GruvboxAqua}, + pythonDecorator {GruvboxRed}, + pythonInclude {GruvboxBlue}, + pythonImport {GruvboxBlue}, + pythonRun {GruvboxBlue}, + pythonCoding {GruvboxBlue}, + pythonOperator {GruvboxRed}, + pythonException {GruvboxRed}, + pythonExceptions {GruvboxPurple}, + pythonBoolean {GruvboxPurple}, + pythonDot {GruvboxFg3}, + pythonConditional {GruvboxRed}, + pythonRepeat {GruvboxRed}, + pythonDottedName {GruvboxGreenBold}, -- 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)}, + clojureKeyword {GruvboxBlue}, + clojureCond {GruvboxOrange}, + clojureSpecial {GruvboxOrange}, + clojureDefine {GruvboxOrange}, + clojureFunc {GruvboxYellow}, + clojureRepeat {GruvboxYellow}, + clojureCharacter {GruvboxAqua}, + clojureStringEscape {GruvboxAqua}, + clojureException {GruvboxRed}, + clojureRegexp {GruvboxAqua}, + clojureRegexpEscape {GruvboxAqua}, + clojureParen {GruvboxFg3}, + clojureAnonArg {GruvboxYellow}, + clojureVariable {GruvboxBlue}, + clojureMacro {GruvboxOrange}, + clojureMeta {GruvboxYellow}, + clojureDeref {GruvboxYellow}, + clojureQuote {GruvboxYellow}, + clojureUnquote {GruvboxYellow}, + clojureRegexpCharClass {fg = fg3, gui = styles.bold}, 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.boldunderline}, - htmlBoldItalic {fg = hsl(fg1), gui = styles.bold .. "," .. italic_strings}, + htmlTag {GruvboxAquaBold}, + htmlEndTag {GruvboxAquaBold}, + htmlTagName {GruvboxBlue}, + htmlArg {GruvboxOrange}, + htmlScriptTag {GruvboxPurple}, + htmlTagN {GruvboxFg1}, + htmlSpecialTagName {GruvboxBlue}, + htmlSpecialChar {GruvboxRed}, + htmlLink {fg = fg4, gui = styles.underline}, + htmlBold {fg = fg1, gui = styles.bold}, + htmlBoldUnderline {fg = fg1, gui = styles.bold .. "," .. styles.underline}, + htmlBoldItalic {fg = fg1, gui = styles.bold .. "," .. italic_strings}, htmlBoldUnderlineItalic { - fg = hsl(fg1), - gui = styles.boldunderline .. "," .. italic_strings, + fg = fg1, + gui = styles.bold .. "," .. styles.underline .. "," .. italic_strings, }, - htmlItalic {fg = hsl(fg1), gui = italic_strings}, + htmlItalic {fg = 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)}, + diffAdded {GruvboxGreen}, + diffRemoved {GruvboxRed}, + diffChanged {GruvboxAqua}, + diffFile {GruvboxOrange}, + diffNewFile {GruvboxYellow}, + diffLine {GruvboxBlue}, -- 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)}, + cssBraces {GruvboxBlue}, + cssFunctionName {GruvboxYellow}, + cssIdentifier {GruvboxOrange}, + cssClassName {GruvboxGreen}, + cssColor {GruvboxBlue}, + cssSelectorOp {GruvboxBlue}, + cssSelectorOp2 {GruvboxBlue}, + cssImportant {GruvboxGreen}, + cssVendor {GruvboxFg1}, + cssTextProp {GruvboxAqua}, + cssAnimationProp {GruvboxAqua}, + cssUIProp {GruvboxYellow}, + cssTransformProp {GruvboxAqua}, + cssTransitionProp {GruvboxAqua}, + cssPrintProp {GruvboxAqua}, + cssPositioningProp {GruvboxYellow}, + cssBoxProp {GruvboxAqua}, + cssFontDescriptorProp {GruvboxAqua}, + cssFlexibleBoxProp {GruvboxAqua}, + cssBorderOutlineProp {GruvboxAqua}, + cssBackgroundProp {GruvboxAqua}, + cssMarginProp {GruvboxAqua}, + cssListProp {GruvboxAqua}, + cssTableProp {GruvboxAqua}, + cssFontProp {GruvboxAqua}, + cssPaddingProp {GruvboxAqua}, + cssDimensionProp {GruvboxAqua}, + cssRenderProp {GruvboxAqua}, + cssColorProp {GruvboxAqua}, + cssGeneratedContentProp {GruvboxAqua}, -- 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)}, + javaScriptBraces {GruvboxFg1}, + javaScriptFunction {GruvboxAqua}, + javaScriptIdentifier {GruvboxRed}, + javaScriptMember {GruvboxBlue}, + javaScriptNumber {GruvboxPurple}, + javaScriptNull {GruvboxPurple}, + javaScriptParens {GruvboxFg3}, + javascriptImport {GruvboxAqua}, + javascriptExport {GruvboxAqua}, + javascriptClassKeyword {GruvboxAqua}, + javascriptClassExtends {GruvboxAqua}, + javascriptDefault {GruvboxAqua}, + javascriptClassName {GruvboxYellow}, + javascriptClassSuperName {GruvboxYellow}, + javascriptGlobal {GruvboxYellow}, + javascriptEndColons {GruvboxFg1}, + javascriptFuncArg {GruvboxFg1}, + javascriptGlobalMethod {GruvboxFg1}, + javascriptNodeGlobal {GruvboxFg1}, + javascriptBOMWindowProp {GruvboxFg1}, + javascriptArrayMethod {GruvboxFg1}, + javascriptArrayStaticMethod {GruvboxFg1}, + javascriptCacheMethod {GruvboxFg1}, + javascriptDateMethod {GruvboxFg1}, + javascriptMathStaticMethod {GruvboxFg1}, + javascriptProp {GruvboxFg1}, + javascriptURLUtilsProp {GruvboxFg1}, + javascriptBOMNavigatorProp {GruvboxFg1}, + javascriptDOMDocMethod {GruvboxFg1}, + javascriptDOMDocProp {GruvboxFg1}, + javascriptBOMLocationMethod {GruvboxFg1}, + javascriptBOMWindowMethod {GruvboxFg1}, + javascriptStringMethod {GruvboxFg1}, + javascriptVariable {GruvboxOrange}, + javascriptClassSuper {GruvboxOrange}, + javascriptFuncKeyword {GruvboxAqua}, + javascriptAsyncFunc {GruvboxAqua}, + javascriptClassStatic {GruvboxOrange}, + javascriptOperator {GruvboxRed}, + javascriptForOperator {GruvboxRed}, + javascriptYield {GruvboxRed}, + javascriptExceptions {GruvboxRed}, + javascriptMessage {GruvboxRed}, + javascriptTemplateSB {GruvboxAqua}, + javascriptTemplateSubstitution {GruvboxFg1}, + javascriptLabel {GruvboxFg1}, + javascriptObjectLabel {GruvboxFg1}, + javascriptPropertyName {GruvboxFg1}, + javascriptLogicSymbols {GruvboxFg1}, + javascriptArrowFunc {GruvboxYellow}, + javascriptDocParamName {GruvboxFg4}, + javascriptDocTags {GruvboxFg4}, + javascriptDocNotation {GruvboxFg4}, + javascriptDocParamType {GruvboxFg4}, + javascriptDocNamedParamType {GruvboxFg4}, + javascriptBrackets {GruvboxFg1}, + javascriptDOMElemAttrs {GruvboxFg1}, + javascriptDOMEventMethod {GruvboxFg1}, + javascriptDOMNodeMethod {GruvboxFg1}, + javascriptDOMStorageMethod {GruvboxFg1}, + javascriptHeadersMethod {GruvboxFg1}, + javascriptAsyncFuncKeyword {GruvboxRed}, + javascriptAwaitFuncKeyword {GruvboxRed}, + jsClassKeyword {GruvboxAqua}, + jsExtendsKeyword {GruvboxAqua}, + jsExportDefault {GruvboxAqua}, + jsTemplateBraces {GruvboxAqua}, + jsGlobalNodeObjects {GruvboxBlue}, + jsGlobalObjects {GruvboxBlue}, + jsObjectKey {GruvboxGreenBold}, + jsFunction {GruvboxAqua}, + jsFuncCall {GruvboxBlue}, + jsFuncParens {GruvboxFg3}, + jsParens {GruvboxFg3}, + jsNull {GruvboxPurple}, + jsUndefined {GruvboxPurple}, + jsClassDefinition {GruvboxYellow}, + jsOperatorKeyword {GruvboxRed}, -- 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)}, + typescriptReserved {GruvboxAqua}, + typescriptLabel {GruvboxAqua}, + typescriptFuncKeyword {GruvboxAqua}, + typescriptIdentifier {GruvboxOrange}, + typescriptBraces {GruvboxFg1}, + typescriptEndColons {GruvboxFg1}, + typescriptDOMObjects {GruvboxFg1}, + typescriptAjaxMethods {GruvboxFg1}, + typescriptLogicSymbols {GruvboxFg1}, + typescriptDocSeeTag {Comment}, + typescriptDocParam {Comment}, + typescriptDocTags {Comment}, + typescriptGlobalObjects {GruvboxFg1}, + typescriptParens {GruvboxFg3}, + typescriptOpSymbols {GruvboxFg3}, + typescriptHtmlElemProperties {GruvboxFg1}, + typescriptNull {GruvboxPurple}, + typescriptInterpolationDelimiter {GruvboxAqua}, -- jsx - jsxTagName {fg = hsl(aqua)}, - jsxComponentName {fg = hsl(green)}, - jsxCloseString {fg = hsl(fg4)}, - jsxAttrib {fg = hsl(yellow)}, - jsxEqual {fg = hsl(aqua)}, + jsxTagName {GruvboxAqua}, + jsxComponentName {GruvboxGreen}, + jsxCloseString {GruvboxFg4}, + jsxAttrib {GruvboxYellow}, + jsxEqual {GruvboxAqua}, -- 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)}, + purescriptModuleKeyword {GruvboxAqua}, + purescriptModuleName {GruvboxFg1}, + purescriptWhere {GruvboxAqua}, + purescriptDelimiter {GruvboxFg4}, + purescriptType {GruvboxFg1}, + purescriptImportKeyword {GruvboxAqua}, + purescriptHidingKeyword {GruvboxAqua}, + purescriptAsKeyword {GruvboxAqua}, + purescriptStructure {GruvboxAqua}, + purescriptOperator {GruvboxBlue}, + purescriptTypeVar {GruvboxFg1}, + purescriptConstructor {GruvboxFg1}, + purescriptFunction {GruvboxFg1}, + purescriptConditional {GruvboxOrange}, + purescriptBacktick {GruvboxOrange}, -- coffeescript - coffeeExtendedOp {fg = hsl(fg3)}, - coffeeSpecialOp {fg = hsl(fg3)}, - coffeeCurly {fg = hsl(orange)}, - coffeeParen {fg = hsl(fg3)}, - coffeeBracket {fg = hsl(orange)}, + coffeeExtendedOp {GruvboxFg3}, + coffeeSpecialOp {GruvboxFg3}, + coffeeCurly {GruvboxOrange}, + coffeeParen {GruvboxFg3}, + coffeeBracket {GruvboxOrange}, -- ruby - rubyStringDelimiter {fg = hsl(green)}, - rubyInterpolationDelimiter {fg = hsl(aqua)}, + rubyStringDelimiter {GruvboxGreen}, + rubyInterpolationDelimiter {GruvboxAqua}, -- obj-c - objcTypeModifier {fg = hsl(red)}, - objcDirective {fg = hsl(blue)}, + objcTypeModifier {GruvboxRed}, + objcDirective {GruvboxBlue}, -- moonscript - moonSpecialOp {fg = hsl(fg3)}, - moonExtendedOp {fg = hsl(fg3)}, - moonFunction {fg = hsl(fg3)}, - moonObject {fg = hsl(yellow)}, + moonSpecialOp {GruvboxFg3}, + moonExtendedOp {GruvboxFg3}, + moonFunction {GruvboxFg3}, + moonObject {GruvboxYellow}, -- elixir - elixirDocString {SpecialComment}, - elixirStringDelimiter {fg = hsl(green)}, - elixirInterpolationDelimiter {fg = hsl(aqua)}, - elixirModuleDeclaration {fg = hsl(yellow)}, + elixirDocString {Comment}, + elixirStringDelimiter {GruvboxGreen}, + elixirInterpolationDelimiter {GruvboxAqua}, + elixirModuleDeclaration {GruvboxYellow}, -- 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)}, + scalaNameDefinition {GruvboxFg1}, + scalaCaseFollowing {GruvboxFg1}, + scalaCapitalWord {GruvboxFg1}, + scalaTypeExtension {GruvboxFg1}, + scalaKeyword {GruvboxRed}, + scalaKeywordModifier {GruvboxRed}, + scalaSpecial {GruvboxAqua}, + scalaOperator {GruvboxFg1}, + scalaTypeDeclaration {GruvboxYellow}, + scalaTypeTypePostDeclaration {GruvboxYellow}, + scalaInstanceDeclaration {GruvboxFg1}, + scalaInterpolation {GruvboxAqua}, -- markdown - markdownItalic {fg = hsl(fg3), gui = italic_strings}, - markdownH1 {fg = hsl(green), gui = styles.bold}, + markdownItalic {fg = fg3, gui = italic_strings}, + markdownH1 {GruvboxGreenBold}, markdownH2 {markdownH1}, - markdownH3 {fg = hsl(yellow), gui = styles.bold}, + markdownH3 {GruvboxYellowBold}, markdownH4 {markdownH3}, - markdownH5 {fg = hsl(yellow)}, + markdownH5 {GruvboxYellow}, 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}, + markdownCode {GruvboxAqua}, + markdownCodeBlock {GruvboxAqua}, + markdownCodeDelimiter {GruvboxAqua}, + markdownBlockquote {GruvboxGray}, + markdownListMarker {GruvboxGray}, + markdownOrderedListMarker {GruvboxGray}, + markdownRule {GruvboxGray}, + markdownHeadingRule {GruvboxGray}, + markdownUrlDelimiter {GruvboxFg3}, + markdownLinkDelimiter {GruvboxFg3}, + markdownLinkTextDelimiter {GruvboxFg3}, + markdownHeadingDelimiter {GruvboxOrange}, + markdownUrl {GruvboxPurple}, + markdownUrlTitleDelimiter {GruvboxGreen}, + markdownLinkText {fg = 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)}, + haskellType {GruvboxBlue}, + haskellIdentifier {GruvboxAqua}, + haskellSeparator {GruvboxFg4}, + haskellDelimiter {GruvboxOrange}, + haskellOperators {GruvboxPurple}, + haskellBacktick {GruvboxOrange}, + haskellStatement {GruvboxPurple}, + haskellConditional {GruvboxPurple}, + haskellLet {GruvboxRed}, + haskellDefault {GruvboxRed}, + haskellWhere {GruvboxRed}, + haskellBottom {GruvboxRedBold}, + haskellImportKeywords {GruvboxPurpleBold}, + haskellDeclKeyword {GruvboxOrange}, + haskellDecl {GruvboxOrange}, + haskellDeriving {GruvboxPurple}, + haskellAssocType {GruvboxAqua}, + haskellNumber {GruvboxAqua}, + haskellPragma {GruvboxRedBold}, + haskellTH {GruvboxAquaBold}, + haskellForeignKeywords {GruvboxGreen}, + haskellKeyword {GruvboxRed}, + haskellFloat {GruvboxAqua}, + haskellInfix {GruvboxPurple}, + haskellQuote {GruvboxGreenBold}, + haskellShebang {GruvboxYellowBold}, + haskellLiquid {GruvboxPurpleBold}, + haskellQuasiQuoted {GruvboxBlueBold}, + haskellRecursiveDo {GruvboxPurple}, + haskellQuotedType {GruvboxRed}, + haskellPreProc {GruvboxFg4}, + haskellTypeRoles {GruvboxRedBold}, + haskellTypeForall {GruvboxRed}, + haskellPatternKeyword {GruvboxBlue}, -- json - jsonKeyword {fg = hsl(green)}, - jsonQuote {fg = hsl(green)}, - jsonBraces {fg = hsl(fg1)}, - jsonString {fg = hsl(fg1)}, + jsonKeyword {GruvboxGreen}, + jsonQuote {GruvboxGreen}, + jsonBraces {GruvboxFg1}, + jsonString {GruvboxFg1}, -- 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}, + mailQuoted1 {GruvboxAqua}, + mailQuoted2 {GruvboxPurple}, + mailQuoted3 {GruvboxYellow}, + mailQuoted4 {GruvboxGreen}, + mailQuoted5 {GruvboxRed}, + mailQuoted6 {GruvboxOrange}, + mailSignature {Comment}, -- 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}, + csBraces {GruvboxFg1}, + csEndColon {GruvboxFg1}, + csLogicSymbols {GruvboxFg1}, + csParens {GruvboxFg3}, + csOpSymbols {GruvboxFg3}, + csInterpolationDelimiter {GruvboxFg3}, + csInterpolationAlignDel {GruvboxAquaBold}, + csInterpolationFormat {GruvboxAqua}, + csInterpolationFormatDel {GruvboxAquaBold}, -- 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)}, + rustSigil {GruvboxOrange}, + rustEscape {GruvboxAqua}, + rustStringContinuation {GruvboxAqua}, + rustEnum {GruvboxAqua}, + rustStructure {GruvboxAqua}, + rustModPathSep {GruvboxFg2}, + rustCommentLineDoc {Comment}, + rustDefault {GruvboxAqua}, -- ocaml - ocamlOperator {fg = hsl(fg1)}, - ocamlKeyChar {fg = hsl(orange)}, - ocamlArrow {fg = hsl(orange)}, - ocamlInfixOpKeyword {fg = hsl(red)}, - ocamlConstructor {fg = hsl(orange)}, + ocamlOperator {GruvboxFg1}, + ocamlKeyChar {GruvboxOrange}, + ocamlArrow {GruvboxOrange}, + ocamlInfixOpKeyword {GruvboxRed}, + ocamlConstructor {GruvboxOrange}, -- lua - luaIn {fg = hsl(red)}, - luaFunction {fg = hsl(aqua)}, - luaTable {fg = hsl(orange)}, + luaIn {GruvboxRed}, + luaFunction {GruvboxAqua}, + luaTable {GruvboxOrange}, -- 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}, + LspDiagnosticsDefaultError {GruvboxRed}, + LspDiagnosticsSignError {GruvboxRedSign}, + LspDiagnosticsUnderlineError {GruvboxRedUnderline}, + LspDiagnosticsDefaultWarning {GruvboxYellow}, + LspDiagnosticsSignWarning {GruvboxYellowSign}, + LspDiagnosticsUnderlineWarning {GruvboxYellowUnderline}, + LspDiagnosticsDefaultInformation {GruvboxBlue}, + LspDiagnosticsSignInformation {GruvboxBlueSign}, + LspDiagnosticsUnderlineInformation {GruvboxBlueUnderline}, + LspDiagnosticsDefaultHint {GruvboxAqua}, + LspDiagnosticsSignHint {GruvboxAquaSign}, + LspDiagnosticsUnderlineHint {GruvboxAquaUnderline}, -- signature - SignatureMarkText {fg = hsl(blue), bg = hsl(sign_column)}, - SignatureMarkerText {fg = hsl(purple), bg = hsl(sign_column)}, + SignatureMarkText {GruvboxBlueSign}, + SignatureMarkerText {GruvboxPurpleSign}, -- gitcommit - gitcommitSelectedFile {fg = hsl(green)}, - gitcommitDiscardedFile {fg = hsl(red)}, - + gitcommitSelectedFile {GruvboxGreen}, + gitcommitDiscardedFile {GruvboxRed}, -- nvim-treesitter TSNone {}, TSError {Error}, + TSTitle {Title}, + TSLiteral {String}, + TSURI {Underlined}, + TSVariable {Special}, TSPunctDelimiter {Delimiter}, TSPunctBracket {Delimiter}, TSPunctSpecial {Delimiter}, @@ -777,42 +847,39 @@ local groups = lush(function() TSField {Identifier}, TSProperty {Identifier}, TSConstructor {Special}, + TSAnnotation {PreProc}, + TSAttribute {PreProc}, + TSNamespace {Include}, TSConditional {Conditional}, TSRepeat {Repeat}, TSLabel {Label}, TSOperator {Operator}, TSKeyword {Keyword}, TSKeywordFunction {Keyword}, + TSKeywordOperator {TSOperator}, TSException {Exception}, TSType {Type}, TSTypeBuiltin {Type}, - TSNamespace {Include}, TSInclude {Include}, - TSAnnotation {PreProc}, + TSVariableBuiltin {Special}, TSText {TSNone}, TSStrong {gui = styles.bold}, TSEmphasis {gui = italic_strings}, TSUnderline {gui = styles.underline}, - TSTitle {Title}, - TSLiteral {String}, - TSURI {Underlined}, - TSVariable {Special}, - TSVariableBuiltin {Special}, -- telescope.nvim - -- telescope - TelescopeSelection {fg = hsl(orange), gui = styles.bold}, - TelescopeSlectionCaret {fg = hsl(red)}, - TelescopeMultiSelection {fg = hsl(gray)}, - TelescopeNormal {fg = hsl(fg1)}, + TelescopeSelection {GruvboxOrangeBold}, + TelescopeSlectionCaret {GruvboxRed}, + TelescopeMultiSelection {GruvboxGray}, + TelescopeNormal {GruvboxFg1}, TelescopeBorder {TelescopeNormal}, TelescopePromptBorder {TelescopeNormal}, TelescopeResultsBorder {TelescopeNormal}, TelescopePreviewBorder {TelescopeNormal}, - TelescopeMatching {fg = hsl(blue)}, - TelescopePromptPrefix {fg = hsl(red)}, + TelescopeMatching {GruvboxBlue}, + TelescopePromptPrefix {GruvboxRed}, TelescopePrompt {TelescopeNormal}, LspSagaDiagnosticBorder {NormalNC}, - LspSagaDiagnosticHeader {fg = hsl(red)}, + LspSagaDiagnosticHeader {GruvboxRed}, LspSagaDiagnosticTruncateLine {NormalNC}, LspFloatWinBorder {NormalNC}, LspSagaBorderTitle {Title}, @@ -823,13 +890,13 @@ local groups = lush(function() TargetFileName {Comment}, DefinitionIcon {Special}, ProviderTruncateLine {NormalNC}, - SagaShadow {bg = hsl(bg0)}, + SagaShadow {GruvboxBg0}, LspSagaFinderSelection {Search}, DiagnosticTruncateLine {NormalNC}, - DiagnosticError {LspDiagnosticsError}, - DiagnosticWarning {LspDiagnosticsWarning}, - DiagnosticInformation {LspDiagnosticsInformation}, - DiagnosticHint {LspDiagnosticsHint}, + DiagnosticError {LspDiagnosticsDefaultError}, + DiagnosticWarning {LspDiagnosticsDefaultWarning}, + DiagnosticInformation {LspDiagnosticsDefaultInformation}, + DiagnosticHint {LspDiagnosticsDefaultHint}, DefinitionPreviewTitle {Title}, LspSagaShTruncateLine {NormalNC}, LspSagaDocTruncateLine {NormalNC}, @@ -837,7 +904,7 @@ local groups = lush(function() LspSagaCodeActionTitle {Title}, LspSagaCodeActionTruncateLine {NormalNC}, LspSagaCodeActionContent {Normal}, - LspSagaRenamePromptPrefix {fg = hsl(fg2)}, + LspSagaRenamePromptPrefix {GruvboxFg2}, LspSagaRenameBorder {gui = styles.bold}, LspSagaHoverBorder {gui = styles.bold}, LspSagaSignatureHelpBorder {gui = styles.bold}, @@ -858,54 +925,61 @@ local groups = lush(function() StartifyVar {StartifyPath}, StartifySelect {Title}, -- 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}, + SignifySignAdd {GruvboxGreenSign}, + SignifySignChange {GruvboxAquaSign}, + SignifySignDelete {GruvboxRedSign}, + -- syntastic + SyntasticError {GruvboxRedUnderline}, + SyntasticWarning {GruvboxYellowUnderline}, + SyntasticErrorSign {GruvboxRedSign}, + SyntasticWarningSign {GruvboxYellowSign}, + -- termdebug + debugPC {bg = colors.faded_blue}, + debugBreakpoint {GruvboxRedSign}, -- vim-dirvish - DirvishPathTail {fg = hsl(aqua)}, - DirvishArg {fg = hsl(yellow)}, - -- 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)}, + DirvishPathTail {GruvboxAqua}, + DirvishArg {GruvboxYellow}, + -- -- nerdtree + NERDTreeDir {GruvboxAqua}, + NERDTreeDirSlash {GruvboxAqua}, + NERDTreeOpenable {GruvboxOrange}, + NERDTreeClosable {GruvboxOrange}, + NERDTreeFile {GruvboxFg1}, + NERDTreeExecFile {GruvboxYellow}, + NERDTreeUp {GruvboxGray}, + NERDTreeCWD {GruvboxGreen}, + NERDTreeHelp {GruvboxFg1}, + NERDTreeToggleOn {GruvboxGreen}, + NERDTreeToggleOff {GruvboxRed}, -- 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}, - + CocErrorSign {GruvboxRedSign}, + CocWarningSign {GruvboxOrangeSign}, + CocInfoSign {GruvboxBlueSign}, + CocHintSign {GruvboxAquaSign}, + CocErrorFloat {GruvboxRed}, + CocWarningFloat {GruvboxOrange}, + CocInfoFloat {GruvboxBlue}, + CocHintFloat {GruvboxAqua}, + CocDiagnosticsError {GruvboxRed}, + CocDiagnosticsWarning {GruvboxOrange}, + CocDiagnosticsInfo {GruvboxBlue}, + CocDiagnosticsHint {GruvboxAqua}, + CocSelectedText {GruvboxRed}, + CocCodeLens {GruvboxGray}, + CocErrorHighlight {GruvboxRedUnderline}, + CocWarningHighlight {GruvboxOrangeUnderline}, + CocInfoHighlight {GruvboxBlueUnderline}, + CocHintHighlight {GruvboxAquaUnderline}, -- 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)}, + ALEError {GruvboxRedUnderline}, + ALEWarning {GruvboxYellowUnderline}, + ALEInfo {GruvboxBlueUnderline}, + ALEErrorSign {GruvboxRedSign}, + ALEWarningSign {GruvboxYellowSign}, + ALEInfoSign {GruvboxBlueSign}, + ALEVirtualTextError {GruvboxRed}, + ALEVirtualTextWarning {GruvboxYellow}, + ALEVirtualTextInfo {GruvboxBlue}, -- vim-buftabline BufTabLineCurrent {TabLineSel}, BufTabLineActive {PmenuSel}, @@ -919,23 +993,23 @@ local groups = lush(function() CtrlPNoEntries {Error}, CtrlPPrtBase {Comment}, CtrlPPrtCursor {Constant}, - CtrlPLinePre {fg = hsl(bg2)}, + CtrlPLinePre {fg = bg2}, CtrlPMode1 {Character}, CtrlPMode2 {LineNr}, CtrlPStats {Function}, -- fzf.vim - Fzf1 {fg = hsl(blue), bg = hsl(bg1)}, - Fzf2 {fg = hsl(orange), bg = hsl(bg1)}, - Fzf3 {fg = hsl(fg4), bg = hsl(bg1)}, - 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)}, + Fzf1 {fg = blue, bg = bg1}, + Fzf2 {fg = orange, bg = bg1}, + Fzf3 {fg = fg4, bg = bg1}, + ShowMarksHLl {GruvboxBlueSign}, + ShowMarksHLu {GruvboxBlueSign}, + ShowMarksHLo {GruvboxBlueSign}, + ShowMarksHLm {GruvboxBlueSign}, -- git-gutter - 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)}, + GitGutterAdd {GruvboxGreenSign}, + GitGutterChange {GruvboxAquaSign}, + GitGutterDelete {GruvboxRedSign}, + GitGutterChangeDelete {GruvboxAquaSign}, } end) -- cgit v1.2.3