32 lines
1.4 KiB
Lua
32 lines
1.4 KiB
Lua
require('gitsigns').setup {
|
|
signcolumn = true,
|
|
current_line_blame = true,
|
|
current_line_blame_opts = { 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>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)
|