" Vim main configuration file.
-" Copyright (C) 2008-2012 Simon Ruderich
+" Copyright (C) 2008-2013 Simon Ruderich
"
" This file is free software: you can redistribute it and/or modify
" it under the terms of the GNU General Public License as published by
" Save 'runtimepath' in case it was changed by the system's configuration
" files. Also save 'diff' as set all& resets it; but somehow later (after
" sourcing the vimrc - for example in a VimEnter autocmd) it gets
-" automagically restored to the correct value.
+" automagically restored to the correct value. Not sure what exactly Vim is
+" doing there.
if has('eval')
let s:save_runtimepath = &runtimepath
let s:save_diff = &diff
set runtimepath-=~/.vim
set runtimepath^=~/.vim,~/.vim/runtime
-" Don't store swap files in the same directory as the edited file. But only if
+" 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-=.
set spelllang=en_us
endif
-" Allow buffers with changes to be hidden. Very important for effective
+" Allow buffers with changes to be hidden. Very important for efficient
" editing with multiple buffers. Prevents the "E37: No write since last change
-" (add ! to override)" warning when switching buffers.
+" (add ! to override)" warning when switching modified buffers.
set hidden
" When splitting vertically put the new window right of the current one.
" Path to cache directory. I prefer to keep generated files as local as
" possible.
let g:ctrlp_cache_dir = $HOME . '/.vim/cache/ctrlp'
- " Permanent cache, cleared by a crontab entry.
+ " Permanent cache, cleared by a crontab entry. Use <F5> to update the
+ " cache manually.
let g:ctrlp_clear_cache_on_exit = 0
" FSWitch settings.
- " Default don't work well for my projects.
+ " Defaults don't work well for my projects.
augroup vimrc
autocmd BufEnter *.cc let b:fswitchdst = 'h'
\ | let b:fswitchlocs = './'
" Automatically disable 'paste' mode when leaving insert mode. Thanks to
" Raimondi in #vim on Freenode (2010-08-14 23:01 CEST). Very useful as I only
" want to paste once and then 'paste' gets automatically unset. InsertLeave
-" doesn't exist in older Vims.
+" doesn't exist in older Vims. Use "*p to paste X11's selection, no need for
+" 'paste' in this case.
if exists('##InsertLeave')
autocmd InsertLeave * set nopaste
endif
" Convenient command to see the difference between the current buffer and the
" file it was loaded from, thus the changes you made. Thanks to the
" vimrc_example.vim file in Vim's source. Modified to use the same filetype
-" for the diffed file than the filetype for the original file.
+" for the diffed file as the filetype for the original file.
if !exists(':DiffOrig')
command DiffOrig
\ let s:diff_orig_filetype = &filetype