summaryrefslogtreecommitdiff
path: root/lua/lvim/plugins.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/lvim/plugins.lua')
-rw-r--r--lua/lvim/plugins.lua180
1 files changed, 180 insertions, 0 deletions
diff --git a/lua/lvim/plugins.lua b/lua/lvim/plugins.lua
new file mode 100644
index 00000000..fcb23328
--- /dev/null
+++ b/lua/lvim/plugins.lua
@@ -0,0 +1,180 @@
+return {
+ -- Packer can manage itself as an optional plugin
+ { "wbthomason/packer.nvim" },
+ { "neovim/nvim-lspconfig" },
+ { "tamago324/nlsp-settings.nvim" },
+ { "jose-elias-alvarez/null-ls.nvim" },
+ { "antoinemadec/FixCursorHold.nvim" }, -- Needed while issue https://github.com/neovim/neovim/issues/12587 is still open
+ {
+ "williamboman/nvim-lsp-installer",
+ },
+
+ { "nvim-lua/popup.nvim" },
+ { "nvim-lua/plenary.nvim" },
+ -- Telescope
+ {
+ "nvim-telescope/telescope.nvim",
+ config = function()
+ require("lvim.core.telescope").setup()
+ end,
+ disable = not lvim.builtin.telescope.active,
+ },
+ -- Install nvim-cmp, and buffer source as a dependency
+ {
+ "hrsh7th/nvim-cmp",
+ config = function()
+ require("lvim.core.cmp").setup()
+ end,
+ requires = {
+ "L3MON4D3/LuaSnip",
+ "saadparwaiz1/cmp_luasnip",
+ "hrsh7th/cmp-buffer",
+ "hrsh7th/cmp-nvim-lsp",
+ "hrsh7th/cmp-path",
+ "hrsh7th/cmp-nvim-lua",
+ },
+ run = function()
+ -- cmp's config requires cmp to be installed to run the first time
+ if not lvim.builtin.cmp then
+ require("lvim.core.cmp").config()
+ end
+ end,
+ },
+ {
+ "rafamadriz/friendly-snippets",
+ -- event = "InsertCharPre",
+ -- disable = not lvim.builtin.compe.active,
+ },
+
+ -- Autopairs
+ {
+ "windwp/nvim-autopairs",
+ -- event = "InsertEnter",
+ config = function()
+ require("lvim.core.autopairs").setup()
+ end,
+ disable = not lvim.builtin.autopairs.active,
+ },
+
+ -- Treesitter
+ {
+ "nvim-treesitter/nvim-treesitter",
+ branch = "0.5-compat",
+ -- run = ":TSUpdate",
+ config = function()
+ require("lvim.core.treesitter").setup()
+ end,
+ },
+
+ -- NvimTree
+ {
+ "kyazdani42/nvim-tree.lua",
+ -- event = "BufWinOpen",
+ -- cmd = "NvimTreeToggle",
+ -- commit = "fd7f60e242205ea9efc9649101c81a07d5f458bb",
+ config = function()
+ require("lvim.core.nvimtree").setup()
+ end,
+ disable = not lvim.builtin.nvimtree.active,
+ },
+
+ {
+ "lewis6991/gitsigns.nvim",
+
+ config = function()
+ require("lvim.core.gitsigns").setup()
+ end,
+ event = "BufRead",
+ disable = not lvim.builtin.gitsigns.active,
+ },
+
+ -- Whichkey
+ {
+ "folke/which-key.nvim",
+ config = function()
+ require("lvim.core.which-key").setup()
+ end,
+ event = "BufWinEnter",
+ disable = not lvim.builtin.which_key.active,
+ },
+
+ -- Comments
+ {
+ "terrortylor/nvim-comment",
+ event = "BufRead",
+ config = function()
+ require("lvim.core.comment").setup()
+ end,
+ disable = not lvim.builtin.comment.active,
+ },
+
+ -- project.nvim
+ {
+ "ahmedkhalf/project.nvim",
+ config = function()
+ require("lvim.core.project").setup()
+ end,
+ disable = not lvim.builtin.project.active,
+ },
+
+ -- Icons
+ { "kyazdani42/nvim-web-devicons" },
+
+ -- Status Line and Bufferline
+ {
+ -- "hoob3rt/lualine.nvim",
+ "shadmansaleh/lualine.nvim",
+ -- "Lunarvim/lualine.nvim",
+ config = function()
+ require("lvim.core.lualine").setup()
+ end,
+ disable = not lvim.builtin.lualine.active,
+ },
+
+ {
+ "romgrk/barbar.nvim",
+ config = function()
+ require("lvim.core.bufferline").setup()
+ end,
+ event = "BufWinEnter",
+ disable = not lvim.builtin.bufferline.active,
+ },
+
+ -- Debugging
+ {
+ "mfussenegger/nvim-dap",
+ -- event = "BufWinEnter",
+ config = function()
+ require("lvim.core.dap").setup()
+ end,
+ disable = not lvim.builtin.dap.active,
+ },
+
+ -- Debugger management
+ {
+ "Pocco81/DAPInstall.nvim",
+ -- event = "BufWinEnter",
+ -- event = "BufRead",
+ disable = not lvim.builtin.dap.active,
+ },
+
+ -- Dashboard
+ {
+ "ChristianChiarulli/dashboard-nvim",
+ event = "BufWinEnter",
+ config = function()
+ require("lvim.core.dashboard").setup()
+ end,
+ disable = not lvim.builtin.dashboard.active,
+ },
+
+ -- Terminal
+ {
+ "akinsho/toggleterm.nvim",
+ event = "BufWinEnter",
+ config = function()
+ require("lvim.core.terminal").setup()
+ end,
+ disable = not lvim.builtin.terminal.active,
+ },
+}