WIP: Starting

This commit is contained in:
TJ DeVries
2021-01-28 22:46:45 -05:00
parent 9d4670c748
commit 575023a953
+27 -18
View File
@@ -3,24 +3,6 @@ local extensions = {}
extensions._loaded = {}
extensions._config = {}
extensions.manager = setmetatable({}, {
__index = function(t, k)
-- See if this extension exists.
local ok, ext = pcall(require, 'telescope._extensions.' .. k)
if not ok then
error("This extension doesn't exist or is not installed: " .. k .. "\n" .. ext)
end
if ext.setup then
ext.setup(extensions._config[k] or {}, require('telescope.config').values)
end
t[k] = ext.exports or {}
return t[k]
end,
})
--- Register an extension module.
---
--- Extensions have several important keys.
@@ -57,6 +39,33 @@ end
extensions.set_config = function(extensions_config)
extensions._config = extensions_config or {}
for ext in pairs(extensions._config) do
extensions.load(ext)
end
end
extensions._setup_extension = function(name, ext, conf)
if ext.setup then
print("Calling setup for ext: ", name)
ext.setup(conf or {}, require('telescope.config').values)
end
end
extensions.manager = setmetatable({}, {
__index = function(t, k)
-- See if this extension exists.
local ok, ext = pcall(require, 'telescope._extensions.' .. k)
if not ok then
error("This extension doesn't exist or is not installed: " .. k .. "\n" .. ext)
end
extensions._setup_extension(k, ext, extensions._config[k])
t[k] = ext.exports or {}
return t[k]
end,
})
return extensions