git/gitsigns: add setupOpts module option for user-specified setup table

This commit is contained in:
NotAShelf 2025-01-05 19:14:34 +03:00
parent b7bea89d9a
commit bf72ad90b0
No known key found for this signature in database
GPG key ID: EED98D11B85A2819
2 changed files with 4 additions and 1 deletions

View file

@ -7,6 +7,7 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.nvim.binds) addDescriptionsToMappings mkSetExprBinding mkSetLuaBinding pushDownDefault;
inherit (lib.nvim.dag) entryAnywhere;
inherit (lib.nvim.lua) toLuaObject;
cfg = config.vim.git.gitsigns;
@ -70,7 +71,7 @@ in {
};
pluginRC.gitsigns = entryAnywhere ''
require('gitsigns').setup{}
require('gitsigns').setup(${toLuaObject cfg.setupOpts})
'';
};
}

View file

@ -6,6 +6,7 @@
inherit (lib.options) mkEnableOption;
inherit (lib.modules) mkRenamedOptionModule;
inherit (lib.nvim.binds) mkMappingOption;
inherit (lib.nvim.types) mkPluginSetupOption;
in {
imports = [
(mkRenamedOptionModule ["vim" "git" "gitsigns" "codeActions" "vim" "gitsigns" "codeActions"] ["vim" "git" "gitsigns" "codeActions" "enable"])
@ -13,6 +14,7 @@ in {
options.vim.git.gitsigns = {
enable = mkEnableOption "gitsigns" // {default = config.vim.git.enable;};
setupOpts = mkPluginSetupOption "gitsigns" {};
codeActions.enable = mkEnableOption "gitsigns codeactions through null-ls";