local packer = require("packer") local pkgs = { "wbthomason/packer.nvim", -- packer manager "folke/trouble.nvim", -- diagnostics "mfussenegger/nvim-dap", -- add dap support "leoluz/nvim-dap-go", -- add some utilites to go "nvim-neotest/nvim-nio", -- async support library "nvim-lua/plenary.nvim", -- base lib "nvim-telescope/telescope.nvim", -- telescope "nvim-telescope/telescope-file-browser.nvim", -- telescope file browser "TimUntersberger/neogit", -- magit "echasnovski/mini.nvim", -- provides many things "jose-elias-alvarez/null-ls.nvim", -- enriches lsp "nvim-treesitter/nvim-treesitter-context", -- show context of where it is at the code "mbbill/undotree", -- keep track of undos "simrat39/symbols-outline.nvim", -- symbols tree (lsp aware) "caenrique/nvim-toggle-terminal", -- help with toggle from and to terminals [DEPRECATED] "RRethy/vim-illuminate", -- hightlight use of the same word (lsp aware) "sainnhe/edge", -- light theme "williamboman/mason.nvim", -- manages many things "neovim/nvim-lspconfig", -- lsp support } local function startup(use) use("nvim-treesitter/nvim-treesitter", {run = ":TSUpdate"}) use("fatih/vim-go", {run = ":GoUpdateBinaries"}) for _, value in ipairs(pkgs) do use(value) end end packer.startup(startup) local neogit = require("neogit") local null_ls = require("null-ls") local mason = require("mason") null_ls.setup({sources = {null_ls.builtins.diagnostics.golangci_lint}}) neogit.setup() mason.setup() require("gabrielgio")