local M = {} --- map ddu#start for keys function M.map_source(keys, name, args) if type(keys) == "string" then keys = { keys } end for _, key in pairs(keys) do local function callback() local opts = args or {} if type(opts) == "function" then opts = opts() end vim.fn["ddu#start"](opts) end if name == nil then name = args.sources[1].name end vim.keymap.set("n", key, callback, { remap = false, desc = "Start ddu source: " .. name }) end end function M.map_action(mode, lh, name, opts) vim.keymap.set(mode, lh, function() local options = opts or vim.empty_dict() vim.fn["ddu#ui#do_action"](name, options) end, { nowait = true, buffer = true, silent = true, remap = false }) end return M