From 3d32ed613fddec154ebe2d1986ca8830d2ec01d8 Mon Sep 17 00:00:00 2001 From: ADAM David Alan Martin Date: Mon, 2 Jul 2018 12:57:28 -0400 Subject: [PATCH] Update CPlusPlus and Doxygen formats to be better. Now the `'*'` characters in fixed-width blocks show up correctly, with respect to how I write code. (I think doxygen also swallows them anyhow, so the highlighting is more consistent with doxygen's parser.) Also on loading a file, everything looks better now. --- vim/after/syntax/cplusplus.vim | 14 +++++++------- vim/after/syntax/doxygen.vim | 13 ++++++++----- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/vim/after/syntax/cplusplus.vim b/vim/after/syntax/cplusplus.vim index e0aa757..68eb392 100644 --- a/vim/after/syntax/cplusplus.vim +++ b/vim/after/syntax/cplusplus.vim @@ -7,13 +7,13 @@ syn include @cxxInDoxygen syntax/cpp.vim unlet b:current_syntax " This enables Basic C++ support, with my extensions. -let c_no_bracket_error=1 -let c_no_curly_error=1 -if version < 600 - so :p:h/cpp.vim -else - runtime! syntax/cpp.vim -endif +"let c_no_bracket_error=1 +"let c_no_curly_error=1 +"if version < 600 +" so :p:h/cpp.vim +"else +" runtime! syntax/cpp.vim +"endif if exists("b:current_syntax") unlet b:current_syntax diff --git a/vim/after/syntax/doxygen.vim b/vim/after/syntax/doxygen.vim index 7a22c1e..37fc54a 100644 --- a/vim/after/syntax/doxygen.vim +++ b/vim/after/syntax/doxygen.vim @@ -8,17 +8,19 @@ if exists("b:current_syntax") unlet b:current_syntax endif +syn match blueCommentStar "^[ ]*\*[ ]*" contained containedin=doxygenBriefLine,doxygenFixedWidth,@doxyNestedCxx + " Make all C++ code in a doxygen block look kinda like natural C++ "syn match doxygenSpecialMultilineDesc "`" -syn cluster doxyNestedCXX contains=@cxxInDoxygen,doxygenSpecialContinueComment,doxygenSpecialContinueCommentWhite +syn cluster doxyNestedCXX contains=@cxxInDoxygen,blueCommentStar +syn cluster doxyNeedsFixedWidth contains=doxygenBody,doxygenSpecialMultilineDesc,doxygenBriefLine,doxygenBrief -syn region doxygenFixedWidth containedin=doxygenBody matchgroup=Comment start=+^[ ]*\** *@code$+ skip=+^\n+ keepend end=+^[ ]*\** *@endcode$+ contains=@doxyNestedCXX +syn region doxygenFixedWidth containedin=@doxyNeedsFixedWidth matchgroup=Comment start=+@code+ skip=+^\n+ keepend end=+@endcode+ contains=@doxyNestedCXX -syn region doxygenFixedWidth containedin=doxygenBody matchgroup=Comment start=+^[ ]*\** *\~\~\~$+ skip=+^\n+ end=+^[ ]*\** *\~\~\~$+ contains=@doxyNestedCXX +syn region doxygenFixedWidth containedin=@doxyNeedsFixedWidth matchgroup=Comment start=+\~\~\~+ skip=+^\n+ end=+\~\~\~+ contains=@doxyNestedCXX - -syn region doxygenFixedWidth containedin=doxygenBody matchgroup=Comment start=+`+ end=+`+ keepend contains=@doxyNestedCXX +syn region doxygenFixedWidth containedin=@doxyNeedsFixedWidth matchgroup=Comment start=+`+ end=+`+ keepend contains=@doxyNestedCXX "syn match doxygenFixedWidth +`.\+`+ contained @@ -30,3 +32,4 @@ syn region doxygenFixedWidth containedin=doxygenBody matchgroup=Comment start=+` " +\(\<[npcbea]\>\|\\|\\>\|\#]\)\@!+ nextgroup=doxygenParam,doxygenRetval,doxygenBriefWord,doxygenBold,doxygenBOther,doxygenOther,doxygenOtherTODO,doxygenOtherWARN,doxygenOtherBUG,doxygenPage,doxygenGroupDefine,doxygenCodeRegion,doxygenVerbatimRegion,doxygenDotRegion hi link doxygenFixedWidth None +hi link blueCommentStar doxygenSpecialContinueComment