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 "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")