let b:load_doxygen_syntax = 1
augroup fswitch
- au BufEnter *.h let b:fswitchdst = 'c'
- au BufEnter *.h let b:fswitchlocs = 'reg:|include.*|source|'
- au BufEnter *.c let b:fswitchdst = 'h'
- au BufEnter *.c let b:fswitchlocs = 'reg:|source|include/**|'
+ au!
+ au BufEnter *.h let b:fswitchdst = 'c,cpp,cxx'
+ au BufEnter *.h let b:fswitchlocs = '.,reg:|include.*|src|'
+ au BufEnter *.c let b:fswitchdst = 'h'
+ au BufEnter *.c let b:fswitchlocs = 'reg:|source|include/**|'
augroup END
nnoremap <buffer> gd :YcmCompleter GoTo<CR>
nnoremap <buffer> <C-W>d :vs<CR>:YcmCompleter GoTo<CR>
+nnoremap <buffer> gD :YcmCompleter GoToReferences<CR>
+
+let b:tcomment_options = {'whitespace': 'no'}
+
+setlocal cinoptions+=l1 " align with case label