summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Chausse <benjamin@chausse.xyz>2023-09-26 17:51:32 -0400
committerBenjamin Chausse <benjamin@chausse.xyz>2023-09-26 17:51:32 -0400
commitd09abed80be3ad9c0fd28c2d7b16640bb22e6c72 (patch)
tree11863b5ddcc4159754e433381cd3b38852f5d8e0
parent5e79444043c2e458e5d914677ce41ac8c94bc86e (diff)
Wicked fugitive merge bindings
-rw-r--r--lua/ben/plugins/fugitive.lua18
1 files changed, 18 insertions, 0 deletions
diff --git a/lua/ben/plugins/fugitive.lua b/lua/ben/plugins/fugitive.lua
index 690a958..28edb7f 100644
--- a/lua/ben/plugins/fugitive.lua
+++ b/lua/ben/plugins/fugitive.lua
@@ -14,4 +14,22 @@ return {
{ "<leader>gu", "<cmd>G push<CR>" }, -- G.it push U.pstream
{ "<leader>gp", "<cmd>G pull<CR>" }, -- G.it P.ull
},
+ config = function()
+ -- Use > and < to fix merge conflicts (keep the cursor in the middle of the screen)
+ vim.api.nvim_set_keymap("n", ">", "<cmd>diffg //2<cr><cmd>diffupdate<cr>", { noremap = true, silent = true })
+ vim.api.nvim_set_keymap("n", "<", "<cmd>diffg //3<cr><cmd>diffupdate<cr>", { noremap = true, silent = true })
+ -- Use } and { to force the entire file
+ vim.api.nvim_set_keymap(
+ "n",
+ "}",
+ "<C-w>h<cmd>Gwrite!<cr><cmd>diffupdate<cr>",
+ { noremap = true, silent = true }
+ )
+ vim.api.nvim_set_keymap(
+ "n",
+ "{",
+ "<C-w>l<cmd>Gwrite!<cr><cmd>diffupdate<cr>",
+ { noremap = true, silent = true }
+ )
+ end,
}