X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/2f3ca06a7ff40f2801123ed1d605ac092f5814ae..refs/heads/uh-backup:/vim/ftplugin/cpp.vim?ds=sidebyside diff --git a/vim/ftplugin/cpp.vim b/vim/ftplugin/cpp.vim index 5154d62..2fb7f55 100644 --- a/vim/ftplugin/cpp.vim +++ b/vim/ftplugin/cpp.vim @@ -14,6 +14,18 @@ setlocal cinoptions+=:0 " don't indent case labels " Load the doxygen syntax let b:load_doxygen_syntax = 1 +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 *.t(est)?.cpp let b:fswitchnames = '/.t\(est\)?//' + au BufEnter *.t(est)?.cpp let b:fswitchlocs = '.,reg:|t(est)?.*|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'], @@ -53,14 +65,16 @@ setlocal errorformat+=%X%*\\a:\ Leaving\ directory\ [`']%f' setlocal errorformat+=%*[^[]\[%tRROR\]%m\ \[%f:%l\] setlocal errorformat+=%*[^[]\[%tARNING\]%m\ \[%f:%l\] +packadd termdebug +let g:termdebug_wide = 1 +function! s:Debug(...) + tabedit % + let t:debug_tab=1 + au BufDelete !gdb ++once if exists('t:debug_tab') | tabclose | endif +endfunction +command! -nargs=* -complete=file -bang Debug call Debug() | Termdebug +command! -nargs=+ -complete=file -bang DebugCommand call Debug() | TermdebugCommand + setlocal foldmethod=syntax -" set foldlevel according to number of matches of 'namespace' and 'class' not -" containing ';' -function! InitialFoldLevel() - let v:errmsg = "" - keepjumps keeppatterns silent! 1,/}/s/^\(namespace\|class\) \+[^;]*$//n - if v:errmsg == "" - let &foldlevel=str2nr(split(v:statusmsg)[0]) - endif -endf -call InitialFoldLevel() +setlocal foldlevelstart=2 +setlocal foldlevel=99