vim
Vraag om niet-bestaande mappen te maken bij het opslaan van een nieuw bestand
Zoeken…
Invoering
Als u een nieuw bestand bewerkt: vim these/directories/dont/exist/newfile
, kunt u het bestand niet opslaan omdat de directory waar vim
naar probeert op te slaan niet bestaat.
Vraag om mappen te maken met: w, of maak ze voorzichtig met: w!
Deze code zal u vragen om de map te maken met :w
, of doe het gewoon met :w!
:
augroup vimrc-auto-mkdir
autocmd!
autocmd BufWritePre * call s:auto_mkdir(expand('<afile>:p:h'), v:cmdbang)
function! s:auto_mkdir(dir, force)
if !isdirectory(a:dir)
\ && (a:force
\ || input("'" . a:dir . "' does not exist. Create? [y/N]") =~? '^y\%[es]$')
call mkdir(iconv(a:dir, &encoding, &termencoding), 'p')
endif
endfunction
augroup END
Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow