initialise_dirs.vim 840 B

1234567891011121314151617181920212223242526272829303132
  1. " Initialize directories {{{
  2. function! InitializeDirectories()
  3. let parent = $HOME
  4. let prefix = 'vim'
  5. let dir_list = {
  6. \ 'backup': 'backupdir',
  7. \ 'swap': 'directory' }
  8. if has('persistent_undo')
  9. let dir_list['undo'] = 'undodir'
  10. endif
  11. let common_dir = parent . '/.' . prefix
  12. for [dirname, settingname] in items(dir_list)
  13. let directory = common_dir . dirname . '/'
  14. if exists("*mkdir")
  15. if !isdirectory(directory)
  16. call mkdir(directory)
  17. endif
  18. endif
  19. if !isdirectory(directory)
  20. echo "Warning: Unable to create backup directory: " . directory
  21. echo "Try: mkdir -p " . directory
  22. else
  23. let directory = substitute(directory, " ", "\\\\ ", "g")
  24. exec "set " . settingname . "=" . directory
  25. endif
  26. endfor
  27. endfunction
  28. call InitializeDirectories()
  29. " }}}