vim.api.nvim_create_user_command("Glog", function(opts) local mods = opts.mods ~= "" and (opts.mods .. " ") or "" vim.cmd( mods .. "Git log --graph --all --decorate --date=short " .. "--format=format:'%h %ad {%an}%d %s' " .. opts.args ) end, { nargs = "*", desc = "Pretty git log via fugitive" }) vim.keymap.set("n", "gl", vim.cmd.Glog) vim.keymap.set("n", "gd", vim.cmd.Gvdiffsplit) vim.keymap.set("n", "gD", function() vim.cmd.Gvdiffsplit("HEAD") end) vim.keymap.set("n", "gh", vim.cmd.Ghdiffsplit) vim.keymap.set("n", "gH", function() vim.cmd.Ghdiffsplit("HEAD") end) vim.keymap.set("n", "gc", function() vim.cmd.G("commit") end) vim.keymap.set("n", "ga", function() vim.cmd.G("commit --amend") end) vim.keymap.set("n", "gp", function() vim.cmd.G("push") end) vim.api.nvim_create_autocmd("User", { pattern = "GitRefresh", group = vim.api.nvim_create_augroup("ow.fugitive", { clear = true }), callback = function() vim.fn["fugitive#ReloadStatus"]() end, })