From ee39bd927e056c2dae9d61230a95a05715b3a8c6 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 11 Sep 2026 18:45:15 +0200 Subject: feat(palette): add five more schemes, and parse-check them all Adds Catppuccin Frappe and Mocha, which share Macchiato's colour names so their role maps are the same mapping against different values, and Material Ocean, Palenight and Darker, which bring their own names and their own maps. Nine schemes now, all dark. Material ships one accent per hue and three greys where the roles want five depths, so each Material palette carries four interpolated shades, marked as not upstream, and its bright_* terminal slots name the same colours as the normal ones. The selftest now renders every scheme to a temp directory and has rofi parse every theme, not just check that roles resolve. Resolving was never the property that mattered: the Tokyo Night breakage resolved fine and still emitted a palette the themes could not use. Verified the check fails when a name is removed. Catppuccin Latte is deliberately absent. It is light, and that is not a role remap: homepage is pinned theme: dark and the generated card overrides target its dark-mode class. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_015gbjA2bmswN8jyPDKzrvqe --- palette/roles-frappe.conf | 122 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 palette/roles-frappe.conf (limited to 'palette/roles-frappe.conf') diff --git a/palette/roles-frappe.conf b/palette/roles-frappe.conf new file mode 100644 index 0000000..4ae5ea4 --- /dev/null +++ b/palette/roles-frappe.conf @@ -0,0 +1,122 @@ +# Role assignments for Catppuccin Frappe. +# Copyright (C) 2026 Danilo M. +# Licensed under the GNU General Public License v2 only. +# +# Every role in here names a colour from palette/frappe.conf. See +# palette/roles.conf for what the roles mean and how to select a scheme. + +[ui] +# Surfaces, darkest to lightest. Most consumers only need the first three. +bg = base +bg_alt = mantle +bg_deep = crust +surface = surface0 +surface_alt = surface1 +border = surface1 + +# Text, brightest to dimmest. +fg = text +fg_dim = subtext0 +fg_faint = overlay0 + +# The one colour that tracks the wallpaper. udt-accent overrides this per +# wallpaper for rofi, dunst, Hyprland and Firefox; the value here is the +# fallback, and what the consumers that do not track it sit on permanently. +accent = lavender + +[state] +# Notification urgency, waybar module states, conky warnings. +warning = yellow +critical = red +success = green +info = teal + +[waybar] +# Bar chrome. These were already role names in ~/.config/waybar/theme.css. +main_br = subtext0 +main_bg = crust +main_fg = text +hover_bg = base +hover_fg = text/75 +outline = crust*50 + +# Per-module backgrounds. Alternating depths, not semantic: the bar reads as +# stripes, so neighbouring modules differ. +workspaces = mantle +temperature = mantle +memory = base +cpu = surface0 +time = surface0 +date = base +tray = mantle +volume = mantle +backlight = base +battery = surface0 +charging = green + +[conky] +# conky indexes colours by number. The names say what each number draws. +heading = lavender +label = subtext0 +rule = surface1 +value = teal +highlight = mauve +ok = green +body = text +body_outline = surface1 +body_shade = mantle + +[terminal] +# The 16 ANSI slots, plus kitty's own chrome. normal and bright are separate +# because a scheme may offer distinct pairs; Catppuccin and Dracula do not, so +# these name the same colours twice. +cursor = rosewater +selection_bg = rosewater +selection_fg = base +url = rosewater +tab_active_bg = mauve +tab_active_fg = crust +tab_inactive_bg = mantle +tab_inactive_fg = text +border_active = lavender +border_inactive = overlay0 + +black = surface1 +red = red +green = green +yellow = yellow +blue = blue +magenta = pink +cyan = teal +white = subtext1 + +bright_black = surface2 +bright_red = red +bright_green = green +bright_yellow = yellow +bright_blue = blue +bright_magenta = pink +bright_cyan = teal +bright_white = subtext0 + +# Intermediate greys, for consumers that want a full ramp rather than +# three depths. homepage's --color-50..900 is the only one so far. +fg_bright = subtext1 +mid_high = overlay2 +mid_low = overlay1 +surface_high = surface2 + +# kitty extras: marks, scrollbar, bell, tab bar ground. +mark1 = lavender +mark2 = mauve +mark3 = sapphire +scrollbar_handle = overlay2 +scrollbar_track = surface1 +bell_border = yellow +tab_bar_bg = crust + +[accents] +# The hues udt-accent snaps a wallpaper to. Near-neutral tints (rosewater, +# flamingo) and near-duplicate hues (maroon, sapphire) are left out so the +# snapping has one candidate per region of the wheel. +snap = pink mauve lavender red peach yellow green teal sky blue -- cgit v1.2.3