diff --git a/core/autocommands.vim b/core/autocommands.vim index 70b40db..c0c01d2 100644 --- a/core/autocommands.vim +++ b/core/autocommands.vim @@ -133,7 +133,7 @@ augroup END augroup auto_create_dir autocmd! - autocmd BufWritePre * lua require('utils').may_create_dir() + autocmd BufWritePre * lua require('utils').may_create_dir(vim.fn.fnamemodify(vim.fn.expand(''), ":p:h")) augroup END " ref: https://vi.stackexchange.com/a/169/15292 diff --git a/lua/utils.lua b/lua/utils.lua index ae9e0e9..3312479 100644 --- a/lua/utils.lua +++ b/lua/utils.lua @@ -15,13 +15,12 @@ function M.executable(name) return false end -function M.may_create_dir() - local fpath = fn.expand('') - local parent_dir = fn.fnamemodify(fpath, ":p:h") - local res = fn.isdirectory(parent_dir) +--- Create a dir if if does not exist +function M.may_create_dir(dir) + local res = fn.isdirectory(dir) if res == 0 then - fn.mkdir(parent_dir, 'p') + fn.mkdir(dir, 'p') end end