X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/58d46aa2146196e37a219175ae5710588d2bb6b2..abc4878101c227a526ee0701b51e358e452ec7d9:/vim/ftplugin/cpp.vim diff --git a/vim/ftplugin/cpp.vim b/vim/ftplugin/cpp.vim index be1b64d..06d4861 100644 --- a/vim/ftplugin/cpp.vim +++ b/vim/ftplugin/cpp.vim @@ -14,13 +14,35 @@ setlocal cinoptions+=:0 " don't indent case labels " Load the doxygen syntax let b:load_doxygen_syntax = 1 -augroup fswitch - au BufEnter *.h let b:fswitchdst = 'cpp,c' - au BufEnter *.h let b:fswitchlocs = 'reg:|include.*|source|' - au BufEnter *.cpp let b:fswitchdst = 'h' - au BufEnter *.cpp let b:fswitchlocs = 'reg:|source|include/**|' +augroup fswitch_cpp + au! + au BufEnter *.h let b:fswitchdst = 'c,cpp' + au BufEnter *.h let b:fswitchlocs = '.,reg:|include.*|src|' + au BufEnter *.hpp let b:fswitchdst = 'cpp,c' + au BufEnter *.hpp let b:fswitchlocs = '.,reg:|include.*|src|' + au BufEnter *.cpp let b:fswitchdst = 'hpp,h' + au BufEnter *.cpp let b:fswitchlocs = '.,reg:|src|include/**|' augroup END +let g:switch_custom_definitions = + \ [ + \ ['EXPECT_FALSE', 'EXPECT_TRUE'], + \ ['EXPECT_EQ', 'EXPECT_NE'], + \ ['EXPECT_LT', 'EXPECT_GT'], + \ ['ASSERT_FALSE', 'ASSERT_TRUE'], + \ ['ASSERT_EQ', 'ASSERT_NE'], + \ ['ASSERT_LT', 'ASSERT_GT'] + \ ] + +let g:switch_const_definitions = + \ [ { + \ '\%(const \)\@!\([[:alnum:]_:<>]\{-}\) \%(&\)\@!': 'const \1 ', + \ 'const \([[:alnum:]_:<>]\{-}\) &\@!': 'const \1 &' , + \ 'const \([[:alnum:]_:<>]\{-}\) &': '\1 ' + \ } ] + +nnoremap c :call switch#Switch(g:switch_const_definitions, {}) + nnoremap gd :YcmCompleter GoTo nnoremap d :vs:YcmCompleter GoTo