From b90c9ee7b78a4311a43e5690876413371f7368d7 Mon Sep 17 00:00:00 2001 From: LostNeophyte Date: Thu, 19 Jan 2023 13:43:52 +0100 Subject: move lazy utils to modules.lua --- lua/lvim/core/alpha.lua | 6 ++--- lua/lvim/core/cmp.lua | 4 ++-- lua/lvim/core/lir.lua | 2 +- lua/lvim/utils.lua | 55 ---------------------------------------------- lua/lvim/utils/modules.lua | 55 ++++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 61 insertions(+), 61 deletions(-) diff --git a/lua/lvim/core/alpha.lua b/lua/lvim/core/alpha.lua index 19d7899a..42159d70 100644 --- a/lua/lvim/core/alpha.lua +++ b/lua/lvim/core/alpha.lua @@ -1,9 +1,9 @@ local M = {} function M.config() - local utils = require "lvim.utils" - local lvim_dashboard = utils.lazy_set("lvim.core.alpha.dashboard", "get_sections") - local lvim_startify = utils.lazy_set("lvim.core.alpha.startify", "get_sections") + local lazy_set = require("lvim.utils.modules").lazy_set + local lvim_dashboard = lazy_set("lvim.core.alpha.dashboard", "get_sections") + local lvim_startify = lazy_set("lvim.core.alpha.startify", "get_sections") lvim.builtin.alpha = { dashboard = { config = {}, diff --git a/lua/lvim/core/cmp.lua b/lua/lvim/core/cmp.lua index 4d9e0de5..8f007035 100644 --- a/lua/lvim/core/cmp.lua +++ b/lua/lvim/core/cmp.lua @@ -123,8 +123,8 @@ M.config = function() return end - local cmp = require("lvim.utils").require_on_index "cmp" - local luasnip = require("lvim.utils").require_on_index "luasnip" + local cmp = require("lvim.utils.modules").require_on_index "cmp" + local luasnip = require("lvim.utils.modules").require_on_index "luasnip" local cmp_window_config = require "cmp.config.window" local cmp_mapping = require "cmp.config.mapping" diff --git a/lua/lvim/core/lir.lua b/lua/lvim/core/lir.lua index 2c0e3c7a..83f79b6f 100644 --- a/lua/lvim/core/lir.lua +++ b/lua/lvim/core/lir.lua @@ -1,7 +1,7 @@ local M = {} M.config = function() - local utils = require "lvim.utils" + local utils = require "lvim.utils.modules" local actions = utils.require_on_exported_call "lir.actions" local clipboard_actions = utils.require_on_exported_call "lir.clipboard.actions" diff --git a/lua/lvim/utils.lua b/lua/lvim/utils.lua index 63831fe5..5e49906a 100644 --- a/lua/lvim/utils.lua +++ b/lua/lvim/utils.lua @@ -129,59 +129,4 @@ function M.fs_copy(source, destination) end end --- code from -function M.require_on_index(require_path) - return setmetatable({}, { - __index = function(_, key) - return require(require_path)[key] - end, - - __newindex = function(_, key, value) - require(require_path)[key] = value - end, - }) -end - --- code from -function M.require_on_exported_call(require_path) - return setmetatable({}, { - __index = function(_, k) - return function(...) - return require(require_path)[k](...) - end - end, - }) -end - -function M.lazy_set(require_path, fn_name) - local function poputale_table(table) - setmetatable(table, {}) - local source = require(require_path)[fn_name]() - for k, v in pairs(source) do - table[k] = v - end - end - return setmetatable({}, { - __index = function(me, index) - poputale_table(me) - return me[index] - end, - - __newindex = function(me, key, value) - poputale_table(me) - me[key] = value - end, - - __pairs = function(me) - poputale_table(me) - return pairs(me) - end, - - __ipairs = function(me) - poputale_table(me) - return pairs(me) - end, - }) -end - return M diff --git a/lua/lvim/utils/modules.lua b/lua/lvim/utils/modules.lua index d5674483..41b2b381 100644 --- a/lua/lvim/utils/modules.lua +++ b/lua/lvim/utils/modules.lua @@ -95,4 +95,59 @@ M.reload = function(mod) return old end +-- code from +function M.require_on_index(require_path) + return setmetatable({}, { + __index = function(_, key) + return require(require_path)[key] + end, + + __newindex = function(_, key, value) + require(require_path)[key] = value + end, + }) +end + +-- code from +function M.require_on_exported_call(require_path) + return setmetatable({}, { + __index = function(_, k) + return function(...) + return require(require_path)[k](...) + end + end, + }) +end + +function M.lazy_set(require_path, fn_name) + local function poputale_table(table) + setmetatable(table, {}) + local source = require(require_path)[fn_name]() + for k, v in pairs(source) do + table[k] = v + end + end + return setmetatable({}, { + __index = function(me, index) + poputale_table(me) + return me[index] + end, + + __newindex = function(me, key, value) + poputale_table(me) + me[key] = value + end, + + __pairs = function(me) + poputale_table(me) + return pairs(me) + end, + + __ipairs = function(me) + poputale_table(me) + return pairs(me) + end, + }) +end + return M -- cgit v1.2.3