diff --git a/config/plugins/git/gitsigns.nix b/config/plugins/git/gitsigns.nix index 8b2e57d..010f9dd 100644 --- a/config/plugins/git/gitsigns.nix +++ b/config/plugins/git/gitsigns.nix @@ -4,5 +4,107 @@ plugins.gitsigns = { enable = true; }; + + keymaps = [ + { + mode = [ "n" "v" ]; + key = "hs"; + action = "Gitsigns stage_hunk"; + options = { + silent = true; + desc = "Stage Hunk"; + }; + } + + { + mode = [ "n" "v" ]; + key = "hr"; + action = "Gitsigns reset_hunk"; + options = { + silent = true; + desc = "Reset Hunk"; + }; + } + + { + mode = "n"; + key = "hS"; + action = "Gitsigns stage_buffer"; + options = { + silent = true; + desc = "Stage Buffer"; + }; + } + + { + mode = "n"; + key = "hu"; + action = "Gitsigns undo_stage_hunk"; + options = { + silent = true; + desc = "Undo Staged Hunk"; + }; + } + + { + mode = "n"; + key = "hR"; + action = "Gitsigns reset_buffer"; + options = { + silent = true; + desc = "Reset Buffer"; + }; + } + + { + mode = "n"; + key = "hp"; + action = "Gitsigns preview_hunk_inline"; + options = { + silent = true; + desc = "Preview Hunk"; + }; + } + + { + mode = "n"; + key = "hb"; + action = "Gitsigns blame"; + options = { + silent = true; + desc = "View Blame"; + }; + } + + { + mode = "n"; + key = "tb"; + action = "Gitsigns toggle_current_line_blame"; + options = { + silent = true; + desc = "Toggle Blame"; + }; + } + + { + mode = "n"; + key = "hd"; + action = "Gitsigns diffthis"; + options = { + silent = true; + desc = "View Diff"; + }; + } + + { + mode = "n"; + key = "td"; + action = "Gitsigns toggle_deleted"; + options = { + silent = true; + desc = "Toggle Deleted"; + }; + } + ]; }