mirror of
https://github.com/nix-community/home-manager.git
synced 2025-11-21 17:59:39 +01:00
wezterm: support color schemes
Allows users to specify TOML color schemes using Nix.
This commit is contained in:
parent
8675cfa549
commit
44dcad5604
2 changed files with 84 additions and 5 deletions
|
|
@ -5,6 +5,7 @@ with lib;
|
|||
let
|
||||
|
||||
cfg = config.programs.wezterm;
|
||||
tomlFormat = pkgs.formats.toml { };
|
||||
|
||||
in {
|
||||
options.programs.wezterm = {
|
||||
|
|
@ -44,13 +45,45 @@ in {
|
|||
how to configure.
|
||||
'';
|
||||
};
|
||||
|
||||
colorSchemes = mkOption {
|
||||
type = types.attrsOf (tomlFormat.type);
|
||||
default = { };
|
||||
example = literalExpression ''
|
||||
myCoolTheme = {
|
||||
ansi = [
|
||||
"#222222" "#D14949" "#48874F" "#AFA75A"
|
||||
"#599797" "#8F6089" "#5C9FA8" "#8C8C8C"
|
||||
];
|
||||
brights = [
|
||||
"#444444" "#FF6D6D" "#89FF95" "#FFF484"
|
||||
"#97DDFF" "#FDAAF2" "#85F5DA" "#E9E9E9"
|
||||
];
|
||||
background = "#1B1B1B";
|
||||
cursor_bg = "#BEAF8A";
|
||||
cursor_border = "#BEAF8A";
|
||||
cursor_fg = "#1B1B1B";
|
||||
foreground = "#BEAF8A";
|
||||
selection_bg = "#444444";
|
||||
selection_fg = "#E9E9E9";
|
||||
};
|
||||
'';
|
||||
description = ''
|
||||
Attribute set of additional color schemes to be written to
|
||||
<filename>$XDG_CONFIG_HOME/wezterm/colors</filename>, where each key is
|
||||
taken as the name of the corresponding color scheme. See
|
||||
<link xlink:href="https://wezfurlong.org/wezterm/config/appearance.html#defining-a-color-scheme-in-a-separate-file"/>
|
||||
for more details of the TOML color scheme format.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = [ cfg.package ];
|
||||
|
||||
xdg.configFile."wezterm/wezterm.lua" = {
|
||||
text = ''
|
||||
xdg.configFile = {
|
||||
"wezterm/wezterm.lua".text = ''
|
||||
-- Generated by Home Manager.
|
||||
-- See https://wezfurlong.org/wezterm/
|
||||
|
||||
|
|
@ -60,6 +93,9 @@ in {
|
|||
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
};
|
||||
} // mapAttrs' (name: value:
|
||||
nameValuePair "wezterm/colors/${name}.toml" {
|
||||
source = tomlFormat.generate "${name}.toml" { colors = value; };
|
||||
}) cfg.colorSchemes;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue