diff --git a/lua/wrapinput/init.lua b/lua/wrapinput.lua similarity index 93% rename from lua/wrapinput/init.lua rename to lua/wrapinput.lua index 352c6cf..56cd468 100644 --- a/lua/wrapinput/init.lua +++ b/lua/wrapinput.lua @@ -1,3 +1,9 @@ +---@class wrapinput.UserConfig +---@field padding? integer +---@field max_width? integer +---@field max_height? integer +---@field win? vim.api.keyset.win_config + ---@class wrapinput.Config ---@field prompt string ---@field default string @@ -200,4 +206,12 @@ function M.input(config, on_confirm) setup_autocmds(winnr, bufnr, config) end +---@param config? wrapinput.UserConfig +function M.setup(config) + vim.ui.input = function(opts, on_confirm) + config = vim.tbl_deep_extend("force", config or {}, opts or {}) + M.input(config --[[@as wrapinput.Config]], on_confirm) + end +end + return M diff --git a/plugin/wrapinput.lua b/plugin/wrapinput.lua deleted file mode 100644 index e9c3ff7..0000000 --- a/plugin/wrapinput.lua +++ /dev/null @@ -1,3 +0,0 @@ -vim.ui.input = function(opts, on_confirm) - require("wrapinput").input(opts or {}, on_confirm) -end