summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosh Rahm <rahm@google.com>2024-03-27 00:24:06 +0000
committerJosh Rahm <rahm@google.com>2024-03-27 00:24:06 +0000
commit0ffea14cd78981d89bcc43cd623551034094104a (patch)
tree3a9d087fd45e530c452653ef904d4ff7f2909a21
downloadmeltdown-0ffea14cd78981d89bcc43cd623551034094104a.tar.gz
meltdown-0ffea14cd78981d89bcc43cd623551034094104a.tar.bz2
meltdown-0ffea14cd78981d89bcc43cd623551034094104a.zip
Initial commit. Migrate meltdown_ng to lua
-rw-r--r--colors/meltdown.vim9
-rw-r--r--colors/meltdown_lua.vim9
-rw-r--r--colors/meltdown_ng.vim260
-rw-r--r--lua/lualine/themes/meltdown.lua41
-rw-r--r--lua/meltdown.lua50
-rw-r--r--lua/meltdown/highlights.lua205
6 files changed, 574 insertions, 0 deletions
diff --git a/colors/meltdown.vim b/colors/meltdown.vim
new file mode 100644
index 0000000..44154d7
--- /dev/null
+++ b/colors/meltdown.vim
@@ -0,0 +1,9 @@
+if version > 580
+ hi clear
+ if exists("syntax_on")
+ syntax reset
+ endif
+endif
+let g:colors_name='meltdown'
+
+lua reload_package('meltdown.highlights').highlight(reload_package('meltdown').colors)
diff --git a/colors/meltdown_lua.vim b/colors/meltdown_lua.vim
new file mode 100644
index 0000000..44154d7
--- /dev/null
+++ b/colors/meltdown_lua.vim
@@ -0,0 +1,9 @@
+if version > 580
+ hi clear
+ if exists("syntax_on")
+ syntax reset
+ endif
+endif
+let g:colors_name='meltdown'
+
+lua reload_package('meltdown.highlights').highlight(reload_package('meltdown').colors)
diff --git a/colors/meltdown_ng.vim b/colors/meltdown_ng.vim
new file mode 100644
index 0000000..0aac646
--- /dev/null
+++ b/colors/meltdown_ng.vim
@@ -0,0 +1,260 @@
+
+if version > 580
+ hi clear
+ if exists("syntax_on")
+ syntax reset
+ endif
+endif
+let g:colors_name='meltdown_gen'
+
+hi Magenta guifg=#ff83ff
+hi DarkGrey guifg=#7b7b7b
+hi LighterGrey guifg=#9a9a9a
+hi Salmon guifg=#ff7779
+hi IncSearch guifg=#ff5d34 ctermfg=202 guibg=#000000 ctermbg=000 gui=reverse cterm=reverse
+hi TabLineSel guifg=#1f1d2a guibg=#ff7779 ctermfg=202 ctermbg=233 gui=none
+hi Green1 guifg=#26ff00 ctermfg=106
+hi Green3 guifg=#aba024 ctermfg=142
+hi Green2 guifg=#3dab24 ctermfg=034
+hi TabLineFill guifg=#686060 ctermfg=241 guibg=#0f0e0e ctermbg=233
+hi Sage1 guifg=#9f9a84 ctermfg=144
+hi Search guifg=#ffd780 ctermfg=222 guibg=#000000 ctermbg=000 gui=reverse cterm=reverse
+hi Sage3 guifg=#b0c4a3 ctermfg=144
+hi Sage2 guifg=#a6b99a
+hi Sage4 guifg=#8e9f84 ctermfg=108
+hi Sage5 guifg=#8e9f84 ctermfg=108
+hi MatchParen guibg=#346063 ctermbg=023 gui=bold cterm=bold
+hi VertSplit guifg=#0f0e0e ctermfg=233 guibg=#0f0e0e ctermbg=233
+hi WinSeparator guifg=#0f0e0e ctermfg=233 guibg=#0f0e0e ctermbg=233
+hi Red3 guifg=#ff3448 ctermfg=203
+hi Red2 guifg=#ff8f34 ctermfg=208
+hi Red1 guifg=#ff5d34 ctermfg=202
+hi Normal guifg=#d8e5b8 ctermfg=187 guibg=#1f1d2a ctermbg=234
+hi Red6 guifg=#ff74f4 ctermfg=213
+hi Red5 guifg=#ff9074 ctermfg=209
+hi Red4 guifg=#ffa034 ctermfg=215
+hi DarkGray guifg=#404040 ctermfg=238
+hi StatusLine guifg=#ff5d34 ctermfg=202 guibg=#0f0e0e ctermbg=233 gui=bold cterm=bold
+hi Title guifg=#ff8f34 ctermfg=208 guibg=#444040 ctermbg=238 gui=bold cterm=bold
+hi ColorColumn guibg=#4d5c8b ctermbg=060
+hi Visual guifg=#101010 ctermfg=233 guibg=#e0e0e0 ctermbg=188
+hi Fern1 guifg=#71bc78 ctermfg=071
+hi Blue1 guifg=#80a0ff ctermfg=111
+hi Blue3 guifg=#80ffdf ctermfg=122
+hi Blue2 guifg=#af80ff ctermfg=141
+hi Blue4 guifg=#c3bbff ctermfg=189
+hi Teal1 guifg=#76dbd8 ctermfg=050
+hi Teal2 guifg=#71fffa
+hi CursorLineNr guifg=#ff5d34 ctermfg=202 guibg=#272424 ctermbg=235
+hi StatusLineNC guifg=#686060 ctermfg=241 guibg=#0f0e0e ctermbg=233 gui=bold cterm=bold
+hi Folded guifg=#000000 ctermfg=000 guibg=#9f9a84 ctermbg=144
+hi TabLine guifg=#d4d4d4 guibg=#2d2d2d gui=none
+
+" hi SignColumn guibg=#1a1818 ctermbg=234
+hi SignColumn guibg=#1f1d2a ctermbg=234
+hi Yellow1 guifg=#ffb700 ctermfg=179
+hi Error guifg=#ff0000 ctermfg=009 guibg=#1a1818 ctermbg=234
+hi Directory guifg=#80a0ff ctermfg=111 gui=bold cterm=bold
+hi CursorLine guibg=#313030 ctermbg=236
+hi NonText guifg=#ff5d34 ctermfg=111 guibg=#1f1d2a ctermbg=235 gui=bold cterm=bold
+hi DarkTeal guifg=#346063 ctermfg=023
+hi Orange5 guifg=#ffd780 ctermfg=222
+hi Orange4 guifg=#ffb780 ctermfg=215
+hi Orange6 guifg=#ff9780 ctermfg=209
+hi Orange1 guifg=#ffb75f
+hi Orange3 guifg=#ff552f ctermfg=009
+hi Orange2 guifg=#ffbd2f ctermfg=214
+hi Warning guifg=#ffff00 ctermfg=011 guibg=#1a1818 ctermbg=234
+hi javaParen guifg=#80a0ff ctermfg=111 gui=bold cterm=bold
+hi Sage3Mix guifg=#8ba3bb ctermfg=110
+hi PMenu guifg=#ff7779 ctermfg=241 guibg=#14151d ctermbg=238
+hi CursorColumn guibg=#313030 ctermbg=236
+hi PMenuSel guifg=#ff5d34 ctermfg=202 guibg=#343030 ctermbg=236 gui=bold cterm=bold
+
+hi! link TagbarAccessProtected Yellow1
+hi! link javaDocTags Orange6
+hi! link xmlTag Blue1
+hi! link RadiationCppNamespace Sage2
+hi! link RadiationJavaAbstractClass Red4
+hi! link StorageClass Red1
+hi! link Statement Blue1
+hi! link RadiationJavaTypeParameter Red6
+hi! link javaAnnotation PreProc
+hi! link htmlEndTag Blue2
+hi! link Type Red2
+hi! link FoldColumn Green1
+hi! link Function Yellow1
+hi! link RadiationProtoType Red5
+hi! link RadiationCppStruct Type
+hi! link xmlAttrib Green3
+hi! link RadiationJavaParam Orange3
+hi! link RadiationJavaForIterator Sage3Mix
+hi! link RadiationJavaMember Yellow1
+hi! link Structure Red1
+hi! link RadiationCppUnion Type
+hi! link htmlTagName Blue1
+hi! link PreProc Magenta
+hi! link RadiationCppEnum Type
+hi! link RadiationJavaLocalVar Sage2
+hi! link TagbarAccessPublic Green1
+hi! link xmlEndTag Red1
+hi! link Identifier LighterGrey
+hi! link Number Teal1
+hi! link javaOperator Operator
+hi! link RadiationJavaEnhancedForIterator RadiationJavaForIterator
+hi! link String Green1
+hi Comment guifg=#4b4b64 gui=italic
+hi! link RadiationCppTypedef RadiationProtoType
+hi! link javaCommentTitle Blue1
+hi! link Constant PreProc
+hi! link SpecialKey Blue1
+hi! link javaDocComment Comment
+hi! link TagbarAccessPrivate Red1
+hi! link htmlTag Blue2
+hi! link Operator Blue1
+hi! link RadiationJavaInterface RadiationProtoType
+hi! link Special Orange2
+
+hi LineNrAbove guibg=#1f1d2a ctermfg=144 guifg=#5e5e5e ctermbg=234 gui=italic
+hi LineNr guibg=#1f1d2a ctermfg=144 guifg=#5e5e5e ctermbg=234 gui=bold
+hi! link LineNrBelow LineNrAbove
+hi CursorLineNr guibg=#ff5d34 guifg=#2b293b gui=bold
+hi DocComment guifg=#00d0ff gui=italic
+
+hi! link @attribute PreProc
+hi! link @comment.documentation.java DocComment
+hi! link @constructor.lua @punctuation
+hi! link @lsp.mod.classScope Salmon
+hi! link @lsp.mod.functionScope Orange1
+hi! link @lsp.mod.readonly PreProc
+hi! link @lsp.type.class Type
+hi! link @lsp.type.enum Type
+hi! link @lsp.type.enum.java Red4
+hi! link @lsp.type.interface.java Red5
+hi! link @lsp.type.namespace @module
+hi! link @lsp.type.operator Operator
+hi! link @lsp.type.parameter Red1
+hi! link @lsp.type.property Salmon
+hi! link @lsp.type.field @lsp.type.property
+hi! link @lsp.type.property.java @variable.member
+hi! link @lsp.type.struct Type
+hi! link @lsp.type.typeParameter Red6
+hi! link @lsp.type.variable @variable
+hi! link @lsp.typemod.method Function
+hi! link @lsp.typemod.parameter.functionScope Red1
+hi! link @lsp.typemod.property.static.java Sage3
+hi! link @lsp.typemod.variable.functionScope.cpp LighterGrey
+hi! link @module DarkGrey
+hi! link @punctuation Blue1
+hi! link @type.builtin.c Type
+hi! link @type.qualifier Blue1
+hi! link @variable Identifier
+hi! link @variable.member Salmon
+hi! link @variable.parameter Red1
+hi! link TabLineFill SignColumn
+hi! link luaTable @punctuation
+hi! link vimFunction Function
+hi! link vimIsCommand Red1
+hi! link vimUserFunc vimFunction
+
+hi CmpItemAbbrDeprecated gui=strikethrough guifg=#ff7779 ctermfg=241 guibg=#14151d ctermbg=238
+hi CmpItemAbbrMatch guifg=#1f1d2a guibg=#ff7779 gui=bold
+hi PmenuSbar guibg=#333333
+hi PmenuThumb guibg=#80a0ff
+
+hi! link CmpDefault PMenu
+hi! link CmpBorder CmpDefault
+hi! link CmpCompletion Red1
+hi! link CmpCompletionBorder CmpDefault
+hi! link CmpCompletionExtension CmpDefault
+hi! link CmpCompletionSbar CmpDefault
+hi! link CmpCompletionSel CmpDefault
+hi! link CmpCompletionThumb String
+hi! link CmpDocumentation CmpDefault
+hi! link CmpDocumentationBorder CmpDefault
+hi! link CmpGhostText CmpDefault
+hi! link CmpItemAbbr CmpDefault
+hi! link CmpItemAbbrDefault CmpDefault
+hi! link CmpItemAbbrDeprecatedDefault CmpItemAbbrDeprecated
+hi! link CmpItemAbbrMatchDefault CmpDefault
+hi! link PmenuSel CmpItemAbbrMatch
+hi! link CmpItemAbbrMatchFuzzy CmpItemAbbrMatch
+hi! link CmpItemAbbrMatchFuzzyDefault CmpItemAbbrMatch
+hi! link CmpItemKind CmpDefault
+hi! link CmpItemKindArray Constant
+hi! link CmpItemKindBoolean Constant
+hi! link CmpItemKindClass Type
+hi! link CmpItemKindCodeium Constant
+hi! link CmpItemKindColor Constant
+hi! link CmpItemKindConstant Constant
+hi! link CmpItemKindConstructor Constant
+hi! link CmpItemKindCopilot Constant
+hi! link CmpItemKindDefault Constant
+hi! link CmpItemKindEnum Constant
+hi! link CmpItemKindEnumMember Constant
+hi! link CmpItemKindEvent Constant
+hi! link CmpItemKindField Constant
+hi! link CmpItemKindFile Constant
+hi! link CmpItemKindFolder Constant
+hi! link CmpItemKindFunction Function
+hi! link CmpItemKindInterface Type
+hi! link CmpItemKindKey Constant
+hi! link CmpItemKindKeyword Constant
+hi! link CmpItemKindMethod Constant
+hi! link CmpItemKindModule Constant
+hi! link CmpItemKindNamespace Constant
+hi! link CmpItemKindNull Constant
+hi! link CmpItemKindNumber Constant
+hi! link CmpItemKindObject Constant
+hi! link CmpItemKindOperator Constant
+hi! link CmpItemKindPackage Constant
+hi! link CmpItemKindProperty Constant
+hi! link CmpItemKindReference Constant
+hi! link CmpItemKindSnippet Constant
+hi! link CmpItemKindString Constant
+hi! link CmpItemKindStruct Constant
+hi! link CmpItemKindTabNine Constant
+hi! link CmpItemKindText Constant
+hi! link CmpItemKindTypeParameter Identifier
+hi! link CmpItemKindUnit Constant
+hi! link CmpItemKindValue Constant
+hi! link CmpItemKindVariable Identifier
+hi! link CmpItemMenu DocComment
+hi! link CmpItemMenuDefault DocComment
+hi! link CmpKind CmpDefault
+hi! link CmpReady CmpDefault
+hi! link CmpStatus CmpDefault
+hi! link CmpZsh CmpDefault
+hi! link DiagnosticInfo Teal2
+hi DiagnosticError guifg=red
+hi ColorColumn guifg=#644141 guibg=none gui=None
+
+hi! link vimAugroup PreProc
+hi! link vimAutoCmdGroup vimAugroup
+hi! link vimAutoCmdSfxList vimAugroup
+hi! link vimAugroupEnd vimAugroup
+hi! link vimUsrCmd vimCommand
+hi! link vimSetEqual Number
+
+hi TabLineCloseSel guifg=#790000 guibg=#ff5d34
+hi TabLineClose guifg=#0f0e0e guibg=#2d2d2d
+hi TabLineTail guifg=#ff8082 guibg=#0f0e0e
+
+hi DiagnosticUnderlineError gui=undercurl
+hi DiagnosticUnderlineWarn gui=undercurl
+hi DiagnosticUnderlineInfo gui=undercurl
+
+hi WarpNormal guibg=#ff7779 guifg=black gui=bold
+
+hi! link TelescopeBorder Normal
+hi TelescopeBorder blend=255
+hi TelescopeNormal guibg=#12131b guifg=#ff7779
+hi TelescopeSelection guibg=#ff7779 guifg=black
+hi TelescopeTitle guifg=#ff7779 gui=bold
+hi! link TelescopeMatching TelescopeNormal
+hi TelescopeMatching gui=bold gui=reverse
+
+hi! link vimMapRhs Red6
+hi! link vimMapRhsExtend vimMapRhs
+hi! link Delimiter Operator
+hi! link vimMapLhs Typedef
diff --git a/lua/lualine/themes/meltdown.lua b/lua/lualine/themes/meltdown.lua
new file mode 100644
index 0000000..215e32b
--- /dev/null
+++ b/lua/lualine/themes/meltdown.lua
@@ -0,0 +1,41 @@
+local colors = require('meltdown').colors
+local vim = assert(vim)
+
+local n_flip = colors.blue
+local i_flip = colors.radioactive_green
+local v_flip = colors.gold_2
+local r_flip = colors.red
+local c_flip = colors.stormy_blue
+
+return {
+ normal = {
+ a = {bg = n_flip, fg = colors.midnight, gui = 'bold'},
+ b = {bg = colors.midnight, fg = n_flip},
+ c = {bg = colors.bg_1, fg = colors.gold_1}
+ },
+ insert = {
+ a = {bg = i_flip, fg = colors.black, gui = 'bold'},
+ b = {bg = colors.midnight, fg = i_flip},
+ c = {bg = colors.bg_1, fg = colors.gold_1}
+ },
+ visual = {
+ a = {bg = v_flip, fg = colors.midnight, gui = 'bold'},
+ b = {bg = colors.midnight, fg = v_flip},
+ c = {bg = colors.bg_1, fg = colors.gold_1}
+ },
+ replace = {
+ a = {bg = r_flip, fg = colors.midnight, gui = 'bold'},
+ b = {bg = colors.midnight, fg = r_flip},
+ c = {bg = colors.bg_1, fg = colors.gold_1}
+ },
+ command = {
+ a = {bg = c_flip, fg = colors.midnight, gui = 'bold'},
+ b = {bg = colors.midnight, fg = c_flip},
+ c = {bg = colors.bg_1, fg = colors.gold_1}
+ },
+ inactive = {
+ a = {bg = n_flip, fg = colors.midnight, gui = 'bold'},
+ b = {bg = colors.midnight, fg = n_flip},
+ c = {bg = colors.bg_1, fg = colors.gold_1}
+ }
+}
diff --git a/lua/meltdown.lua b/lua/meltdown.lua
new file mode 100644
index 0000000..403f9ca
--- /dev/null
+++ b/lua/meltdown.lua
@@ -0,0 +1,50 @@
+local vim = assert(vim)
+
+local meltdown = {}
+
+meltdown.colors = {
+ bg_0 = "#16161D",
+ bg_1 = "#181820",
+ bg_2 = "#1a1a22",
+ bg_3 = "#1f1f28",
+ bg_4 = "#2a2a37",
+ bg_5 = "#363646",
+ bg_6 = "#54546d",
+
+ near_white = '#e0e0e0',
+ normal_fg = '#d8e5b8',
+
+ blue = '#80a0ff',
+ dark_grey = '#404040',
+ midnight = '#003040',
+ gold_1 = "#ffa034",
+ gold_2 = '#ffb700',
+ gold_5 = "#ffbd2f",
+ gold_3 = "#ffb75f" ,
+ gold_4 = "#ffd780",
+ light_yellow = "#fce094",
+ salmon = '#ff7779',
+ salmon_2 = "#ff9074",
+ lighter_grey = '#9a9a9a',
+ red_2 = "#ff552f",
+ red = '#ff5d34',
+ all_red = '#ff0000',
+ half_red = '#790000',
+ pink = '#ffc0b9',
+ sage = '#9f9a84',
+ sage_2 = '#b0c4a3',
+ teal = '#76dbd8',
+ teal_2 = '#8cf8f7',
+ teal_3 = '#71fffa',
+ stormy_blue = '#8ba3bb',
+ dark_cloud = '#4b4b64',
+ magenta = '#ff74f4',
+ orange = '#ff8f34',
+ cobalt = '#00d0ff',
+ radioactive_green = '#26ff00',
+ black = '#000000',
+ olive = "#aba024",
+ purple = "#af80ff",
+}
+
+return meltdown
diff --git a/lua/meltdown/highlights.lua b/lua/meltdown/highlights.lua
new file mode 100644
index 0000000..a977007
--- /dev/null
+++ b/lua/meltdown/highlights.lua
@@ -0,0 +1,205 @@
+local vim = assert(vim)
+
+local M = {}
+
+local function highlights(colors)
+ local borders = colors.black
+
+ return{
+ -- General Vim UI
+ ["TabLineFill"] = {fg = colors.bg_6, bg = borders},
+ ["IncSearch"] = {fg = colors.bg_0, bg = colors.red},
+ ["CurSearch"] = {fg = colors.bg_0, bg = colors.salmon},
+ ["TabLineSel"] = { fg = colors.bg_4, bg = colors.salmon },
+ ["MatchParen"] = { bg = colors.blue, fg = colors.black },
+ ["VertSplit"] = { fg = colors.black, bg = borders},
+ ["WinSeparator"] = { fg = colors.black, bg = borders},
+ ["Normal"] = { fg = colors.normal_fg, bg = colors.bg_3 },
+ ["DarkGray"] = { fg = colors.dark_grey },
+ ["StatusLine"] = { fg = colors.red, bg = borders, bold = true },
+ ["Title"] = { fg = colors.orange, bg = colors.lighter_grey, bold = true },
+ ["Visual"] = { fg = colors.black, bg = colors.gold_2 },
+ ["CursorLineNr"] = { fg = colors.red, bg = colors.bg_4},
+ ["StatusLineNC"] = { fg = colors.lighter_grey, bg = colors.black, bold = true },
+ ["Folded"] = { fg = colors.black, bg = colors.sage },
+ ["TabLine"] = { fg = colors.near_white, bg = colors.bg_4},
+ ["Search"] = { bg = colors.bg_5, fg = colors.near_white },
+ ["SignColumn"] = { bg = colors.bg_1},
+ ["LineNrAbove"] = { fg = colors.bg_6, bg = colors.bg_1, italic = true },
+ ["LineNr"] = { fg = colors.bg_6, bg = colors.bg_1, bold = true },
+ ["LineNrBelow"] = { fg = colors.bg_6, bg = colors.bg_1, italic = true },
+ ["DocComment"] = { fg = colors.cobalt, italic = true },
+ ["@attribute"] = { fg = colors.magenta },
+ ["@comment.documentation.java"] = { fg = colors.cobalt, italic = true },
+ ["@constructor.lua"] = { fg = colors.blue },
+ ["@lsp.mod.classScope"] = { fg = colors.salmon },
+ ["@lsp.mod.functionScope"] = { fg = colors.sage},
+ ["@lsp.mod.readonly"] = { fg = colors.magenta },
+ ["@lsp.type.class"] = { fg = colors.orange },
+ ["@lsp.type.enum"] = { fg = colors.orange },
+ ["@lsp.type.enum.java"] = { fg = colors.gold_1},
+ ["@lsp.type.interface.java"] = { fg = colors.salmon_2 },
+ ["@lsp.type.namespace"] = { fg = colors.stormy_blue},
+ ["@lsp.type.operator"] = { fg = colors.blue },
+ ["@lsp.type.parameter"] = { fg = colors.red },
+ ["@lsp.type.property"] = { fg = colors.salmon },
+ ["@lsp.type.field"] = { fg = colors.salmon },
+ ["@lsp.type.property.java"] = { fg = colors.salmon },
+ ["@lsp.type.struct"] = { fg = colors.orange },
+ ["@lsp.type.typeParameter"] = { fg = colors.magenta },
+ ["@lsp.type.variable"] = { fg = colors.lighter_grey },
+ ["@lsp.typemod.method"] = { fg = colors.gold_2 },
+ ["@lsp.typemod.parameter.functionScope"] = { fg = colors.red },
+ ["@lsp.typemod.property.static.java"] = { fg = colors.sage_2},
+ ["@lsp.typemod.variable.functionScope.cpp"] = { fg = colors.lighter_grey },
+ ["@module"] = { fg = colors.stormy_blue},
+ ["@punctuation"] = { fg = colors.blue },
+ ["@type.builtin"] = { fg = colors.orange },
+ ["@type.qualifier"] = { fg = colors.blue },
+ ["@variable"] = { fg = colors.lighter_grey },
+ ["@variable.member"] = { fg = colors.salmon },
+ ["@variable.parameter"] = { fg = colors.red },
+ ["luaTable"] = { fg = colors.blue },
+ ["vimFunction"] = { fg = colors.gold_2 },
+ ["vimIsCommand"] = { fg = colors.red },
+ ["vimUserFunc"] = { fg = colors.gold_2 },
+
+ ["CmpItemAbbrDeprecated"] = { fg = colors.salmon, bg = colors.bg_5, strikethrough = true },
+ ["CmpItemAbbrMatch"] = { fg = colors.bg_5, bg = colors.salmon, bold = true },
+ ["PmenuSbar"] = { bg = colors.dark_cloud},
+ ["PmenuThumb"] = { bg = colors.blue},
+
+ ["Pmenu"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpDefault"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpBorder"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpCompletion"] = { fg = colors.red },
+ ["CmpCompletionBorder"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpCompletionExtension"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpCompletionSbar"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpCompletionSel"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpCompletionThumb"] = { fg = colors.radioactive_green },
+ ["CmpDocumentation"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpDocumentationBorder"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpGhostText"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpItemAbbr"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpItemAbbrDefault"] = { fg = colors.salmon },
+ ["CmpItemAbbrDeprecatedDefault"] = { fg = colors.dark_cloud },
+ ["CmpItemAbbrMatchDefault"] = { fg = colors.salmon },
+ ["PmenuSel"] = { fg = colors.midnight, bg = colors.salmon, bold = true },
+ ["CmpItemAbbrMatchFuzzy"] = { fg = colors.midnight, bg = colors.salmon, bold = true },
+ ["CmpItemAbbrMatchFuzzyDefault"] = { fg = colors.salmon },
+ ["CmpItemKind"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpItemKindArray"] = { fg = colors.magenta },
+ ["CmpItemKindBoolean"] = { fg = colors.magenta },
+ ["CmpItemKindClass"] = { fg = colors.orange },
+ ["CmpItemKindCodeium"] = { fg = colors.magenta },
+ ["CmpItemKindColor"] = { fg = colors.magenta },
+ ["CmpItemKindConstant"] = { fg = colors.magenta },
+ ["CmpItemKindConstructor"] = { fg = colors.magenta },
+ ["CmpItemKindCopilot"] = { fg = colors.magenta },
+ ["CmpItemKindDefault"] = { fg = colors.teal_2},
+ ["CmpItemKindEnum"] = { fg = colors.magenta },
+ ["CmpItemKindEnumMember"] = { fg = colors.magenta },
+ ["CmpItemKindEvent"] = { fg = colors.magenta },
+ ["CmpItemKindField"] = { fg = colors.magenta },
+ ["CmpItemKindFile"] = { fg = colors.magenta },
+ ["CmpItemKindFolder"] = { fg = colors.magenta },
+ ["CmpItemKindFunction"] = { fg = colors.gold_2 },
+ ["CmpItemKindInterface"] = { fg = colors.orange },
+ ["CmpItemKindKey"] = { fg = colors.magenta },
+ ["CmpItemKindKeyword"] = { fg = colors.magenta },
+ ["CmpItemKindMethod"] = { fg = colors.magenta },
+ ["CmpItemKindModule"] = { fg = colors.magenta },
+ ["CmpItemKindNamespace"] = { fg = colors.magenta },
+ ["CmpItemKindNull"] = { fg = colors.magenta },
+ ["CmpItemKindNumber"] = { fg = colors.magenta },
+ ["CmpItemKindObject"] = { fg = colors.magenta },
+ ["CmpItemKindOperator"] = { fg = colors.magenta },
+ ["CmpItemKindPackage"] = { fg = colors.magenta },
+ ["CmpItemKindProperty"] = { fg = colors.magenta },
+ ["CmpItemKindReference"] = { fg = colors.magenta },
+ ["CmpItemKindSnippet"] = { fg = colors.magenta },
+ ["CmpItemKindString"] = { fg = colors.magenta },
+ ["CmpItemKindStruct"] = { fg = colors.magenta },
+ ["CmpItemKindTabNine"] = { fg = colors.magenta },
+ ["CmpItemKindText"] = { fg = colors.magenta },
+ ["CmpItemKindTypeParameter"] = { fg = colors.lighter_grey },
+ ["CmpItemKindUnit"] = { fg = colors.magenta },
+ ["CmpItemKindValue"] = { fg = colors.magenta },
+ ["CmpItemKindVariable"] = { fg = colors.lighter_grey },
+ ["CmpItemMenu"] = { fg = colors.cobalt, italic = true },
+ ["CmpItemMenuDefault"] = { fg = colors.salmon },
+ ["CmpKind"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpReady"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpStatus"] = { fg = colors.salmon, bg = colors.midnight},
+ ["CmpZsh"] = { fg = colors.salmon, bg = colors.midnight},
+ ["DiagnosticInfo"] = { fg = colors.teal_3 },
+ ["DiagnosticError"] = { fg = colors.all_red},
+ ["ColorColumn"] = { },
+ ["vimAugroup"] = { fg = colors.magenta },
+ ["vimAutoCmdGroup"] = { fg = colors.magenta },
+ ["vimAutoCmdSfxList"] = { fg = colors.magenta },
+ ["vimAugroupEnd"] = { fg = colors.magenta },
+ ["vimUsrCmd"] = { fg = colors.blue },
+ ["vimSetEqual"] = { fg = colors.teal },
+ ["TabLineCloseSel"] = { fg = colors.half_red, bg = colors.red},
+ ["TabLineClose"] = { fg = colors.black, bg = colors.bg_1},
+ ["TabLineTail"] = { fg = colors.salmon, bg = colors.bg_1},
+ ["DiagnosticUnderlineError"] = { sp = colors.pink, undercurl = true },
+ ["DiagnosticUnderlineWarn"] = { sp = colors.light_yellow, undercurl = true },
+ ["DiagnosticUnderlineInfo"] = { sp = colors.teal_2, undercurl = true },
+ ["WarpNormal"] = { fg = colors.black, bg = colors.salmon, bold = true },
+ ["TelescopeNormal"] = { fg = colors.salmon, bg = colors.bg_1},
+ ["TelescopeSelection"] = { fg = colors.black, bg = colors.salmon },
+ ["TelescopeTitle"] = { fg = colors.salmon, bold = true },
+ ["TelescopeMatching"] = { reverse = true },
+ ["vimMapRhs"] = { fg = colors.magenta },
+ ["vimMapRhsExtend"] = { fg = colors.magenta },
+ ["Delimiter"] = { fg = colors.blue },
+ ["vimMapLhs"] = { fg = colors.orange },
+
+ ["LspReferenceText"] = { bg = colors.bg_5, sp = colors.sage },
+ ["LspReferenceRead"] = { bg = colors.bg_5, sp = colors.sage },
+ ["LspReferenceWrite"] = { bg = colors.bg_5, sp = colors.sage },
+
+ -- Common vim highlight groups
+ ["TagbarAccessProtected"] = { fg = colors.gold_2 },
+ ["javaDocTags"] = { fg = colors.salmon_2},
+ ["xmlTag"] = { fg = colors.blue },
+ ["StorageClass"] = { fg = colors.red },
+ ["Statement"] = { fg = colors.blue },
+ ["javaAnnotation"] = { fg = colors.magenta },
+ ["htmlEndTag"] = { fg = colors.purple },
+ ["Type"] = { fg = colors.orange },
+ ["FoldColumn"] = { fg = colors.radioactive_green },
+ ["Function"] = { fg = colors.gold_2 },
+ ["xmlAttrib"] = { fg = colors.olive},
+ ["Structure"] = { fg = colors.red },
+ ["htmlTagName"] = { fg = colors.blue },
+ ["PreProc"] = { fg = colors.magenta },
+ ["TagbarAccessPublic"] = { fg = colors.radioactive_green },
+ ["xmlEndTag"] = { fg = colors.red },
+ ["Identifier"] = { fg = colors.lighter_grey },
+ ["Number"] = { fg = colors.teal },
+ ["javaOperator"] = { fg = colors.blue },
+ ["String"] = { fg = colors.radioactive_green },
+ ["Comment"] = { fg = colors.dark_cloud, italic = true },
+ ["DiagnosticUnnecessary"] = { fg = colors.lighter_grey, strikethrough = true, sp = colors.bg_1 },
+ ["javaCommentTitle"] = { fg = colors.blue },
+ ["Constant"] = { fg = colors.magenta },
+ ["SpecialKey"] = { fg = colors.blue },
+ ["javaDocComment"] = { fg = colors.dark_cloud, italic = true },
+ ["TagbarAccessPrivate"] = { fg = colors.red },
+ ["htmlTag"] = { fg = colors.purple},
+ ["Operator"] = { fg = colors.blue },
+ ["Special"] = { fg = colors.gold_5},
+ }
+end
+
+function M.highlight(colors)
+ for hl, spec in pairs(highlights(colors)) do
+ vim.api.nvim_set_hl(0, hl, spec)
+ end
+end
+
+return M