neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit f0e61e6d92b5ce115388f8a03f8d34f00a3dea92
parent 52b6a9a93b06bc897d9982139c143127003f42dc
Author: Tomasz N <przepompownia@users.noreply.github.com>
Date:   Thu,  8 Feb 2024 22:06:54 +0100

fix(lsp): rename fails on missing parent directory #27291

Problem:
If a rename results in a path that has missing parent directory(s), it
will fail.

Solution:
Do a recursive mkdir before attempting the rename.
Diffstat:
Mruntime/lua/vim/lsp/util.lua | 3+++
1 file changed, 3 insertions(+), 0 deletions(-)

diff --git a/runtime/lua/vim/lsp/util.lua b/runtime/lua/vim/lsp/util.lua @@ -693,6 +693,9 @@ function M.rename(old_fname, new_fname, opts) end) end + local newdir = assert(vim.fs.dirname(new_fname)) + vim.fn.mkdir(newdir, 'p') + local ok, err = os.rename(old_fname, new_fname) assert(ok, err)