Merge 97ed8dfaf1 into ac51593f7a
This commit is contained in:
commit
57b874064d
45
init.lua
45
init.lua
|
|
@ -351,7 +351,8 @@ do
|
|||
-- See `:help gitsigns` to understand what each configuration key does.
|
||||
-- Adds git related signs to the gutter, as well as utilities for managing changes
|
||||
vim.pack.add { gh 'lewis6991/gitsigns.nvim' }
|
||||
require('gitsigns').setup {
|
||||
local gitsigns = require 'gitsigns'
|
||||
gitsigns.setup {
|
||||
signs = {
|
||||
add = { text = '+' }, ---@diagnostic disable-line: missing-fields
|
||||
change = { text = '~' }, ---@diagnostic disable-line: missing-fields
|
||||
|
|
@ -359,6 +360,47 @@ do
|
|||
topdelete = { text = '‾' }, ---@diagnostic disable-line: missing-fields
|
||||
changedelete = { text = '~' }, ---@diagnostic disable-line: missing-fields
|
||||
},
|
||||
-- Uncomment the following if you want to use gitsigns.nvim's recommended keymaps:
|
||||
--
|
||||
-- on_attach = function(bufnr)
|
||||
-- -- Navigation
|
||||
-- vim.keymap.set('n', ']c', function()
|
||||
-- if vim.wo.diff then
|
||||
-- vim.cmd.normal { ']c', bang = true }
|
||||
-- else
|
||||
-- gitsigns.nav_hunk 'next'
|
||||
-- end
|
||||
-- end, { desc = 'Jump to next git [c]hange' })
|
||||
--
|
||||
-- vim.keymap.set('n', '[c', function()
|
||||
-- if vim.wo.diff then
|
||||
-- vim.cmd.normal { '[c', bang = true }
|
||||
-- else
|
||||
-- gitsigns.nav_hunk 'prev'
|
||||
-- end
|
||||
-- end, { desc = 'Jump to previous git [c]hange' })
|
||||
--
|
||||
-- -- Visual mode actions
|
||||
-- vim.keymap.set('v', '<leader>hs', function() gitsigns.stage_hunk { vim.fn.line '.', vim.fn.line 'v' } end, { desc = 'git [s]tage hunk' })
|
||||
-- vim.keymap.set('v', '<leader>hr', function() gitsigns.reset_hunk { vim.fn.line '.', vim.fn.line 'v' } end, { desc = 'git [r]eset hunk' })
|
||||
-- -- Normal mode actions
|
||||
-- vim.keymap.set('n', '<leader>hs', gitsigns.stage_hunk, { desc = 'git [s]tage hunk' })
|
||||
-- vim.keymap.set('n', '<leader>hr', gitsigns.reset_hunk, { desc = 'git [r]eset hunk' })
|
||||
-- vim.keymap.set('n', '<leader>hS', gitsigns.stage_buffer, { desc = 'git [S]tage buffer' })
|
||||
-- vim.keymap.set('n', '<leader>hR', gitsigns.reset_buffer, { desc = 'git [R]eset buffer' })
|
||||
-- vim.keymap.set('n', '<leader>hp', gitsigns.preview_hunk, { desc = 'git [p]review hunk' })
|
||||
-- vim.keymap.set('n', '<leader>hi', gitsigns.preview_hunk_inline, { desc = 'git preview hunk [i]nline' })
|
||||
-- vim.keymap.set('n', '<leader>hb', function() gitsigns.blame_line { full = true } end, { desc = 'git [b]lame line' })
|
||||
-- vim.keymap.set('n', '<leader>hd', gitsigns.diffthis, { desc = 'git [d]iff against index' })
|
||||
-- vim.keymap.set('n', '<leader>hD', function() gitsigns.diffthis '@' end, { desc = 'git [D]iff against last commit' })
|
||||
-- vim.keymap.set('n', '<leader>hQ', function() gitsigns.setqflist 'all' end, { desc = 'git hunk [Q]uickfix list (all files in repo)' })
|
||||
-- vim.keymap.set('n', '<leader>hq', gitsigns.setqflist, { desc = 'git hunk [q]uickfix list (all changes in this file)' })
|
||||
-- -- Toggles
|
||||
-- vim.keymap.set('n', '<leader>tb', gitsigns.toggle_current_line_blame, { desc = '[T]oggle git show [b]lame line' })
|
||||
-- vim.keymap.set('n', '<leader>tw', gitsigns.toggle_word_diff, { desc = '[T]oggle git intra-line [w]ord diff' })
|
||||
-- -- Text object
|
||||
-- vim.keymap.set({ 'o', 'x' }, 'ih', gitsigns.select_hunk)
|
||||
-- end,
|
||||
}
|
||||
|
||||
-- Useful plugin to show you pending keybinds.
|
||||
|
|
@ -971,7 +1013,6 @@ do
|
|||
-- require 'kickstart.plugins.lint'
|
||||
-- require 'kickstart.plugins.autopairs'
|
||||
-- require 'kickstart.plugins.neo-tree'
|
||||
-- require 'kickstart.plugins.gitsigns' -- adds gitsigns recommended keymaps
|
||||
|
||||
-- NOTE: You can add your own plugins, configuration, etc from `lua/custom/plugins/*.lua`
|
||||
--
|
||||
|
|
|
|||
|
|
@ -1,57 +0,0 @@
|
|||
-- Adds git related signs to the gutter, as well as utilities for managing changes
|
||||
-- NOTE: gitsigns is already included in init.lua but contains only the base
|
||||
-- config. This will add also the recommended keymaps.
|
||||
|
||||
vim.pack.add { 'https://github.com/lewis6991/gitsigns.nvim' }
|
||||
|
||||
require('gitsigns').setup {
|
||||
on_attach = function(bufnr)
|
||||
local gitsigns = require 'gitsigns'
|
||||
|
||||
local function map(mode, l, r, opts)
|
||||
opts = opts or {}
|
||||
opts.buffer = bufnr
|
||||
vim.keymap.set(mode, l, r, opts)
|
||||
end
|
||||
|
||||
-- Navigation
|
||||
map('n', ']c', function()
|
||||
if vim.wo.diff then
|
||||
vim.cmd.normal { ']c', bang = true }
|
||||
else
|
||||
gitsigns.nav_hunk 'next'
|
||||
end
|
||||
end, { desc = 'Jump to next git [c]hange' })
|
||||
|
||||
map('n', '[c', function()
|
||||
if vim.wo.diff then
|
||||
vim.cmd.normal { '[c', bang = true }
|
||||
else
|
||||
gitsigns.nav_hunk 'prev'
|
||||
end
|
||||
end, { desc = 'Jump to previous git [c]hange' })
|
||||
|
||||
-- Actions
|
||||
-- visual mode
|
||||
map('v', '<leader>hs', function() gitsigns.stage_hunk { vim.fn.line '.', vim.fn.line 'v' } end, { desc = 'git [s]tage hunk' })
|
||||
map('v', '<leader>hr', function() gitsigns.reset_hunk { vim.fn.line '.', vim.fn.line 'v' } end, { desc = 'git [r]eset hunk' })
|
||||
-- normal mode
|
||||
map('n', '<leader>hs', gitsigns.stage_hunk, { desc = 'git [s]tage hunk' })
|
||||
map('n', '<leader>hr', gitsigns.reset_hunk, { desc = 'git [r]eset hunk' })
|
||||
map('n', '<leader>hS', gitsigns.stage_buffer, { desc = 'git [S]tage buffer' })
|
||||
map('n', '<leader>hR', gitsigns.reset_buffer, { desc = 'git [R]eset buffer' })
|
||||
map('n', '<leader>hp', gitsigns.preview_hunk, { desc = 'git [p]review hunk' })
|
||||
map('n', '<leader>hi', gitsigns.preview_hunk_inline, { desc = 'git preview hunk [i]nline' })
|
||||
map('n', '<leader>hb', function() gitsigns.blame_line { full = true } end, { desc = 'git [b]lame line' })
|
||||
map('n', '<leader>hd', gitsigns.diffthis, { desc = 'git [d]iff against index' })
|
||||
map('n', '<leader>hD', function() gitsigns.diffthis '@' end, { desc = 'git [D]iff against last commit' })
|
||||
map('n', '<leader>hQ', function() gitsigns.setqflist 'all' end, { desc = 'git hunk [Q]uickfix list (all files in repo)' })
|
||||
map('n', '<leader>hq', gitsigns.setqflist, { desc = 'git hunk [q]uickfix list (all changes in this file)' })
|
||||
-- Toggles
|
||||
map('n', '<leader>tb', gitsigns.toggle_current_line_blame, { desc = '[T]oggle git show [b]lame line' })
|
||||
map('n', '<leader>tw', gitsigns.toggle_word_diff, { desc = '[T]oggle git intra-line [w]ord diff' })
|
||||
|
||||
-- Text object
|
||||
map({ 'o', 'x' }, 'ih', gitsigns.select_hunk)
|
||||
end,
|
||||
}
|
||||
Loading…
Reference in New Issue