2022-09-23 15:28:26 +00:00
|
|
|
local ensure_packer = function()
|
|
|
|
local fn = vim.fn
|
|
|
|
local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
|
|
|
|
if fn.empty(fn.glob(install_path)) > 0 then
|
|
|
|
fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
|
|
|
|
vim.cmd [[packadd packer.nvim]]
|
|
|
|
return true
|
|
|
|
end
|
|
|
|
return false
|
|
|
|
end
|
|
|
|
|
|
|
|
local packer_bootstrap = ensure_packer()
|
|
|
|
|
|
|
|
return require('packer').startup(function(use)
|
|
|
|
use 'wbthomason/packer.nvim'
|
|
|
|
|
|
|
|
use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' }
|
|
|
|
|
|
|
|
-- LSP
|
|
|
|
use {
|
|
|
|
"neovim/nvim-lspconfig",
|
|
|
|
config = function()
|
|
|
|
require("plugins.config.lspconfig").config()
|
|
|
|
end
|
|
|
|
}
|
|
|
|
|
|
|
|
-- Autocomplete
|
|
|
|
use {
|
|
|
|
"hrsh7th/nvim-cmp",
|
|
|
|
requires = {
|
|
|
|
"L3MON4D3/LuaSnip",
|
|
|
|
"hrsh7th/cmp-nvim-lsp",
|
|
|
|
"hrsh7th/cmp-path",
|
|
|
|
"hrsh7th/cmp-buffer",
|
|
|
|
"saadparwaiz1/cmp_luasnip",
|
|
|
|
},
|
|
|
|
config = function()
|
|
|
|
require("plugins.config.cmpconfig").config()
|
|
|
|
end
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
-- File Explorer
|
|
|
|
use {
|
|
|
|
"kyazdani42/nvim-tree.lua",
|
|
|
|
requires = {
|
|
|
|
"kyazdani42/nvim-web-devicons", -- optional, for file icon
|
2022-12-31 11:17:06 +00:00
|
|
|
},
|
|
|
|
config = function()
|
|
|
|
require('nvim-tree').setup()
|
|
|
|
end
|
2022-09-23 15:28:26 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
-- Git
|
|
|
|
use 'f-person/git-blame.nvim'
|
|
|
|
|
|
|
|
-- LuaLine
|
2022-12-31 11:17:06 +00:00
|
|
|
use {
|
|
|
|
'nvim-lualine/lualine.nvim',
|
|
|
|
config = function()
|
|
|
|
require('lualine').setup()
|
|
|
|
end
|
|
|
|
}
|
2022-09-23 15:28:26 +00:00
|
|
|
|
|
|
|
personal_plugins_ok, personal_plugins = pcall(require, 'personal.plugins')
|
|
|
|
if personal_plugins_ok then
|
|
|
|
personal_plugins.startup(use)
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
-- Automatically set up your configuration after cloning packer.nvim
|
|
|
|
-- Put this at the end after all plugins
|
|
|
|
if packer_bootstrap then
|
|
|
|
require('packer').sync()
|
|
|
|
end
|
|
|
|
end)
|