local key = require("utils.map") local opts = key.new_opts return { { "tpope/vim-fugitive", lazy = false, config = function() vim.g.fugitive_no_maps = 1 key.nmap({ { "gg", ":tab Git", opts("Fugitive: Open git interface") }, { "gv", ":Gvdiffsplit! ", opts(key.nosilent, "Fugitive: Populate the cmdline with Gvdiffsplit for additional arguments"), }, }) end, }, { "lewis6991/gitsigns.nvim", -- enabled = false, lazy = false, opts = function() return { signs = { delete = { text = "" }, topdelete = { text = "" }, }, attach_to_untracked = false, on_attach = function(bufnr) local gs = package.loaded.gitsigns key.nmap({ { "]c", gs.next_hunk, opts(bufnr) }, { "[c", gs.prev_hunk, opts(bufnr) }, { "gR", gs.reset_buffer, opts(bufnr) }, { "gp", gs.preview_hunk, opts(bufnr) }, { "gd", gs.toggle_deleted, opts(bufnr) }, }) key.nxmap({ { "gr", ":Gitsigns reset_hunk", opts(bufnr) }, { "gs", ":Gitsigns stage_hunk", opts(bufnr) }, }) key.xomap({ "ih", ":Gitsigns select_hunk", opts(bufnr) }) end, } end, }, }