plugins/cmp: refactor sources list & mkCmpSourcePlugin

List mkCmpSourcePlugin args directly in `sources/default.nix`,
similar to LSP's language-servers list.
This commit is contained in:
Matt Sturgeon 2024-06-29 09:58:18 +01:00
parent 3a8d4fee35
commit 17f4aa5556
No known key found for this signature in database
GPG key ID: 4F91844CED1A8299
5 changed files with 218 additions and 93 deletions

View file

@ -0,0 +1,30 @@
{
lib,
helpers,
config,
pkgs,
...
}:
{
pluginName,
sourceName,
defaultPackage ? pkgs.vimPlugins.${pluginName},
maintainers ? [ lib.maintainers.GaetanLepage ],
imports ? [ ],
...
}@args:
helpers.vim-plugin.mkVimPlugin config (
builtins.removeAttrs args [
"pluginName"
"sourceName"
]
// {
inherit defaultPackage maintainers;
name = pluginName;
imports = imports ++ [
# Register the source -> plugin name association
{ cmpSourcePlugins.${sourceName} = pluginName; }
];
}
)