69 lines
1.9 KiB
Nix
69 lines
1.9 KiB
Nix
{ config, fonts, ... }:
|
|
{
|
|
programs.alacritty = {
|
|
enable = true;
|
|
settings = {
|
|
shell = "${config.programs.fish.package}/bin/fish";
|
|
font = {
|
|
size = fonts.sizes.applications;
|
|
normal = {
|
|
family = fonts.monospace.name;
|
|
style = "Regular";
|
|
};
|
|
};
|
|
window = {
|
|
dynamic_title = true;
|
|
padding = {
|
|
x = 5;
|
|
y = 5;
|
|
};
|
|
};
|
|
live_config_reload = true;
|
|
selection.save_to_clipboard = true;
|
|
mouse.hide_when_typing = true;
|
|
colors =
|
|
let
|
|
mapColours =
|
|
isBright:
|
|
(builtins.listToAttrs (
|
|
builtins.map
|
|
(col: {
|
|
# Alacritty uses Yellow instead of Orange for BASE09
|
|
name = if col == "orange" then "yellow" else col;
|
|
value = "0x${config.scheme.${if isBright then "bright-${col}" else col}}";
|
|
})
|
|
[
|
|
"red"
|
|
"orange"
|
|
"green"
|
|
"cyan"
|
|
"blue"
|
|
"magenta"
|
|
]
|
|
));
|
|
mapNamedColours = mapColours false;
|
|
mapNamedBrightColours = mapColours true;
|
|
in
|
|
{
|
|
draw_bold_text_with_bright_colors = false;
|
|
primary = {
|
|
background = "0x${config.scheme.base00}";
|
|
foreground = "0x${config.scheme.base05}";
|
|
};
|
|
cursor = {
|
|
cursor = "0x${config.scheme.base05}";
|
|
text = "0x${config.scheme.base00}";
|
|
};
|
|
normal = {
|
|
black = "0x${config.scheme.base00-hex}";
|
|
white = "0x${config.scheme.base05-hex}";
|
|
} // mapNamedColours;
|
|
bright = {
|
|
black = "0x${config.scheme.base03-hex}";
|
|
white = "0x${config.scheme.base07-hex}";
|
|
} // mapNamedBrightColours;
|
|
};
|
|
};
|
|
};
|
|
}
|