diff --git a/init.lua b/init.lua index 597888d1..7b83faa4 100644 --- a/init.lua +++ b/init.lua @@ -1,4 +1,4 @@ -require("lazyvim.config.options") -require("lazyvim.config.lazy") -require("lazyvim.config.autocmds") -require("lazyvim.config.keymaps") +vim.g.mapleader = " " +vim.g.maplocalleader = " " + +require("lazyvim").setup() diff --git a/lua/lazyvim/config/icons.lua b/lua/lazyvim/config/icons.lua deleted file mode 100644 index e8de0cd2..00000000 --- a/lua/lazyvim/config/icons.lua +++ /dev/null @@ -1,30 +0,0 @@ -return { - diagnostics = { - Error = " ", - Warn = " ", - Hint = " ", - Info = " ", - }, - kinds = { - Class = " ", - Color = " ", - Constant = " ", - Constructor = " ", - Enum = "了 ", - EnumMember = " ", - Field = " ", - File = " ", - Folder = " ", - Function = " ", - Interface = "ﰮ ", - Keyword = " ", - Method = "ƒ ", - Property = " ", - Snippet = "﬌ ", - Struct = " ", - Text = " ", - Unit = " ", - Value = " ", - Variable = " ", - }, -} diff --git a/lua/lazyvim/config/options.lua b/lua/lazyvim/config/options.lua index 7b8cc9d8..c74cb4b8 100644 --- a/lua/lazyvim/config/options.lua +++ b/lua/lazyvim/config/options.lua @@ -1,6 +1,3 @@ -vim.g.mapleader = " " -vim.g.maplocalleader = " " - vim.opt.autowrite = true -- enable auto write vim.opt.clipboard = "unnamedplus" -- sync with system clipboard vim.opt.cmdheight = 1 diff --git a/lua/lazyvim/config/settings.lua b/lua/lazyvim/config/settings.lua new file mode 100644 index 00000000..d8cb2631 --- /dev/null +++ b/lua/lazyvim/config/settings.lua @@ -0,0 +1,35 @@ +---@class LazyVimSettings +local settings = { + icons = { + diagnostics = { + Error = " ", + Warn = " ", + Hint = " ", + Info = " ", + }, + kinds = { + Class = " ", + Color = " ", + Constant = " ", + Constructor = " ", + Enum = "了 ", + EnumMember = " ", + Field = " ", + File = " ", + Folder = " ", + Function = " ", + Interface = "ﰮ ", + Keyword = " ", + Method = "ƒ ", + Property = " ", + Snippet = "﬌ ", + Struct = " ", + Text = " ", + Unit = " ", + Value = " ", + Variable = " ", + }, + }, +} + +return settings diff --git a/lua/lazyvim/init.lua b/lua/lazyvim/init.lua new file mode 100644 index 00000000..ae316bd4 --- /dev/null +++ b/lua/lazyvim/init.lua @@ -0,0 +1,15 @@ +local M = {} + +---@param opts? LazyVimSettings +function M.setup(opts) + if not package.loaded.lazy then + require("lazyvim.config.lazy") + end + local settings = require("lazyvim.config.settings") + package.loaded["lazyvim.config.settings"] = vim.tbl_deep_extend("force", settings, opts or {}) + require("lazyvim.config.options") + require("lazyvim.config.autocmds") + require("lazyvim.config.keymaps") +end + +return M diff --git a/lua/lazyvim/plugins/coding.lua b/lua/lazyvim/plugins/coding.lua index fbb9560b..f27c1246 100644 --- a/lua/lazyvim/plugins/coding.lua +++ b/lua/lazyvim/plugins/coding.lua @@ -59,7 +59,7 @@ return { }), formatting = { format = function(_, item) - local icons = require("lazyvim.config.icons").kinds + local icons = require("lazyvim.config.settings").icons.kinds if icons[item.kind] then item.kind = icons[item.kind] .. item.kind end diff --git a/lua/lazyvim/plugins/lsp/init.lua b/lua/lazyvim/plugins/lsp/init.lua index 39ca2f14..25f3abd6 100644 --- a/lua/lazyvim/plugins/lsp/init.lua +++ b/lua/lazyvim/plugins/lsp/init.lua @@ -20,7 +20,7 @@ return { end) -- diagnostics - for name, icon in pairs(require("lazyvim.config.icons").diagnostics) do + for name, icon in pairs(require("lazyvim.config.settings").icons.diagnostics) do name = "DiagnosticSign" .. name vim.fn.sign_define(name, { text = icon, texthl = name, numhl = "" }) end diff --git a/lua/lazyvim/plugins/ui.lua b/lua/lazyvim/plugins/ui.lua index 77166612..4108123f 100644 --- a/lua/lazyvim/plugins/ui.lua +++ b/lua/lazyvim/plugins/ui.lua @@ -48,7 +48,7 @@ return { diagnostics = "nvim_lsp", always_show_bufferline = false, diagnostics_indicator = function(_, _, diag) - local icons = require("lazyvim.config.icons").diagnostics + local icons = require("lazyvim.config.settings").icons.diagnostics local ret = (diag.error and icons.Error .. diag.error .. " " or "") .. (diag.warning and icons.Warn .. diag.warning or "") return vim.trim(ret)