summaryrefslogtreecommitdiffstats
path: root/lua/inbox/utils.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/inbox/utils.lua')
-rw-r--r--lua/inbox/utils.lua23
1 files changed, 17 insertions, 6 deletions
diff --git a/lua/inbox/utils.lua b/lua/inbox/utils.lua
index e9826c8..d1e627c 100644
--- a/lua/inbox/utils.lua
+++ b/lua/inbox/utils.lua
@@ -5,30 +5,30 @@ local M = {}
---@field [2] string hl
---@param msg string
----@param vars table<string, string>
+---@param vars table<string, any>?
---@param level integer|nil
function M.notify(msg, vars, level)
- for name, value in pairs(vars) do
- string.format("%s\n%s: %s", msg, name, value)
+ for name, value in pairs(vars or {}) do
+ string.format("%s\n%s: %s", msg, name, vim.inspect(value))
end
vim.notify(msg, level, { title = "inbox.nvim" })
end
---@param msg string
----@param vars table<string, string>
+---@param vars table<string, any>?
function M.info(msg, vars)
M.notify(msg, vars, vim.log.levels.INFO)
end
---@param msg string
----@param vars table<string, string>
+---@param vars table<string, any>?
function M.warn(msg, vars)
M.notify(msg, vars, vim.log.levels.WARN)
end
---@param msg string
----@param vars table<string, string>
+---@param vars table<string, any>?
function M.error(msg, vars)
M.notify(msg, vars, vim.log.levels.ERROR)
end
@@ -205,4 +205,15 @@ function M.stateful_iter(table, wrap)
end
end
+---@param modname string
+---@return any module
+function M.try_require(modname)
+ local is_ok, result = pcall(require, modname)
+ if is_ok then
+ return result
+ else
+ error(string.format("Module not found: %s", modname))
+ end
+end
+
return M