From dcb5a22026463a065a2be336704b6a8343e96d49 Mon Sep 17 00:00:00 2001 From: Folke Lemaitre Date: Fri, 31 Mar 2023 09:40:10 +0200 Subject: [PATCH] refactor: auto-create dir --- lua/lazyvim/config/autocmds.lua | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/lua/lazyvim/config/autocmds.lua b/lua/lazyvim/config/autocmds.lua index ea95da04..0e201f29 100644 --- a/lua/lazyvim/config/autocmds.lua +++ b/lua/lazyvim/config/autocmds.lua @@ -71,12 +71,8 @@ vim.api.nvim_create_autocmd("FileType", { -- Auto create dir when saving a file, in case some intermediate directory does not exist vim.api.nvim_create_autocmd({ "BufWritePre" }, { group = augroup("auto_create_dir"), - callback = function(ctx) - local dir = vim.fn.fnamemodify(ctx.file, ":p:h") - local res = vim.fn.isdirectory(dir) - - if res == 0 then - vim.fn.mkdir(dir, "p") - end + callback = function(event) + local file = vim.loop.fs_realpath(event.match) or event.match + vim.fn.mkdir(vim.fn.fnamemodify(file, ":p:h"), "p") end, })