diff --git a/yazi-plugin/preset/plugins/fzf.lua b/yazi-plugin/preset/plugins/fzf.lua index 45fb5720b..665bdd2ce 100644 --- a/yazi-plugin/preset/plugins/fzf.lua +++ b/yazi-plugin/preset/plugins/fzf.lua @@ -8,13 +8,18 @@ local state = ya.sync(function() return cx.active.current.cwd, selected end) +function M:setup(opts) + opts = opts or {} + self.args = opts.args +end + function M:entry() ya.emit("escape", { visual = true }) local _permit = ya.hide() local cwd, selected = state() - local output, err = M.run_with(cwd, selected) + local output, err = self:run_with(cwd, selected) if not output then return ya.notify { title = "Fzf", content = tostring(err), timeout = 5, level = "error" } end @@ -29,9 +34,10 @@ function M:entry() end end -function M.run_with(cwd, selected) +function M:run_with(cwd, selected) local child, err = Command("fzf") :arg("-m") + :args(self.args or {}) :cwd(tostring(cwd)) :stdin(#selected > 0 and Command.PIPED or Command.INHERIT) :stdout(Command.PIPED) diff --git a/yazi-plugin/preset/plugins/magick.lua b/yazi-plugin/preset/plugins/magick.lua index 365d42d6b..291f1eb90 100644 --- a/yazi-plugin/preset/plugins/magick.lua +++ b/yazi-plugin/preset/plugins/magick.lua @@ -50,13 +50,13 @@ function M:spot(job) require("file"):spot(job) end function M.with_limit() local cmd = Command("magick"):args { "-limit", "thread", 1 } if rt.tasks.image_alloc > 0 then - cmd = cmd:args({ "-limit", "memory", rt.tasks.image_alloc }):args { "-limit", "disk", "1MiB" } + cmd:args({ "-limit", "memory", rt.tasks.image_alloc }):args { "-limit", "disk", "1MiB" } end if rt.tasks.image_bound[1] > 0 then - cmd = cmd:args { "-limit", "width", rt.tasks.image_bound[1] } + cmd:args { "-limit", "width", rt.tasks.image_bound[1] } end if rt.tasks.image_bound[2] > 0 then - cmd = cmd:args { "-limit", "height", rt.tasks.image_bound[2] } + cmd:args { "-limit", "height", rt.tasks.image_bound[2] } end return cmd end