lib/helpers: extraOptionsOptions -> neovim-plugin.extraOptionsOptions

This commit is contained in:
Gaetan Lepage 2024-01-25 16:15:55 +01:00 committed by Gaétan Lepage
parent 8b91bf010a
commit e2c3459d1d
89 changed files with 103 additions and 97 deletions

View file

@ -7,6 +7,7 @@ in
maintainers = import ./maintainers.nix;
keymaps = import ./keymap-helpers.nix {inherit lib;};
autocmd = import ./autocmd-helpers.nix {inherit lib;};
neovim-plugin = import ./neovim-plugin.nix {inherit lib nixvimOptions;};
vim-plugin = import ./vim-plugin.nix {inherit lib nixvimOptions;};
inherit (import ./to-lua.nix {inherit lib;}) toLuaObject;
inherit nixvimTypes;

16
lib/neovim-plugin.nix Normal file
View file

@ -0,0 +1,16 @@
{
lib,
nixvimOptions,
}:
with lib; {
extraOptionsOptions = {
extraOptions = mkOption {
default = {};
type = with types; attrsOf anything;
description = ''
These attributes will be added to the table parameter for the setup function.
(Can override other attributes set by nixvim)
'';
};
};
}

View file

@ -237,15 +237,4 @@ with nixvimUtils; rec {
inherit default;
description = "Plugin to use for ${name}";
};
extraOptionsOptions = {
extraOptions = mkOption {
default = {};
type = types.attrs;
description = ''
These attributes will be added to the table parameter for the setup function.
(Can override other attributes set by nixvim)
'';
};
};
}

View file

