summaryrefslogtreecommitdiff
path: root/lua/lvim/utils
diff options
context:
space:
mode:
authorkylo252 <[email protected]>2022-03-24 16:16:38 +0100
committerGitHub <[email protected]>2022-03-24 16:16:38 +0100
commit08d3df2cd3515878309906c2791d1b934425d78f (patch)
tree1fa487649e33329add38c5c3a8abb12acdfd41d2 /lua/lvim/utils
parent1ea836e3601b7ed0ed0496888dc14683bfbcce75 (diff)
feat(plugins): add support for packer snapshots (#2351)
Diffstat (limited to 'lua/lvim/utils')
-rw-r--r--lua/lvim/utils/git.lua18
-rw-r--r--lua/lvim/utils/hooks.lua24
2 files changed, 16 insertions, 26 deletions
diff --git a/lua/lvim/utils/git.lua b/lua/lvim/utils/git.lua
index ce323160..9848835e 100644
--- a/lua/lvim/utils/git.lua
+++ b/lua/lvim/utils/git.lua
@@ -113,22 +113,4 @@ function M.get_lvim_current_sha()
return abbrev_version
end
-function M.generate_plugins_sha(output)
- local list = {}
- output = output or "commits.lua"
-
- local core_plugins = require "lvim.plugins"
- for _, plugin in pairs(core_plugins) do
- local name = plugin[1]:match "/(%S*)"
- local url = "https://github.com/" .. plugin[1]
- print("checking: " .. name .. ", at: " .. url)
- local retval, latest_sha = git_cmd { args = { "ls-remote", url, "origin", "HEAD" } }
- if retval == 0 then
- -- replace dashes, remove postfixes and use lowercase
- local normalize_name = (name:gsub("-", "_"):gsub("%.%S+", "")):lower()
- list[normalize_name] = latest_sha[1]:gsub("\tHEAD", "")
- end
- end
- require("lvim.utils").write_file(output, "local commit = " .. vim.inspect(list), "w")
-end
return M
diff --git a/lua/lvim/utils/hooks.lua b/lua/lvim/utils/hooks.lua
index b40f2c23..8b057884 100644
--- a/lua/lvim/utils/hooks.lua
+++ b/lua/lvim/utils/hooks.lua
@@ -12,17 +12,25 @@ function M.run_pre_reload()
end
function M.run_on_packer_complete()
- if not in_headless then
- -- manually trigger event to fix colors
- vim.cmd [[ doautocmd ColorScheme ]]
- end
- Log:info "Reloaded configuration"
+ vim.schedule(function()
+ if not in_headless then
+ -- colorscheme must get called after plugins are loaded or it will break new installs.
+ vim.g.colors_name = lvim.colorscheme
+ vim.cmd("colorscheme " .. lvim.colorscheme)
+ else
+ Log:debug "Packer operation complete"
+ end
+ end)
end
function M.run_post_reload()
Log:debug "Starting post-reload hook"
- require("lvim.plugin-loader").ensure_installed()
M.reset_cache()
+ vim.schedule(function()
+ if not in_headless then
+ Log:info "Reloaded configuration"
+ end
+ end)
end
---Reset any startup cache files used by Packer and Impatient
@@ -48,8 +56,8 @@ function M.run_post_update()
Log:debug "Starting post-update hook"
M.reset_cache()
- Log:debug "Updating core plugins"
- require("lvim.plugin-loader").ensure_installed()
+ Log:debug "Syncing core plugins"
+ require("lvim.plugin-loader").sync_core_plugins()
if not in_headless then
vim.schedule(function()