Better (?) location for transient files

Closes #22.
This commit is contained in:
Tim Pope
2013-01-20 11:24:25 -05:00
parent 6083bf4a61
commit 6c1ed9b043
2 changed files with 9 additions and 7 deletions

View File

@@ -31,9 +31,10 @@ mostly `:set` calls.) Here's a taste:
* `'incsearch'`: Start searching before pressing enter.
* `'listchars'`: Makes `:set list` (visible whitespace) prettier.
* `'scrolloff'`: Always show at least one line above/below the cursor.
* `'directory'`: Dump swap files under `~/.cache/vim/swap` (only if that
directory already exists). Also `'backupdir'` and `'undodir'`. Try
`mkdir -p ~/.cache/vim/{swap,backup,undo}`.
* `'directory'`: Dump swap files under `~/.local/share/vim/swap`,
`~/Library/Vim/swap`, or `~\Application Data\Vim\swap`, depending on your
platform. Also `'backupdir'` and `'undodir'`. The directories aren't
created automatically, so try `mkdir -p ~/Library/Vim/{swap,backup,undo}`.
* `nmap Y y$`: Make `Y` behave like `C` and `D`.
* `runtime! macros/matchit.vim`: Load the version of matchit.vim that ships
with Vim.

View File

@@ -60,15 +60,16 @@ if &history < 1000
endif
set viminfo^=!
if isdirectory(expand('~/.cache/vim'))
let s:dir = has('win32') ? '~/Application Data/Vim' : has('mac') ? '~/Library/Vim' : '~/.local/share/vim'
if isdirectory(expand(s:dir))
if &directory =~# '^\.,'
set directory^=~/.cache/vim/swap//
let &directory = s:dir . '/swap//,'
endif
if &backupdir =~# '^\.,'
set backupdir^=~/.cache/vim/backup//
let &backupdir = s:dir . '/backup//,'
endif
if exists('+undodir') && &undodir =~# '^\.\%(,\|$\)'
set undodir^=~/.cache/vim/undo//
let &undodir = s:dir . '/undo//,'
endif
endif
if exists('+undofile')