From 34da8714dbeeb29979537fe0062609a275acd96d Mon Sep 17 00:00:00 2001 From: Matt Leong Date: Tue, 16 Nov 2021 20:59:01 -0800 Subject: [PATCH] fix(core): fix occasional treesitter issues * fix(commands): better reloading --- lua/cosmic/packer.lua | 2 +- lua/cosmic/pluginsInit.lua | 2 +- lua/cosmic/utils.lua | 24 +++++++++++++++++------- 3 files changed, 19 insertions(+), 9 deletions(-) diff --git a/lua/cosmic/packer.lua b/lua/cosmic/packer.lua index 239fc1e..4a23f7d 100644 --- a/lua/cosmic/packer.lua +++ b/lua/cosmic/packer.lua @@ -5,7 +5,7 @@ local present, packer = pcall(require, 'packer') local first_install = false if not present then - local packer_path = vim.fn.stdpath('data') .. '/site/pack/packer/opt/packer.nvim' + local packer_path = vim.fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim' print('Cloning packer..') -- remove the dir before cloning diff --git a/lua/cosmic/pluginsInit.lua b/lua/cosmic/pluginsInit.lua index dca60d0..12c864e 100644 --- a/lua/cosmic/pluginsInit.lua +++ b/lua/cosmic/pluginsInit.lua @@ -234,7 +234,7 @@ return packer.startup(function() 'nvim-treesitter/nvim-treesitter-refactor', }, run = ':TSUpdate', - event = 'BufEnter', + -- event = 'BufEnter', config = function() require('cosmic.core.treesitter') end, diff --git a/lua/cosmic/utils.lua b/lua/cosmic/utils.lua index cd31504..48bdf86 100644 --- a/lua/cosmic/utils.lua +++ b/lua/cosmic/utils.lua @@ -65,23 +65,33 @@ local function unload(module_pattern, reload) end end +local function clear_cache() + if 0 == vim.fn.delete(vim.fn.stdpath('config') .. '/lua/cosmic/compiled.lua') then + vim.cmd(':LuaCacheClear') + vim.notify('Cache cleared', vim.log.levels.INFO, { + title = 'CosmicNvim', + }) + end +end + function M.post_reload() - unload('cosmic') - require('cosmic') - vim.cmd(':silent e') + unload('cosmic.core.theme.colors', true) + unload('cosmic.core.theme.highlights', true) + unload('cosmic.core.statusline', true) vim.notify('CosmicNvim reloaded!', vim.log.levels.INFO, { title = 'CosmicNvim', }) end function M.reload_cosmic(sync) - unload('cosmic.config') - require('cosmic.config') vim.cmd([[autocmd User PackerCompileDone ++once lua require('cosmic.utils').post_reload()]]) + clear_cache() + unload('cosmic.pluginsInit', true) + unload('cosmic.config', true) if sync then - require('cosmic.packer').packer.sync() + vim.cmd(':PackerSync') else - require('cosmic.packer').packer.compile() + vim.cmd(':PackerCompile') end end