diff options
author | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2022-01-10 21:59:08 +0100 |
---|---|---|
committer | Gustaf Rydholm <gustaf.rydholm@gmail.com> | 2022-01-10 21:59:08 +0100 |
commit | 6ada17c671c5a5b82ca7aec0f431074b260ed5ae (patch) | |
tree | ab6ec9cd40adcdb8e6206a36619618895bf70ed2 /lua/plugins | |
parent | 405b57a49a09823d4603f65ea034e2a6d9916953 (diff) |
Add installer
Diffstat (limited to 'lua/plugins')
-rw-r--r-- | lua/plugins/installer.lua | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/lua/plugins/installer.lua b/lua/plugins/installer.lua new file mode 100644 index 0000000..6c3b14a --- /dev/null +++ b/lua/plugins/installer.lua @@ -0,0 +1,55 @@ +-- Neovim packer installer. + +local fn = vim.fn +local plugins = require("plugins.plugins") + +-- Automatically install packer +local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim" +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, + }) + print("Installing packer close and reopen Neovim...") + vim.cmd([[packadd packer.nvim]]) +end + +-- Autocommand that reloads neovim whenever you save the plugins.lua file +vim.cmd([[ + augroup packer_user_config + autocmd! + autocmd BufWritePost plugins.lua source <afile> | PackerSync + augroup end +]]) + +-- Use a protected call so we don't error out on first use +local status_ok, packer = pcall(require, "packer") +if not status_ok then + return +end + +-- Have packer use a popup window +packer.init({ + display = { + open_fn = function() + return require("packer.util").float({ border = "rounded" }) + end, + }, +}) + +-- Install your plugins here +return packer.startup(function(use) + for _, plugin in ipairs(plugins) do + use(plugin) + 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) |