Merge pull request #99 from horriblename/feature/extra-plugins

This commit is contained in:
raf 2023-07-28 11:28:20 +03:00 committed by GitHub
commit f2f9c32eca
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 73 additions and 8 deletions

View file

@ -4,6 +4,6 @@
typesLanguage = import ./languages.nix {inherit lib;};
in {
inherit (typesDag) dagOf;
inherit (typesPlugin) pluginsOpt;
inherit (typesPlugin) pluginsOpt extraPluginType;
inherit (typesLanguage) diagnostics mkGrammarOption;
}

View file

@ -90,15 +90,37 @@ with lib; let
"copilot-cmp"
];
# You can either use the name of the plugin or a package.
pluginsType = with types;
listOf (
nullOr (
either
(enum availablePlugins)
package
)
pluginType = with types;
nullOr (
either
package
(enum availablePlugins)
);
pluginsType = types.listOf pluginType;
extraPluginType = with types;
submodule {
options = {
package = mkOption {
type = pluginType;
};
after = mkOption {
type = listOf str;
default = [];
description = "Setup this plugin after the following ones.";
};
setup = mkOption {
type = lines;
default = "";
description = "Lua code to run during setup.";
example = "require('aerial').setup {}";
};
};
};
in {
inherit extraPluginType;
pluginsOpt = {
description,
default ? [],