2022-05-12 19:42:09 +02:00
|
|
|
local fn = vim.fn
|
2022-08-23 14:58:15 +02:00
|
|
|
local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim"
|
2022-05-12 19:42:09 +02:00
|
|
|
local packer_bootstrap = false
|
|
|
|
if fn.empty(fn.glob(install_path)) > 0 then
|
2022-09-02 16:15:54 +02:00
|
|
|
packer_bootstrap =
|
|
|
|
fn.system({ "git", "clone", "--depth", "1", "https://github.com/wbthomason/packer.nvim", install_path })
|
|
|
|
vim.cmd("packadd packer.nvim")
|
2022-05-12 19:42:09 +02:00
|
|
|
end
|
|
|
|
|
|
|
|
local packer = require("packer")
|
2022-08-23 14:58:15 +02:00
|
|
|
packer.init({
|
2022-09-02 16:15:54 +02:00
|
|
|
display = {
|
|
|
|
open_fn = function()
|
|
|
|
return require("packer.util").float({ border = "rounded" })
|
|
|
|
end,
|
|
|
|
},
|
2022-08-23 14:58:15 +02:00
|
|
|
})
|
2022-05-12 19:42:09 +02:00
|
|
|
|
|
|
|
return packer.startup(function(use)
|
2022-09-02 16:15:54 +02:00
|
|
|
-- Let packer manage itself
|
|
|
|
use("wbthomason/packer.nvim")
|
|
|
|
use("lewis6991/impatient.nvim")
|
|
|
|
|
|
|
|
-- General Helper Functions
|
|
|
|
use("nvim-lua/plenary.nvim")
|
|
|
|
|
|
|
|
-- Theming Section
|
|
|
|
use("rktjmp/fwatch.nvim") -- Used to check dark/light theme
|
|
|
|
use("EdenEast/nightfox.nvim")
|
|
|
|
use({ "catppuccin/nvim", as = "catppuccin" })
|
|
|
|
use("nvim-lualine/lualine.nvim")
|
|
|
|
|
|
|
|
-- Layout Plugins
|
|
|
|
use("dstein64/nvim-scrollview") -- ScrollBars
|
|
|
|
use("akinsho/nvim-toggleterm.lua")
|
|
|
|
use({
|
|
|
|
"folke/zen-mode.nvim",
|
|
|
|
config = function()
|
|
|
|
require("zen-mode").setup({})
|
|
|
|
end,
|
|
|
|
})
|
|
|
|
use("rcarriga/nvim-notify")
|
|
|
|
use("kyazdani42/nvim-web-devicons")
|
|
|
|
use("kyazdani42/nvim-tree.lua")
|
|
|
|
use("nvim-lua/popup.nvim")
|
|
|
|
use("goolord/alpha-nvim")
|
|
|
|
use({
|
|
|
|
"terrortylor/nvim-comment",
|
|
|
|
config = function()
|
|
|
|
require("nvim_comment").setup()
|
|
|
|
end,
|
|
|
|
})
|
|
|
|
use("gfeiyou/command-center.nvim")
|
2022-09-19 20:32:50 +02:00
|
|
|
use("glepnir/lspsaga.nvim")
|
2022-09-02 16:15:54 +02:00
|
|
|
|
|
|
|
-- Code Navigation
|
|
|
|
use("junegunn/fzf")
|
|
|
|
use("nvim-telescope/telescope.nvim")
|
|
|
|
|
|
|
|
-- Lsp Errors
|
|
|
|
use("folke/lsp-colors.nvim")
|
|
|
|
use("kosayoda/nvim-lightbulb")
|
|
|
|
use({
|
|
|
|
"folke/trouble.nvim",
|
|
|
|
requires = "kyazdani42/nvim-web-devicons",
|
|
|
|
config = function()
|
|
|
|
require("trouble").setup({})
|
|
|
|
end,
|
|
|
|
})
|
|
|
|
use({
|
|
|
|
"https://git.sr.ht/~whynothugo/lsp_lines.nvim",
|
|
|
|
config = function()
|
|
|
|
require("lsp_lines").setup()
|
|
|
|
end,
|
|
|
|
})
|
|
|
|
|
|
|
|
-- Syntax / Autocomplete
|
|
|
|
use("tpope/vim-surround")
|
|
|
|
use("neovim/nvim-lspconfig")
|
|
|
|
use("hrsh7th/nvim-cmp")
|
|
|
|
use("onsails/lspkind.nvim")
|
2022-09-19 20:32:50 +02:00
|
|
|
use({
|
|
|
|
"windwp/nvim-autopairs",
|
|
|
|
config = function()
|
|
|
|
require("nvim-autopairs").setup()
|
|
|
|
end,
|
|
|
|
})
|
2022-09-02 16:15:54 +02:00
|
|
|
use("hrsh7th/cmp-nvim-lsp")
|
|
|
|
use("hrsh7th/cmp-path")
|
|
|
|
use("hrsh7th/cmp-calc")
|
|
|
|
use("hrsh7th/cmp-buffer")
|
|
|
|
use("hrsh7th/cmp-cmdline")
|
|
|
|
use("rafamadriz/friendly-snippets")
|
|
|
|
use("L3MON4D3/LuaSnip")
|
|
|
|
use("saadparwaiz1/cmp_luasnip")
|
|
|
|
|
|
|
|
use({ "williamboman/mason.nvim" })
|
|
|
|
use({ "williamboman/mason-lspconfig.nvim" })
|
|
|
|
use({ "jose-elias-alvarez/null-ls.nvim" })
|
|
|
|
use("MunifTanjim/prettier.nvim")
|
|
|
|
use({ "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" })
|
|
|
|
|
|
|
|
-- Dap Debugger
|
|
|
|
use({ "mfussenegger/nvim-dap" })
|
|
|
|
use({ "rcarriga/nvim-dap-ui" })
|
|
|
|
|
|
|
|
-- FIle Navigation
|
|
|
|
use({ "ThePrimeagen/harpoon" })
|
|
|
|
|
|
|
|
-- More IDE like features
|
|
|
|
use({
|
|
|
|
"rmagatti/session-lens",
|
|
|
|
requires = { "rmagatti/auto-session", "nvim-telescope/telescope.nvim" },
|
|
|
|
config = function()
|
|
|
|
require("session-lens").setup({ path_display = { "shorten" } })
|
|
|
|
end,
|
|
|
|
})
|
|
|
|
|
|
|
|
use({
|
|
|
|
"edluffy/hologram.nvim",
|
|
|
|
config = function() end,
|
|
|
|
})
|
|
|
|
|
|
|
|
use({
|
|
|
|
"nvim-neotest/neotest",
|
|
|
|
requires = {
|
2022-09-19 20:32:50 +02:00
|
|
|
"haydenmeade/neotest-jest",
|
|
|
|
"KaiSpencer/neotest-vitest",
|
2022-09-02 16:15:54 +02:00
|
|
|
"nvim-lua/plenary.nvim",
|
|
|
|
"nvim-treesitter/nvim-treesitter",
|
|
|
|
"antoinemadec/FixCursorHold.nvim",
|
|
|
|
},
|
|
|
|
})
|
|
|
|
|
|
|
|
-- Database Feature
|
|
|
|
use("tpope/vim-dadbod")
|
|
|
|
use("kristijanhusak/vim-dadbod-ui")
|
|
|
|
|
|
|
|
if packer_bootstrap then
|
|
|
|
packer.sync()
|
|
|
|
end
|
2022-05-12 19:42:09 +02:00
|
|
|
end)
|