mirror of
https://github.com/jdhao/nvim-config.git
synced 2025-06-08 14:14:33 +02:00
refactor: make packer installation a function
This commit is contained in:
parent
26921309ec
commit
d939cc75c6
@ -4,24 +4,31 @@ local fn = vim.fn
|
|||||||
-- The root dir to install all plugins. Plugins are under opt/ or start/ sub-directory.
|
-- The root dir to install all plugins. Plugins are under opt/ or start/ sub-directory.
|
||||||
vim.g.plugin_home = fn.stdpath("data") .. "/site/pack/packer"
|
vim.g.plugin_home = fn.stdpath("data") .. "/site/pack/packer"
|
||||||
|
|
||||||
|
--- Install packer if it has not been installed.
|
||||||
|
--- Return:
|
||||||
|
--- true: if this is a fresh install of packer
|
||||||
|
--- false: if packer has been installed
|
||||||
|
local function packer_ensure_install()
|
||||||
-- Where to install packer.nvim -- the package manager (we make it opt)
|
-- Where to install packer.nvim -- the package manager (we make it opt)
|
||||||
local packer_dir = vim.g.plugin_home .. "/opt/packer.nvim"
|
local packer_dir = vim.g.plugin_home .. "/opt/packer.nvim"
|
||||||
|
|
||||||
-- Whether this is a fresh install, i.e., packer itself and plugins have not been installed.
|
if fn.glob(packer_dir) ~= "" then
|
||||||
local fresh_install = false
|
return false
|
||||||
|
end
|
||||||
|
|
||||||
-- Auto-install packer in case it hasn't been installed.
|
-- Auto-install packer in case it hasn't been installed.
|
||||||
if fn.glob(packer_dir) == "" then
|
vim.api.nvim_echo({ { "Installing packer.nvim", "Type" } }, true, {})
|
||||||
fresh_install = true
|
|
||||||
|
|
||||||
-- Now we need to install packer.nvim first.
|
|
||||||
local packer_repo = "https://github.com/wbthomason/packer.nvim"
|
local packer_repo = "https://github.com/wbthomason/packer.nvim"
|
||||||
local install_cmd = string.format("!git clone --depth=1 %s %s", packer_repo, packer_dir)
|
local install_cmd = string.format("!git clone --depth=1 %s %s", packer_repo, packer_dir)
|
||||||
|
|
||||||
vim.api.nvim_echo({ { "Installing packer.nvim", "Type" } }, true, {})
|
|
||||||
vim.cmd(install_cmd)
|
vim.cmd(install_cmd)
|
||||||
|
|
||||||
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
local fresh_install = packer_ensure_install()
|
||||||
|
|
||||||
-- Load packer.nvim
|
-- Load packer.nvim
|
||||||
vim.cmd("packadd packer.nvim")
|
vim.cmd("packadd packer.nvim")
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user