dotfiles/.config/nvim/colors/dc.lua
Sarthak f341989335 Sakura Line: retheme the whole desktop from the wallpaper
Palette sampled from bspwm/wallpaper/wallpaper.jpg and applied per-role
(not per-hex, so terminal green stays green and nvim's LineNr/Comment
stay recessive) across st, kitty, polybar, rofi, dunst, nvim, qt5ct/qt6ct
and GTK 2/3/4.

Also:
- rofi drun centred, icons enabled
- polybar translucent (true ARGB) and rounded; picom corner-radius, with
  the desktop layer and fullscreen windows excluded
- fix qt5ct color_scheme_path pointing at a nonexistent /home/carrie
- export QT_QPA_PLATFORMTHEME so qt6ct is actually consulted
- point GTK at an icon theme that exists on this system
- add .config/rice: one-shot install.sh (--dry-run supported), package
  list, vendored st config.h (gitignored upstream) and the particles
  wallpaper-layer source, so a clone reproduces the rice

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Cn3dHfbgNYdbZvzb1b3GQt
2026-09-04 00:19:36 +05:30

91 lines
2.5 KiB
Lua

local colors = {
bg = "#0f0d17",
fg = "#e9eefb",
cursor = "#92b9ea",
selection_bg = "#2e2842",
selection_fg = "#0f0d17",
black = "#0f0d17",
black_bright = "#201b30",
red = "#cf6a80",
red_bright = "#e0798f",
green = "#8fae74",
green_bright = "#a8c68d",
yellow = "#d8a87c",
yellow_bright = "#e9c79b",
blue = "#454063",
blue_bright = "#6b6486",
magenta = "#b483c0",
magenta_bright = "#d0a4d8",
cyan = "#8ab6c4",
cyan_bright = "#a3c0cb",
white = "#e9eefb",
}
vim.cmd("highlight clear")
vim.o.termguicolors = true
vim.g.colors_name = "dc"
local function hi(group, opts)
vim.api.nvim_set_hl(0, group, opts)
end
-- Core UI
hi("Normal", { fg = colors.fg, bg = colors.bg })
hi("Cursor", { fg = colors.bg, bg = colors.cursor })
hi("Visual", { fg = colors.selection_fg, bg = colors.selection_bg })
hi("LineNr", { fg = colors.blue })
hi("CursorLineNr", { fg = colors.yellow_bright, bold = true })
hi("CursorLine", { bg = colors.black_bright })
hi("StatusLine", { fg = colors.fg, bg = colors.black_bright })
hi("StatusLineNC", { fg = colors.blue, bg = colors.black })
hi("Pmenu", { fg = colors.fg, bg = colors.black_bright })
hi("PmenuSel", { fg = colors.selection_fg, bg = colors.green })
hi("Search", { fg = colors.selection_fg, bg = colors.yellow })
hi("IncSearch", { fg = colors.selection_fg, bg = colors.yellow_bright })
hi("VertSplit", { fg = colors.black_bright })
-- Syntax
hi("Comment", { fg = colors.blue_bright, italic = true })
hi("String", { fg = colors.green })
hi("Number", { fg = colors.yellow })
hi("Boolean", { fg = colors.yellow_bright })
hi("Identifier", { fg = colors.fg })
hi("Function", { fg = colors.green_bright })
hi("Keyword", { fg = colors.red_bright, bold = true })
hi("Operator", { fg = colors.red })
hi("Type", { fg = colors.cyan_bright })
-- Diagnostics (LSP)
hi("DiagnosticError", { fg = colors.red })
hi("DiagnosticWarn", { fg = colors.yellow })
hi("DiagnosticInfo", { fg = colors.blue_bright })
hi("DiagnosticHint", { fg = colors.cyan })
-- Git
hi("DiffAdd", { fg = colors.green })
hi("DiffChange", { fg = colors.yellow })
hi("DiffDelete", { fg = colors.red })
-- Match & Brackets
hi("MatchParen", { fg = colors.bg, bg = colors.magenta_bright, bold = true })
-- Floating Windows
hi("NormalFloat", { fg = colors.fg, bg = colors.black_bright })
hi("FloatBorder", { fg = colors.blue_bright })
-- Telescope
hi("TelescopeBorder", { fg = colors.blue })
hi("TelescopeNormal", { fg = colors.fg, bg = colors.black })
hi("TelescopeSelection", { bg = colors.selection_bg })