require("gitsigns").setup()
require("which-key").register({
  ["[h"] = { "<cmd>Gitsigns prev_hunk<cr>", "Previous hunk" },
  ["]h"] = { "<cmd>Gitsigns next_hunk<cr>", "Next hunk" },
  ["<leader>g"] = {
    s = { "<cmd>Gitsigns stage_hunk<cr>", "Stage hunk", mode = { "n", "v" } },
    r = { "<cmd>Gitsigns reset_hunk<cr>", "Reset hunk", mode = { "n", "v" } },
    S = { "<cmd>Gitsigns stage_buffer<cr>", "Stage buffer" },
    R = { "<cmd>Gitsigns reset_buffer<cr>", "Reset buffer" },
    u = { "<cmd>Gitsigns undo_stage_hunk<cr>", "Undo stage hunk" },
    p = { "<cmd>Gitsigns preview_hunk_inline<cr>", "Preview hunk (inline)" },
    P = { "<cmd>Gitsigns preview_hunk<cr>", "Preview hunk (float)" },
  },
  ["ih"] = { ":<C-U>Gitsigns select_hunk<cr>", "gitsigns hunk", mode = { "o", "x" } },
})
