chore: back to fugitive

This commit is contained in:
Mariano Z. 2025-03-28 20:33:57 -03:00
parent cd71c6519e
commit 867159343a
Signed by: marianozunino
GPG key ID: 4C73BAD25156DACE
10 changed files with 107 additions and 130 deletions

View file

@ -3,3 +3,17 @@ require("config.options")
require("config.remap") require("config.remap")
require("config.autocomands") require("config.autocomands")
require("config.lazy") require("config.lazy")
vim.api.nvim_create_autocmd("VimEnter", {
callback = function()
local config_path = vim.fn.stdpath("config")
local current_dir = vim.fn.getcwd()
if current_dir == config_path then
vim.fn.system("git config core.hooksPath .githooks")
if vim.v.shell_error ~= 0 then
vim.notify("Failed to set git hooks path for Neovim config", vim.log.levels.WARN)
end
end
end,
desc = "Set git hooks path for Neovim config directory only",
})

View file

@ -4,30 +4,27 @@
"alpha-nvim": { "branch": "main", "commit": "de72250e054e5e691b9736ee30db72c65d560771" }, "alpha-nvim": { "branch": "main", "commit": "de72250e054e5e691b9736ee30db72c65d560771" },
"blink.cmp": { "branch": "main", "commit": "49f211fe5d729df53df4c042d7c3464cf47d199e" }, "blink.cmp": { "branch": "main", "commit": "49f211fe5d729df53df4c042d7c3464cf47d199e" },
"chezmoi.nvim": { "branch": "main", "commit": "3f72cffa2d18aaec884502443bae37226f3decd2" }, "chezmoi.nvim": { "branch": "main", "commit": "3f72cffa2d18aaec884502443bae37226f3decd2" },
"chezmoi.vim": { "branch": "main", "commit": "abf37336437867cbd99ce2f8849b717415391cc3" },
"cloak.nvim": { "branch": "main", "commit": "648aca6d33ec011dc3166e7af3b38820d01a71e4" }, "cloak.nvim": { "branch": "main", "commit": "648aca6d33ec011dc3166e7af3b38820d01a71e4" },
"conform.nvim": { "branch": "master", "commit": "f9ef25a7ef00267b7d13bfc00b0dea22d78702d5" }, "codeium.vim": { "branch": "main", "commit": "000de972de76f357c03da14f4f8dd9a969d4fe8c" },
"conform.nvim": { "branch": "master", "commit": "b1a75324ddf96b7bb84963a297b1ed334db087c0" },
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
"flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" }, "flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" },
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
"fzf-lua": { "branch": "main", "commit": "89ff12300e9a768f4890a8e02bb6a3f5d97f9a65" }, "fzf-lua": { "branch": "main", "commit": "caee13203d6143d691710c34f85ad6441fe3f535" },
"gitlinker.nvim": { "branch": "master", "commit": "cc59f732f3d043b626c8702cb725c82e54d35c25" }, "gitlinker.nvim": { "branch": "master", "commit": "cc59f732f3d043b626c8702cb725c82e54d35c25" },
"gitsigns.nvim": { "branch": "main", "commit": "7010000889bfb6c26065e0b0f7f1e6aa9163edd9" }, "gitsigns.nvim": { "branch": "main", "commit": "3c76f7fabac723aa682365ef782f88a83ccdb4ac" },
"go.nvim": { "branch": "master", "commit": "0d426e87227dd14584881ecc595c173121456111" }, "go.nvim": { "branch": "master", "commit": "0d426e87227dd14584881ecc595c173121456111" },
"harpoon": { "branch": "harpoon2", "commit": "ed1f853847ffd04b2b61c314865665e1dadf22c7" },
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" }, "indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
"knap": { "branch": "main", "commit": "7db44d0bb760120142cc1e8f43e44976de59c2f6" }, "knap": { "branch": "main", "commit": "7db44d0bb760120142cc1e8f43e44976de59c2f6" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
"lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" },
"lspsaga.nvim": { "branch": "main", "commit": "778d56ff9b387dacd14ae648ed5604394b486f51" },
"lualine.nvim": { "branch": "master", "commit": "1517caa8fff05e4b4999857319d3b0609a7f57fa" }, "lualine.nvim": { "branch": "master", "commit": "1517caa8fff05e4b4999857319d3b0609a7f57fa" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" },
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" },
"mini.ai": { "branch": "main", "commit": "978ffc65c6b513fde9ef075326d34d89197f1ea5" }, "mini.ai": { "branch": "main", "commit": "978ffc65c6b513fde9ef075326d34d89197f1ea5" },
"mini.icons": { "branch": "main", "commit": "86a633f0dffcfd80110bac86681dbf4b5c37ba5c" }, "mini.icons": { "branch": "main", "commit": "86a633f0dffcfd80110bac86681dbf4b5c37ba5c" },
"mini.surround": { "branch": "main", "commit": "c92d262deae79545b7674b2069332116461a85f3" }, "mini.surround": { "branch": "main", "commit": "97796f68a8698d9b63ac3927da0d0bf5c3a0876b" },
"neocodeium": { "branch": "main", "commit": "8a0b9b872b7da673ad2f6f1c3d17ac5c338053a8" },
"neoscroll.nvim": { "branch": "master", "commit": "f957373912e88579e26fdaea4735450ff2ef5c9c" }, "neoscroll.nvim": { "branch": "master", "commit": "f957373912e88579e26fdaea4735450ff2ef5c9c" },
"nightfox.nvim": { "branch": "main", "commit": "ba47d4b4c5ec308718641ba7402c143836f35aa9" }, "nightfox.nvim": { "branch": "main", "commit": "ba47d4b4c5ec308718641ba7402c143836f35aa9" },
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" }, "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
@ -35,20 +32,19 @@
"nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" }, "nvim-colorizer.lua": { "branch": "master", "commit": "a065833f35a3a7cc3ef137ac88b5381da2ba302e" },
"nvim-lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" }, "nvim-lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" },
"nvim-lint": { "branch": "master", "commit": "93b8040115c9114dac1047311763bef275e752dc" }, "nvim-lint": { "branch": "master", "commit": "93b8040115c9114dac1047311763bef275e752dc" },
"nvim-lspconfig": { "branch": "master", "commit": "85e0dd26b710e834a105d679200d01e326a3d2b0" }, "nvim-lspconfig": { "branch": "master", "commit": "ff6471d4f837354d8257dfa326b031dd8858b16e" },
"nvim-spectre": { "branch": "master", "commit": "ddd7383e856a7c939cb4f5143278fe041bbb8cb9" }, "nvim-spectre": { "branch": "master", "commit": "ddd7383e856a7c939cb4f5143278fe041bbb8cb9" },
"nvim-treesitter": { "branch": "master", "commit": "a3315b8c7f0f1ddaa30b24bcc0af0d31024dfb6a" }, "nvim-treesitter": { "branch": "master", "commit": "9be6836ebeb88a536055bf1ce0961eef68da4bc6" },
"nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" },
"oil.nvim": { "branch": "master", "commit": "ab887d926c2665a708fbe9e6c4654042cc5f4c60" }, "oil.nvim": { "branch": "master", "commit": "302bbaceeafc690e6419e0c8296e804d60cb9446" },
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"presenterm.nvim": { "branch": "main", "commit": "f85ac3ab84ba12689858b6565236ebf5e835c09d" },
"pretty-fold.nvim": { "branch": "master", "commit": "1eb18f228972e86b7b8f5ef33ca8091e53fb1e49" }, "pretty-fold.nvim": { "branch": "master", "commit": "1eb18f228972e86b7b8f5ef33ca8091e53fb1e49" },
"render-markdown.nvim": { "branch": "main", "commit": "a1fc4e559252baa128c471adadf0be045abd542d" }, "render-markdown.nvim": { "branch": "main", "commit": "a020c88e9552b50916a78dec9eeb4656c6391e6d" },
"schemastore.nvim": { "branch": "main", "commit": "e659e0c6ca06727ed898aaaeea3850f528898684" }, "schemastore.nvim": { "branch": "main", "commit": "e659e0c6ca06727ed898aaaeea3850f528898684" },
"suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" }, "suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" },
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" },
"typescript-tools.nvim": { "branch": "master", "commit": "3bc72c8597f6137f977032f5c76fcde51e0ef19a" }, "typescript-tools.nvim": { "branch": "master", "commit": "e0887c1e336edbb01243e9f1e60d74b0bc0a2bed" },
"undotree": { "branch": "master", "commit": "b951b87b46c34356d44aa71886aecf9dd7f5788a" }, "undotree": { "branch": "master", "commit": "b951b87b46c34356d44aa71886aecf9dd7f5788a" },
"vim-dadbod": { "branch": "master", "commit": "9f0ca8bcef704659820a95c3bbd2c262583a66a1" }, "vim-dadbod": { "branch": "master", "commit": "9f0ca8bcef704659820a95c3bbd2c262583a66a1" },
"vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" }, "vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" },

