summaryrefslogtreecommitdiff
path: root/lua/lvim/config
diff options
context:
space:
mode:
Diffstat (limited to 'lua/lvim/config')
-rw-r--r--lua/lvim/config/defaults.lua7
-rw-r--r--lua/lvim/config/init.lua29
-rw-r--r--lua/lvim/config/settings.lua3
-rw-r--r--lua/lvim/config/supported_languages.lua1
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",