From 78ed0cf7d9a64280d621960af4be7872aa650417 Mon Sep 17 00:00:00 2001 From: jake-stewart <83528263+jake-stewart@users.noreply.github.com> Date: Thu, 1 Jan 2026 04:50:39 +0800 Subject: [PATCH] fix: multicursor when opened with --preview (#701) --- lua/oil/init.lua | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lua/oil/init.lua b/lua/oil/init.lua index 80462db..0c56720 100644 --- a/lua/oil/init.lua +++ b/lua/oil/init.lua @@ -543,6 +543,8 @@ M.open_preview = function(opts, callback) end util.get_edit_path(bufnr, entry, function(normalized_url) + local mc = package.loaded["multicursor-nvim"] + local has_multicursors = mc and mc.hasCursors() local is_visual_mode = util.is_visual_mode() if preview_win then if is_visual_mode then @@ -601,7 +603,10 @@ M.open_preview = function(opts, callback) end vim.w.oil_entry_id = entry.id vim.w.oil_source_win = prev_win - if is_visual_mode then + if has_multicursors then + hack_set_win(prev_win) + mc.restoreCursors() + elseif is_visual_mode then hack_set_win(prev_win) -- Restore the visual selection vim.cmd.normal({ args = { "gv" }, bang = true })