diff --git a/after/plugin/fugitive.lua b/after/plugin/fugitive.lua index dd4fcc30..067d8a98 100644 --- a/after/plugin/fugitive.lua +++ b/after/plugin/fugitive.lua @@ -1,2 +1,31 @@ vim.keymap.set("n", "gs", vim.cmd.Git); +local ThePrimeagen_Fugitive = vim.api.nvim_create_augroup("ThePrimeagen_Fugitive", {}) + +local autocmd = vim.api.nvim_create_autocmd +autocmd("BufWinEnter", { + group = ThePrimeagen_Fugitive, + pattern = "*", + callback = function() + print("help", vim.bo.ft) + if vim.bo.ft ~= "fugitive" then + return + end + + local bufnr = vim.api.nvim_get_current_buf() + local opts = {buffer = bufnr, remap = false} + print("great success", vim.bo.ft, bufnr, vim.inspect(opts)) + vim.keymap.set("n", "p", function() + vim.cmd [[ Git push ]] + end, opts) + + -- rebase always + vim.keymap.set("n", "P", function() + vim.cmd [[ Git pull --rebase ]] + end, opts) + + -- NOTE: It allows me to easily set the branch i am pushing and any tracking + -- needed if i did not set the branch up correctly + vim.keymap.set("n", "t", ":Git push -u origin ", opts); + end, +})