Did you check the docs and existing issues?
Neovim version (nvim -v)
0.12.2
Operating system/version
NixOS
Describe the bug
Having two files foo and foo2 in the same directory it is not possible to swap the names.
I.e.:
to
fails with Detected cycle in desired paths.
The buffer is no longer modifable afterwords, so it is very difficult to get out of the broken state.
Just noticed, that it apperantly not that reproducable, since depending on how the files got into oil (i.e. if they were created by it without closing inbetween) then no error occors.
What is the severity of this bug?
minor (annoyance)
Steps To Reproduce
touch foo
touch foo2
nvim .
- Changing
foo to foo2 and foo2 to foo
- Saving
Expected Behavior
no error. works as any other cyclic renaming does
Directory structure
foo
foo2
Repro
-- save as repro.lua
-- run with nvim -u repro.lua
-- DO NOT change the paths
local root = vim.fn.fnamemodify("./.repro", ":p")
-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "runtime", "cache" }) do
vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end
-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"--single-branch",
"https://github.com/folke/lazy.nvim.git",
lazypath,
})
end
vim.opt.runtimepath:prepend(lazypath)
-- install plugins
local plugins = {
"folke/tokyonight.nvim",
{
"stevearc/oil.nvim",
config = function()
require("oil").setup({
-- add any needed settings here
})
end,
},
-- add any other plugins here
}
require("lazy").setup(plugins, {
root = root .. "/plugins",
})
vim.cmd.colorscheme("tokyonight")
-- add anything else here
Did you check the bug with a clean config?
Did you check the docs and existing issues?
Neovim version (nvim -v)
0.12.2
Operating system/version
NixOS
Describe the bug
Having two files
fooandfoo2in the same directory it is not possible to swap the names.I.e.:
to
fails with
Detected cycle in desired paths.The buffer is no longer modifable afterwords, so it is very difficult to get out of the broken state.
Just noticed, that it apperantly not that reproducable, since depending on how the files got into oil (i.e. if they were created by it without closing inbetween) then no error occors.
What is the severity of this bug?
minor (annoyance)
Steps To Reproduce
touch footouch foo2nvim .footofoo2andfoo2tofooExpected Behavior
no error. works as any other cyclic renaming does
Directory structure
foo
foo2
Repro
Did you check the bug with a clean config?
nvim -u repro.luausing the repro.lua file above.