Replaced fugitive and signify with gitsigns

This commit is contained in:
2025-10-02 11:59:20 +01:00
parent 9b09ee5e87
commit 0d58c69b6d
3 changed files with 90 additions and 31 deletions

View File

@@ -12,6 +12,70 @@ return {
{ "<leader>h", group = "[H]arpoon" }, { "<leader>h", group = "[H]arpoon" },
{ "<leader>x", group = "[X] Trouble" }, { "<leader>x", group = "[X] Trouble" },
}, },
gitsigns = {
{
"<leader>gs",
function()
require("gitsigns").stage_hunk()
end,
desc = "[G]it [S]tage Hunk",
mode = { "n", "v" },
},
{
"<leader>gr",
function()
require("gitsigns").reset_hunk()
end,
desc = "[G]it [R]eset Hunk",
mode = { "n", "v" },
},
{
"<leader>gp",
function()
require("gitsigns").preview_hunk()
end,
desc = "[G]it [P]review Hunk",
mode = "n",
},
{
"<leader>gb",
function()
package.loaded.gitsigns.blame_line()
end,
desc = "[G]it [B]lame Line",
mode = "n",
},
{
"]c",
function()
if vim.wo.diff then
return "]c"
end
vim.schedule(function()
require("gitsigns").next_hunk()
end)
return "<Ignore>"
end,
desc = "Next Hunk",
mode = "n",
expr = true,
},
{
"[c",
function()
if vim.wo.diff then
return "[c"
end
vim.schedule(function()
require("gitsigns").prev_hunk()
end)
return "<Ignore>"
end,
desc = "Previous Hunk",
mode = "n",
expr = true,
},
},
harpoon = { harpoon = {
{ {
"<leader>ha", "<leader>ha",
@@ -151,10 +215,10 @@ return {
{ "<leader>te", vim.cmd.Oil, desc = "[T]ree [E]dit", mode = "n" }, { "<leader>te", vim.cmd.Oil, desc = "[T]ree [E]dit", mode = "n" },
}, },
overseer = { overseer = {
{ "<leader>ob", vim.cmd.OverseerBuild, desc = "[O]verseer [B]uild", mode = "n" }, { "<leader>ob", vim.cmd.OverseerBuild, desc = "[O]verseer [B]uild", mode = "n" },
{ "<leader>oc", vim.cmd.OverseerRunCmd, desc = "[O]verseer Run [C]ommand", mode = "n" }, { "<leader>oc", vim.cmd.OverseerRunCmd, desc = "[O]verseer Run [C]ommand", mode = "n" },
{ "<leader>or", vim.cmd.OverseerRun, desc = "[O]verseer [R]un", mode = "n" }, { "<leader>or", vim.cmd.OverseerRun, desc = "[O]verseer [R]un", mode = "n" },
{ "<leader>ot", vim.cmd.OverseerToggle, desc = "[O]verseer [T]oggle", mode = "n" }, { "<leader>ot", vim.cmd.OverseerToggle, desc = "[O]verseer [T]oggle", mode = "n" },
}, },
precognition = { precognition = {
{ {
@@ -298,7 +362,7 @@ return {
"<cmd>Trouble todo toggle filter = {tag = {TODO,FIX,FIXME}}<cr>", "<cmd>Trouble todo toggle filter = {tag = {TODO,FIX,FIXME}}<cr>",
desc = "Todo/Fix/Fixme", desc = "Todo/Fix/Fixme",
}, },
{ "<leader>st", "<cmd>TodoTelescope<cr>", desc = "Todo" }, { "<leader>st", "<cmd>TodoTelescope<cr>", desc = "Todo" },
{ {
"<leader>sT", "<leader>sT",
"<cmd>TodoTelescope keywords=TODO,FIX,FIXME<cr>", "<cmd>TodoTelescope keywords=TODO,FIX,FIXME<cr>",
@@ -312,14 +376,14 @@ return {
"<cmd>Trouble diagnostics toggle filter.buf=0<cr>", "<cmd>Trouble diagnostics toggle filter.buf=0<cr>",
desc = "Buffer Diagnostics", desc = "Buffer Diagnostics",
}, },
{ "<leader>cs", "<cmd>Trouble symbols toggle<cr>", desc = "Symbols" }, { "<leader>cs", "<cmd>Trouble symbols toggle<cr>", desc = "Symbols" },
{ {
"<leader>cS", "<leader>cS",
"<cmd>Trouble lsp toggle<cr>", "<cmd>Trouble lsp toggle<cr>",
desc = "LSP references/definitions/... (Trouble)", desc = "LSP references/definitions/... (Trouble)",
}, },
{ "<leader>xL", "<cmd>Trouble loclist toggle<cr>", desc = "Location List" }, { "<leader>xL", "<cmd>Trouble loclist toggle<cr>", desc = "Location List" },
{ "<leader>xQ", "<cmd>Trouble qflist toggle<cr>", desc = "Quickfix List" }, { "<leader>xQ", "<cmd>Trouble qflist toggle<cr>", desc = "Quickfix List" },
{ {
"[q", "[q",
function() function()

View File

@@ -1,5 +1,5 @@
return { -- UI components and other visual elements are declared here return { -- UI components and other visual elements are declared here
{ -- Theme { -- Theme
"folke/tokyonight.nvim", "folke/tokyonight.nvim",
lazy = false, lazy = false,
priority = 1000, priority = 1000,
@@ -60,26 +60,6 @@ return { -- UI components and other visual elements are declared here
require("window-picker").setup() require("window-picker").setup()
end, end,
}, },
{ -- Adds git related signs to the gutter, as well as utilities for managing changes
"mhinz/vim-signify",
event = "VimEnter",
config = function()
-- defer config for 5ms. Old vim plugins can be janky in neovim
vim.defer_fn(function()
vim.g.signify_sign_show_count = 0
vim.g.signify_sign_add = ""
vim.g.signify_sign_change = ""
vim.g.signify_sign_delete = "_"
vim.g.signify_sign_delete_first_line = ""
vim.g.signify_sign_change_delete = "~"
vim.cmd.highlight({ "SignifySignAdd", "guifg=#449dab" })
vim.cmd.highlight({ "SignifySignChange", "guifg=#6183bb" })
vim.cmd.highlight({ "SignifySignDelete", "guifg=#914c54" })
vim.cmd.highlight({ "link", "SignifySignDeleteFirstLine", "SignifySignDelete" })
vim.cmd.highlight({ "link", "SignifySignChangeDelete", "SignifySignChange" })
end, 5)
end,
},
-- Modular, configurable status bar -- Modular, configurable status bar
{ {
"nvim-lualine/lualine.nvim", "nvim-lualine/lualine.nvim",

View File

@@ -1,6 +1,6 @@
return { -- General programming utilities go here return { -- General programming utilities go here
-- Tools for configuration and plugin development -- Tools for configuration and plugin development
{ "folke/neoconf.nvim", cmd = "Neoconf" }, { "folke/neoconf.nvim", cmd = "Neoconf" },
{ {
"folke/neodev.nvim", "folke/neodev.nvim",
opts = { opts = {
@@ -8,7 +8,7 @@ return { -- General programming utilities go here
if if
root_dir:find( root_dir:find(
os.getenv("XDG_CONFIG_HOME") os.getenv("XDG_CONFIG_HOME")
.. "/nix/home-manager/core/dotfiles/dot_config/nvim/", .. "/nix/home-manager/core/dotfiles/dot_config/nvim/",
1, 1,
true true
) == 1 ) == 1
@@ -40,9 +40,24 @@ return { -- General programming utilities go here
dependencies = { "nvim-lua/plenary.nvim" }, dependencies = { "nvim-lua/plenary.nvim" },
keys = require("config.keys").todo_comments, keys = require("config.keys").todo_comments,
}, },
"tpope/vim-fugitive", -- Also want to add fugitive, since it's apparently a great git plugin {
"lewis6991/gitsigns.nvim",
event = "VimEnter",
dependencies = { "nvim-lua/plenary.nvim" },
config = function()
require("gitsigns").setup({
signs = {
add = { text = "" },
change = { text = "" },
delete = { text = "_" },
topdelete = { text = "" },
changedelete = { text = "~" },
},
})
end,
},
"jlfwong/vim-mercenary", -- Mercenary is the mercurial equivalent of fugitive "jlfwong/vim-mercenary", -- Mercenary is the mercurial equivalent of fugitive
{ -- Oil is a very nice buffer-based filetree editor { -- Oil is a very nice buffer-based filetree editor
"stevearc/oil.nvim", "stevearc/oil.nvim",
event = "VeryLazy", event = "VeryLazy",
opts = {}, opts = {},