1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
local path_package = vim.fn.stdpath("data") .. "/site/"
local mini_path = path_package .. "pack/deps/start/mini.nvim"
if not vim.loop.fs_stat(mini_path) then
vim.cmd('echo "Installing `mini.nvim`" | redraw')
local clone_cmd = {
"git",
"clone",
"--filter=blob:none",
"https://github.com/echasnovski/mini.nvim",
mini_path,
}
vim.fn.system(clone_cmd)
vim.cmd("packadd mini.nvim | helptags ALL")
vim.cmd('echo "Installed `mini.nvim`" | redraw')
end
local mini_deps = require("mini.deps")
local add = mini_deps.add
mini_deps.setup({ path = { package = path_package } })
-- stylua: ignore start
local pkgs = {
"folke/trouble.nvim", -- diagnostics
"mfussenegger/nvim-dap", -- add dap support
"nvim-neotest/nvim-nio", -- async support library
"rcarriga/nvim-dap-ui", -- dap ui
"theHamsta/nvim-dap-virtual-text", -- dap in line text
"nvim-lua/plenary.nvim", -- base lib
"nvim-telescope/telescope.nvim", -- telescope
"nvim-telescope/telescope-file-browser.nvim", -- telescope file browser
"vimwiki/vimwiki", -- wiki
"f-person/git-blame.nvim", -- more git info
"nvim-mini/mini.nvim", -- provides many things
"mhartington/formatter.nvim", -- provider formatter
"mfussenegger/nvim-lint", -- general linter
"nvim-treesitter/nvim-treesitter-context", -- show context of where it is at the code
"mbbill/undotree", -- keep track of undos
"hedyhli/outline.nvim", -- symbols tree (lsp aware)
"akinsho/toggleterm.nvim", -- terminal
"RRethy/vim-illuminate", -- hightlight use of the same word (lsp aware)
"sainnhe/edge", -- light theme
"neovim/nvim-lspconfig", -- lsp support
"ray-x/go.nvim", -- go things
}
-- stylua: ignore end
add({
source = "nvim-treesitter/nvim-treesitter",
hooks = {
post_checkout = function()
vim.cmd("TSUpdate")
end,
},
})
-- work related ai plugins
if vim.fn.executable("copilot") == 1 then
table.insert(pkgs, "github/copilot.vim")
end
if vim.fn.executable("claude") == 1 then
table.insert(pkgs, "coder/claudecode.nvim")
end
for _, value in ipairs(pkgs) do
add({ source = value })
end
require("gabrielgio")
|