149 lines
5.0 KiB
Lua
149 lines
5.0 KiB
Lua
-- Waybar Theme - Warm Muted with Orange Accents
|
|
-- Save this as: ~/.config/nvim/colors/waybar.lua
|
|
|
|
local colors = {
|
|
bg0_h = "#1c1c1f",
|
|
bg0 = "#1c1c1f",
|
|
bg1 = "#252529",
|
|
bg2 = "#2d2d33",
|
|
bg3 = "#35353d",
|
|
bg4 = "#3d3d47",
|
|
gray = "#6d6860",
|
|
fg4 = "#7d7972",
|
|
fg3 = "#8a8580",
|
|
fg2 = "#ff9100",
|
|
fg1 = "#b39a76",
|
|
fg0 = "#c9b08a",
|
|
red = "#ff0000",
|
|
orange = "#ff9100",
|
|
white = "#ffffff",
|
|
black = "#000000",
|
|
}
|
|
|
|
-- Clear existing highlights
|
|
vim.cmd("highlight clear")
|
|
if vim.fn.exists("syntax_on") then
|
|
vim.cmd("syntax reset")
|
|
end
|
|
|
|
vim.o.background = "dark"
|
|
vim.g.colors_name = "theme"
|
|
|
|
local function hi(group, opts)
|
|
local cmd = "highlight " .. group
|
|
if opts.fg then cmd = cmd .. " guifg=" .. opts.fg end
|
|
if opts.bg then cmd = cmd .. " guibg=" .. opts.bg end
|
|
if opts.style then cmd = cmd .. " gui=" .. opts.style end
|
|
if opts.sp then cmd = cmd .. " guisp=" .. opts.sp end
|
|
vim.cmd(cmd)
|
|
end
|
|
|
|
-- Editor
|
|
hi("Normal", { fg = colors.fg1, bg = colors.bg0_h })
|
|
hi("NormalFloat", { fg = colors.fg1, bg = colors.bg1 })
|
|
hi("ColorColumn", { bg = colors.bg1 })
|
|
hi("Cursor", { fg = colors.bg0, bg = colors.fg1 })
|
|
hi("CursorLine", { bg = colors.bg1 })
|
|
hi("CursorColumn", { bg = colors.bg1 })
|
|
hi("LineNr", { fg = colors.fg4, bg = colors.bg0_h })
|
|
hi("CursorLineNr", { fg = colors.orange, bg = colors.bg1, style = "bold" })
|
|
hi("SignColumn", { fg = colors.fg4, bg = colors.bg0_h })
|
|
hi("VertSplit", { fg = colors.bg4, bg = colors.bg0 })
|
|
hi("Folded", { fg = colors.gray, bg = colors.bg1 })
|
|
hi("FoldColumn", { fg = colors.gray, bg = colors.bg0_h })
|
|
|
|
-- Statusline
|
|
hi("StatusLine", { fg = colors.fg2, bg = colors.bg2, style = "bold" })
|
|
hi("StatusLineNC", { fg = colors.fg4, bg = colors.bg1 })
|
|
|
|
-- Search
|
|
hi("Search", { fg = colors.black, bg = colors.orange })
|
|
hi("IncSearch", { fg = colors.black, bg = colors.orange, style = "bold" })
|
|
hi("Visual", { bg = colors.bg3 })
|
|
hi("VisualNOS", { bg = colors.bg3 })
|
|
|
|
-- Pmenu (popup menu)
|
|
hi("Pmenu", { fg = colors.fg1, bg = colors.bg1 })
|
|
hi("PmenuSel", { fg = colors.black, bg = colors.orange, style = "bold" })
|
|
hi("PmenuSbar", { bg = colors.bg2 })
|
|
hi("PmenuThumb", { bg = colors.fg4 })
|
|
|
|
-- Tabs
|
|
hi("TabLine", { fg = colors.fg4, bg = colors.bg2 })
|
|
hi("TabLineFill", { fg = colors.fg4, bg = colors.bg1 })
|
|
hi("TabLineSel", { fg = colors.orange, bg = colors.bg3, style = "bold" })
|
|
|
|
-- Syntax
|
|
hi("Comment", { fg = colors.gray, style = "italic" })
|
|
hi("Constant", { fg = colors.fg0 })
|
|
hi("String", { fg = colors.fg1 })
|
|
hi("Character", { fg = colors.fg1 })
|
|
hi("Number", { fg = colors.fg0 })
|
|
hi("Boolean", { fg = colors.fg0 })
|
|
hi("Float", { fg = colors.fg0 })
|
|
|
|
hi("Identifier", { fg = colors.fg1 })
|
|
hi("Function", { fg = colors.orange, style = "bold" })
|
|
|
|
hi("Statement", { fg = colors.orange, style = "bold" })
|
|
hi("Conditional", { fg = colors.orange })
|
|
hi("Repeat", { fg = colors.orange })
|
|
hi("Label", { fg = colors.orange })
|
|
hi("Operator", { fg = colors.fg2 })
|
|
hi("Keyword", { fg = colors.orange })
|
|
hi("Exception", { fg = colors.orange })
|
|
|
|
hi("PreProc", { fg = colors.fg2 })
|
|
hi("Include", { fg = colors.fg2 })
|
|
hi("Define", { fg = colors.fg2 })
|
|
hi("Macro", { fg = colors.fg2 })
|
|
hi("PreCondit", { fg = colors.fg2 })
|
|
|
|
hi("Type", { fg = colors.fg2 })
|
|
hi("StorageClass", { fg = colors.orange })
|
|
hi("Structure", { fg = colors.fg2 })
|
|
hi("Typedef", { fg = colors.fg2 })
|
|
|
|
hi("Special", { fg = colors.orange })
|
|
hi("SpecialChar", { fg = colors.orange })
|
|
hi("Tag", { fg = colors.orange })
|
|
hi("Delimiter", { fg = colors.fg3 })
|
|
hi("SpecialComment", { fg = colors.gray, style = "italic" })
|
|
hi("Debug", { fg = colors.red })
|
|
|
|
hi("Underlined", { fg = colors.fg2, style = "underline" })
|
|
hi("Error", { fg = colors.red, bg = colors.bg0, style = "bold" })
|
|
hi("Todo", { fg = colors.orange, bg = colors.bg0, style = "bold" })
|
|
|
|
-- Diagnostics
|
|
hi("DiagnosticError", { fg = colors.red })
|
|
hi("DiagnosticWarn", { fg = colors.orange })
|
|
hi("DiagnosticInfo", { fg = colors.fg2 })
|
|
hi("DiagnosticHint", { fg = colors.fg1 })
|
|
|
|
-- Git signs
|
|
hi("DiffAdd", { fg = colors.fg1, bg = colors.bg2 })
|
|
hi("DiffChange", { fg = colors.orange, bg = colors.bg2 })
|
|
hi("DiffDelete", { fg = colors.red, bg = colors.bg2 })
|
|
hi("DiffText", { fg = colors.orange, bg = colors.bg3, style = "bold" })
|
|
|
|
-- Telescope (if installed)
|
|
hi("TelescopeBorder", { fg = colors.fg2, bg = colors.bg0 })
|
|
hi("TelescopePromptBorder", { fg = colors.orange, bg = colors.bg0 })
|
|
hi("TelescopePromptTitle", { fg = colors.black, bg = colors.orange, style = "bold" })
|
|
hi("TelescopeSelection", { fg = colors.fg1, bg = colors.bg2, style = "bold" })
|
|
hi("TelescopeMatching", { fg = colors.orange, style = "bold" })
|
|
|
|
-- NvimTree (if installed)
|
|
hi("NvimTreeFolderName", { fg = colors.fg1 })
|
|
hi("NvimTreeFolderIcon", { fg = colors.orange })
|
|
hi("NvimTreeOpenedFolderName", { fg = colors.orange, style = "bold" })
|
|
hi("NvimTreeRootFolder", { fg = colors.orange, style = "bold" })
|
|
hi("NvimTreeSpecialFile", { fg = colors.orange })
|
|
hi("NvimTreeNormal", { fg = colors.fg1, bg = colors.bg0 })
|
|
|
|
-- LSP
|
|
hi("LspReferenceText", { bg = colors.bg2 })
|
|
hi("LspReferenceRead", { bg = colors.bg2 })
|
|
hi("LspReferenceWrite", { bg = colors.bg2 })
|