27 lines
744 B
Lua
27 lines
744 B
Lua
return function(dir, skip_init)
|
|
local returns = {}
|
|
local lua_files = vim.split(vim.fn.glob(dir.."/*.lua"), "\n")
|
|
local namespace = string.gsub(dir, vim.fn.stdpath("config").."/lua/", "")
|
|
namespace = string.gsub(namespace, "%/", ".")
|
|
|
|
for _, file in ipairs(lua_files) do
|
|
file = string.gsub(file, "%.lua", "")
|
|
file = string.gsub(file, dir.."/", namespace)
|
|
|
|
if skip_init and file == namespace.."init" then
|
|
goto continue
|
|
end
|
|
|
|
local require_ok, require_return = pcall(require, file)
|
|
if require_ok then
|
|
table.insert(returns, require_return)
|
|
else
|
|
vim.notify("Could not require file: '"..file.."': "..require_return, vim.log.levels.WARNING)
|
|
end
|
|
|
|
::continue::
|
|
end
|
|
|
|
return returns
|
|
end
|
|
|