12 " writing backups is handled below in the autocommand
14 set backupcopy=auto,breakhardlink
22 let &runtimepath = '~/.vim,' . &runtimepath
25 if exists('+shellslash')
32 autocmd BufNewFile,BufRead *.git/COMMIT_EDITMSG set spell
36 set guifont=Monaco:h11
38 set guifont=Terminus:h12
40 set guifont=Terminus\ 12
45 let &guicursor = &guicursor.",a:blinkon0"
52 set viminfo='20,<50,s10,h
54 set viminfo='20,\"50,h
65 " let CVSCommandDiffOpt='u'
66 " let CVSCommandEdit='split'
67 " let HGCommandEnableBufferSetup=0
68 " let HGCommandEdit='split'
69 set statusline=%<%f\ %{VCSCommandGetStatusLine()}%h%m%r%=%-14.(%l,%c%V%)\ %P
70 let VCSCommandEnableBufferSetup=1
75 " let s:oldgrep = &grepprg
78 " let grepprg = s:oldgrep
81 com -nargs=* Glimpse let s:oldgrep = &grepprg | set grepprg=glm | grep <args> | let &grepprg = s:oldgrep
83 set grepprg=grep\ -nH\ $*
85 set cino=:0,g0,t0,+4,(0,u0,W4
89 let g:tex_indent_items = 1
90 let g:tex_flavor='latex'
91 let g:Tex_MultipleCompileFormats = 'dvi,pdf'
92 let g:Tex_DefaultTargetFormat = 'pdf'
94 if executable('evince')
95 let g:Tex_ViewRule_pdf = 'evince'
98 " Search with *#/ in visual selection mode
99 vnoremap * y/\V<C-R>=substitute(escape(@@,"/\\"),"\n","\\\\n","ge")<CR><CR>
100 vnoremap # y?\V<C-R>=substitute(escape(@@,"?\\"),"\n","\\\\n","ge")<CR><CR>
102 au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal g'\"" | endif
104 runtime ftplugin/man.vim
107 func SetBackupMode(bufname)
108 let rs = system('hammer version ' . shellescape(a:bufname))
109 if v:shell_error == 0
110 let rs = system('ls -lo ' . shellescape(a:bufname) . '|cut -w -f 5 | grep -v -E "no(u)?history"')
112 if v:shell_error == 0
113 set nowritebackup nobackup
115 set writebackup backup
119 command DiffOrig vert new | set bt=nofile | r # | 0d_ | diffthis
120 \ | wincmd p | diffthis
122 au BufWritePre,FileAppendPre,FileWritePre * :call SetBackupMode(expand('<afile>'))