nvim: Lazy load more plugins

This commit is contained in:
Marty Oehme 2025-02-07 15:53:11 +01:00
parent a3a5488dcd
commit d501688031
Signed by: Marty
GPG key ID: EDBF2ED917B2EF6A
3 changed files with 48 additions and 21 deletions

View file

@ -236,7 +236,6 @@ return {
require_confirmation = false,
eval_options = {},
},
lazy = false,
},
-- Open ipynb Jupyter notebooks as if they're quarto files

View file

@ -1,29 +1,43 @@
return {
{
"akinsho/git-conflict.nvim",
event = { "InsertEnter", "CursorHold" },
config = function()
require("git-conflict").setup({
default_mappings = false,
disable_diagnostics = true,
})
event = { "InsertEnter", "CursorHold", "VeryLazy" },
init = function()
if require("core.util").is_available("which-key") then
require("which-key").add({ "<localleader>h", group = "git" })
end
end,
config = function()
require("git-conflict").setup({
debug = false,
default_mappings = false, -- disable buffer local mapping created by this plugin
default_commands = true, -- disable commands created by this plugin
disable_diagnostics = false, -- This will disable the diagnostics in a buffer whilst it is conflicted
list_opener = "copen", -- command or function to open the conflicts list
highlights = { -- They must have background color, otherwise the default color will be used
incoming = "DiffAdd",
current = "DiffText",
},
})
local map = vim.keymap.set
map("n", "<localleader>ho", "<Plug>(git-conflict-ours)", { desc = "Conflict use ours" })
map("n", "<localleader>hO", "<Plug>(git-conflict-theirs)", { desc = "Conflict use theirs" })
map("n", "<localleader>ho", "<Plug>(git-conflict-ours)", { desc = "Conflict use current" })
map("n", "<localleader>hO", "<Plug>(git-conflict-theirs)", { desc = "Conflict use incoming" })
map("n", "<localleader>hm", "<Plug>(git-conflict-both)", { desc = "Conflict use both" })
map("n", "<localleader>hM", "<Plug>(git-conflict-none)", { desc = "Conflict use none" })
map("n", "[H", "<Plug>(git-conflict-prev-conflict)", { desc = "Prev git conflict" })
map("n", "]H", "<Plug>(git-conflict-next-conflict)", { desc = "Next git conflict" })
map("n", "[H", "<Plug>(git-conflict-prev-conflict)", { desc = "git conflict backward" })
map("n", "]H", "<Plug>(git-conflict-next-conflict)", { desc = "git conflict forward" })
end,
lazy = false, -- TODO needs to be force refreshed in lazy loaded mode unfortunately
lazy = false, -- TODO: needs to be force refreshed in lazy loaded mode unfortunately
},
{
"lewis6991/gitsigns.nvim", -- show vcs changes on left-hand gutter
event = { "InsertEnter", "CursorHold" },
event = { "InsertEnter", "CursorHold", "VeryLazy" },
cmd = "Gitsigns",
init = function()
if require("core.util").is_available("which-key") then
require("which-key").add({ "<localleader>h", group = "git" })
end
end,
config = function()
require("gitsigns").setup({
numhl = true,
@ -46,7 +60,7 @@ return {
gs.next_hunk()
end)
return "<Ignore>"
end, { expr = true, desc = "Next git hunk" })
end, { expr = true, desc = "git hunk forward" })
map("n", "[h", function()
if vim.wo.diff then
@ -56,12 +70,8 @@ return {
gs.prev_hunk()
end)
return "<Ignore>"
end, { expr = true, desc = "Previous git hunk" })
end, { expr = true, desc = "git hunk backward" })
-- Actions
if require("core.util").is_available("which-key") then
require("which-key").add({ "<localleader>h", group = "git" })
end
map({ "n", "v" }, "<localleader>hs", ":Gitsigns stage_hunk<CR>", { desc = "stage hunk" })
map({ "n", "v" }, "<localleader>hr", ":Gitsigns reset_hunk<CR>", { desc = "reset hunk" })
map("n", "<localleader>hS", gs.stage_buffer, { desc = "stage buffer" })

View file

@ -21,6 +21,25 @@ return {
"nvim-lua/plenary.nvim",
{ "nvim-tree/nvim-web-devicons", optional = true },
},
init = function()
-- ensure neo-tree gets loaded if we start vim with a directory
-- netrw-like. See https://github.com/nvim-neo-tree/neo-tree.nvim/discussions/1326
vim.api.nvim_create_autocmd("BufEnter", {
group = vim.api.nvim_create_augroup("load_neo_tree", {}),
desc = "Loads neo-tree when opening a directory",
callback = function(args)
local stats = vim.uv.fs_stat(args.file)
if not stats or stats.type ~= "directory" then
return
end
require("neo-tree")
return true
end,
})
end,
cmd = "Neotree",
opts = {
source_selector = { winbar = true },
@ -28,9 +47,8 @@ return {
keys = {
{ "<leader>se", "<cmd>Neotree toggle left<cr>", desc = "filetree", silent = true },
},
lazy = false,
},
{ "MagicDuck/grug-far.nvim", lazy = false, opts = {} },
{ "MagicDuck/grug-far.nvim", opts = {}, cmd = "GrugFar" },
-- fuzzy matching picker
{
"nvim-telescope/telescope.nvim",