]> git.rmz.io Git - dotfiles.git/commitdiff
vim: separate backup, undo and view dir
authorSamir Benmendil <samir.benmendil@gmail.com>
Mon, 9 Feb 2015 16:53:30 +0000 (16:53 +0000)
committerSamir Benmendil <samir.benmendil@gmail.com>
Mon, 9 Feb 2015 17:13:01 +0000 (17:13 +0000)
vim/vimrc
zshenv

index ea32688572e0383e54f9f47e33a90fb09cd1ffad..f7a072b60d866ac030a3133bf0bfafebfe611d96 100644 (file)
--- a/vim/vimrc
+++ b/vim/vimrc
@@ -169,19 +169,30 @@ set diffopt=filler,vertical
 " reading and writing files {{{2
 set modeline                    " read modelines
 set modelines=2                 " only check first/last 2 lines
+
 set writebackup                 " write a backup file before overwriting a file
 set backup                      " keep a backup after owerwriting a file
-set backupdir=$XDG_CACHE_HOME/vim//
+set backupdir=$XDG_CACHE_HOME/vim/backup//
+
+set backupskip+=.netrc          " skip netrc
+set backupskip+=/dev/shm/pass*  " skip passwordstore files
 
 set undofile                    " persistent undo history
-set undodir=$XDG_CACHE_HOME/vim//
+set undodir=$XDG_CACHE_HOME/vim/undo//
+
+augroup undoskip
+    au!
+    au BufWritePre .netrc         setlocal noundofile
+    au BufWritePre /dev/shm/pass* setlocal noundofile
+    au BufWritePre /tmp/*         setlocal noundofile
+augroup END
 
 set autowrite                   " automatically write a file when leaving a modified buffer
 set autoread                    " automatically read a file that has been modified
 
 " the swap file {{{2
 set noswapfile
-set directory=$XDG_CACHE_HOME/vim//
+set directory=$XDG_CACHE_HOME/vim/swap//
 
 " command line editing {{{2
 set history=5000                " how many command lines are remembered
@@ -202,7 +213,7 @@ set wildignore+=*.orig                           " Merge resolution files
 set virtualedit=block           " let cursor move past last char in <C-V> mode
 set viminfo='100,<50,s10,h,n$XDG_CACHE_HOME/vim/viminfo " viminfo defaults but save file in .cache
 
-set viewdir=$XDG_CACHE_HOME/vim
+set viewdir=$XDG_CACHE_HOME/vim/view//
 
 " autocmds {{{1
 " Resize splits when the window is resized {{{2
diff --git a/zshenv b/zshenv
index 710e9f661d0ffb68ff1443149c47c27558c8409b..0ce4be9e4c8db071dbb4b556f4f21c666f8b4ad2 100644 (file)
--- a/zshenv
+++ b/zshenv
@@ -11,7 +11,7 @@ systemctl --user import-environment \
     XDG_DATA_HOME
 
 # vim stuff
-[[ -d "$XDG_CACHE_HOME/vim" ]] || mkdir -p "$XDG_CACHE_HOME/vim"
+[[ -d "$XDG_CACHE_HOME/vim/backup" ]] || mkdir -p "$XDG_CACHE_HOME"/vim/{backup,undo,view}
 export VIMINIT='let $MYVIMRC="$XDG_CONFIG_HOME/vim/vimrc" | source $MYVIMRC'
 export EDITOR=vim
 export VISUAL=vim