From f57581a802b7b6d962ff208dcf5447050b059784 Mon Sep 17 00:00:00 2001 From: Tom Ryder Date: Tue, 4 Sep 2012 12:34:36 +1200 Subject: When not sudo, use swap/backup/undo files --- vim/vimrc | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) (limited to 'vim/vimrc') diff --git a/vim/vimrc b/vim/vimrc index 2176d56f..9b40894d 100644 --- a/vim/vimrc +++ b/vim/vimrc @@ -36,8 +36,15 @@ if has("autocmd") endif " Backups -set nobackup -if has("writebackup") +if empty($SUDO_USER) + set backup + set backupext=.bak + set backupdir^=~/.vim/backup// + if !isdirectory($HOME . "/.vim/backup") + call mkdir($HOME . "/.vim/backup", "p", 0700) + endif +else + set nobackup set nowritebackup endif @@ -163,7 +170,15 @@ if has("spell") endif " Swaps -set noswapfile +if empty($SUDO_USER) + set swapfile + set directory^=~/.vim/swap// + if !isdirectory($HOME . "/.vim/swap") + call mkdir($HOME . "/.vim/swap", "p", 0700) + endif +else + set noswapfile +endif " Terminal set noesckeys @@ -184,6 +199,16 @@ if has("user_commands") command! -bang WA wa endif +" Undo +set undolevels=1000 +if empty($SUDO_USER) && has("persistent_undo") + set undofile + set undodir^=~/.vim/undo// + if !isdirectory($HOME . "/.vim/undo") + call mkdir($HOME . "/.vim/undo", "p", 0700) + endif +endif + " Unmaps noremap nnoremap K -- cgit v1.2.3