1
0
Fork 0
numbers/nvim/lua/plugins/gitsigns_nvim.lua

36 lines
1.6 KiB
Lua

if not packer_plugins["plenary.nvim"].loaded then
vim.cmd([[packadd plenary.nvim]])
end
require('gitsigns').setup {
signcolumn = true,
current_line_blame_opts = { delay = 2000, virt_text_pos = 'right_align' },
signs = {
add = {hl = 'GitSignsAdd' , text = '', numhl='GitSignsAddNr' , linehl='GitSignsAddLn'},
change = {hl = 'GitSignsChange', text = '', numhl='GitSignsChangeNr', linehl='GitSignsChangeLn'},
delete = {hl = 'GitSignsDelete', text = '', numhl='GitSignsDeleteNr', linehl='GitSignsDeleteLn'},
topdelete = {hl = 'GitSignsDelete', text = '', numhl='GitSignsDeleteNr', linehl='GitSignsDeleteLn'},
changedelete = {hl = 'GitSignsChange', text = '', numhl='GitSignsChangeNr', linehl='GitSignsChangeLn'},
},
update_debounce = 200,
use_internal_diff = true,
keymaps = {
noremap = true,
['n <leader>}g'] = { expr = true, "&diff ? '}c' : '<cmd>lua require\"gitsigns\".next_hunk()<CR>'"},
['n <leader>{g'] = { expr = true, "&diff ? '{c' : '<cmd>lua require\"gitsigns\".prev_hunk()<CR>'"},
}
}
vim.g.fugitive_summary_format = "%an\t%s"
local map = vim.api.nvim_set_keymap
local default_opts = {noremap = true, silent = true}
map('n', '<Leader>tt', ':Gitsigns toggle_signs<CR>', default_opts)
map('n', '<Leader>tb', ':Gitsigns toggle_current_line_blame<CR>', default_opts)
map('n', '<Leader>ff', ':G<CR>', default_opts)
map('n', '<Leader>fc', ':GCheckout<CR>', default_opts)
map('n', '<Leader>fd', ':Gvdiffsplit!<CR>', default_opts)
map('n', '<Leader>fh', ':diffget //2<CR>', default_opts)
map('n', '<Leader>fl', ':diffget //3<CR>', default_opts)