fastfetch: visible palette blocks, keyed icons

This commit is contained in:
rope 2026-07-28 22:33:07 +01:00
parent 3d3a9e7997
commit 2d5c385ec1

View file

@ -3,7 +3,9 @@ let
c = config.lib.stylix.colors;
# Truecolor swatch for one base16 slot. `` stays a literal JSON escape
# here — fastfetch's JSONC parser turns it into a real ESC byte.
swatch = n: "\\u001b[48;2;${c."${n}-rgb-r"};${c."${n}-rgb-g"};${c."${n}-rgb-b"}m ";
# Foreground blocks, not background-coloured spaces: a coloured space is
# invisible anywhere the colour is stripped (copy/paste, piped output).
swatch = n: "\\u001b[38;2;${c."${n}-rgb-r"};${c."${n}-rgb-g"};${c."${n}-rgb-b"}m";
paletteRow = names: lib.concatMapStrings swatch names + "\\u001b[0m";
in
{
@ -62,16 +64,19 @@ in
{
"type": "custom",
"key": "Scheme",
"keyIcon": "󰉦",
"format": "base16, generated by stylix from wallpaper.png (${config.stylix.polarity})"
},
{
"type": "custom",
"key": "Base",
"keyIcon": "󰸌",
"format": "${paletteRow [ "base00" "base01" "base02" "base03" "base04" "base05" "base06" "base07" ]}"
},
{
"type": "custom",
"key": "Accent",
"keyIcon": "󰸌",
"format": "${paletteRow [ "base08" "base09" "base0A" "base0B" "base0C" "base0D" "base0E" "base0F" ]}"
},
{