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' -- Telescope and deps use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' } use 'nvim-telescope/telescope-symbols.nvim' use { 'nvim-telescope/telescope.nvim', tag = '0.1.5', requires = { {'nvim-lua/plenary.nvim'} } } -- color scheme use({ 'rose-pine/neovim', as = 'rose-pine' }) -- visual undo use 'mbbill/undotree' -- lsp use { 'VonHeikemen/lsp-zero.nvim', branch = 'v3.x', requires = { --- Uncomment these if you want to manage LSP servers from neovim -- {'williamboman/mason.nvim'}, -- {'williamboman/mason-lspconfig.nvim'}, -- LSP Support {'neovim/nvim-lspconfig'}, -- Autocompletion {'hrsh7th/nvim-cmp'}, {'hrsh7th/cmp-nvim-lsp'}, {'L3MON4D3/LuaSnip'}, } } use { 'nvim-lualine/lualine.nvim', requires = { 'nvim-tree/nvim-web-devicons', opt = true } } -- 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)