View file

@ -1,40 +1,29 @@
local M = { local M = {
"monkoose/neocodeium", "Exafunction/codeium.vim",
cmd = "NeoCodeium", cmd = "Codeium",
keys = { keys = {
{ "<leader>ce", "<cmd>NeoCodeium toggle<cr>", desc = "Codeium Enable" }, { "<leader>ce", "<cmd>Codeium Toggle<cr>", desc = "Codeium Enable" },
}, },
} }
M.config = function() M.config = function()
local neocodeium = require("neocodeium")
local blink = require("blink.cmp")
neocodeium.setup()
vim.api.nvim_create_autocmd("User", {
pattern = "BlinkCmpMenuOpen",
callback = function()
neocodeium.clear()
end,
})
neocodeium.setup({
filter = function()
return not blink.is_visible()
end,
})
vim.g.codeium_disable_bindings = 1 vim.g.codeium_disable_bindings = 1
imap("<Tab>", neocodeium.accept, { expr = true, silent = true, desc = "[codeium] Accept completion" }) imap("<C-g>", function()
return vim.fn["codeium#Accept"]()
end, { expr = true, silent = true, desc = "[codeium] Accept completion" })
imap("<M-;>", function() imap("<M-;>", function()
return neocodeium.cycle(1) return vim.fn["codeium#CycleCompletions"](1)
end, { expr = true, silent = true, desc = "[codeium] Cycle completions" }) end, { expr = true, silent = true, desc = "[codeium] Cycle completions" })
imap("<M-,>", function() imap("<M-,>", function()
return neocodeium.cycle(-1) return vim.fn["codeium#CycleCompletions"](-1)
end, { expr = true, silent = true, desc = "[codeium] Cycle completions" }) end, { expr = true, silent = true, desc = "[codeium] Cycle completions" })
imap("<c-x>", function()
return vim.fn["codeium#Clear"]()
end, { expr = true, silent = true, desc = "[codeium] Clear" })
end end
return M return M

