diff options
Diffstat (limited to 'modules/development/nixvim/plugins/gitsigns.nix')
| -rw-r--r-- | modules/development/nixvim/plugins/gitsigns.nix | 112 |
1 files changed, 0 insertions, 112 deletions
diff --git a/modules/development/nixvim/plugins/gitsigns.nix b/modules/development/nixvim/plugins/gitsigns.nix deleted file mode 100644 index d9bda21..0000000 --- a/modules/development/nixvim/plugins/gitsigns.nix +++ /dev/null @@ -1,112 +0,0 @@ -# Git integration: signs, blame, diffs and hunk operations -{ - config, - lib, - pkgs, - ... -}: -let - base16Colors = import ../../../colors/base16 { inherit config lib pkgs; }; -in -{ - config.programs.nixvim = lib.mkIf config.development.nixvim.enable { - plugins.gitsigns = { - enable = true; - - settings = { - signs = { - add.text = "┃"; - change.text = "┃"; - delete.text = "▁"; - topdelete.text = "▔"; - changedelete.text = "~"; - untracked.text = "┆"; - }; - - signcolumn = false; - numhl = true; - current_line_blame = false; - current_line_blame_formatter = "<author>, <author_time:%Y-%m-%d> - <summary>"; - - on_attach = '' - function(bufnr) - local gitsigns = require('gitsigns') - local function map(mode, lhs, rhs, desc) - vim.keymap.set(mode, lhs, rhs, { buffer = bufnr, silent = true, desc = desc }) - end - - -- Navigation - map('n', ']c', function() gitsigns.nav_hunk('next') end, 'Next hunk') - map('n', '[c', function() gitsigns.nav_hunk('prev') end, 'Previous hunk') - map('n', ']C', function() gitsigns.nav_hunk('last') end, 'Last hunk') - map('n', '[C', function() gitsigns.nav_hunk('first') end, 'First hunk') - - -- Hunk actions - map('n', '<leader>gs', gitsigns.stage_hunk, 'Stage hunk') - map('v', '<leader>gs', function() - gitsigns.stage_hunk({ vim.fn.line('.'), vim.fn.line('v') }) - end, 'Stage visual range hunk') - map('n', '<leader>gr', gitsigns.reset_hunk, 'Reset hunk') - map('v', '<leader>gr', function() - gitsigns.reset_hunk({ vim.fn.line('.'), vim.fn.line('v') }) - end, 'Reset visual range hunk') - map('n', '<leader>gS', gitsigns.stage_buffer, 'Stage buffer') - map('n', '<leader>gR', gitsigns.reset_buffer, 'Reset buffer') - map('n', '<leader>gi', gitsigns.reset_buffer_index, 'Unstage buffer (reset index)') - map('n', '<leader>gu', gitsigns.undo_stage_hunk, 'Undo stage hunk') - - -- Preview - map('n', '<leader>gp', gitsigns.preview_hunk, 'Preview hunk') - map('n', '<leader>gP', gitsigns.preview_hunk_inline, 'Preview hunk inline') - - -- Blame - map('n', '<leader>gb', gitsigns.blame_line, 'Blame line') - map('n', '<leader>gB', function() - gitsigns.blame_line({ full = true }) - end, 'Blame line (full)') - - -- Diffs / base - map('n', '<leader>gd', gitsigns.diffthis, 'Diff this (index)') - map('n', '<leader>gD', function() - gitsigns.diffthis('~') - end, 'Diff this (HEAD)') - map('n', '<leader>gc', function() - gitsigns.change_base(nil, true) - end, 'Change diff base') - - -- Quickfix / location list - map('n', '<leader>gq', gitsigns.setqflist, 'Hunks to quickfix') - map('n', '<leader>gQ', function() - gitsigns.setqflist('all') - end, 'Repo hunks to quickfix') - map('n', '<leader>gl', gitsigns.setloclist, 'Hunks to location list') - - -- Toggles - map('n', '<leader>gts', gitsigns.toggle_signs, 'Toggle signs') - map('n', '<leader>gtl', gitsigns.toggle_linehl, 'Toggle line highlight') - map('n', '<leader>gtn', gitsigns.toggle_numhl, 'Toggle number highlight') - map('n', '<leader>gtw', gitsigns.toggle_word_diff, 'Toggle word diff') - map('n', '<leader>gtb', gitsigns.toggle_current_line_blame, 'Toggle current line blame') - map('n', '<leader>gtd', gitsigns.toggle_deleted, 'Toggle deleted lines') - - -- Misc - map('n', '<leader>gF', gitsigns.refresh, 'Refresh gitsigns') - - -- Text object - map({ 'o', 'x' }, 'ih', gitsigns.select_hunk, 'Select hunk text object') - end - ''; - }; - }; - - highlight = with base16Colors.colorsWithHashPrefix; { - GitSignsAdd.fg = base0B; - GitSignsChange.fg = base0A; - GitSignsDelete.fg = base08; - GitSignsTopdelete.fg = base08; - GitSignsChangedelete.fg = base0A; - GitSignsUntracked.fg = base0C; - GitSignsCurrentLineBlame.fg = base04; - }; - }; -} |