@ -12,7 +12,7 @@ in {
# TODO replace
options.plugins.my-plugin =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "my-plugin.nvim"; # TODO replace

View file

@ -80,7 +80,7 @@ with lib; let
};
in {
options.plugins.barbar =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "barbar.nvim";

View file

@ -10,7 +10,7 @@ with lib; let
mkListStr = helpers.defaultNullOpts.mkNullable (types.listOf types.str);
in {
options.plugins.barbecue =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "barbecue-nvim";

View file

@ -91,7 +91,7 @@ with lib; let
in {
options = {
plugins.bufferline =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "bufferline";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.navic;
in {
options.plugins.navic =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-navic";

View file

@ -10,7 +10,7 @@ with lib; let
in {
options = {
colorschemes.ayu =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "ayu";

View file

@ -10,7 +10,7 @@ with lib; let
in {
options = {
colorschemes.kanagawa =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "kanagawa";

View file

@ -11,7 +11,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.colorschemes.palette =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "palette.nvim";

View file

@ -10,7 +10,7 @@ with lib; let
in {
options = {
colorschemes.poimandres =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "poimandres";

View file

@ -12,7 +12,7 @@ in {
plugins.copilot-lua = let
keymapOption = helpers.defaultNullOpts.mkNullable (with types; either (enum [false]) str);
in
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "copilot.lua";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.lspkind;
in {
options.plugins.lspkind =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "lspkind.nvim";

View file

@ -17,7 +17,7 @@ with lib; let
};
in {
options.plugins.nvim-cmp =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-cmp";

View file

@ -10,7 +10,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.cmp-tabby =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
host = helpers.defaultNullOpts.mkStr "http://localhost:5000" ''
The adress of the tabby host server.

View file

@ -7,7 +7,7 @@
with lib; let
cfg = config.plugins.cmp-tabnine;
in {
options.plugins.cmp-tabnine = helpers.extraOptionsOptions;
options.plugins.cmp-tabnine = helpers.neovim-plugin.extraOptionsOptions;
config = mkIf cfg.enable {
extraConfigLua = ''

View file

@ -11,7 +11,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.codeium-nvim =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
package = helpers.mkPackageOption "codeium.nvim" pkgs.vimPlugins.codeium-nvim;

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.copilot-cmp;
in {
options.plugins.copilot-cmp =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
event =
helpers.defaultNullOpts.mkNullable

View file

@ -7,7 +7,7 @@
with lib; let
cfg = config.plugins.crates-nvim;
in {
options.plugins.crates-nvim = helpers.extraOptionsOptions;
options.plugins.crates-nvim = helpers.neovim-plugin.extraOptionsOptions;
config = mkIf cfg.enable {
extraConfigLua = ''

View file

@ -52,7 +52,7 @@ with lib; let
};
in {
options.plugins.dap.extensions.dap-ui =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "dap-ui";

View file

@ -18,7 +18,7 @@ in
];
options.plugins.dap =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "dap";

View file

@ -10,7 +10,7 @@ with lib; let
mkListStr = helpers.defaultNullOpts.mkNullable (types.listOf types.str);
in {
options.plugins.chadtree =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "chadtree";

View file

@ -47,7 +47,7 @@ in {
'';
};
in
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "neo-tree";

View file

@ -37,7 +37,7 @@ in {
)
];
options.plugins.nvim-tree =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-tree";

View file

@ -49,7 +49,7 @@ with lib; let
};
in {
options.plugins.diffview = with helpers.defaultNullOpts;
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "diffview";

View file

@ -7,7 +7,7 @@
}:
with lib; {
options.plugins.gitlinker =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "gitlinker.nvim";

View file

@ -56,7 +56,7 @@ in {
);
options.plugins.clangd-extensions =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "clangd_extensions, plugins implementing clangd LSP extensions";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.debugprint;
in {
options.plugins.debugprint =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "debugprint.nvim";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.lean;
in {
options.plugins.lean =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "lean-nvim";

View file

@ -133,7 +133,7 @@ with lib; let
};
in {
options.plugins.lint =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-lint";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.nvim-jdtls;
in {
options.plugins.nvim-jdtls =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-jdtls";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.rust-tools;
in {
options.plugins.rust-tools =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "rust tools plugins";
package = helpers.mkPackageOption "rust-tools" pkgs.vimPlugins.rust-tools-nvim;

View file

@ -11,7 +11,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.rustaceanvim =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "rustaceanvim";

View file

@ -11,7 +11,7 @@ with lib; let
mkList = helpers.defaultNullOpts.mkNullable (types.listOf types.str);
in {
options.plugins.sniprun =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "sniprun";

View file

@ -7,7 +7,7 @@
}:
with lib; {
options.plugins.rainbow-delimiters =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "rainbow-delimiters.nvim";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.treesitter-context;
in {
options.plugins.treesitter-context =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-treesitter-context";

View file

@ -41,7 +41,7 @@ with lib; {
"{}"
desc;
in
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable =
mkEnableOption

View file

@ -8,7 +8,7 @@ with lib; let
helpers = import ../../helpers.nix {inherit lib;};
in {
options.plugins.ts-autotag =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-ts-autotag";

View file

@ -7,7 +7,7 @@
}:
with lib; {
options.plugins.ts-context-commentstring =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-ts-context-commentstring";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.conform-nvim;
in {
options.plugins.conform-nvim =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "conform-nvim";

View file

@ -136,7 +136,7 @@ in {
options = {
plugins.fidget =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "fidget-nvim";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.lsp-format;
in {
options.plugins.lsp-format =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "lsp-format.nvim";

View file

@ -46,7 +46,7 @@ in {
options = {
plugins.lspsaga =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "lspsaga.nvim";

View file

@ -9,7 +9,7 @@
in
with lib; {
options.plugins.trouble =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "trouble.nvim";

View file

@ -26,7 +26,7 @@ with lib; let
in {
options = {
plugins.wtf =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "wtf.nvim";

View file

@ -18,7 +18,7 @@ in {
];
options.plugins.none-ls =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "none-ls";

View file

@ -21,7 +21,7 @@ in {
# TODO:add support for aditional filetypes. This requires autocommands!
options.plugins.telescope =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "telescope.nvim";

View file

@ -11,7 +11,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.image =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "image.nvim";

View file

@ -10,7 +10,7 @@
# toLuaObject, we would maybe need some ad-hoc pre-processing functions.
with lib; {
options.plugins.noice =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption ''
noice.nvim, an experimental nvim UI.

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.auto-save;
in {
options.plugins.auto-save =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "auto-save";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.auto-session;
in {
options.plugins.auto-session =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "auto-session";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.better-escape;
in {
options.plugins.better-escape =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "better-escape.nvim";

View file

@ -85,7 +85,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.clipboard-image =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "clipboard-image.nvim";

View file

@ -52,7 +52,7 @@ with lib; let
};
in {
options.plugins.coverage =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-coverage";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.cursorline;
in {
options.plugins.cursorline =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-cursorline";

View file

@ -238,7 +238,7 @@ in {
};
};
in
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "flash.nvim";

View file

@ -10,7 +10,7 @@ with lib; let
in {
options = {
plugins.hardtime =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "hardtime";

View file

@ -21,7 +21,7 @@ with lib; let
};
in {
options.plugins.harpoon =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "harpoon";

View file

@ -67,7 +67,7 @@ with lib; let
in {
options.plugins.illuminate = with helpers;
with defaultNullOpts;
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "vim-illuminate";

View file

@ -75,7 +75,7 @@ in {
);
options.plugins.indent-blankline =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "indent-blankline.nvim";

View file

@ -9,7 +9,7 @@
in
with lib; {
options.plugins.lastplace =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "lastplace";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.leap;
in {
options.plugins.leap =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "leap.nvim";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.mark-radar;
in {
options.plugins.mark-radar =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "mark-radar";

View file

@ -11,7 +11,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.marks =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "marks.nvim";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.mkdnflow;
in {
options.plugins.mkdnflow =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "mkdnflow.nvim";

View file

@ -45,7 +45,7 @@ with lib; let
in {
options = {
plugins.multicursors =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "multicursors.nvim";

View file

@ -12,7 +12,7 @@ with lib; let
mkPercentageOpt = default: helpers.defaultNullOpts.mkNullable percentageType (toString default);
in {
options.plugins.navbuddy =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-navbuddy";

View file

@ -43,7 +43,7 @@ with lib; let
};
in {
options.plugins.neogen =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "neogen";

View file

@ -9,7 +9,7 @@
in
with lib; {
options.plugins.neorg =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "neorg";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.nix-develop;
in {
options.plugins.nix-develop =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nix-develop.nvim";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.notify;
in {
options.plugins.notify =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-notify";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.nvim-autopairs;
in {
options.plugins.nvim-autopairs =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-autopairs";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.nvim-bqf;
in {
options.plugins.nvim-bqf =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-bqf";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.nvim-ufo;
in {
options.plugins.nvim-ufo =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "nvim-ufo";

View file

@ -438,7 +438,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.obsidian =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "obsidian.nvim";

View file

@ -60,7 +60,7 @@ with lib; let
};
in {
options.plugins.oil =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "oil";

View file

@ -58,7 +58,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.ollama =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "ollama.nvim";

View file

@ -7,7 +7,7 @@
}:
with lib; {
options.plugins.persistence =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "persistence.nvim";

View file

@ -10,7 +10,7 @@ with lib; let
in {
options = {
plugins.presence-nvim =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "presence-nvim";
package = helpers.mkPackageOption "presence-nvim" pkgs.vimPlugins.presence-nvim;

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.project-nvim;
in {
options.plugins.project-nvim =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "project.nvim";

View file

@ -7,7 +7,7 @@
}:
with lib; {
options.plugins.refactoring =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "refactoring.nvim";

View file

@ -11,7 +11,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.rest =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "rest.nvim";

View file

@ -10,7 +10,7 @@ with lib; let
cfg = config.plugins.${pluginName};
in {
options.plugins.${pluginName} =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption pluginName;

View file

@ -11,7 +11,7 @@ in {
meta.maintainers = [maintainers.GaetanLepage];
options.plugins.startup =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "startup.nvim";

View file

@ -24,7 +24,7 @@ in {
];
options = {
plugins.todo-comments =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "todo-comments";

View file

@ -58,7 +58,7 @@ in {
];
options.plugins.wilder =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "wilder-nvim";

View file

@ -9,7 +9,7 @@ with lib; let
cfg = config.plugins.yanky;
in {
options.plugins.yanky =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
enable = mkEnableOption "yanky.nvim";

View file

@ -17,7 +17,7 @@ with lib; {
lsp = {
config =
helpers.extraOptionsOptions
helpers.neovim-plugin.extraOptionsOptions
// {
cmd = helpers.defaultNullOpts.mkNullable (types.listOf types.str) ''["zk" "lsp"]'' "";
name = helpers.defaultNullOpts.mkStr "zk" "";