87 lines
2.6 KiB
Lua
87 lines
2.6 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}}",
|
|
}
|
|
|
|
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 })
|