diff options
| -rw-r--r-- | lua/lvim/bootstrap.lua | 2 | ||||
| -rw-r--r-- | lua/lvim/config/init.lua | 4 | ||||
| -rw-r--r-- | lua/lvim/core/autocmds.lua | 2 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/alpha.lua (renamed from lua/lvim/core/alpha.lua) | 6 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/alpha/dashboard.lua (renamed from lua/lvim/core/alpha/dashboard.lua) | 0 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/alpha/startify.lua (renamed from lua/lvim/core/alpha/startify.lua) | 0 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/autopairs.lua (renamed from lua/lvim/core/autopairs.lua) | 6 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/breadcrumbs.lua (renamed from lua/lvim/core/breadcrumbs.lua) | 7 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/bufferline.lua (renamed from lua/lvim/core/bufferline.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/cmp.lua (renamed from lua/lvim/core/cmp.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/comment.lua (renamed from lua/lvim/core/comment.lua) | 6 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/dap.lua (renamed from lua/lvim/core/dap.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/gitsigns.lua (renamed from lua/lvim/core/gitsigns.lua) | 6 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/illuminate.lua (renamed from lua/lvim/core/illuminate.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/indentlines.lua (renamed from lua/lvim/core/indentlines.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/init.lua | 57 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/lir.lua (renamed from lua/lvim/core/lir.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/lualine/colors.lua (renamed from lua/lvim/core/lualine/colors.lua) | 0 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/lualine/components.lua (renamed from lua/lvim/core/lualine/components.lua) | 6 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/lualine/conditions.lua (renamed from lua/lvim/core/lualine/conditions.lua) | 0 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/lualine/init.lua (renamed from lua/lvim/core/lualine/init.lua) | 7 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/lualine/styles.lua (renamed from lua/lvim/core/lualine/styles.lua) | 2 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/lualine/utils.lua (renamed from lua/lvim/core/lualine/utils.lua) | 0 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/mason.lua (renamed from lua/lvim/core/mason.lua) | 2 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/nvimtree.lua (renamed from lua/lvim/core/nvimtree.lua) | 9 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/project.lua (renamed from lua/lvim/core/project.lua) | 7 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/telescope.lua (renamed from lua/lvim/core/telescope.lua) | 7 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/terminal.lua (renamed from lua/lvim/core/terminal.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/treesitter.lua (renamed from lua/lvim/core/treesitter.lua) | 6 | ||||
| -rw-r--r-- | lua/lvim/core/builtins/which-key.lua (renamed from lua/lvim/core/which-key.lua) | 5 | ||||
| -rw-r--r-- | lua/lvim/core/commands.lua | 2 | ||||
| -rw-r--r-- | lua/lvim/core/theme.lua | 4 | ||||
| -rw-r--r-- | lua/lvim/plugins.lua | 40 | 
33 files changed, 99 insertions, 129 deletions
| diff --git a/lua/lvim/bootstrap.lua b/lua/lvim/bootstrap.lua index a2a97cea..d7357c92 100644 --- a/lua/lvim/bootstrap.lua +++ b/lua/lvim/bootstrap.lua @@ -101,7 +101,7 @@ function M:init(base_dir)    require("lvim.config"):init() -  require("lvim.core.mason").bootstrap() +  require("lvim.core.builtins.mason").bootstrap()    return self  end diff --git a/lua/lvim/config/init.lua b/lua/lvim/config/init.lua index 9f4bb45e..1f76b2ad 100644 --- a/lua/lvim/config/init.lua +++ b/lua/lvim/config/init.lua @@ -18,7 +18,9 @@ function M:init()    require("lvim.keymappings").load_defaults()    local builtins = require "lvim.core.builtins" -  builtins.config { user_config_file = user_config_file } +  builtins.init { user_config_file = user_config_file } + +  require("lvim.core.theme").config()    local settings = require "lvim.config.settings"    settings.load_defaults() diff --git a/lua/lvim/core/autocmds.lua b/lua/lvim/core/autocmds.lua index a9f7115a..44a1e970 100644 --- a/lua/lvim/core/autocmds.lua +++ b/lua/lvim/core/autocmds.lua @@ -103,7 +103,7 @@ function M.load_defaults()          group = "_lvim_colorscheme",          callback = function()            if lvim.builtin.breadcrumbs.active then -            require("lvim.core.breadcrumbs").get_winbar() +            require("lvim.core.builtins.breadcrumbs").get_winbar()            end            local statusline_hl = vim.api.nvim_get_hl_by_name("StatusLine", true)            local cursorline_hl = vim.api.nvim_get_hl_by_name("CursorLine", true) diff --git a/lua/lvim/core/alpha.lua b/lua/lvim/core/builtins/alpha.lua index 13642c29..3270d01b 100644 --- a/lua/lvim/core/alpha.lua +++ b/lua/lvim/core/builtins/alpha.lua @@ -1,8 +1,8 @@  local M = {}  function M.config() -  local lvim_dashboard = require "lvim.core.alpha.dashboard" -  local lvim_startify = require "lvim.core.alpha.startify" +  local lvim_dashboard = require "lvim.core.builtins.alpha.dashboard" +  local lvim_startify = require "lvim.core.builtins.alpha.startify"    lvim.builtin.alpha = {      dashboard = {        config = {}, @@ -80,6 +80,8 @@ function M.setup()    end    alpha.setup(config) + +  return alpha  end  return M diff --git a/lua/lvim/core/alpha/dashboard.lua b/lua/lvim/core/builtins/alpha/dashboard.lua index 6a368924..6a368924 100644 --- a/lua/lvim/core/alpha/dashboard.lua +++ b/lua/lvim/core/builtins/alpha/dashboard.lua diff --git a/lua/lvim/core/alpha/startify.lua b/lua/lvim/core/builtins/alpha/startify.lua index e9d10a07..e9d10a07 100644 --- a/lua/lvim/core/alpha/startify.lua +++ b/lua/lvim/core/builtins/alpha/startify.lua diff --git a/lua/lvim/core/autopairs.lua b/lua/lvim/core/builtins/autopairs.lua index b9b66683..97f405be 100644 --- a/lua/lvim/core/autopairs.lua +++ b/lua/lvim/core/builtins/autopairs.lua @@ -3,7 +3,6 @@ local M = {}  function M.config()    lvim.builtin.autopairs = {      active = true, -    on_config_done = nil,      ---@usage  modifies the function or method delimiter by filetypes      map_char = {        all = "(", @@ -71,14 +70,13 @@ M.setup = function()      fast_wrap = lvim.builtin.autopairs.fast_wrap,    } -  if lvim.builtin.autopairs.on_config_done then -    lvim.builtin.autopairs.on_config_done(autopairs) -  end    pcall(function()      require "nvim-autopairs.completion.cmp"      require("cmp").event:off("confirm_done", on_confirm_done)      require("cmp").event:on("confirm_done", on_confirm_done)    end) + +  return autopairs  end  return M diff --git a/lua/lvim/core/breadcrumbs.lua b/lua/lvim/core/builtins/breadcrumbs.lua index 0bf87a45..2ed0937e 100644 --- a/lua/lvim/core/breadcrumbs.lua +++ b/lua/lvim/core/builtins/breadcrumbs.lua @@ -7,7 +7,6 @@ local icons = lvim.icons.kind  M.config = function()    lvim.builtin.breadcrumbs = {      active = true, -    on_config_done = nil,      winbar_filetype_exclude = {        "help",        "startify", @@ -88,9 +87,7 @@ M.setup = function()    M.create_winbar()    navic.setup(lvim.builtin.breadcrumbs.options) -  if lvim.builtin.breadcrumbs.on_config_done then -    lvim.builtin.breadcrumbs.on_config_done() -  end +  return navic  end  M.get_filename = function() @@ -225,7 +222,7 @@ M.create_winbar = function()            local status_ok, _ = pcall(vim.api.nvim_buf_get_var, 0, "lsp_floating_window")            if not status_ok then              -- TODO: -            require("lvim.core.breadcrumbs").get_winbar() +            M.get_winbar()            end          end        end, diff --git a/lua/lvim/core/bufferline.lua b/lua/lvim/core/builtins/bufferline.lua index 27318a18..768ed988 100644 --- a/lua/lvim/core/bufferline.lua +++ b/lua/lvim/core/builtins/bufferline.lua @@ -43,7 +43,6 @@ end  M.config = function()    lvim.builtin.bufferline = {      active = true, -    on_config_done = nil,      keymap = {        normal_mode = {},      }, @@ -160,9 +159,7 @@ M.setup = function()      highlights = lvim.builtin.bufferline.highlights,    } -  if lvim.builtin.bufferline.on_config_done then -    lvim.builtin.bufferline.on_config_done() -  end +  return bufferline  end  --stylua: ignore diff --git a/lua/lvim/core/cmp.lua b/lua/lvim/core/builtins/cmp.lua index c116f122..2bbb7ecc 100644 --- a/lua/lvim/core/cmp.lua +++ b/lua/lvim/core/builtins/cmp.lua @@ -132,7 +132,6 @@ M.config = function()    lvim.builtin.cmp = {      active = true, -    on_config_done = nil,      enabled = function()        local buftype = vim.api.nvim_buf_get_option(0, "buftype")        if buftype == "prompt" then @@ -372,9 +371,7 @@ function M.setup()      end    end -  if lvim.builtin.cmp.on_config_done then -    lvim.builtin.cmp.on_config_done(cmp) -  end +  return cmp  end  return M diff --git a/lua/lvim/core/comment.lua b/lua/lvim/core/builtins/comment.lua index f07929c7..677dfbb6 100644 --- a/lua/lvim/core/comment.lua +++ b/lua/lvim/core/builtins/comment.lua @@ -3,7 +3,6 @@ local M = {}  function M.config()    lvim.builtin.comment = {      active = true, -    on_config_done = nil,      ---Add a space b/w comment and the line      ---@type boolean      padding = true, @@ -78,9 +77,8 @@ function M.setup()    local nvim_comment = require "Comment"    nvim_comment.setup(lvim.builtin.comment) -  if lvim.builtin.comment.on_config_done then -    lvim.builtin.comment.on_config_done(nvim_comment) -  end + +  return nvim_comment  end  return M diff --git a/lua/lvim/core/dap.lua b/lua/lvim/core/builtins/dap.lua index d8de10d5..bc5b8e9d 100644 --- a/lua/lvim/core/dap.lua +++ b/lua/lvim/core/builtins/dap.lua @@ -3,7 +3,6 @@ local M = {}  M.config = function()    lvim.builtin.dap = {      active = true, -    on_config_done = nil,      breakpoint = {        text = lvim.icons.ui.Bug,        texthl = "DiagnosticSignError", @@ -111,9 +110,7 @@ M.setup = function()    dap.set_log_level(lvim.builtin.dap.log.level) -  if lvim.builtin.dap.on_config_done then -    lvim.builtin.dap.on_config_done(dap) -  end +  return dap  end  M.setup_ui = function() diff --git a/lua/lvim/core/gitsigns.lua b/lua/lvim/core/builtins/gitsigns.lua index 1c8619c8..27f50562 100644 --- a/lua/lvim/core/gitsigns.lua +++ b/lua/lvim/core/builtins/gitsigns.lua @@ -3,7 +3,6 @@ local M = {}  M.config = function()    lvim.builtin.gitsigns = {      active = true, -    on_config_done = nil,      opts = {        signs = {          add = { @@ -75,9 +74,8 @@ M.setup = function()    local gitsigns = reload "gitsigns"    gitsigns.setup(lvim.builtin.gitsigns.opts) -  if lvim.builtin.gitsigns.on_config_done then -    lvim.builtin.gitsigns.on_config_done(gitsigns) -  end + +  return gitsigns  end  return M diff --git a/lua/lvim/core/illuminate.lua b/lua/lvim/core/builtins/illuminate.lua index 5968b4bb..75afa362 100644 --- a/lua/lvim/core/illuminate.lua +++ b/lua/lvim/core/builtins/illuminate.lua @@ -3,7 +3,6 @@ local M = {}  M.config = function()    lvim.builtin.illuminate = {      active = true, -    on_config_done = nil,      options = {        -- providers: provider used to get references in the buffer, ordered by priority        providers = { @@ -64,9 +63,7 @@ M.setup = function()      return    end -  if lvim.builtin.illuminate.on_config_done then -    lvim.builtin.illuminate.on_config_done() -  end +  return illuminate  end  return M diff --git a/lua/lvim/core/indentlines.lua b/lua/lvim/core/builtins/indentlines.lua index 3097daf8..43f025c6 100644 --- a/lua/lvim/core/indentlines.lua +++ b/lua/lvim/core/builtins/indentlines.lua @@ -3,7 +3,6 @@ local M = {}  M.config = function()    lvim.builtin.indentlines = {      active = true, -    on_config_done = nil,      options = {        enabled = true,        buftype_exclude = { "terminal", "nofile" }, @@ -35,9 +34,7 @@ M.setup = function()    indent_blankline.setup(lvim.builtin.indentlines.options) -  if lvim.builtin.indentlines.on_config_done then -    lvim.builtin.indentlines.on_config_done() -  end +  return indent_blankline  end  return M diff --git a/lua/lvim/core/builtins/init.lua b/lua/lvim/core/builtins/init.lua index 4764ff70..cd2946ab 100644 --- a/lua/lvim/core/builtins/init.lua +++ b/lua/lvim/core/builtins/init.lua @@ -1,29 +1,35 @@  local M = {}  local builtins = { -  "lvim.core.theme", -  "lvim.core.which-key", -  "lvim.core.gitsigns", -  "lvim.core.cmp", -  "lvim.core.dap", -  "lvim.core.terminal", -  "lvim.core.telescope", -  "lvim.core.treesitter", -  "lvim.core.nvimtree", -  "lvim.core.lir", -  "lvim.core.illuminate", -  "lvim.core.indentlines", -  "lvim.core.breadcrumbs", -  "lvim.core.project", -  "lvim.core.bufferline", -  "lvim.core.autopairs", -  "lvim.core.comment", -  "lvim.core.lualine", -  "lvim.core.alpha", -  "lvim.core.mason", +  "lvim.core.builtins.which-key", +  "lvim.core.builtins.gitsigns", +  "lvim.core.builtins.cmp", +  "lvim.core.builtins.dap", +  "lvim.core.builtins.terminal", +  "lvim.core.builtins.telescope", +  "lvim.core.builtins.treesitter", +  "lvim.core.builtins.nvimtree", +  "lvim.core.builtins.lir", +  "lvim.core.builtins.illuminate", +  "lvim.core.builtins.indentlines", +  "lvim.core.builtins.breadcrumbs", +  "lvim.core.builtins.project", +  "lvim.core.builtins.bufferline", +  "lvim.core.builtins.autopairs", +  "lvim.core.builtins.comment", +  "lvim.core.builtins.lualine", +  "lvim.core.builtins.alpha", +  "lvim.core.builtins.mason",  } -function M.config(config) +---@class LvimBuiltin +---@field active boolean is builtin enabled +---@field on_config_done function function called after the builtin is set up + +function M.init(config) +  ---@type {[string]: LvimBuiltin} +  lvim.builtin = {} +    for _, builtin_path in ipairs(builtins) do      local builtin = reload(builtin_path) @@ -31,4 +37,13 @@ function M.config(config)    end  end +function M.setup(modname) +  local plugin = require("lvim.core.builtins." .. modname).setup() + +  local builtin_tbl = lvim.builtin[modname:gsub("-", "_")] +  if plugin and type(builtin_tbl.on_config_done) == "function" then +    builtin_tbl.on_config_done(plugin) +  end +end +  return M diff --git a/lua/lvim/core/lir.lua b/lua/lvim/core/builtins/lir.lua index 83f79b6f..9c59a99c 100644 --- a/lua/lvim/core/lir.lua +++ b/lua/lvim/core/builtins/lir.lua @@ -7,7 +7,6 @@ M.config = function()    lvim.builtin.lir = {      active = true, -    on_config_done = nil,      icon = "î—¿",      show_hidden_files = false,      ignore = {}, -- { ".DS_Store" "node_modules" } etc. @@ -112,9 +111,7 @@ function M.setup()    lir.setup(lvim.builtin.lir)    M.icon_setup() -  if lvim.builtin.lir.on_config_done then -    lvim.builtin.lir.on_config_done(lir) -  end +  return lir  end  return M diff --git a/lua/lvim/core/lualine/colors.lua b/lua/lvim/core/builtins/lualine/colors.lua index 4984cd1f..4984cd1f 100644 --- a/lua/lvim/core/lualine/colors.lua +++ b/lua/lvim/core/builtins/lualine/colors.lua diff --git a/lua/lvim/core/lualine/components.lua b/lua/lvim/core/builtins/lualine/components.lua index 033db1e0..755c42af 100644 --- a/lua/lvim/core/lualine/components.lua +++ b/lua/lvim/core/builtins/lualine/components.lua @@ -1,5 +1,5 @@ -local conditions = require "lvim.core.lualine.conditions" -local colors = require "lvim.core.lualine.colors" +local conditions = require "lvim.core.builtins.lualine.conditions" +local colors = require "lvim.core.builtins.lualine.colors"  local function diff_source()    local gitsigns = vim.b.gitsigns_status_dict @@ -55,7 +55,7 @@ return {    },    python_env = {      function() -      local utils = require "lvim.core.lualine.utils" +      local utils = require "lvim.core.builtins.lualine.utils"        if vim.bo.filetype == "python" then          local venv = os.getenv "CONDA_DEFAULT_ENV" or os.getenv "VIRTUAL_ENV"          if venv then diff --git a/lua/lvim/core/lualine/conditions.lua b/lua/lvim/core/builtins/lualine/conditions.lua index 42d52a83..42d52a83 100644 --- a/lua/lvim/core/lualine/conditions.lua +++ b/lua/lvim/core/builtins/lualine/conditions.lua diff --git a/lua/lvim/core/lualine/init.lua b/lua/lvim/core/builtins/lualine/init.lua index fa4cf821..102dd6e6 100644 --- a/lua/lvim/core/lualine/init.lua +++ b/lua/lvim/core/builtins/lualine/init.lua @@ -29,7 +29,6 @@ M.config = function()      },      tabline = nil,      extensions = nil, -    on_config_done = nil,    }  end @@ -45,13 +44,11 @@ M.setup = function()      return    end -  require("lvim.core.lualine.styles").update() +  require("lvim.core.builtins.lualine.styles").update()    lualine.setup(lvim.builtin.lualine) -  if lvim.builtin.lualine.on_config_done then -    lvim.builtin.lualine.on_config_done(lualine) -  end +  return lualine  end  return M diff --git a/lua/lvim/core/lualine/styles.lua b/lua/lvim/core/builtins/lualine/styles.lua index 81dbbabb..50b07bdd 100644 --- a/lua/lvim/core/lualine/styles.lua +++ b/lua/lvim/core/builtins/lualine/styles.lua @@ -1,5 +1,5 @@  local M = {} -local components = require "lvim.core.lualine.components" +local components = require "lvim.core.builtins.lualine.components"  local styles = {    lvim = nil, diff --git a/lua/lvim/core/lualine/utils.lua b/lua/lvim/core/builtins/lualine/utils.lua index 3fd3c2d3..3fd3c2d3 100644 --- a/lua/lvim/core/lualine/utils.lua +++ b/lua/lvim/core/builtins/lualine/utils.lua diff --git a/lua/lvim/core/mason.lua b/lua/lvim/core/builtins/mason.lua index 75b12229..958b9e76 100644 --- a/lua/lvim/core/mason.lua +++ b/lua/lvim/core/builtins/mason.lua @@ -84,6 +84,8 @@ function M.setup()    add_to_path(lvim.builtin.mason.PATH == "append")    mason.setup(lvim.builtin.mason) + +  return mason  end  return M diff --git a/lua/lvim/core/nvimtree.lua b/lua/lvim/core/builtins/nvimtree.lua index 26bd6d70..bf76407c 100644 --- a/lua/lvim/core/nvimtree.lua +++ b/lua/lvim/core/builtins/nvimtree.lua @@ -4,7 +4,6 @@ local Log = require "lvim.core.log"  function M.config()    lvim.builtin.nvimtree = {      active = true, -    on_config_done = nil,      setup = {        auto_reload_on_write = false,        disable_netrw = false, @@ -249,11 +248,11 @@ function M.setup()    end    local function telescope_find_files(_) -    require("lvim.core.nvimtree").start_telescope "find_files" +    require("lvim.core.builtin.nvimtree").start_telescope "find_files"    end    local function telescope_live_grep(_) -    require("lvim.core.nvimtree").start_telescope "live_grep" +    require("lvim.core.builtin.nvimtree").start_telescope "live_grep"    end    -- Add useful keymaps @@ -270,9 +269,7 @@ function M.setup()    nvim_tree.setup(lvim.builtin.nvimtree.setup) -  if lvim.builtin.nvimtree.on_config_done then -    lvim.builtin.nvimtree.on_config_done(nvim_tree) -  end +  return nvim_tree  end  function M.start_telescope(telescope_mode) diff --git a/lua/lvim/core/project.lua b/lua/lvim/core/builtins/project.lua index 17473c55..10c4a71f 100644 --- a/lua/lvim/core/project.lua +++ b/lua/lvim/core/builtins/project.lua @@ -6,8 +6,6 @@ function M.config()      --- This is on by default since it's currently the expected behavior.      active = true, -    on_config_done = nil, -      ---@usage set to true to disable setting the current-woriking directory      --- Manual mode doesn't automatically change your root directory, so you have      --- the option to manually do so using `:ProjectRoot` command. @@ -59,9 +57,8 @@ function M.setup()    end    project.setup(lvim.builtin.project) -  if lvim.builtin.project.on_config_done then -    lvim.builtin.project.on_config_done(project) -  end + +  return project  end  return M diff --git a/lua/lvim/core/telescope.lua b/lua/lvim/core/builtins/telescope.lua index b701f7e4..576c70e9 100644 --- a/lua/lvim/core/telescope.lua +++ b/lua/lvim/core/builtins/telescope.lua @@ -11,7 +11,6 @@ function M.config()    lvim.builtin.telescope = {      ---@usage disable telescope completely [not recommended]      active = true, -    on_config_done = nil,      theme = "dropdown", ---@type telescope_themes      defaults = {        prompt_prefix = lvim.icons.ui.Telescope .. " ", @@ -136,15 +135,13 @@ function M.setup()      end)    end -  if lvim.builtin.telescope.on_config_done then -    lvim.builtin.telescope.on_config_done(telescope) -  end -    if lvim.builtin.telescope.extensions and lvim.builtin.telescope.extensions.fzf then      pcall(function()        require("telescope").load_extension "fzf"      end)    end + +  return telescope  end  return M diff --git a/lua/lvim/core/terminal.lua b/lua/lvim/core/builtins/terminal.lua index 663ba77a..2fc8ea9c 100644 --- a/lua/lvim/core/terminal.lua +++ b/lua/lvim/core/builtins/terminal.lua @@ -4,7 +4,6 @@ local Log = require "lvim.core.log"  M.config = function()    lvim.builtin["terminal"] = {      active = true, -    on_config_done = nil,      -- size can be a number or function which is passed the current terminal      size = 20,      open_mapping = [[<c-\>]], @@ -99,9 +98,7 @@ M.setup = function()      M.add_exec(opts)    end -  if lvim.builtin.terminal.on_config_done then -    lvim.builtin.terminal.on_config_done(terminal) -  end +  return terminal  end  M.add_exec = function(opts) diff --git a/lua/lvim/core/treesitter.lua b/lua/lvim/core/builtins/treesitter.lua index a213b9d3..c0cbb653 100644 --- a/lua/lvim/core/treesitter.lua +++ b/lua/lvim/core/builtins/treesitter.lua @@ -3,8 +3,6 @@ local Log = require "lvim.core.log"  function M.config()    lvim.builtin.treesitter = { -    on_config_done = nil, -      -- A list of parser names, or "all"      ensure_installed = {}, @@ -112,9 +110,7 @@ function M.setup()    treesitter_configs.setup(opts) -  if lvim.builtin.treesitter.on_config_done then -    lvim.builtin.treesitter.on_config_done(treesitter_configs) -  end +  return require "nvim-treesitter"  end  return M diff --git a/lua/lvim/core/which-key.lua b/lua/lvim/core/builtins/which-key.lua index 0e671782..70a24a27 100644 --- a/lua/lvim/core/which-key.lua +++ b/lua/lvim/core/builtins/which-key.lua @@ -3,7 +3,6 @@ M.config = function()    lvim.builtin.which_key = {      ---@usage disable which-key completely [not recommended]      active = true, -    on_config_done = nil,      setup = {        plugins = {          marks = false, -- shows a list of your marks on ' and ` @@ -315,9 +314,7 @@ M.setup = function()    which_key.register(mappings, opts)    which_key.register(vmappings, vopts) -  if lvim.builtin.which_key.on_config_done then -    lvim.builtin.which_key.on_config_done(which_key) -  end +  return which_key  end  return M diff --git a/lua/lvim/core/commands.lua b/lua/lvim/core/commands.lua index 2714838a..aa36d4b7 100644 --- a/lua/lvim/core/commands.lua +++ b/lua/lvim/core/commands.lua @@ -14,7 +14,7 @@ M.defaults = {    {      name = "BufferKill",      fn = function() -      require("lvim.core.bufferline").buf_kill "bd" +      require("lvim.core.builtins.bufferline").buf_kill "bd"      end,    },    { diff --git a/lua/lvim/core/theme.lua b/lua/lvim/core/theme.lua index 5a39f046..e4e122d2 100644 --- a/lua/lvim/core/theme.lua +++ b/lua/lvim/core/theme.lua @@ -86,10 +86,10 @@ M.setup = function()    vim.cmd("colorscheme " .. lvim.colorscheme)    if package.loaded.lualine then -    require("lvim.core.lualine").setup() +    require("lvim.core.builtins.lualine").setup()    end    if package.loaded.lir then -    require("lvim.core.lir").icon_setup() +    require("lvim.core.builtins.lir").icon_setup()    end  end diff --git a/lua/lvim/plugins.lua b/lua/lvim/plugins.lua index a1ed58f1..1278ed01 100644 --- a/lua/lvim/plugins.lua +++ b/lua/lvim/plugins.lua @@ -24,7 +24,7 @@ local core_plugins = {    {      "williamboman/mason.nvim",      config = function() -      require("lvim.core.mason").setup() +      require("lvim.core.builtins").setup "mason"      end,      cmd = { "Mason", "MasonInstall", "MasonUninstall", "MasonUninstallAll", "MasonLog" },      lazy = true, @@ -46,7 +46,7 @@ local core_plugins = {      "nvim-telescope/telescope.nvim",      branch = "0.1.x",      config = function() -      require("lvim.core.telescope").setup() +      require("lvim.core.builtins").setup "telescope"      end,      dependencies = { "telescope-fzf-native.nvim" },      lazy = true, @@ -58,9 +58,7 @@ local core_plugins = {    {      "hrsh7th/nvim-cmp",      config = function() -      if lvim.builtin.cmp then -        require("lvim.core.cmp").setup() -      end +      require("lvim.core.builtins").setup "cmp"      end,      event = { "InsertEnter", "CmdlineEnter" },      dependencies = { @@ -114,7 +112,7 @@ local core_plugins = {      "windwp/nvim-autopairs",      event = "InsertEnter",      config = function() -      require("lvim.core.autopairs").setup() +      require("lvim.core.builtins").setup "autopairs"      end,      enabled = lvim.builtin.autopairs.active,    }, @@ -127,7 +125,7 @@ local core_plugins = {        local utils = require "lvim.utils"        local path = utils.join_paths(get_runtime_dir(), "site", "pack", "lazy", "opt", "nvim-treesitter")        vim.opt.rtp:prepend(path) -- treesitter needs to be before nvim's runtime in rtp -      require("lvim.core.treesitter").setup() +      require("lvim.core.builtins").setup "treesitter"      end,      cmd = {        "TSInstall", @@ -150,7 +148,7 @@ local core_plugins = {    {      "kyazdani42/nvim-tree.lua",      config = function() -      require("lvim.core.nvimtree").setup() +      require("lvim.core.builtins").setup "nvimtree"      end,      enabled = lvim.builtin.nvimtree.active,      cmd = { "NvimTreeToggle", "NvimTreeOpen", "NvimTreeFocus", "NvimTreeFindFileToggle" }, @@ -160,7 +158,7 @@ local core_plugins = {    {      "tamago324/lir.nvim",      config = function() -      require("lvim.core.lir").setup() +      require("lvim.core.builtins").setup "lir"      end,      enabled = lvim.builtin.lir.active,      event = "User DirOpened", @@ -168,7 +166,7 @@ local core_plugins = {    {      "lewis6991/gitsigns.nvim",      config = function() -      require("lvim.core.gitsigns").setup() +      require("lvim.core.builtins").setup "gitsigns"      end,      event = "User FileOpened",      cmd = "Gitsigns", @@ -179,7 +177,7 @@ local core_plugins = {    {      "folke/which-key.nvim",      config = function() -      require("lvim.core.which-key").setup() +      require("lvim.core.builtins").setup "which-key"      end,      cmd = "WhichKey",      event = "VeryLazy", @@ -190,7 +188,7 @@ local core_plugins = {    {      "numToStr/Comment.nvim",      config = function() -      require("lvim.core.comment").setup() +      require("lvim.core.builtins").setup "comment"      end,      keys = { { "gc", mode = { "n", "v" } }, { "gb", mode = { "n", "v" } } },      event = "User FileOpened", @@ -201,7 +199,7 @@ local core_plugins = {    {      "ahmedkhalf/project.nvim",      config = function() -      require("lvim.core.project").setup() +      require("lvim.core.builtins").setup "project"      end,      enabled = lvim.builtin.project.active,      event = "VimEnter", @@ -221,7 +219,7 @@ local core_plugins = {      "nvim-lualine/lualine.nvim",      -- "Lunarvim/lualine.nvim",      config = function() -      require("lvim.core.lualine").setup() +      require("lvim.core.builtins").setup "lualine"      end,      event = "VimEnter",      enabled = lvim.builtin.lualine.active, @@ -231,7 +229,7 @@ local core_plugins = {    {      "SmiteshP/nvim-navic",      config = function() -      require("lvim.core.breadcrumbs").setup() +      require("lvim.core.builtins").setup "breadcrumbs"      end,      event = "User FileOpened",      enabled = lvim.builtin.breadcrumbs.active, @@ -240,7 +238,7 @@ local core_plugins = {    {      "akinsho/bufferline.nvim",      config = function() -      require("lvim.core.bufferline").setup() +      require("lvim.core.builtins").setup "bufferline"      end,      branch = "main",      event = "User FileOpened", @@ -251,7 +249,7 @@ local core_plugins = {    {      "mfussenegger/nvim-dap",      config = function() -      require("lvim.core.dap").setup() +      require("lvim.core.builtins").setup "dap"      end,      lazy = true,      enabled = lvim.builtin.dap.active, @@ -271,7 +269,7 @@ local core_plugins = {    {      "goolord/alpha-nvim",      config = function() -      require("lvim.core.alpha").setup() +      require("lvim.core.builtins").setup "alpha"      end,      enabled = lvim.builtin.alpha.active,      event = "VimEnter", @@ -283,7 +281,7 @@ local core_plugins = {      event = "VeryLazy",      branch = "main",      config = function() -      require("lvim.core.terminal").setup() +      require("lvim.core.builtins").setup "terminal"      end,      enabled = lvim.builtin.terminal.active,    }, @@ -297,7 +295,7 @@ local core_plugins = {    {      "RRethy/vim-illuminate",      config = function() -      require("lvim.core.illuminate").setup() +      require("lvim.core.builtins").setup "illuminate"      end,      event = "User FileOpened",      enabled = lvim.builtin.illuminate.active, @@ -306,7 +304,7 @@ local core_plugins = {    {      "lukas-reineke/indent-blankline.nvim",      config = function() -      require("lvim.core.indentlines").setup() +      require("lvim.core.builtins").setup "indentlines"      end,      event = "User FileOpened",      enabled = lvim.builtin.indentlines.active, | 
