diff --git a/README.markdown b/README.markdown index aafe40f..a4cb43b 100644 --- a/README.markdown +++ b/README.markdown @@ -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. diff --git a/plugin/sensible.vim b/plugin/sensible.vim index 20502bd..360dc72 100644 --- a/plugin/sensible.vim +++ b/plugin/sensible.vim @@ -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')