diff options
Diffstat (limited to 'lua/lvim/config')
-rw-r--r-- | lua/lvim/config/defaults.lua | 7 | ||||
-rw-r--r-- | lua/lvim/config/init.lua | 29 | ||||
-rw-r--r-- | lua/lvim/config/settings.lua | 3 | ||||
-rw-r--r-- | lua/lvim/config/supported_languages.lua | 1 |
4 files changed, 19 insertions, 21 deletions
diff --git a/lua/lvim/config/defaults.lua b/lua/lvim/config/defaults.lua index a20e34e1..a5c81a01 100644 --- a/lua/lvim/config/defaults.lua +++ b/lua/lvim/config/defaults.lua @@ -3,7 +3,12 @@ return { colorscheme = "onedarker", line_wrap_cursor_movement = true, transparent_window = false, - format_on_save = true, + format_on_save = { + ---@usage pattern string pattern used for the autocommand (Default: '*') + pattern = "*", + ---@usage timeout number timeout in ms for the format request (Default: 1000) + timeout = 1000, + }, keys = {}, builtin = {}, 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 diff --git a/lua/lvim/config/settings.lua b/lua/lvim/config/settings.lua index 8db43904..d784ce60 100644 --- a/lua/lvim/config/settings.lua +++ b/lua/lvim/config/settings.lua @@ -43,6 +43,7 @@ M.load_options = function() wrap = false, -- display lines as one long line spell = false, spelllang = "en", + spellfile = utils.join_paths(get_config_dir(), "spell", "en.utf-8.add"), scrolloff = 8, -- is one of my fav sidescrolloff = 8, } @@ -51,6 +52,8 @@ M.load_options = function() vim.opt.shortmess:append "c" + vim.opt.shadafile = utils.join_paths(get_cache_dir(), "lvim.shada") + for k, v in pairs(default_options) do vim.opt[k] = v end diff --git a/lua/lvim/config/supported_languages.lua b/lua/lvim/config/supported_languages.lua index db28df12..ce5bc0db 100644 --- a/lua/lvim/config/supported_languages.lua +++ b/lua/lvim/config/supported_languages.lua @@ -26,6 +26,7 @@ return { "fennel", "fish", "fortran", + "fsharp", "gdscript", "glimmer", "go", |