mirror of
https://github.com/nix-community/nixvim.git
synced 2025-08-28 13:58:41 +02:00
We used to only think of it as the plugin repo's name, but we have been needing to use it for the name of the plugin's packpath location.
63 lines
1.4 KiB
Nix
63 lines
1.4 KiB
Nix
{
|
|
lib,
|
|
helpers,
|
|
...
|
|
}:
|
|
with lib;
|
|
# We use `mkVimPlugin` to avoid having a `settings` option.
|
|
# Indeed, this plugin is not configurable in the common sense (no `setup` function).
|
|
helpers.vim-plugin.mkVimPlugin {
|
|
name = "gitignore";
|
|
packPathName = "gitignore.nvim";
|
|
package = "gitignore-nvim";
|
|
|
|
maintainers = [ maintainers.GaetanLepage ];
|
|
|
|
extraOptions = {
|
|
keymap = mkOption {
|
|
type =
|
|
with types;
|
|
nullOr (
|
|
either str (submodule {
|
|
options = {
|
|
key = mkOption {
|
|
type = str;
|
|
description = "The key to map.";
|
|
example = "<leader>gi";
|
|
};
|
|
|
|
mode = helpers.keymaps.mkModeOption "n";
|
|
|
|
options = helpers.keymaps.mapConfigOptions;
|
|
};
|
|
})
|
|
);
|
|
default = null;
|
|
description = ''
|
|
Keyboard shortcut for the `gitignore.generate` command.
|
|
Can be:
|
|
- A string: which key to bind
|
|
- An attrs: if you want to customize the mode and/or the options of the keymap
|
|
(`desc`, `silent`, ...)
|
|
'';
|
|
example = "<leader>gi";
|
|
};
|
|
};
|
|
|
|
extraConfig = cfg: {
|
|
keymaps = optional (cfg.keymap != null) (
|
|
(
|
|
if isString cfg.keymap then
|
|
{
|
|
mode = "n";
|
|
key = cfg.keymap;
|
|
}
|
|
else
|
|
cfg.keymap
|
|
)
|
|
// {
|
|
action.__raw = "require('gitignore').generate";
|
|
}
|
|
);
|
|
};
|
|
}
|