u
This commit is contained in:
parent
74d86327e5
commit
7164843855
1 changed files with 80 additions and 16 deletions
96
init.lua
96
init.lua
|
|
@ -194,6 +194,7 @@ require("lazy").setup({
|
||||||
on_attach = function(bufnr)
|
on_attach = function(bufnr)
|
||||||
local gitsigns = require('gitsigns')
|
local gitsigns = require('gitsigns')
|
||||||
|
|
||||||
|
|
||||||
local function map(mode, l, r, opts)
|
local function map(mode, l, r, opts)
|
||||||
opts = opts or {}
|
opts = opts or {}
|
||||||
opts.buffer = bufnr
|
opts.buffer = bufnr
|
||||||
|
|
@ -208,7 +209,6 @@ require("lazy").setup({
|
||||||
gitsigns.nav_hunk('next')
|
gitsigns.nav_hunk('next')
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
map('n', '[c', function()
|
map('n', '[c', function()
|
||||||
if vim.wo.diff then
|
if vim.wo.diff then
|
||||||
vim.cmd.normal({ '[c', bang = true })
|
vim.cmd.normal({ '[c', bang = true })
|
||||||
|
|
@ -218,22 +218,86 @@ require("lazy").setup({
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Actions
|
-- Actions
|
||||||
map('n', '<leader>hs', gitsigns.stage_hunk)
|
local wk = require("which-key")
|
||||||
|
|
||||||
map('n', '<leader>hr', gitsigns.reset_hunk)
|
wk.add({
|
||||||
map('v', '<leader>hs',
|
{
|
||||||
function() gitsigns.stage_hunk { vim.fn.line('.'), vim.fn.line('v') } end)
|
|
||||||
map('v', '<leader>hr',
|
'<leader>h',
|
||||||
function() gitsigns.reset_hunk { vim.fn.line('.'), vim.fn.line('v') } end)
|
group = "hunks",
|
||||||
map('n', '<leader>hS', gitsigns.stage_buffer)
|
mode = "n",
|
||||||
map('n', '<leader>hu', gitsigns.undo_stage_hunk)
|
{
|
||||||
map('n', '<leader>hR', gitsigns.reset_buffer)
|
{ '<leader>hs', gitsigns.stage_hunk, desc = "Stage Hunk" },
|
||||||
map('n', '<leader>hp', gitsigns.preview_hunk)
|
{ '<leader>hr', gitsigns.reset_hunk, desc = "Reset Hunk" },
|
||||||
map('n', '<leader>hb', function() gitsigns.blame_line { full = true } end)
|
{
|
||||||
map('n', '<leader>tb', gitsigns.toggle_current_line_blame)
|
'<leader>hS',
|
||||||
map('n', '<leader>hd', gitsigns.diffthis)
|
gitsigns.stage_buffer,
|
||||||
map('n', '<leader>hD', function() gitsigns.diffthis('~') end)
|
desc = "Stage Buffer"
|
||||||
map('n', '<leader>td', gitsigns.toggle_deleted)
|
},
|
||||||
|
{
|
||||||
|
'<leader>hu',
|
||||||
|
gitsigns.undo_stage_hunk,
|
||||||
|
desc = "Undo Stage Hunk"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>hR',
|
||||||
|
gitsigns.reset_buffer,
|
||||||
|
desc = "Reset Buffer"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>hp',
|
||||||
|
gitsigns.preview_hunk,
|
||||||
|
desc = "Preview Hunk"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>hb',
|
||||||
|
function() gitsigns.blame_line { full = true } end,
|
||||||
|
desc = "Blame line"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>tb',
|
||||||
|
gitsigns.toggle_current_line_blame,
|
||||||
|
desc = "Toggle current line blame"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>hd',
|
||||||
|
gitsigns.diffthis,
|
||||||
|
desc = "Diff this"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>hD',
|
||||||
|
function() gitsigns.diffthis('~') end,
|
||||||
|
desc = "Diff this ~"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>ht',
|
||||||
|
gitsigns.toggle_deleted,
|
||||||
|
desc = "Toggle deleted"
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>h',
|
||||||
|
group = "vhunks",
|
||||||
|
mode = "v",
|
||||||
|
{
|
||||||
|
'<leader>hs',
|
||||||
|
function()
|
||||||
|
gitsigns.stage_hunk { vim.fn.line('.'),
|
||||||
|
vim.fn.line('v') }
|
||||||
|
end,
|
||||||
|
desc = "Stage Hunk",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
'<leader>hr',
|
||||||
|
function()
|
||||||
|
gitsigns.reset_hunk { vim.fn.line('.'),
|
||||||
|
vim.fn.line('v') }
|
||||||
|
end,
|
||||||
|
desc = "Reset Hunk",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
-- Text object
|
-- Text object
|
||||||
map({ 'o', 'x' }, 'ih', ':<C-U>Gitsigns select_hunk<CR>')
|
map({ 'o', 'x' }, 'ih', ':<C-U>Gitsigns select_hunk<CR>')
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue