126 lines
4.3 KiB
Lua
126 lines
4.3 KiB
Lua
-- Wallust Native Theme
|
|
-- Generated by Wallust
|
|
|
|
vim.cmd("hi clear")
|
|
if vim.fn.exists("syntax_on") then
|
|
vim.cmd("syntax reset")
|
|
end
|
|
vim.g.colors_name = "wallust"
|
|
|
|
local c = {
|
|
bg = "{{background}}",
|
|
fg = "{{foreground}}",
|
|
cursor = "{{cursor}}",
|
|
c0 = "{{color0}}",
|
|
c1 = "{{color1}}",
|
|
c2 = "{{color2}}",
|
|
c3 = "{{color3}}",
|
|
c4 = "{{color4}}",
|
|
c5 = "{{color5}}",
|
|
c6 = "{{color6}}",
|
|
c7 = "{{color7}}",
|
|
c8 = "{{color8}}",
|
|
c9 = "{{color9}}",
|
|
c10 = "{{color10}}",
|
|
c11 = "{{color11}}",
|
|
c12 = "{{color12}}",
|
|
c13 = "{{color13}}",
|
|
c14 = "{{color14}}",
|
|
c15 = "{{color15}}",
|
|
tbg = "{{background | lighten(0.02)}}",
|
|
}
|
|
|
|
local hl = function(group, opts)
|
|
vim.api.nvim_set_hl(0, group, opts)
|
|
end
|
|
|
|
-- Base
|
|
hl("Normal", { fg = c.fg, bg = c.bg })
|
|
hl("Cursor", { fg = c.bg, bg = c.cursor })
|
|
hl("LineNr", { fg = c.c8 })
|
|
hl("CursorLine", { bg = c.c0 })
|
|
hl("StatusLine", { fg = c.fg, bg = c.c0 })
|
|
|
|
-- Syntax
|
|
hl("Comment", { fg = c.c8, italic = true })
|
|
hl("Constant", { fg = c.c3 })
|
|
hl("String", { fg = c.c2 })
|
|
hl("Identifier", { fg = c.c4 })
|
|
hl("Function", { fg = c.c4, bold = true })
|
|
hl("Statement", { fg = c.c5 })
|
|
hl("Keyword", { fg = c.c5 })
|
|
hl("Type", { fg = c.c6 })
|
|
hl("Special", { fg = c.c1 })
|
|
|
|
-- UI
|
|
hl("Pmenu", { fg = c.fg, bg = c.c0 })
|
|
hl("PmenuSel", { fg = c.c0, bg = c.c4 })
|
|
hl("WinSeparator", { fg = c.c8 })
|
|
-- BARBAR HIGHLIGHTS (Revised for Visibility)
|
|
|
|
-- 1. ACTIVE TAB (The one you are looking at)
|
|
-- Background = Main BG, Foreground = Main FG (Seamless look)
|
|
hl("BufferCurrent", { fg = c.fg, bg = c.bg, bold = true })
|
|
hl("BufferCurrentIndex", { fg = c.c4, bg = c.bg })
|
|
hl("BufferCurrentMod", { fg = c.c3, bg = c.bg })
|
|
hl("BufferCurrentSign", { fg = c.c4, bg = c.bg })
|
|
hl("BufferCurrentTarget", { fg = c.c1, bg = c.bg, bold = true })
|
|
|
|
-- 2. INACTIVE TAB (The ones waiting in the back)
|
|
-- Background = Color0 (Darker/Different), Foreground = Color8 (Dimmed text)
|
|
hl("BufferInactive", { fg = c.c8, bg = c.bg })
|
|
hl("BufferInactiveIndex", { fg = c.c8, bg = c.bg })
|
|
hl("BufferInactiveMod", { fg = c.c8, bg = c.bg })
|
|
hl("BufferInactiveSign", { fg = c.c8, bg = c.bg })
|
|
hl("BufferInactiveTarget", { fg = c.c8, bg = c.bg, bold = true })
|
|
|
|
-- 3. VISIBLE TAB (Open in another split)
|
|
-- Slightly brighter than inactive, so you know it's "alive"
|
|
hl("BufferVisible", { fg = c.fg, bg = c.c0 })
|
|
hl("BufferVisibleIndex", { fg = c.fg, bg = c.c0 })
|
|
hl("BufferVisibleMod", { fg = c.c3, bg = c.c0 })
|
|
hl("BufferVisibleSign", { fg = c.c4, bg = c.c0 })
|
|
hl("BufferVisibleTarget", { fg = c.c1, bg = c.c0, bold = true })
|
|
|
|
-- 4. THE EMPTY SPACE (The rest of the bar)
|
|
-- Make this match the Inactive background so tabs float on it
|
|
hl("BufferTabpageFill", { fg = c.c0, bg = c.bg })
|
|
hl("TelescopeNormal", { bg = c.tbg })
|
|
-- RENDER MARKDOWN HIGHLIGHTS 🐾
|
|
-- Headings: Using a rainbow structure for hierarchy
|
|
hl("RenderMarkdownH1", { fg = c.c4, bold = true }) -- Blue
|
|
hl("RenderMarkdownH2", { fg = c.c3, bold = true }) -- Yellow
|
|
hl("RenderMarkdownH3", { fg = c.c2, bold = true }) -- Green
|
|
hl("RenderMarkdownH4", { fg = c.c5, bold = true }) -- Magenta
|
|
hl("RenderMarkdownH5", { fg = c.c6, bold = true }) -- Cyan
|
|
hl("RenderMarkdownH6", { fg = c.c1, bold = true }) -- Red
|
|
|
|
-- Heading Backgrounds: Using c0 (darker/dim) for that 'block' look
|
|
hl("RenderMarkdownH1Bg", { bg = c.c0 })
|
|
hl("RenderMarkdownH2Bg", { bg = c.c0 })
|
|
hl("RenderMarkdownH3Bg", { bg = c.c0 })
|
|
hl("RenderMarkdownH4Bg", { bg = c.c0 })
|
|
hl("RenderMarkdownH5Bg", { bg = c.c0 })
|
|
hl("RenderMarkdownH6Bg", { bg = c.c0 })
|
|
|
|
-- Code Blocks: Using your 'tbg' variable for a subtle lift
|
|
hl("RenderMarkdownCode", { bg = c.tbg })
|
|
hl("RenderMarkdownCodeInline", { fg = c.c4, bg = c.tbg })
|
|
|
|
-- General Elements
|
|
hl("RenderMarkdownBullet", { fg = c.c3 }) -- Yellow bullets
|
|
hl("RenderMarkdownQuote", { fg = c.c8 }) -- Dimmed quotes
|
|
hl("RenderMarkdownDash", { fg = c.c8 }) -- Dimmed horizontal lines
|
|
hl("RenderMarkdownSign", { fg = c.c8 }) -- Dimmed sign column
|
|
|
|
-- Callouts & Admonitions (The standard color mapping)
|
|
hl("RenderMarkdownInfo", { fg = c.c4, bg = c.c0 }) -- Blue
|
|
hl("RenderMarkdownSuccess", { fg = c.c2, bg = c.c0 }) -- Green
|
|
hl("RenderMarkdownWarn", { fg = c.c3, bg = c.c0 }) -- Yellow
|
|
hl("RenderMarkdownError", { fg = c.c1, bg = c.c0 }) -- Red
|
|
hl("RenderMarkdownHint", { fg = c.c6, bg = c.c0 }) -- Cyan
|
|
|
|
-- Checkboxes
|
|
hl("RenderMarkdownUnchecked", { fg = c.c8 })
|
|
hl("RenderMarkdownChecked", { fg = c.c2 }) -- Green check!
|