summaryrefslogtreecommitdiff
path: root/lua/lvim/config/init.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/lvim/config/init.lua')
-rw-r--r--lua/lvim/config/init.lua29
1 files changed, 9 insertions, 20 deletions
diff --git a/lua/lvim/config/init.lua b/lua/lvim/config/init.lua
index 20bc4c81..fba6213d 100644
--- a/lua/lvim/config/init.lua
+++ b/lua/lvim/config/init.lua
@@ -20,13 +20,13 @@ end
-- Define lvim global variable
function M:init()
if vim.tbl_isempty(lvim or {}) then
- lvim = require "lvim.config.defaults"
+ lvim = vim.deepcopy(require "lvim.config.defaults")
local home_dir = vim.loop.os_homedir()
lvim.vsnip_dir = utils.join_paths(home_dir, ".config", "snippets")
lvim.database = { save_location = utils.join_paths(home_dir, ".config", "lunarvim_db"), auto_execute = 1 }
end
- lvim.keys = apply_defaults(lvim.keys, require("lvim.keymappings").get_defaults())
+ require("lvim.keymappings").load_defaults()
local builtins = require "lvim.core.builtins"
builtins.config { user_config_file = user_config_file }
@@ -89,8 +89,6 @@ function M:load(config_path)
vim.g.mapleader = (lvim.leader == "space" and " ") or lvim.leader
- local default_keymaps = require("lvim.keymappings").get_defaults()
- lvim.keys = apply_defaults(lvim.keys, default_keymaps)
require("lvim.keymappings").load(lvim.keys)
local settings = require "lvim.config.settings"
@@ -100,29 +98,20 @@ end
--- Override the configuration with a user provided one
-- @param config_path The path to the configuration overrides
function M:reload()
- require("lvim.keymappings").clear(lvim.keys)
-
- local lvim_modules = {}
- for module, _ in pairs(package.loaded) do
- if module:match "lvim.core" then
- package.loaded[module] = nil
- table.insert(lvim_modules, module)
- end
- end
+ package.loaded["lvim.utils.hooks"] = nil
+ local _, hooks = pcall(require, "lvim.utils.hooks")
+ hooks.run_pre_reload()
M:init()
M:load()
+ require("lvim.core.autocmds").configure_format_on_save()
+
local plugins = require "lvim.plugins"
- utils.toggle_autoformat()
local plugin_loader = require "lvim.plugin-loader"
- plugin_loader.cache_clear()
+
plugin_loader.load { plugins, lvim.plugins }
- vim.cmd ":PackerInstall"
- vim.cmd ":PackerCompile"
- -- vim.cmd ":PackerClean"
- require("lvim.lsp").setup()
- Log:info "Reloaded configuration"
+ hooks.run_post_reload()
end
return M