Files
dots/.config/nvim/lua/plugins.lua
2022-03-20 19:31:44 +02:00

228 lines
3.4 KiB
Lua

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)