2023-11-04 01:34:32 +00:00
|
|
|
{ lib, ... }:
|
|
|
|
with lib;
|
|
|
|
let
|
|
|
|
colors = {
|
|
|
|
primary = {
|
|
|
|
background = "000000";
|
|
|
|
foreground = "ffffff";
|
|
|
|
};
|
|
|
|
cursor = {
|
|
|
|
# Text under cursor
|
|
|
|
text = "f81ce5";
|
|
|
|
# Foreground of cursor
|
|
|
|
cursor = "ffffff";
|
|
|
|
};
|
|
|
|
# Numbered colors in standard order (see colorNames)
|
|
|
|
normal = [
|
|
|
|
"000000"
|
|
|
|
"fe0100"
|
|
|
|
"33ff00"
|
|
|
|
"feff00"
|
|
|
|
"0066ff"
|
|
|
|
"cc00ff"
|
|
|
|
"00ffff"
|
|
|
|
"d0d0d0"
|
|
|
|
];
|
|
|
|
bright = [
|
|
|
|
"808080"
|
|
|
|
"fe0100"
|
|
|
|
"33ff00"
|
|
|
|
"feff00"
|
|
|
|
"0066ff"
|
|
|
|
"cc00ff"
|
|
|
|
"00ffff"
|
|
|
|
"ffffff"
|
|
|
|
];
|
|
|
|
};
|
2024-03-02 03:13:17 +00:00
|
|
|
colorNames = [
|
|
|
|
"black"
|
|
|
|
"red"
|
|
|
|
"green"
|
|
|
|
"yellow"
|
|
|
|
"blue"
|
|
|
|
"magenta"
|
|
|
|
"cyan"
|
|
|
|
"white"
|
|
|
|
];
|
|
|
|
namedColors =
|
|
|
|
prefix: colors: listToAttrs (zipListsWith nameValuePair colorNames (map (c: prefix + c) colors));
|
|
|
|
numberedColors =
|
|
|
|
attrPrefix: valuePrefix: attrOffset: colors:
|
|
|
|
listToAttrs (
|
|
|
|
zipListsWith nameValuePair (map (i: attrPrefix + toString (i + attrOffset)) (range 0 7)) (
|
|
|
|
map (c: valuePrefix + c) colors
|
|
|
|
)
|
|
|
|
);
|
2023-11-04 01:34:32 +00:00
|
|
|
|
|
|
|
font = {
|
|
|
|
name = "Fira Code";
|
|
|
|
size = 9;
|
|
|
|
};
|
2024-03-02 03:13:17 +00:00
|
|
|
in
|
|
|
|
{
|
2023-11-04 01:34:32 +00:00
|
|
|
# Not used on most systems
|
|
|
|
programs.foot = {
|
|
|
|
settings = {
|
|
|
|
main.font = "${font.name}:size=${toString font.size}";
|
2024-03-02 03:13:17 +00:00
|
|
|
colors =
|
|
|
|
colors.primary
|
|
|
|
// (numberedColors "regular" "" 0 colors.normal)
|
2023-11-04 01:34:32 +00:00
|
|
|
// (numberedColors "bright" "" 0 colors.bright);
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.alacritty = {
|
|
|
|
enable = true;
|
|
|
|
settings = {
|
|
|
|
scrolling.history = 16384;
|
|
|
|
font = {
|
|
|
|
normal.family = font.name;
|
|
|
|
inherit (font) size;
|
|
|
|
};
|
|
|
|
colors = with colors; {
|
|
|
|
primary = mapAttrs (_: value: "0x" + value) primary;
|
|
|
|
cursor = mapAttrs (_: value: "0x" + value) cursor;
|
|
|
|
normal = namedColors "0x" normal;
|
|
|
|
bright = namedColors "0x" bright;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.kitty = {
|
|
|
|
enable = true;
|
|
|
|
inherit font;
|
|
|
|
settings = {
|
|
|
|
update_check_interval = 0;
|
|
|
|
close_on_child_death = true;
|
|
|
|
confirm_os_window_close = 2;
|
|
|
|
enable_audio_bell = 0;
|
|
|
|
clipboard_control = false;
|
|
|
|
scrollback_lines = 32768;
|
|
|
|
touch_scroll_multiplier = 4;
|
2024-03-02 03:13:17 +00:00
|
|
|
} // (numberedColors "color" "#" 0 colors.normal) // (numberedColors "color" "#" 8 colors.bright);
|
2024-02-09 21:54:51 +00:00
|
|
|
extraConfig = ''
|
2024-02-09 22:47:27 +00:00
|
|
|
symbol_map U+e000-U+f8ff,U+f0000-U+f2000 Symbols Nerd Font Mono
|
2024-02-09 21:54:51 +00:00
|
|
|
'';
|
2023-11-04 01:34:32 +00:00
|
|
|
};
|
|
|
|
}
|