View file

@ -1,41 +1,31 @@
return { return {
{ "xvzc/chezmoi.nvim",
"alker0/chezmoi.vim", dependencies = { "nvim-lua/plenary.nvim" },
lazy = false, config = function()
init = function() require("chezmoi").setup({
-- This option is required. -- your configurations
vim.g["chezmoi#use_tmp_buffer"] = true edit = {
end, watch = true, -- Set true to automatically apply on save.
}, force = true, -- Set true to force apply. Works only when watch = true.
{ },
"xvzc/chezmoi.nvim", notification = {
dependencies = { "nvim-lua/plenary.nvim" }, on_open = true, -- vim.notify when start editing chezmoi-managed file.
config = function() on_apply = true, -- vim.notify on apply.
require("chezmoi").setup({ },
-- your configurations })
edit = {
watch = true, -- Set true to automatically apply on save.
force = true, -- Set true to force apply. Works only when watch = true.
},
notification = {
on_open = true, -- vim.notify when start editing chezmoi-managed file.
on_apply = true, -- vim.notify on apply.
},
})
vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, { vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, {
pattern = { os.getenv("HOME") .. "/.local/share/chezmoi/*" }, pattern = { os.getenv("HOME") .. "/.local/share/chezmoi/*" },
callback = function() callback = function()
-- invoke with vim.schedule() for better startup time -- invoke with vim.schedule() for better startup time
vim.schedule(require("chezmoi.commands.__edit").watch) vim.schedule(require("chezmoi.commands.__edit").watch)
end, end,
}) })
-- Auto-apply chezmoi changes -- Auto-apply chezmoi changes
vim.api.nvim_create_autocmd("BufWritePost", { vim.api.nvim_create_autocmd("BufWritePost", {
pattern = { os.getenv("HOME") .. "/.local/share/chezmoi/*" }, pattern = { os.getenv("HOME") .. "/.local/share/chezmoi/*" },
command = [[silent! !chezmoi apply --source-path "%"]], command = [[silent! !chezmoi apply --source-path "%"]],
}) })
end, end,
},
} }

View file

