diff --git a/lua/voltage/highlights/editor.lua b/lua/voltage/highlights/editor.lua index 0024033..25cce50 100644 --- a/lua/voltage/highlights/editor.lua +++ b/lua/voltage/highlights/editor.lua @@ -9,13 +9,13 @@ function M.setup(colors, config) NonText = { fg = colors.dimmed }, Conceal = { fg = colors.dimmed }, - Cursor = { bg = accent.regular, fg = accent.darkest }, + Cursor = { bg = accent.regular, fg = colors.inverted }, CursorLine = { bg = accent.darkest }, CursorLineNr = { fg = accent.regular }, CursorColumn = { bg = accent.darkest }, ColorColumn = { bg = accent.dark }, - Visual = { bg = accent.dark }, + Visual = { bg = accent.darker }, VisualNOS = { bg = accent.darker }, Directory = { fg = accent.regular }, @@ -23,13 +23,13 @@ function M.setup(colors, config) SpecialKey = { fg = colors.dimmed }, EndOfBuffer = { fg = colors.dimmed }, - DiffAdd = { bg = colors.green.dark, fg = colors.green.regular }, - DiffDelete = { bg = colors.red.dark, fg = colors.red.regular }, - DiffText = { bg = colors.yellow.regular, fg = colors.yellow.darker }, - DiffChange = { bg = colors.yellow.dark, fg = colors.yellow.regular }, + DiffAdd = { bg = colors.green.darker, fg = colors.green.light }, + DiffDelete = { bg = colors.red.darker, fg = colors.red.light }, + DiffText = { bg = colors.yellow.regular, fg = colors.inverted }, + DiffChange = { bg = colors.yellow.darker, fg = colors.yellow.light }, - Search = { bg = accent.dark, fg = accent.regular }, - IncSearch = { bg = accent.regular, fg = accent.darker }, + Search = { bg = accent.darker, fg = accent.light }, + IncSearch = { bg = accent.regular, fg = colors.inverted }, MatchParen = { fg = accent.regular }, LineNr = { fg = colors.dimmed }, @@ -38,42 +38,42 @@ function M.setup(colors, config) Folded = { fg = accent.light }, FoldColumn = { fg = accent.light }, - WinBar = { bg = accent.dark, fg = accent.regular }, - WinBarNC = { bg = accent.darker, fg = accent.regular }, - WinSeparator = { fg = accent.light }, - VertSplit = { fg = accent.light }, + WinBar = { bg = accent.dark, fg = accent.regular }, -- TODO: Verify + WinBarNC = { bg = accent.darker, fg = accent.regular }, -- TODO: Verify + WinSeparator = { fg = accent.regular }, + VertSplit = { fg = accent.regular }, Pmenu = { fg = colors.fg }, PmenuExtra = { fg = colors.dimmed }, - PmenuSel = { bg = accent.dark }, + PmenuSel = { bg = accent.darker }, PmenuSbar = { bg = accent.regular }, PmenuThumb = { bg = accent.regular }, PmenuKind = { fg = accent.regular }, FloatBorder = { fg = accent.regular }, - WildMenu = { bg = accent.dark }, + WildMenu = { bg = accent.darker }, - ErrorMsg = { fg = colors.red.regular, bg = colors.red.dark }, - WarningMsg = { bg = colors.yellow.dark, fg = colors.yellow.regular }, + ErrorMsg = { bg = colors.red.regular, fg = colors.inverted }, + WarningMsg = { bg = colors.yellow.regular, fg = colors.inverted }, MoreMsg = { fg = colors.green.regular }, Question = { fg = colors.blue.regular }, - StatusLine = { bg = accent.dark, fg = accent.regular }, - StatusLineNC = { bg = accent.darker, fg = accent.regular }, - TabLine = { bg = accent.dark, fg = accent.regular }, - TabLineFill = { bg = accent.dark }, - TabLineSel = { bg = accent.darker, fg = accent.regular }, + StatusLine = { bg = accent.darker, fg = accent.lighter }, + StatusLineNC = { bg = accent.darkest, fg = accent.light }, + TabLine = { bg = accent.darker, fg = accent.light }, + TabLineFill = { bg = accent.darker }, + TabLineSel = { bg = accent.dark, fg = accent.lighter }, SpellBad = { undercurl = true, sp = colors.red.light }, SpellCap = { undercurl = true, sp = colors.blue.light }, SpellLocal = { undercurl = true, sp = colors.green.light }, - SpellRare = { undercurl = true, sp = colors.purple.light }, + SpellRare = { undercurl = true, sp = colors.magenta.light }, - Title = { fg = accent.regular }, + Title = { fg = accent.regular, bold = true }, - TermCursor = { bg = accent.regular, fg = accent.darkest }, + TermCursor = { bg = accent.regular, fg = colors.inverted }, TermCursorNC = { bg = accent.darker, fg = colors.dimmed }, - QuickFixLine = { bg = accent.dark }, + QuickFixLine = { bg = accent.darker }, } end diff --git a/lua/voltage/highlights/plugins/blink.lua b/lua/voltage/highlights/plugins/blink.lua index 3afd10f..7b47d3a 100644 --- a/lua/voltage/highlights/plugins/blink.lua +++ b/lua/voltage/highlights/plugins/blink.lua @@ -6,13 +6,13 @@ function M.setup(colors, config) return { BlinkCmpMenu = {}, BlinkCmpMenuBorder = { fg = accent.regular }, - BlinkCmpMenuSelection = { bg = accent.dark }, + BlinkCmpMenuSelection = { bg = accent.darker }, BlinkCmpScrollBarThumb = { bg = accent.regular }, BlinkCmpScrollBarGutter = { bg = accent.darker }, BlinkCmpLabel = { fg = colors.fg }, BlinkCmpLabelDeprecated = { fg = colors.dimmed, strikethrough = true }, - BlinkCmpLabelMatch = { fg = accent.regular, bold = true }, + BlinkCmpLabelMatch = { fg = accent.regular }, BlinkCmpLabelDetail = { fg = colors.dimmed }, BlinkCmpLabelDescription = { fg = colors.dimmed }, diff --git a/lua/voltage/highlights/plugins/mini.lua b/lua/voltage/highlights/plugins/mini.lua index 431bfec..f56bc22 100644 --- a/lua/voltage/highlights/plugins/mini.lua +++ b/lua/voltage/highlights/plugins/mini.lua @@ -12,14 +12,14 @@ function M.setup(colors, config) MiniClueSeparator = { fg = accent.light }, MiniClueTitle = { fg = accent.regular }, - MiniDiffSignAdd = { fg = colors.green.light }, - MiniDiffSignChange = { fg = colors.blue.light }, - MiniDiffSignDelete = { fg = colors.red.light }, + MiniDiffSignAdd = { fg = colors.green.dark }, + MiniDiffSignChange = { fg = colors.yellow.dark }, + MiniDiffSignDelete = { fg = colors.red.dark }, - MiniHipatternsFixme = { bg = colors.red.dark, fg = colors.red.regular }, - MiniHipatternsHack = { bg = colors.purple.dark, fg = colors.purple.regular }, - MiniHipatternsTodo = { bg = colors.blue.dark, fg = colors.blue.regular }, - MiniHipatternsNote = { bg = colors.yellow.dark, fg = colors.yellow.regular }, + MiniHipatternsFixme = { bg = colors.red.darker, fg = colors.red.regular }, + MiniHipatternsHack = { bg = colors.magenta.darker, fg = colors.magenta.regular }, + MiniHipatternsTodo = { bg = colors.blue.darker, fg = colors.blue.regular }, + MiniHipatternsNote = { bg = colors.yellow.darker, fg = colors.yellow.regular }, MiniNotifyBorder = { fg = accent.regular }, MiniNotifyLspProgress = { fg = accent.regular }, diff --git a/lua/voltage/highlights/plugins/netrw.lua b/lua/voltage/highlights/plugins/netrw.lua index 4965cf5..7faaad3 100644 --- a/lua/voltage/highlights/plugins/netrw.lua +++ b/lua/voltage/highlights/plugins/netrw.lua @@ -5,12 +5,12 @@ function M.setup(colors, config) return { NetrwDir = { fg = accent.regular }, - NetrwClassify = { fg = accent.light }, + NetrwClassify = { fg = accent.lighter }, NetrwExe = { fg = colors.green.regular }, NetrwSymLink = { fg = colors.blue.light }, NetrwTreeBar = { fg = accent.dark }, NetrwPlain = { fg = colors.fg }, - NetrwMarkFile = { bg = accent.dark, fg = accent.regular }, + NetrwMarkFile = { bg = accent.darker, fg = accent.regular }, NetrwQuickHelp = { fg = colors.dimmed }, NetrwVersion = { fg = colors.dimmed }, NetrwCopyFile = { fg = colors.blue.regular }, diff --git a/lua/voltage/highlights/syntax.lua b/lua/voltage/highlights/syntax.lua index 1110521..8a14e9c 100644 --- a/lua/voltage/highlights/syntax.lua +++ b/lua/voltage/highlights/syntax.lua @@ -4,7 +4,7 @@ function M.setup(colors, config) return { Comment = { fg = colors.yellow.regular, italic = true }, - Constant = { fg = colors.purple.regular }, + Constant = { fg = colors.magenta.regular }, Boolean = { link = "Constant" }, String = { fg = colors.green.regular }, Character = { link = "String" }, diff --git a/lua/voltage/highlights/treesitter.lua b/lua/voltage/highlights/treesitter.lua index 491b2f2..ec2c1fa 100644 --- a/lua/voltage/highlights/treesitter.lua +++ b/lua/voltage/highlights/treesitter.lua @@ -4,7 +4,7 @@ function M.setup(colors, config) return { ["@comment"] = { fg = colors.yellow.regular }, - ["@constant"] = { fg = colors.purple.regular }, + ["@constant"] = { fg = colors.magenta.regular }, ["@constant.builtin"] = { link = "@constant" }, ["@string"] = { fg = colors.green.regular }, ["@string.regex"] = { link = "@string" }, -- TODO: Differentiate regex @@ -58,7 +58,7 @@ function M.setup(colors, config) -- ["@label"] = { link = "Normal" }, -- ["@module"] = { link = "Normal" }, -- ["@namespace"] = { link = "Normal" }, - -- -- ["@none"] = { fg = colors.purple.regular }, + -- -- ["@none"] = { fg = colors.magenta.regular }, -- ["@parameter"] = { link = "Normal" }, -- ["@parameter.reference"] = { link = "Normal" }, -- ["@property"] = { link = "Normal" }, diff --git a/lua/voltage/init.lua b/lua/voltage/init.lua index d1e79e1..e299697 100644 --- a/lua/voltage/init.lua +++ b/lua/voltage/init.lua @@ -15,60 +15,71 @@ function M.setup(opts) vim.g.colors_name = "voltage" local colors = { - -- strings, numbers, etc - green = { - lightest = "#e6f3e8", - lighter = "#68766a", - light = "#99cda3", - regular = "#54dd7d", - dark = "#1c3e24", - darker = "#0c1a0f", - darkest = "#010502" - }, - -- constants - purple = { - lightest = "#f7eaf5", - lighter = "#7a6d79", - light = "#dcabd6", - regular = "#fd8ff4", - dark = "#472944", - darker = "#1e111c", - darkest = "#060206" - }, - -- comments - yellow = { - lightest = "#f4eee0", - lighter = "#777161", - light = "#d2bc82", - regular = "#ebb600", - dark = "#41340a", - darker = "#1b1505", - darkest = "#050300" - }, - -- top-level definitions - blue = { - lightest = "#e0f2f6", - lighter = "#61767a", - light = "#7dccda", - regular = "#00d8f5", - dark = "#003d46", - darker = "#031a1e", - darkest = "#000406" - }, + dimmed = "#636363", -- errors, spellbad, etc red = { lightest = "#fceae8", - lighter = "#806c6a", - light = "#edaaa4", - regular = "#ff2335", - dark = "#502825", - darker = "#22100f", - darkest = "#080202" + lighter = "#f3bfba", + light = "#f69b94", + regular = "#f5746d", + dark = "#984742", + darker = "#47211e", + darkest = "#080202" + }, + -- strings, numbers, etc + green = { + lightest = "#e6f3e8", + lighter = "#b3d9b9", + light = "#82cb92", + regular = "#46bc69", + dark = "#2b7440", + darker = "#14361d", + darkest = "#010502" + }, + -- comments + yellow = { + lightest = "#f0f0e0", + lighter = "#d3d1a3", + light = "#c2bb64", + regular = "#b1a600", + dark = "#6d6600", + darker = "#322f04", + darkest = "#040300" + }, + -- top-level definitions + blue = { + lightest = "#e4f0fb", + lighter = "#aed3f3", + light = "#78bff9", + regular = "#32a9fe", + dark = "#1f689d", + darker = "#0f304a", + darkest = "#010408" + }, + -- constants + magenta = { + lightest = "#f6eaf6", + lighter = "#e3c1e4", + light = "#db9fde", + regular = "#d27bd8", + dark = "#824b85", + darker = "#3d233e", + darkest = "#060206" + }, + cyan = { + lightest = "#e0f3f3", + lighter = "#a0dbda", + light = "#4fcdcd", + regular = "#00bcbc", + dark = "#007576", + darker = "#003737", + darkest = "#000505" }, } colors.fg = colors[M.config.accent].lightest - colors.dimmed = colors[M.config.accent].lighter + colors.inverted = colors[M.config.accent].darkest + -- colors.dimmed = colors[M.config.accent].dark for _, highlight in ipairs({ "editor", "syntax", "treesitter" }) do local mod = require("voltage.highlights." .. highlight) diff --git a/palette.css b/palette.css index 539a75a..3943501 100644 --- a/palette.css +++ b/palette.css @@ -1,49 +1,62 @@ -.green { - .lightest { color: oklch(0.95 0.02 150); } - .lighter { color: oklch(0.55 0.025 150); } - .light { color: oklch(0.8 0.08 150); } - .regular { color: oklch(0.8 0.18 150); } - .dark { color: oklch(0.33 0.06 150); } - .darker { color: oklch(0.2 0.03 150); } - .darkest { color: oklch(0.1 0.02 150); } +.white-normal { color: oklch(0.78 0.00 0); } /* #b7b7b7 */ +.black-bright { color: oklch(0.50 0.00 0); } /* #636363 */ + +.red { + .lightest { color: oklch(0.95 0.02 25); } /* #fceae8 */ + .lighter { color: oklch(0.85 0.06 25); } /* #f3bfba */ + .light { color: oklch(0.78 0.11 25); } /* #f69b94 */ + .regular { color: oklch(0.71 0.16 25); } /* #f5746d */ + .dark { color: oklch(0.50 0.11 25); } /* #984742 */ + .darker { color: oklch(0.30 0.06 25); } /* #47211e */ + .darkest { color: oklch(0.10 0.02 25); } /* #080202 */ } -.purple { - .lightest { color: oklch(0.95 0.02 330); } - .lighter { color: oklch(0.55 0.025 330); } - .light { color: oklch(0.8 0.08 330); } - .regular { color: oklch(0.8 0.18 330); } - .dark { color: oklch(0.33 0.06 330); } - .darker { color: oklch(0.2 0.03 330); } - .darkest { color: oklch(0.1 0.02 330); } +.green { + .lightest { color: oklch(0.95 0.02 150); } /* #e6f3e8 */ + .lighter { color: oklch(0.85 0.06 150); } /* #b3d9b9 */ + .light { color: oklch(0.78 0.11 150); } /* #82cb92 */ + .regular { color: oklch(0.71 0.16 150); } /* #46bc69 */ + .dark { color: oklch(0.50 0.11 150); } /* #2b7440 */ + .darker { color: oklch(0.30 0.06 150); } /* #14361d */ + .darkest { color: oklch(0.10 0.02 150); } /* #010502 */ } .yellow { - .lightest { color: oklch(0.95 0.02 90); } - .lighter { color: oklch(0.55 0.025 90); } - .light { color: oklch(0.8 0.08 90); } - .regular { color: oklch(0.8 0.18 90); } - .dark { color: oklch(0.33 0.06 90); } - .darker { color: oklch(0.2 0.03 90); } - .darkest { color: oklch(0.1 0.02 90); } + .lightest { color: oklch(0.95 0.02 105); } /* #f0f0e0 */ + .lighter { color: oklch(0.85 0.06 105); } /* #d3d1a3 */ + .light { color: oklch(0.78 0.11 105); } /* #c2bb64 */ + .regular { color: oklch(0.71 0.16 105); } /* #b1a600 */ + .dark { color: oklch(0.50 0.11 105); } /* #6d6600 */ + .darker { color: oklch(0.30 0.06 105); } /* #322f04 */ + .darkest { color: oklch(0.10 0.02 105); } /* #040300 */ } .blue { - .lightest { color: oklch(0.95 0.02 210); } - .lighter { color: oklch(0.55 0.025 210); } - .light { color: oklch(0.8 0.08 210); } - .regular { color: oklch(0.8 0.18 210); } - .dark { color: oklch(0.33 0.06 210); } - .darker { color: oklch(0.2 0.03 210); } - .darkest { color: oklch(0.1 0.02 210); } + .lightest { color: oklch(0.95 0.02 245); } /* #e4f0fb */ + .lighter { color: oklch(0.85 0.06 245); } /* #aed3f3 */ + .light { color: oklch(0.78 0.11 245); } /* #78bff9 */ + .regular { color: oklch(0.71 0.16 245); } /* #32a9fe */ + .dark { color: oklch(0.50 0.11 245); } /* #1f689d */ + .darker { color: oklch(0.30 0.06 245); } /* #0f304a */ + .darkest { color: oklch(0.10 0.02 245); } /* #010408 */ } -.red { - .lightest { color: oklch(0.95 0.02 25); } - .lighter { color: oklch(0.55 0.025 25); } - .light { color: oklch(0.8 0.08 25); } - .regular { color: oklch(0.65 0.25 25); } - .dark { color: oklch(0.33 0.06 25); } - .darker { color: oklch(0.2 0.03 25); } - .darkest { color: oklch(0.1 0.02 25); } +.magenta { + .lightest { color: oklch(0.95 0.02 325); } /* #f6eaf6 */ + .lighter { color: oklch(0.85 0.06 325); } /* #e3c1e4 */ + .light { color: oklch(0.78 0.11 325); } /* #db9fde */ + .regular { color: oklch(0.71 0.16 325); } /* #d27bd8 */ + .dark { color: oklch(0.50 0.11 325); } /* #824b85 */ + .darker { color: oklch(0.30 0.06 325); } /* #3d233e */ + .darkest { color: oklch(0.10 0.02 325); } /* #060206 */ +} + +.cyan { + .lightest { color: oklch(0.95 0.02 195); } /* #e0f3f3 */ + .lighter { color: oklch(0.85 0.06 195); } /* #a0dbda */ + .light { color: oklch(0.78 0.11 195); } /* #4fcdcd */ + .regular { color: oklch(0.71 0.16 195); } /* #00bcbc */ + .dark { color: oklch(0.50 0.11 195); } /* #007576 */ + .darker { color: oklch(0.30 0.06 195); } /* #003737 */ + .darkest { color: oklch(0.10 0.02 195); } /* #000505 */ }