X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=vimrc;h=7df6365182611242b13b9de9edc4a4ad4e24b202;hb=114d0fb1fdbf4906b4a9907292746eab77d6b808;hp=d4f3939d40c4de40d8f993c4f44bb6e031ac3417;hpb=17a0e787a304a67188cd10855ae5b2089a7387ec;p=config%2Fdotfiles.git diff --git a/vimrc b/vimrc index d4f3939..7df6365 100644 --- a/vimrc +++ b/vimrc @@ -49,8 +49,11 @@ set encoding=utf-8 set runtimepath-=~/.vim set runtimepath^=~/.vim,~/.vim/runtime -" Don't store swap files in the same directory as the edited file. -set directory-=. +" Don't store swap files in the same directory as the edited file. But only if +" we have a "safe" writable directory available. +if filewritable('~/.tmp') == 2 || filewritable('~/tmp') == 2 + set directory-=. +endif " But store them in ~/.tmp or ~/tmp (already set by default) if available. set directory^=~/.tmp @@ -117,6 +120,9 @@ endif " existing files. set fileencodings=utf-8,latin1 +" Always use unix line-endings for new files. +set fileformats=unix,dos + " Wrap text after 78 characters. set textwidth=78 @@ -442,6 +448,33 @@ nmap - " (2010-05-16 18:38 CEST) for this idea. nnoremap gb :bnext nnoremap gB :bprevious +if has('eval') + " But when starting again at the first buffer, print a warning which + " reminds me that I've already seen that buffer. + function! s:NextBuffer() + " Are we currently on the last buffer and moving to the first? + let l:last_buffer = 0 + if bufnr('%') == bufnr('$') && bufnr('$') > 1 + let l:last_buffer = 1 + endif + + " Go to the next buffer. + if !l:last_buffer + bnext + + " Go to the first buffer, silent is necessary or the following message + " won't be displayed because it's overwritten by the status message + " displayed when entering a buffer. + else + silent bnext + + echohl WarningMsg + echo 'Starting again at first buffer.' + echohl None + endif + endfunction + nnoremap gb :call NextBuffer() +endif " Fast access to buffers. nnoremap 1 :1buffer