mirror of
https://github.com/elwrcl/copnix.git
synced 2026-10-31 06:18:03 +03:00
155 lines
4.1 KiB
Nix
155 lines
4.1 KiB
Nix
{ ... }:
|
|
{
|
|
flake.homeModules.home-theme-zellij =
|
|
{ config, lib, ... }:
|
|
let
|
|
p = config.elars.theme.palette;
|
|
|
|
c = hex: lib.concatMapStringsSep " " toString (config.elars.theme.hexToRgb hex);
|
|
|
|
bg = c p.base00;
|
|
bgAlt = c p.base01;
|
|
fg = c p.base05;
|
|
accent = c (p.accent or p.base06);
|
|
orange = c p.base09;
|
|
yellow = c p.base0A;
|
|
green = c p.base0B;
|
|
cyan = c p.base0C;
|
|
blue = c p.base0D;
|
|
magenta = c p.base0E;
|
|
red = c p.base08;
|
|
|
|
slot =
|
|
{
|
|
base,
|
|
background,
|
|
e0 ? orange,
|
|
e1 ? blue,
|
|
e2 ? green,
|
|
e3 ? magenta,
|
|
}:
|
|
lib.concatStringsSep "\n " [
|
|
"base ${base}"
|
|
"background ${background}"
|
|
"emphasis_0 ${e0}"
|
|
"emphasis_1 ${e1}"
|
|
"emphasis_2 ${e2}"
|
|
"emphasis_3 ${e3}"
|
|
];
|
|
|
|
unselected = slot {
|
|
base = fg;
|
|
background = bg;
|
|
};
|
|
|
|
selected = slot {
|
|
base = bg;
|
|
background = accent;
|
|
e1 = bg;
|
|
};
|
|
in
|
|
{
|
|
programs.zellij.themes.kemuri-copnix = ''
|
|
themes {
|
|
kemuri-copnix {
|
|
text_unselected {
|
|
${unselected}
|
|
}
|
|
text_selected {
|
|
${selected}
|
|
}
|
|
ribbon_selected {
|
|
${slot {
|
|
base = bg;
|
|
background = accent;
|
|
e0 = red;
|
|
e1 = yellow;
|
|
e2 = magenta;
|
|
e3 = blue;
|
|
}}
|
|
}
|
|
ribbon_unselected {
|
|
${slot {
|
|
base = fg;
|
|
background = bgAlt;
|
|
e0 = red;
|
|
e1 = fg;
|
|
e2 = blue;
|
|
e3 = magenta;
|
|
}}
|
|
}
|
|
table_title {
|
|
${slot {
|
|
base = green;
|
|
background = bg;
|
|
}}
|
|
}
|
|
table_cell_selected {
|
|
${selected}
|
|
}
|
|
table_cell_unselected {
|
|
${unselected}
|
|
}
|
|
list_selected {
|
|
${selected}
|
|
}
|
|
list_unselected {
|
|
${unselected}
|
|
}
|
|
frame_selected {
|
|
${slot {
|
|
base = accent;
|
|
background = bg;
|
|
e1 = green;
|
|
e2 = magenta;
|
|
e3 = bg;
|
|
}}
|
|
}
|
|
frame_highlight {
|
|
${slot {
|
|
base = orange;
|
|
background = bg;
|
|
e0 = magenta;
|
|
e1 = orange;
|
|
e2 = orange;
|
|
e3 = orange;
|
|
}}
|
|
}
|
|
exit_code_success {
|
|
${slot {
|
|
base = green;
|
|
background = bg;
|
|
e0 = accent;
|
|
e1 = bg;
|
|
e2 = magenta;
|
|
e3 = blue;
|
|
}}
|
|
}
|
|
exit_code_error {
|
|
${slot {
|
|
base = red;
|
|
background = bg;
|
|
e0 = yellow;
|
|
e1 = bg;
|
|
e2 = bg;
|
|
e3 = bg;
|
|
}}
|
|
}
|
|
multiplayer_user_colors {
|
|
player_1 ${magenta}
|
|
player_2 ${blue}
|
|
player_3 ${cyan}
|
|
player_4 ${yellow}
|
|
player_5 ${accent}
|
|
player_6 ${green}
|
|
player_7 ${red}
|
|
player_8 ${orange}
|
|
player_9 ${fg}
|
|
player_10 ${bgAlt}
|
|
}
|
|
}
|
|
}
|
|
'';
|
|
};
|
|
}
|