diff --git a/.config/nvim/lazyvim.json b/.config/nvim/lazyvim.json index 73d7f970..08b713b1 100644 --- a/.config/nvim/lazyvim.json +++ b/.config/nvim/lazyvim.json @@ -106,4 +106,5 @@ "NEWS.md": "2123" }, "version": 2 -} \ No newline at end of file +} + diff --git a/.config/nvim/lua/config/autocmds.lua b/.config/nvim/lua/config/autocmds.lua index df99c3b3..3f63879d 100644 --- a/.config/nvim/lua/config/autocmds.lua +++ b/.config/nvim/lua/config/autocmds.lua @@ -128,3 +128,15 @@ au({ "BufLeave", "FocusLost", "InsertEnter", "CmdlineEnter", "WinLeave" }, { end end, }) + +-- Create a dir when saving a file if it doesnt exist +au("BufWritePre", { + group = ag("auto_create_dir", { clear = true }), + callback = function(args) + if args.match:match("^%w%w+://") then + return + end + local file = vim.loop.fs_realpath(args.match) or args.match + vim.fn.mkdir(vim.fn.fnamemodify(file, ":p:h"), "p") + end, +}) diff --git a/.config/nvim/lua/plugins/extras/util/mkdir.lua b/.config/nvim/lua/plugins/extras/util/mkdir.lua deleted file mode 100644 index 2bc26a77..00000000 --- a/.config/nvim/lua/plugins/extras/util/mkdir.lua +++ /dev/null @@ -1,4 +0,0 @@ -return { - "jghauser/mkdir.nvim", - event = "VeryLazy", -}