nvf/modules/plugins/git/gitsigns/gitsigns.nix
alfarel 1cda8228e9
plugins: use new config-aware mkMappingOption
Generated using:

- `sd -F "inherit (lib.nvim.binds) mkMappingOption;" "inherit (config.vim.lib) mkMappingOption;" $(find . -type f)`
- `sd -F "{lib, ...}: let" "{config, lib, ...}: let" $(find . -type f)`

Tweaked manually (placement in inherit list, fixing todo-comments and toggleterm).

Ran `nix run nixpkgs#deadnix -- -e` to clean up.
Next commit includes unrelated dead code.
2026-04-06 08:51:34 -04:00

43 lines
1.6 KiB
Nix

{
config,
lib,
...
}: let
inherit (lib.options) mkEnableOption;
inherit (lib.modules) mkRenamedOptionModule;
inherit (lib.nvim.types) mkPluginSetupOption;
inherit (config.vim.lib) mkMappingOption;
in {
imports = [
(mkRenamedOptionModule ["vim" "git" "gitsigns" "codeActions" "vim" "gitsigns" "codeActions"] ["vim" "git" "gitsigns" "codeActions" "enable"])
];
options.vim.git.gitsigns = {
enable = mkEnableOption "gitsigns" // {default = config.vim.git.enable;};
setupOpts = mkPluginSetupOption "gitsigns" {};
codeActions.enable = mkEnableOption "gitsigns codeactions through null-ls";
mappings = {
nextHunk = mkMappingOption "Next hunk [Gitsigns]" "]c";
previousHunk = mkMappingOption "Previous hunk [Gitsigns]" "[c";
stageHunk = mkMappingOption "Stage hunk [Gitsigns]" "<leader>hs";
undoStageHunk = mkMappingOption "Undo stage hunk [Gitsigns]" "<leader>hu";
resetHunk = mkMappingOption "Reset hunk [Gitsigns]" "<leader>hr";
stageBuffer = mkMappingOption "Stage buffer [Gitsigns]" "<leader>hS";
resetBuffer = mkMappingOption "Reset buffer [Gitsigns]" "<leader>hR";
previewHunk = mkMappingOption "Preview hunk [Gitsigns]" "<leader>hP";
blameLine = mkMappingOption "Blame line [Gitsigns]" "<leader>hb";
toggleBlame = mkMappingOption "Toggle blame [Gitsigns]" "<leader>tb";
diffThis = mkMappingOption "Diff this [Gitsigns]" "<leader>hd";
diffProject = mkMappingOption "Diff project [Gitsigns]" "<leader>hD";
toggleDeleted = mkMappingOption "Toggle deleted [Gitsigns]" "<leader>td";
};
};
}