colorschemes/nord: switch to mkVimPlugin

This commit is contained in:
Gaetan Lepage 2024-02-13 15:01:49 +01:00 committed by Gaétan Lepage
parent b87083d5a0
commit be87309e0c
2 changed files with 53 additions and 68 deletions

View file

@ -5,76 +5,60 @@
pkgs, pkgs,
... ...
}: }:
with lib; let helpers.vim-plugin.mkVimPlugin config {
cfg = config.colorschemes.nord; namespace = "colorschemes";
in { name = "nord";
options = { originalName = "nord.nvim";
colorschemes.nord = { defaultPackage = pkgs.vimPlugins.nord-nvim;
enable = mkEnableOption "nord"; globalPrefix = "nord_";
package = helpers.mkPackageOption "nord.nvim" pkgs.vimPlugins.nord-nvim; maintainers = [lib.maintainers.GaetanLepage];
contrast = helpers.defaultNullOpts.mkBool false '' # TODO introduced 2024-02-20: remove 2024-04-20
Make sidebars and popup menus like nvim-tree and telescope have a different background. deprecateExtraConfig = true;
''; optionsRenamedToSettings = [
"contrast"
"borders"
"disableBackground"
"cursorlineTransparent"
"enableSidebarBackground"
"italic"
"uniformDiffBackground"
];
borders = helpers.defaultNullOpts.mkBool false '' settingsOptions = {
Enable the border between verticaly split windows visable. contrast = helpers.defaultNullOpts.mkBool false ''
''; Make sidebars and popup menus like nvim-tree and telescope have a different background.
'';
disableBackground = helpers.defaultNullOpts.mkBool false '' borders = helpers.defaultNullOpts.mkBool false ''
Disable the setting of background color so that NeoVim can use your terminal background. Enable the border between verticaly split windows visable.
''; '';
cursorlineTransparent = helpers.defaultNullOpts.mkBool false '' disable_background = helpers.defaultNullOpts.mkBool false ''
Set the cursorline transparent/visible. Disable the setting of background color so that NeoVim can use your terminal background.
''; '';
enableSidebarBackground = helpers.defaultNullOpts.mkBool false '' cursorline_transparent = helpers.defaultNullOpts.mkBool false ''
Re-enables the background of the sidebar if you disabled the background of everything. Set the cursorline transparent/visible.
''; '';
italic = helpers.defaultNullOpts.mkBool true '' enable_sidebar_background = helpers.defaultNullOpts.mkBool false ''
Enables/disables italics. Re-enables the background of the sidebar if you disabled the background of everything.
''; '';
uniformDiffBackground = helpers.defaultNullOpts.mkBool false '' italic = helpers.defaultNullOpts.mkBool true ''
Enables/disables colorful backgrounds when used in _diff_ mode. Enables/disables italics.
''; '';
extraConfig = mkOption { uniform_diff_background = helpers.defaultNullOpts.mkBool false ''
type = types.attrs; Enables/disables colorful backgrounds when used in _diff_ mode.
description = '' '';
The configuration options for vimtex without the 'nord_' prefix.
Example: To set 'nord_foo_bar' to 1, write
extraConfig = {
foo_bar = true;
};
'';
default = {};
};
};
}; };
config = mkIf cfg.enable { settingsExample = {
colorscheme = "nord"; borders = true;
extraPlugins = [cfg.package]; disable_background = true;
italic = false;
globals =
mapAttrs'
(name: value: nameValuePair "nord_${name}" value)
(with cfg;
{
inherit
contrast
borders
;
disable_background = disableBackground;
cursorline_transparent = cursorlineTransparent;
enable_sidebar_background = enableSidebarBackground;
inherit italic;
uniform_diff_background = uniformDiffBackground;
}
// cfg.extraConfig);
}; };
} }

View file

@ -7,14 +7,15 @@
colorschemes.nord = { colorschemes.nord = {
enable = true; enable = true;
contrast = false; settings = {
borders = false; contrast = false;
disableBackground = false; borders = false;
cursorlineTransparent = false; disable_background = false;
enableSidebarBackground = false; cursorline_transparent = false;
italic = true; enable_sidebar_background = false;
uniformDiffBackground = false; italic = true;
extraConfig = {}; uniform_diff_background = false;
};
}; };
}; };
} }