@ -1,6 +1,7 @@
local M = { local M = {
"saghen/blink.cmp", "saghen/blink.cmp",
dependencies = { "L3MON4D3/LuaSnip", version = "v2.*" }, dependencies = { "L3MON4D3/LuaSnip", version = "v2.*" },
version = "v1.*", version = "v1.*",
} }
@ -18,7 +19,6 @@ M.config = function()
["<C-k>"] = { "select_prev", "fallback" }, ["<C-k>"] = { "select_prev", "fallback" },
["<C-j>"] = { "select_next", "fallback" }, ["<C-j>"] = { "select_next", "fallback" },
["<Tab>"] = { "fallback" },
}, },
appearance = { appearance = {

View file

@ -2,10 +2,47 @@ local M = {
{ {
"tpope/vim-fugitive", "tpope/vim-fugitive",
config = function() config = function()
print("Magic") local git_status = function()
-- For init.lua local bufnr = vim.api.nvim_get_current_buf()
if vim.b[bufnr].fugitive_status then
local winnr = vim.fn.bufwinid(bufnr)
vim.api.nvim_win_close(winnr, true)
else
vim.cmd("G")
end
end
vim.g.fugitive_git_executable = "env GPG_TTY=$(tty) git" vim.g.fugitive_git_executable = "env GPG_TTY=$(tty) git"
vim.env.GPG_TTY = vim.fn.system("tty"):gsub("\n", "") vim.env.GPG_TTY = vim.fn.system("tty"):gsub("\n", "")
nmap("<leader>lg", ":G<cr>", { desc = "Git Status" })
nmap("<leader>gs", git_status, { desc = "Toggle Git Status" })
nmap("gs", git_status, { desc = "Toggle Git Status" })
vim.api.nvim_create_autocmd("FileType", {
pattern = { "fugitive", "fugitiveblame", "fugitive-status" },
callback = function()
nmap("P", function()
local cmd = "git push --force-with-lease"
vim.notify("Pushing...", vim.log.levels.INFO)
vim.fn.jobstart(cmd, {
on_exit = function(_, code)
if code == 0 then
vim.notify("Push completed successfully", vim.log.levels.INFO)
else
vim.notify("Push failed with exit code: " .. code, vim.log.levels.ERROR)
end
end,
detach = true,
})
end, { buffer = true, desc = "Git Push Force With Lease (Async)" })
nmap("<C-c>", function()
local win_id = vim.api.nvim_get_current_win()
vim.api.nvim_win_close(win_id, false)
end, { buffer = true, desc = "Close window" })
end,
})
end, end,
}, },
{ {

View file

@ -1,34 +0,0 @@
local M = {
"ThePrimeagen/harpoon",
branch = "harpoon2",
dependencies = {
"nvim-lua/plenary.nvim",
},
}
M.config = function()
local harpoon = require("harpoon")
harpoon:setup({
settings = {
save_on_toggle = true,
sync_on_ui_close = true,
},
})
nmap("<leader>a", function()
harpoon:list():add()
end, { desc = "Harpoon: Append" })
nmap("<leader>h", function()
harpoon.ui:toggle_quick_menu(harpoon:list())
end, { desc = "Harpoon: Toggle Quick Menu" })
for i = 1, 4 do
nmap("<leader>" .. i, function()
harpoon:list():select(i)
end, { desc = "Harpoon: Select " .. i })
end
end
return M

View file

@ -1,15 +0,0 @@
local M = {
"nvimdev/lspsaga.nvim",
}
M.config = function()
require("lspsaga").setup({
lightbulb = {
enable = false,
},
})
nmap("K", "<cmd>Lspsaga hover_doc<cr>")
nmap("pd", "<cmd>Lspsaga peek_definition<cr>")
end
return M

View file

@ -4,7 +4,6 @@ local M = {
"saghen/blink.cmp", "saghen/blink.cmp",
"williamboman/mason.nvim", "williamboman/mason.nvim",
"williamboman/mason-lspconfig.nvim", "williamboman/mason-lspconfig.nvim",
require("plugins.lsp.extras.context"),
require("plugins.lsp.extras.lazydev"), require("plugins.lsp.extras.lazydev"),
require("plugins.lsp.extras.gopher"), require("plugins.lsp.extras.gopher"),
require("plugins.lsp.extras.typescript"), require("plugins.lsp.extras.typescript"),

View file

@ -1,16 +1,17 @@
return { return {
"marianozunino/presenterm.nvim", dir = "/home/forbi/Dev/marianozunino/presenterm.nvim",
config = function() config = function()
require("presenterm").setup({ require("presenterm").setup({
patterns = { patterns = {
"*.presenterm", "*.presenterm",
"*.pterm", "*.pterm",
"*.md", "*.md",
}, },
auto_launch = true, auto_launch = true,
terminal_cmd = "kitty --title 'Presenterm: {title}' --override font_size=18 {cmd}", terminal_cmd = "kitty --title 'Presenterm: {title}' --override font_size=18 {cmd}",
}) })
nmap("<leader>pl", ":PresentermLaunch<cr>", { desc = "[Presenterm] Launch" })
nmap("<leader>ps", ":PresentermStop<cr>", { desc = "[Presenterm] Stop" })
end, end,
} }