require('packer').startup(function() use 'wbthomason/packer.nvim' -- -- LSP -- -- lspconfig use { 'neovim/nvim-lspconfig', event = 'BufEnter', config = function() require('plugins.lsp') end } -- nvim lint use { 'mfussenegger/nvim-lint', event = 'BufWrite', config = function() require('plugins.lint') end } -- -- completion -- -- cmp use { 'hrsh7th/nvim-cmp', event = 'InsertEnter', config = function() require('plugins.cmp') end } use { 'hrsh7th/cmp-nvim-lsp', after = 'nvim-cmp' } use { 'hrsh7th/cmp-vsnip', after = 'nvim-cmp' } use { 'hrsh7th/cmp-buffer', after = 'nvim-cmp' } use { 'hrsh7th/cmp-path', after = 'nvim-cmp' } -- snippets use { 'hrsh7th/vim-vsnip', after = 'nvim-cmp' } use { 'rafamadriz/friendly-snippets', after = 'vim-vsnip' } -- lsp signature use { 'ray-x/lsp_signature.nvim', config = function() require('plugins.lspsignature') end } -- autopairs use { 'windwp/nvim-autopairs', after = 'nvim-cmp', config = function() require('plugins.autopairs') end } -- treesitter use { 'nvim-treesitter/nvim-treesitter', event = 'BufEnter', config = function() require('plugins.treesitter') end } -- dap use { 'mfussenegger/nvim-dap', module = 'dap', config = function() require('plugins.dap') end } use { 'nvim-telescope/telescope-dap.nvim', after = 'nvim-dap' } use { 'rcarriga/nvim-dap-ui', after = 'nvim-dap', config = function() require('plugins.dapui') end } use { 'leoluz/nvim-dap-go', after = 'nvim-dap', config = function() require('plugins.dap-go') end } -- toggleterm use { 'akinsho/toggleterm.nvim', cmd = 'ToggleTerm*', config = function() require('plugins.toggleterm') end } -- neoformat use { 'sbdchd/neoformat', cmd = 'Neoformat', config = function() require('plugins.neoformat') end } -- comment.nvim use { 'numToStr/Comment.nvim', event = 'BufRead', config = function() require('plugins.comment') end } -- fugitive use { 'tpope/vim-fugitive', } -- -- files (and more) -- -- telescope use { 'nvim-telescope/telescope.nvim', cmd = 'Telescope', requires = {'nvim-lua/plenary.nvim'}, config = function() require('plugins.telescope') end } -- nvim tree use { 'kyazdani42/nvim-tree.lua', requires = 'kyazdani42/nvim-web-devicons', config = function() require('plugins.nvim-tree') end } -- -- looks -- -- lualine use { 'hoob3rt/lualine.nvim', config = function() require('plugins.lualine') end } -- -- colorscheme -- use { -- 'crusoexia/vim-monokai', 'dylanaraps/wal.vim', config = function() require('plugins.colors') end, after = 'nvim-treesitter' } -- -- qol -- -- blankline use { 'lukas-reineke/indent-blankline.nvim', event = 'VimEnter' } -- highlight yank use { 'machakann/vim-highlightedyank', event = 'TextYankPost' } -- tabular use { 'godlygeek/tabular', cmd = 'Tabularize' } -- maximizer use { 'szw/vim-maximizer', cmd = 'MaximizerToggle' } -- whichkey use { 'folke/which-key.nvim', config = function() require('plugins.whichkey') end } -- -- filetype specific -- -- csv use { 'chrisbra/csv.vim', ft = 'csv' } -- latex use { 'lervag/vimtex', ft = 'tex', config = function() require('plugins.vimtex') end } -- -- misc -- use { 'vimwiki/vimwiki', config = function() require('plugins.vimwiki') end } end)