require('plugins.packer_setup') require('packer').startup(function() -- Packer can manage itself as an optional plugin use {'wbthomason/packer.nvim', opt = true } use { "nvim-neo-tree/neo-tree.nvim", branch = "v3.x", requires = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended "MunifTanjim/nui.nvim", } } -- Fuzzy finder use { 'nvim-telescope/telescope.nvim', requires = { {'nvim-lua/popup.nvim'}, {'nvim-lua/plenary.nvim'}, } } -- Autocomplete and snippets use { 'hrsh7th/nvim-cmp', requires = { { 'hrsh7th/cmp-nvim-lsp' }, { 'hrsh7th/cmp-buffer' }, { 'hrsh7th/cmp-path' }, { 'hrsh7th/cmp-cmdline' }, } } use { 'L3MON4D3/LuaSnip' } use { "rafamadriz/friendly-snippets" } use { 'saadparwaiz1/cmp_luasnip' } use { "benfowler/telescope-luasnip.nvim", module = "telescope._extensions.luasnip", -- if you wish to lazy-load } -- Statusbar, colors and syntax use { 'vim-airline/vim-airline' } use { 'vim-airline/vim-airline-themes' } -- LSP and related use { 'neovim/nvim-lspconfig' } use { 'weilbith/nvim-code-action-menu', cmd = 'CodeActionMenu' } use { 'folke/trouble.nvim' } -- lsp diagnostics -- Languages that need a plugin to extend default lsp use { 'cespare/vim-toml' } use { 'gleam-lang/gleam.vim' } use { 'rust-lang/rust.vim' } use { 'tjdevries/nlua.nvim' } -- Git use { 'NeogitOrg/neogit', requires = { { "nvim-lua/plenary.nvim" }, { "sindrets/diffview.nvim" }, }, } use { "lewis6991/gitsigns.nvim" } -- Filesystem browser use { 'stevearc/oil.nvim' } -- Misc use { 'jbyuki/venn.nvim' } -- ascii diagrams use { 'hashivim/vim-terraform' } end) require('plugins.luasnip') require('plugins.cmp') require('plugins.gitsigns') require('plugins.neogit') require('plugins.oil') require('plugins.telescope') require('plugins.venn')