.dotfiles/configs/nvim/lua/core/plugins.lua
2022-06-20 19:57:01 +02:00

102 lines
2.7 KiB
Lua

local fn = vim.fn
local install_path = fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim'
local packer_bootstrap = false
if fn.empty(fn.glob(install_path)) > 0 then
packer_bootstrap = fn.system({ 'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim',
install_path })
vim.cmd 'packadd packer.nvim'
end
local packer = require("packer")
packer.init {
display = {
open_fn = function()
return require("packer.util").float { border = "rounded" }
end,
}
}
return packer.startup(function(use)
-- 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 "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 { "windwp/nvim-autopairs", config = function() require('nvim-autopairs').setup() end }
use "gfeiyou/command-center.nvim"
-- 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
}
-- Syntax / Autocomplete
use "tpope/vim-surround"
use "neovim/nvim-lspconfig"
use "hrsh7th/nvim-cmp"
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/nvim-lsp-installer"
use { "nvim-treesitter/nvim-treesitter", run = ":TSUpdate" }
-- 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 {
"nvim-neotest/neotest",
requires = {
"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
end)