set wildignorecase
endif
+" Ignore files with the following extensions because I almost never want to
+" edit them in Vim (specifying them manually still works of course).
+set wildignore=
+" C
+set wildignore+=*.o,*.d,*.so
+" Java
+set wildignore+=*.class
+" LaTeX
+set wildignore+=*.aux,*.log,*.out,*.toc,*.pdf
+" Python
+set wildignore+=*.pyc
+
" Show completion menu even if only one entry matches.
if exists('+completeopt')
set completeopt+=menuone
let g:xptemplate_brace_complete = 0
" Only highlight the current placeholder.
let g:xptemplate_highlight = 'current'
-endif
" CtrlP settings.
" Don't manage the working directory (the default setting is too slow for
" Permanent cache, cleared by a crontab entry.
let g:ctrlp_clear_cache_on_exit = 0
+" FSWitch settings.
+ " Default don't work well for my projects.
+ augroup vimrc
+ autocmd BufEnter *.cc let b:fswitchdst = 'h'
+ \ | let b:fswitchlocs = './'
+ autocmd BufEnter *.h let b:fswitchdst = 'cc,c'
+ \ | let b:fswitchlocs = './'
+ augroup END
+
+ " Switch to corresponding header/source file.
+ nnoremap <silent> <Leader>h :FSHere<CR>
+endif
+
" AUTO COMMANDS