2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" DoxyGen syntax hilighting extension for c/c++/idl/java  
						 
					
						
							
								
									
										
										
										
											2008-08-06 17:06:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" Language:     doxygen on top of c, cpp, idl, java, php  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" Maintainer:   Michael Geddes <vimmer@frog.wheelycreek.net>  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" Author:       Michael Geddes  
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" Last Change: December 2020  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" Version:      1.30  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" Copyright 2004-2020 Michael Geddes  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" Please feel free to use, modify & distribute all or part of this script,  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" providing this copyright message remains.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" I would appreciate being acknowledged in any derived scripts, and would  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" appreciate and welcome any updates, modifications or suggestions.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" NOTE:  Comments welcome!  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" There are two variables that control the syntax highlighting produced by this  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" script:  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" doxygen_enhanced_colour  - Use the (non-standard) original colours designed  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"                            for this highlighting.  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" doxygen_my_rendering     - Disable the HTML bold/italic/underline rendering.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" A brief description without '.' or '!' will cause the end comment  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" character to be marked as an error.  You can define the colour of this using  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" the highlight doxygenErrorComment.  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" A \link without an \endlink will cause an error highlight on the end-comment.  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" This is defined by doxygenLinkError  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" The variable g:doxygen_codeword_font can be set to the guifont for marking \c  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" words - a 'typewriter' like font normally. Spaces must be escaped.  It can  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" also be set to any highlight attribute. Alternatively, a highlight for doxygenCodeWord  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" can be used to override it.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
									
										
										
										
											2008-08-06 17:06:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" By default, highlighting is done assuming you have the JAVADOC_AUTOBRIEF  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" setting turned on in your Doxygen configuration.  If you don't, you  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" can set the variable g:doxygen_javadoc_autobrief to 0 to have the  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" highlighting more accurately reflect the way Doxygen will interpret your  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" comments.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
									
										
										
										
											2008-08-06 17:06:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								" Support for cpp, c, idl, doxygen and php.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" Special thanks to:  Wu Yongwei, Toby Allsopp  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  exists ( 'b:suppress_doxygen' )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  unlet  b :suppress_doxygen 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  finish 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								endif  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								if  exists ( 'b:current_syntax' )  && b :current_syntax  = ~  'doxygen'  && ! exists ( 'doxygen_debug_script' )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  finish 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								endif  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								let  s :cpo_save  =  &cpo  
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								try  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  set  cpo &vim 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Start of Doxygen syntax hilighting:  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " C/C++ Style line comments  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenCommentWhite  + \s *\ze /\*\(\*/ \) \@! [*! ]+  containedin = phpRegion 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenCommentWhite  + \s *\ze // [/! ]+  containedin = phpRegion 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenCommentWhite  + \s *\ze /\*\(\*/ \) \@! [*! ]+ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenCommentWhite  + \s *\ze // [/! ]+  containedin = phpRegion 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenComment  start = + /\*\(\*/ \) \@! [*! ]+   end = + \*/+  contains = doxygenSyncStart , doxygenStart , doxygenTODO , doxygenLeadingWhite   keepend  fold  containedin = phpRegion 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenCommentL  start = + // [/! ]< \@! + me = e -1  end = + $+  contains = doxygenLeadingLWhite , doxygenStartL , @Spell  keepend  skipwhite  skipnl  nextgroup = doxygenCommentWhite2  fold  containedin = phpRegion 
							 
						 
					
						
							
								
									
										
										
										
											2008-08-06 17:06:04 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenCommentL  start = + // [/! ]< + me = e -2  end = + $+  contains = doxygenStartL , @Spell  keepend  skipwhite  skipnl  fold  containedin = phpRegion 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenCommentL  start = + // @\ze [{}]+  end = + $+  contains = doxygenGroupDefine , doxygenGroupDefineSpecial , @Spell  fold  containedin = phpRegion 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenComment  start = + /\*@\ze[{}]+ end=+\*/ +  contains = doxygenGroupDefine , doxygenGroupDefineSpecial , @Spell  fold  containedin = phpRegion 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Single line brief followed by multiline comment.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenCommentWhite2  + \_s *\ze /\*\(\*/ \) \@! [*! ]+  contained  nextgroup = doxygenComment2 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenComment2  start = + /\*\(\*/ \) \@! [*! ]+  end = + \*/+  contained  contains = doxygenSyncStart2 , doxygenStart2 , doxygenTODO  keepend  fold 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " This helps with sync-ing as for some reason, syncing behaves differently to a normal region, and the start pattern does not get matched.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenSyncStart2  + [^*/]+  contained  nextgroup = doxygenBody , doxygenPrev , doxygenStartSpecial , doxygenSkipComment , doxygenStartSkip2  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Skip empty lines at the start for when comments start on the 2nd/3rd line.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenStartSkip2  + ^\s *\*[^/]+ me = e -1  contained  nextgroup = doxygenBody , doxygenStartSpecial , doxygenStartSkipWhite  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenStartSkip2  + ^\s *\*$+  contained  nextgroup = doxygenBody , doxygenStartSpecial , doxygenStartSkipWhite  skipwhite  skipnl 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenStart2  + /\*[*! ]+  contained  nextgroup = doxygenBody , doxygenPrev , doxygenStartSpecial , doxygenStartSkip2  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Match the Starting pattern (effectively creating the start of a BNF)  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  if  ! exists ( 'g:doxygen_javadoc_autobrief' )  | |  g :doxygen_javadoc_autobrief 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    syn  match  doxygenStart  + /\*[*! ]+  contained  nextgroup = doxygenBrief , doxygenPrev , doxygenFindBriefSpecial , doxygenStartSpecial , doxygenStartSkipWhite , doxygenPage  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenLeadingLWhite  + \s \+ +  contained  nextgroup = doxygenPrevL , doxygenBriefL , doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenStartL  + // [/! ]+  contained  nextgroup = doxygenLeaingLWhite , doxygenPrevL , doxygenBriefL , doxygenSpecial 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    " Match the first sentence as a brief comment  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  !  exists ( 'g:doxygen_end_punctuation' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      let  g :doxygen_end_punctuation = '[.]' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    exe  'syn region doxygenBrief contained start=+[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]+ start=+\(^\s*\)\@<!\*/\@!+ start=+\<\k+ skip=+' .doxygen_end_punctuation .'\S\@=+ end=+' .doxygen_end_punctuation .'+ end=+\(\s*\(\n\s*\*\=\s*\)[@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\@=+ contains=doxygenSmallSpecial,doxygenContinueCommentWhite,doxygenLeadingWhite,doxygenBriefEndComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell  skipnl nextgroup=doxygenBody' 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenBriefEndComment  + \*/+  contained 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    exe  'syn region doxygenBriefL start=+@\k\@!\|[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@]+ start=+\<+ skip=+' .doxygen_end_punctuation .'\S+ end=+' .doxygen_end_punctuation .'\|$+ contained contains=doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell keepend' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenPrevL  + < +  contained   nextgroup = doxygenBriefL , doxygenSpecial  skipwhite 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  else 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    syn  match  doxygenStart  + /\*[*! ]+  contained  nextgroup = doxygenBody , doxygenPrev , doxygenFindBriefSpecial , doxygenStartSpecial , doxygenStartSkipWhite , doxygenPage  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenStartL  + // [/! ]+  contained  nextgroup = doxygenLeadingLWhite , doxygenPrevL , doxygenLine , doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenLeadingLWhite  + \s \+ +  contained  nextgroup = doxygenPrevL , doxygenLine , doxygenSpecial 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    syn  region  doxygenLine  start = + @\k \@! \| [\\@]\( [npcbea ]\> \| em \> \| ref \> \| link \> \| f \$\| [$\\&< > #]\) \| [^ \t \\@< ]+  start = + \< +  end = '$'  contained  contains = doxygenSmallSpecial , doxygenHyperLink , doxygenHashLink , @doxygenHtmlGroup , @Spell  keepend 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenPrevL  + < +  contained   nextgroup = doxygenLine , doxygenSpecial  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " This helps with sync-ing as for some reason, syncing behaves differently to a normal region, and the start pattern does not get matched.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenSyncStart  + \ze [^*/]+  contained  nextgroup = doxygenBrief , doxygenPrev , doxygenStartSpecial , doxygenFindBriefSpecial , doxygenStartSkipWhite , doxygenPage  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Match an [@\]brief so that it moves to body-mode.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " syn match doxygenBriefLine  contained  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenBriefSpecial  contained  + [@\\]+  nextgroup = doxygenBriefWord  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " syn region doxygenFindBriefSpecial start=+[@\\]brief\>+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ keepend contains=doxygenBriefSpecial nextgroup=doxygenBody keepend skipwhite skipnl contained  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenFindBriefSpecial  start = + [@\\]brief \> +  skip = + ^\s *\( \*/\@! \s *\) \= \( \< \| [@\\]\< \( [npcbea ]\> \| em \> \| ref \| link \> \> \| f \$\| [$\\&< > #]\) \| [^ \t \\@*]\) +  end = + ^+  keepend  contains = doxygenBriefSpecial  nextgroup = doxygenBody  keepend  skipwhite  skipnl  contained 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"syn region doxygenBriefLine contained start=+\<\k+ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ contains=doxygenContinueCommentWhite,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell  skipwhite keepend matchgroup=xxx  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								syn  region  doxygenBriefLine  contained  start = + \< \k +  skip = + ^\s *\( \*/\@! \s *\) \= \( \< \| [@\\]\< \( [npcbea ]\> \| em \> \| ref \| link \> \> \| f \$\| [$\\&< > #]\) \| [^ \t \\@*]\) +  end = + ^+   skipwhite  keepend  matchgroup = xxx  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								" syn region doxygenBriefLine matchgroup=xxxy contained start=+\<\k.\++ skip=+^\s*\k+ end=+end+  skipwhite keepend  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"doxygenFindBriefSpecial,  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "" syn region doxygenSpecialMultilineDesc  start=+.\++ contained contains=doxygenSpecialContinueCommentWhite,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell  skipwhite keepend  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Match a '<' for applying a comment to the previous element.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenPrev  + < +  contained  nextgroup = doxygenBrief , doxygenBody , doxygenSpecial , doxygenStartSkipWhite  skipwhite 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								if  exists ( "c_comment_strings" )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " These are anti-Doxygen comments.  If there are more than two asterisks or 3 '/'s  
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " then turn the comments back into normal C comments.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  cComment  start = "/\*\*\*"  end = "\*/"  contains = @cCommentGroup , cCommentString , cCharacter , cNumbersCom , cSpaceError 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  cCommentL  start = "////"  skip = "\\$"  end = "$"  contains = @cCommentGroup , cComment2String , cCharacter , cNumbersCom , cSpaceError 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								else  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  cComment  start = "/\*\*\*"  end = "\*/"  contains = @cCommentGroup , cSpaceError 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  cCommentL  start = "////"  skip = "\\$"  end = "$"  contains = @cCommentGroup , cSpaceError 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								endif  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Special commands at the start of the area:  starting with '@' or '\'  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenStartSpecial  contained  start = + [@\\]\( [npcbea ]\> \| em \> \| ref \> \| link \> \| f \$\| [$\\&< > #]\) \@! +  end = + $+  end = + \*/+ me = s -1 , he = s -1   contains = doxygenSpecial  nextgroup = doxygenSkipComment  skipnl  keepend 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenSkipComment  contained  + ^\s *\*/\@! +  nextgroup = doxygenBrief , doxygenStartSpecial , doxygenFindBriefSpecial , doxygenPage  skipwhite 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  "syn region doxygenBodyBit contained start=+$+  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " The main body of a doxygen comment.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenBody  contained  start = + \( /\*[*!]\)\@<!<\|[^<]\|$+ matchgroup=doxygenEndComment end=+\*/ + re = e -2 , me = e -2  contains = doxygenContinueCommentWhite , doxygenTODO , doxygenSpecial , doxygenSmallSpecial , doxygenHyperLink , doxygenHashLink , @doxygenHtmlGroup , @Spell 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " These allow the skipping of comment continuation '*' characters.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenContinueCommentWhite  contained  + ^\s *\ze \*+  nextgroup = doxygenContinueComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenContinueComment  contained  + \*/\@! + 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Catch a Brief comment without punctuation - flag it as an error but  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " make sure the end comment is picked up also.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenErrorComment  contained  + \*/+ 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Skip empty lines at the start for when comments start on the 2nd/3rd line.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  if  ! exists ( 'g:doxygen_javadoc_autobrief' )  | |  g :doxygen_javadoc_autobrief 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    syn  match  doxygenStartSkipWhite  + ^\s *\ze \*/\@! +  contained  nextgroup = doxygenBrief , doxygenStartSpecial , doxygenFindBriefSpecial , doxygenStartSkipWhite , doxygenPage  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    "syn match doxygenStartSkipWhite +^\s*\ze\*$+ contained nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkipWhite,doxygenPage skipwhite skipnl  
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  else 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    syn  match  doxygenStartSkipWhite  + ^\s *\*[^/]+ me = e -1  contained  nextgroup = doxygenStartSpecial , doxygenFindBriefSpecial , doxygenStartSkipWhite , doxygenPage , doxygenBody  skipwhite  skipnl 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  match  doxygenStartSkipWhite  + ^\s *\*$+  contained  nextgroup = doxygenStartSpecial , doxygenFindBriefSpecial , doxygenStartSkipWhite , doxygenPage , doxygenBody  skipwhite  skipnl 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Create the single word matching special identifiers.  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  fun !  s :DxyCreateSmallSpecial (  kword ,  name  ) 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    let  mx = '[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\\[\\<>&.]@\|[.,]\w\@=\|::\|([^)]*)\|&[0-9a-zA-Z]\{2,7};\)\+' 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    exe  'syn region doxygenSpecial' .a :name .'Word contained start=+' .a :kword .'+ end=+\(\_s\+' .mx .'\)\@<=[-a-zA-Z_0-9+*/^%|~!=&\\]\@!+ skipwhite contains=doxygenContinueCommentWhite,doxygen' .a :name .'Word' 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    exe  'syn match doxygen' .a :name .'Word contained "\_s\@<=' .mx .'" contains=doxygenHtmlSpecial,@Spell keepend' 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  endfun 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  call  s :DxyCreateSmallSpecial ( 'p' ,  'Code' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  call  s :DxyCreateSmallSpecial ( 'c' ,  'Code' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  call  s :DxyCreateSmallSpecial ( 'b' ,  'Bold' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  call  s :DxyCreateSmallSpecial ( 'e' ,  'Emphasised' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  call  s :DxyCreateSmallSpecial ( 'em' ,  'Emphasised' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  call  s :DxyCreateSmallSpecial ( 'a' ,  'Argument' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  call  s :DxyCreateSmallSpecial ( 'ref' ,  'Ref' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  delfun  s :DxyCreateSmallSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenSmallSpecial  contained  + [@\\]\( \< [npcbea ]\> \| \< em \> \| \< ref \> \| \< link \> \| f \$\| [$\\&< > #]\) \@= +  nextgroup = doxygenOtherLink , doxygenHyperLink , doxygenHashLink , doxygenFormula , doxygenSymbol , doxygenSpecial .*Word 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Now for special characters  
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenSpecial  contained  + [@\\]\( \< [npcbea ]\> \| \< em \> \| \< ref \| \< link \> \> \| \< f \$\| [$\\&< > #]\) \@! +  nextgroup = doxygenParam , doxygenTParam , doxygenRetval , doxygenBriefWord , doxygenBold , doxygenBOther , doxygenOther , doxygenOtherTODO , doxygenOtherWARN , doxygenOtherBUG , doxygenPage , doxygenGroupDefine , doxygenCodeRegion , doxygenVerbatimRegion , doxygenDotRegion 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " doxygenOtherLink,doxygenSymbol,doxygenFormula,doxygenErrorSpecial,doxygenSpecial.*Word  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenGroupDefine  contained  + @\@< = [{}]+ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenGroupDefineSpecial  contained  + @\ze [{}]+ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenErrorSpecial  contained  + \s + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Match parameters and retvals (highlighting the first word as special).  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenParamDirection  contained  "\v\[(\s*in>((]\s*\[|\s*,\s*)out>)=|out>((]\s*\[|\s*,\s*)in>)=)\]"  nextgroup = doxygenParamName  skipwhite 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  keyword  doxygenParam  contained  param  nextgroup = doxygenParamName , doxygenParamDirection  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenTParam  contained  tparam  nextgroup = doxygenParamName  skipwhite 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenParamName  contained  + [A - Za - z0 -9 _:]\+ +  nextgroup = doxygenSpecialMultilineDesc  skipwhite 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  keyword  doxygenRetval  contained  retval  throw  throws  exception  nextgroup = doxygenReturnValue  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenReturnValue  contained  + \S \+ +  nextgroup = doxygenSpecialMultilineDesc  skipwhite 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Match one line identifiers.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenOther  contained  addindex  anchor 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  \ dontinclude  endhtmlonly  endlatexonly  showinitializer  hideinitializer 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  \ example  htmlonly  image  include  includelineno  ingroup  latexonly  line 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  \ overload  relates  related  relatesalso  relatedalso  sa  skip  skipline 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  \ until  verbinclude  version  addtogroup  htmlinclude  copydoc  dotfile 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  \ xmlonly  endxmlonly 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  \ nextgroup = doxygenSpecialOnelineDesc  copybrief  copydetails  copyright  dir  extends 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  \ implements 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenCodeRegion  contained  matchgroup = doxygenOther  start = + \< code \> +  matchgroup = doxygenOther  end = + [\\@]\@< = \< endcode \> +  contains = doxygenCodeRegionSpecial , doxygenContinueCommentWhite , doxygenErrorComment , @NoSpell 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenCodeRegionSpecial  contained  + [\\@]\( endcode \> \) \@= + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenVerbatimRegion  contained  matchgroup = doxygenOther  start = + \< verbatim \> +  matchgroup = doxygenOther  end = + [\\@]\@< = \< endverbatim \> +  contains = doxygenVerbatimRegionSpecial , doxygenContinueCommentWhite , doxygenErrorComment , @NoSpell 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenVerbatimRegionSpecial  contained  + [\\@]\( endverbatim \> \) \@= + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  if  exists ( 'b:current_syntax' ) 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-22 22:33:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    let  b :doxygen_syntax_save = b :current_syntax 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    unlet  b :current_syntax 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  include  @Dotx  syntax /dot .vim 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-22 22:33:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  if  exists ( 'b:doxygen_syntax_save' ) 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-22 22:33:57 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    let  b :current_syntax = b :doxygen_syntax_save 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    unlet  b :doxygen_syntax_save 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    unlet  b :current_syntax 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenDotRegion  contained  matchgroup = doxygenOther  start = + \< dot \> +  matchgroup = doxygenOther  end = + [\\@]\@< = \< enddot \> +  contains = doxygenDotRegionSpecial , doxygenErrorComment , doxygenContinueCommentWhite , @NoSpell , @Dotx 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenDotRegionSpecial  contained  + [\\@]\( enddot \> \) \@= + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Match single line identifiers.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenBOther  contained  class  enum  file  fn  mainpage  interface 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  \ namespace  struct  typedef  union  var  def  name 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  \ nextgroup = doxygenSpecialTypeOnelineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenOther  contained  par  nextgroup = doxygenHeaderLine 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHeaderLine  start = + .+  end = + ^+  contained  skipwhite  nextgroup = doxygenSpecialMultilineDesc 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Match the start of other multiline comments.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenOther  contained  arg  author  authors  date  deprecated  li  return  returns  result  see  invariant  note  post  pre  remarks  since  test  internal  nextgroup = doxygenSpecialMultilineDesc 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  keyword  doxygenOtherTODO  contained  todo  attention  nextgroup = doxygenSpecialMultilineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenOtherWARN  contained  warning  nextgroup = doxygenSpecialMultilineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenOtherBUG  contained  bug  nextgroup = doxygenSpecialMultilineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Handle \link, \endlink, highlighting the link-to and the link text bits separately.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenOtherLink  matchgroup = doxygenOther  start = + \< link \> +  end = + [\@]\@< = endlink \> +  contained  contains = doxygenLinkWord , doxygenContinueCommentWhite , doxygenLinkError , doxygenEndlinkSpecial 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenEndlinkSpecial  contained  + [\\@]\zeendlink \> + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenLinkWord  "[_a-zA-Z:#()][_a-z0-9A-Z:#()]*\>"  contained  skipnl  nextgroup = doxygenLinkRest , doxygenContinueLinkComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenLinkRest  + [^*@\\]\| \*/\@! \| [@\\]\( endlink \> \) \@! +  contained  skipnl  nextgroup = doxygenLinkRest , doxygenContinueLinkComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenContinueLinkComment  contained  + ^\s *\*\= [^/]+ me = e -1  nextgroup = doxygenLinkRest 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenLinkError  "\*/"  contained 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " #Link hilighting.  
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenHashLink  /\(\h\w*\)\?#\(\.\w\@=\|\w\+\|::\|()\)\+/  contained  contains = doxygenHashSpecial 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenHashSpecial  /#/  contained 
							 
						 
					
						
							
								
									
										
										
										
											2010-01-06 20:54:52 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenHyperLink  /\(\s\|^\s*\*\?\)\@<=\(http\|https\|ftp\):\/\/[-0-9a-zA-Z_?&=+#%/ .! ':;@~ ]\+ / contained 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Handle \page.  This does not use doxygenBrief.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenPage  "[\\@]page\>" me = s + 1  contained  skipwhite  nextgroup = doxygenPagePage 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenPagePage  page  contained  skipwhite  nextgroup = doxygenPageIdent 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenPageDesc   start = + .\+ +  end = + $+  contained  skipwhite  contains = doxygenSmallSpecial , @doxygenHtmlGroup  keepend  skipwhite  skipnl  nextgroup = doxygenBody 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenPageIdent  "\<\w\+\>"  contained  nextgroup = doxygenPageDesc 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Handle section  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenOther  defgroup  section  subsection  subsubsection  weakgroup  contained  skipwhite  nextgroup = doxygenSpecialIdent 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenSpecialSectionDesc   start = + .\+ +  end = + $+  contained  skipwhite  contains = doxygenSmallSpecial , @doxygenHtmlGroup  keepend  skipwhite  skipnl  nextgroup = doxygenContinueCommentWhite 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenSpecialIdent  "\<\w\+\>"  contained  nextgroup = doxygenSpecialSectionDesc 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Does the one-line description for the one-line type identifiers.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenSpecialTypeOnelineDesc   start = + .\+ +  end = + $+  contained  skipwhite  contains = doxygenSmallSpecial , @doxygenHtmlGroup  keepend 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenSpecialOnelineDesc   start = + .\+ +  end = + $+  contained  skipwhite  contains = doxygenSmallSpecial , @doxygenHtmlGroup  keepend 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Handle the multiline description for the multiline type identifiers.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Continue until an 'empty' line (can contain a '*' continuation) or until the  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " next whole-line @ command \ command.  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenSpecialMultilineDesc   start = + .\+ +  skip = + ^\s *\( \*/\@! \s *\) \= \( \< \| [@\\]\< \( [npcbea ]\> \| em \> \| ref \| link \> \> \| f \$\| [$\\&< > #]\) \| [^ \t \\@*]\) +  end = + ^+  contained  contains = doxygenSpecialContinueCommentWhite , doxygenSmallSpecial , doxygenHyperLink , doxygenHashLink , @doxygenHtmlGroup , @Spell   skipwhite  keepend 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								"  syn match doxygenSpecialContinueComment contained +^\s*\*/\@!\s*+ nextgroup=doxygenSpecial skipwhite  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenSpecialContinueCommentWhite  contained  + ^\s *\ze \*+  nextgroup = doxygenSpecialContinueComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenSpecialContinueComment  contained  + \*/\@! + 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Handle special cases  'bold' and 'group'  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenBold  contained  bold  nextgroup = doxygenSpecialHeading 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenBriefWord  contained  brief  nextgroup = doxygenBriefLine  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenSpecialHeading  + .\+ +  contained  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenGroup  contained  group  nextgroup = doxygenGroupName  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenGroupName  contained  + \k \+ +  nextgroup = doxygenSpecialOnelineDesc  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Handle special symbol identifiers  @$, @\, @$ etc  
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  match  doxygenSymbol  contained  + [$\\&< > #n ]+ 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Simplistic handling of formula regions  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenFormula  contained  matchgroup = doxygenFormulaEnds  start = + f \$+  end = + [@\\]f \$+  contains = doxygenFormulaSpecial , doxygenFormulaOperator 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenFormulaSpecial  contained  + [@\\]\( f [^$]\| [^f ]\) + me = s + 1  nextgroup = doxygenFormulaKeyword , doxygenFormulaEscaped 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenFormulaEscaped  contained  "." 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenFormulaKeyword  contained   "[a-z]\+" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenFormulaOperator  contained  + [_ ^]+ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenFormula  contained  matchgroup = doxygenFormulaEnds  start = + f \[+  end = + [@\\]f ]+  contains = doxygenFormulaSpecial , doxygenFormulaOperator , doxygenAtom 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenAtom  contained  transparent  matchgroup = doxygenFormulaOperator  start = + {+  end = + }+  contains = doxygenAtom , doxygenFormulaSpecial , doxygenFormulaOperator 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Add TODO hilighting.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenTODO  contained  TODO  README  XXX  FIXME 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Supported HTML subset.  Not perfect, but okay.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  case  ignore 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlTag  contained  matchgroup = doxygenHtmlCh  start = + \v \< /= \ze ( [biuap ]| em | strong | img | br | center | code | dfn | d [ldt ]| hr | h [0 -3 ]| li | [ou ]l | pre | small | sub | sup | table | tt | var | caption | src | alt | longdesc | name | height | width | usemap | ismap | href | type ) > +  skip = + \\< \| \< \k \+ = \( "[^" ]*"\| '[^' ]*\) +  end = + > +  contains = doxygenHtmlCmd , doxygenContinueCommentWhite , doxygenHtmlVar 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  keyword  doxygenHtmlCmd  contained  b  i  em  strong  u  img  a  br  p  center  code  dfn  dl  dd  dt  hr  h1  h2  h3  li  ol  ul  pre  small  sub  sup  table  tt  var  caption  nextgroup = doxygenHtmlVar  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  keyword  doxygenHtmlVar  contained  src  alt  longdesc  name  height  width  usemap  ismap  href  type  nextgroup = doxygenHtmlEqu  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenHtmlEqu  contained  + = +  nextgroup = doxygenHtmlExpr  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenHtmlExpr  contained  + "\(\\.\|[^" ]\) *"\| '\(\\.\|[^' ]\) *'+  nextgroup = doxygenHtmlVar  skipwhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  case  match 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  match  doxygenHtmlSpecial  contained  "&\(copy\|quot\|[AEIOUYaeiouy]uml\|[AEIOUYaeiouy]acute\|[AEIOUaeiouy]grave\|[AEIOUaeiouy]circ\|[ANOano]tilde\|szlig\|[Aa]ring\|nbsp\|gt\|lt\|amp\);" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  cluster  doxygenHtmlGroup  contains = doxygenHtmlCode , doxygenHtmlBold , doxygenHtmlUnderline , doxygenHtmlItalic , doxygenHtmlSpecial , doxygenHtmlTag , doxygenHtmlLink 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  cluster  doxygenHtmlTop  contains = @Spell , doxygenHtmlSpecial , doxygenHtmlTag , doxygenContinueCommentWhite 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  " Html Support  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlLink  contained  start = + < [aA ]\> \s *\( \n \s *\*\s *\) \= \( \( name \| href \) = \( "[^" ]*"\| '[^' ]*'\) \) \= \s *> +  end = + < /[aA ]> + me = e -4  contains = @doxygenHtmlTop 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  hi  link  doxygenHtmlLink  Underlined 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBold  contained  start = "\c<b\>"  end = "\c</b>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlBoldUnderline , doxygenHtmlBoldItalic , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBold  contained  start = "\c<strong\>"  end = "\c</strong>" me = e -9  contains = @doxygenHtmlTop , doxygenHtmlBoldUnderline , doxygenHtmlBoldItalic , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBoldUnderline  contained  start = "\c<u\>"  end = "\c</u>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlBoldUnderlineItalic , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBoldItalic  contained  start = "\c<i\>"  end = "\c</i>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlBoldItalicUnderline , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBoldItalic  contained  start = "\c<em\>"  end = "\c</em>" me = e -5  contains = @doxygenHtmlTop , doxygenHtmlBoldItalicUnderline , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBoldUnderlineItalic  contained  start = "\c<i\>"  end = "\c</i>" me = e -4  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBoldUnderlineItalic  contained  start = "\c<em\>"  end = "\c</em>" me = e -5  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlBoldItalicUnderline  contained  start = "\c<u\>"  end = "\c</u>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlBoldUnderlineItalic , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderline  contained  start = "\c<u\>"  end = "\c</u>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlUnderlineBold , doxygenHtmlUnderlineItalic , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineBold  contained  start = "\c<b\>"  end = "\c</b>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlUnderlineBoldItalic , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineBold  contained  start = "\c<strong\>"  end = "\c</strong>" me = e -9  contains = @doxygenHtmlTop , doxygenHtmlUnderlineBoldItalic , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineItalic  contained  start = "\c<i\>"  end = "\c</i>" me = e -4  contains = @doxygenHtmlTop , htmUnderlineItalicBold , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineItalic  contained  start = "\c<em\>"  end = "\c</em>" me = e -5  contains = @doxygenHtmlTop , htmUnderlineItalicBold , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineItalicBold  contained  start = "\c<b\>"  end = "\c</b>" me = e -4  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineItalicBold  contained  start = "\c<strong\>"  end = "\c</strong>" me = e -9  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineBoldItalic  contained  start = "\c<i\>"  end = "\c</i>" me = e -4  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlUnderlineBoldItalic  contained  start = "\c<em\>"  end = "\c</em>" me = e -5  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalic  contained  start = "\c<i\>"  end = "\c</i>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlItalicBold , doxygenHtmlItalicUnderline , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalic  contained  start = "\c<em\>"  end = "\c</em>" me = e -5  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalicBold  contained  start = "\c<b\>"  end = "\c</b>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlItalicBoldUnderline , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalicBold  contained  start = "\c<strong\>"  end = "\c</strong>" me = e -9  contains = @doxygenHtmlTop , doxygenHtmlItalicBoldUnderline , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalicBoldUnderline  contained  start = "\c<u\>"  end = "\c</u>" me = e -4  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalicUnderline  contained  start = "\c<u\>"  end = "\c</u>" me = e -4  contains = @doxygenHtmlTop , doxygenHtmlItalicUnderlineBold , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalicUnderlineBold  contained  start = "\c<b\>"  end = "\c</b>" me = e -4  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlItalicUnderlineBold  contained  start = "\c<strong\>"  end = "\c</strong>" me = e -9  contains = @doxygenHtmlTop , @Spell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  region  doxygenHtmlCode  contained  start = "\c<code\>"  end = "\c</code>" me = e -7  contains = @doxygenHtmlTop , @NoSpell 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  " Prevent the doxygen contained matches from leaking into the c/rc groups.  
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  syn  cluster  cParenGroup  add = doxygen .*
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  cluster  cParenGroup  remove = doxygenComment , doxygenCommentL 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  cluster  cPreProcGroup  add = doxygen .*
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  cluster  cMultiGroup  add = doxygen .*
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  cluster  rcParenGroup  add = doxygen .*
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  cluster  rcParenGroup  remove = doxygenComment , doxygenCommentL 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  cluster  rcGroup  add = doxygen .*
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  let  s :my_syncolor = 0 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  if  ! exists ( ':SynColor' ) 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    command  - nargs = +  SynColor  hi  def  < args > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    let  s :my_syncolor = 1 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  let  s :my_synlink = 0 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  if  ! exists ( ':SynLink' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    command  - nargs = +  SynLink  hi  def  link  < args > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    let  s :my_synlink = 1 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  try 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    "let did_doxygen_syntax_inits = &background  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    hi  doxygen_Dummy  guifg = black 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    fun !  s :Doxygen_Hilights_Base ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenHtmlSpecial  Special 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenHtmlVar  Type 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenHtmlExpr  String 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenSmallSpecial  SpecialChar 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenSpecialCodeWord  doxygenSmallSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenSpecialBoldWord  doxygenSmallSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenSpecialEmphasisedWord  doxygenSmallSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenSpecialArgumentWord  doxygenSmallSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      " SynColor doxygenFormulaKeyword cterm=bold ctermfg=DarkMagenta guifg=DarkMagenta gui=bold  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenFormulaKeyword  Keyword 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      "SynColor doxygenFormulaEscaped  ctermfg=DarkMagenta guifg=DarkMagenta gui=bold  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenFormulaEscaped  Special 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenFormulaOperator  Operator 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenFormula  Statement 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenSymbol  Constant 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenSpecial  Special 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink  doxygenFormulaSpecial  Special 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      "SynColor doxygenFormulaSpecial ctermfg=DarkBlue guifg=DarkBlue  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    endfun 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    call  s :Doxygen_Hilights_Base ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    fun !  s :Doxygen_Hilights ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      " Pick a sensible default for 'codeword'.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      let  font = '' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      if  exists ( 'g:doxygen_codeword_font' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  g :doxygen_codeword_font  ! ~  '\<\k\+=' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          let  font = 'font=' .g :doxygen_codeword_font 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          let  font = g :doxygen_codeword_font 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								      else 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        " Try and pick a font (only some platforms have been tested).  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  has ( 'gui_running' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          if  has ( 'gui_gtk2' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  &guifont  = =  '' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              let  font = "font='FreeSerif 12'" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            else 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								              let  font = "font='" .substitute ( &guifont ,  '^.\{-}\(\d\+\)$' ,  'FreeSerif \1' , '' ) ."'" 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          elseif  has ( 'gui_win32' )  | |  has ( 'gui_win16' )  | |  has ( 'gui_win95' ) 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  exists ( 'g:doxygen_use_bitsream_vera' )   && g :doxygen_use_bitsream_vera 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              let  font_base = 'Bitstream_Vera_Sans_Mono' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              let  font_base = 'Lucida_Console' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            if  &guifont  = =  '' 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								              let  font = 'font=' .font_base .':h10' 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            else 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								              let  font = 'font=' .matchstr ( substitute ( &guifont ,  '^[^:]*' ,  font_base , '' ) , '[^,]*' ) 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          elseif  has ( 'gui_athena' )  | |  has ( 'gui_gtk' )  | |  &guifont = ~ '^\(-[^-]\+\)\{14}' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  &guifont  = =  '' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              let  font = 'font=-b&h-lucidatypewriter-medium-r-normal-*-*-140-*-*-m-*-iso8859-1' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            " let font='font='.substitute(&guifont,'^\(-[^-]\+\)\{7}-\([0-9]\+\).*', '-b\&h-lucidatypewriter-medium-r-normal-*-*-\2-*-*-m-*-iso8859-1','')  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            " The above line works, but it is hard to expect the combination of  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            " the two fonts will look good.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          elseif  has ( 'gui_kde' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            " let font='font=Bitstream\ Vera\ Sans\ Mono/12/-1/5/50/0/0/0/0/0'  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								          endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								      if  font = = ''  |  let  font = 'gui=bold'  |  endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      exe  'SynColor doxygenCodeWord             term=bold cterm=bold ' .font 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      if  ( exists ( 'g:doxygen_enhanced_color' )  && g :doxygen_enhanced_color )  | |  ( exists ( 'g:doxygen_enhanced_colour' )  && g :doxygen_enhanced_colour ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  &background = = 'light' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenComment  ctermfg = DarkRed  guifg = DarkRed 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenBrief  cterm = bold  ctermfg = Cyan  guifg = DarkBlue  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenBody  ctermfg = DarkBlue  guifg = DarkBlue 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenSpecialTypeOnelineDesc  cterm = bold  ctermfg = DarkRed  guifg = firebrick3  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenBOther  cterm = bold  ctermfg = DarkMagenta  guifg = #aa50aa  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenParam  ctermfg = DarkGray  guifg = #aa50aa 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenParamName  cterm = italic  ctermfg = DarkBlue  guifg = DeepSkyBlue4  gui = italic , bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenSpecialOnelineDesc  cterm = bold  ctermfg = DarkCyan  guifg = DodgerBlue3  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenSpecialHeading  cterm = bold  ctermfg = DarkBlue  guifg = DeepSkyBlue4  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenPrev  ctermfg = DarkGreen  guifg = DarkGreen 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenComment  ctermfg = LightRed  guifg = LightRed 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenBrief  cterm = bold  ctermfg = Cyan  ctermbg = darkgrey  guifg = LightBlue  gui = Bold , Italic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenBody  ctermfg = Cyan  guifg = LightBlue 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenSpecialTypeOnelineDesc  cterm = bold  ctermfg = Red  guifg = firebrick3  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenBOther  cterm = bold  ctermfg = Magenta  guifg = #aa50aa  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenParam  ctermfg = LightGray  guifg = LightGray 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenParamName  cterm = italic  ctermfg = LightBlue  guifg = LightBlue  gui = italic , bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenSpecialOnelineDesc  cterm = bold  ctermfg = LightCyan  guifg = LightCyan  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenSpecialHeading  cterm = bold  ctermfg = LightBlue  guifg = LightBlue  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          SynColor  doxygenPrev  ctermfg = LightGreen  guifg = LightGreen 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        endif 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SynLink   doxygenValue  doxygenParamName 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								      else 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SynLink  doxygenComment  SpecialComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenBrief  Statement 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenBody  Comment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenSpecialTypeOnelineDesc  Statement 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenBOther  Constant 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenParam  SpecialComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenParamName  Underlined 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenSpecialOnelineDesc  Statement 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenSpecialHeading  Statement 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        SynLink  doxygenPrev  SpecialComment 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        SynLink  doxygenValue  Constant 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								      endif 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								      SynLink  doxygenTParam  doxygenParam 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    endfun 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    call  s :Doxygen_Hilights ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    syn  match  doxygenLeadingWhite  + \( ^\s *\*\) \@< = \s *+  contained 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    " This is still a proposal, but won't do any harm.  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    aug  doxygengroup 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    au ! 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    au  Syntax  UserColor_reset  nested  call  s :Doxygen_Hilights_Base ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    au  Syntax  UserColor_ {on , reset , enable } nested  call  s :Doxygen_Hilights ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    aug  END 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenBody                    Comment 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenLine                    doxygenBody 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenTODO                    Todo 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenOtherTODO               Todo 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenOtherWARN               Todo 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenOtherBUG                Todo 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenLeadingLWhite           doxygenBody 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenErrorSpecial            Error 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenErrorEnd                Error 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenErrorComment            Error 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenLinkError               Error 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenBriefSpecial            doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHashSpecial             doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenGroupDefineSpecial      doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenEndlinkSpecial          doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenCodeRegionSpecial       doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenVerbatimRegionSpecial   doxygenSpecial 
							 
						 
					
						
							
								
									
										
										
										
											2007-05-05 18:24:42 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenDotRegionSpecial        doxygenSpecial 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenGroupDefine             doxygenParam 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenSpecialMultilineDesc    doxygenSpecialOnelineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenFormulaEnds             doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenBold                    doxygenParam 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenBriefWord               doxygenParam 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenRetval                  doxygenParam 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenOther                   doxygenParam 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenStart                   doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenStart2                  doxygenStart 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenComment2                doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenCommentL                doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenContinueComment         doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenSpecialContinueComment  doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenSkipComment             doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenEndComment              doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenStartL                  doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenBriefEndComment         doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenPrevL                   doxygenPrev 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenBriefL                  doxygenBrief 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenBriefLine               doxygenBrief 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHeaderLine              doxygenSpecialHeading 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenCommentWhite            Normal 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenCommentWhite2           doxygenCommentWhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenContinueCommentWhite    doxygenCommentWhite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenStartSkipWhite          doxygenContinueCommentWhite 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenLinkWord                doxygenParamName 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenLinkRest                doxygenSpecialMultilineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHyperLink               doxygenLinkWord 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHashLink                doxygenLinkWord 
							 
						 
					
						
							
								
									
										
										
										
											2020-12-23 13:56:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    SynLink  doxygenReturnValue             doxygenValue 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenPage                    doxygenSpecial 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenPagePage                doxygenBOther 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenPageIdent               doxygenParamName 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenPageDesc                doxygenSpecialTypeOnelineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenSpecialIdent            doxygenPageIdent 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenSpecialSectionDesc      doxygenSpecialMultilineDesc 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenSpecialRefWord          doxygenOther 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenRefWord                 doxygenPageIdent 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenContinueLinkComment     doxygenComment 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlCh                  Function 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlCmd                 Statement 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlBoldItalicUnderline      doxygenHtmlBoldUnderlineItalic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlUnderlineBold            doxygenHtmlBoldUnderline 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlUnderlineItalicBold      doxygenHtmlBoldUnderlineItalic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlUnderlineBoldItalic      doxygenHtmlBoldUnderlineItalic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlItalicUnderline          doxygenHtmlUnderlineItalic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlItalicBold               doxygenHtmlBoldItalic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlItalicBoldUnderline      doxygenHtmlBoldUnderlineItalic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlItalicUnderlineBold      doxygenHtmlBoldUnderlineItalic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenHtmlLink                     Underlined 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SynLink  doxygenParamDirection               StorageClass 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ! exists ( "doxygen_my_rendering" )  && ! exists ( "html_my_rendering" ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenBoldWord              term = bold  cterm = bold  gui = bold 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenEmphasisedWord        term = italic  cterm = italic  gui = italic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink   doxygenArgumentWord          doxygenEmphasisedWord 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink   doxygenHtmlCode              doxygenCodeWord 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynLink   doxygenHtmlBold              doxygenBoldWord 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenHtmlBoldUnderline        term = bold , underline  cterm = bold , underline  gui = bold , underline 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenHtmlBoldItalic           term = bold , italic  cterm = bold , italic  gui = bold , italic 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenHtmlBoldUnderlineItalic  term = bold , italic , underline  cterm = bold , italic , underline  gui = bold , italic , underline 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenHtmlUnderline         term = underline  cterm = underline  gui = underline 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenHtmlUnderlineItalic   term = italic , underline  cterm = italic , underline  gui = italic , underline 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      SynColor  doxygenHtmlItalic            term = italic  cterm = italic  gui = italic 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-16 18:30:08 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  finally 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  s :my_synlink  |  delcommand  SynLink  |  endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  s :my_syncolor  |  delcommand  SynColor  |  endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  endtry 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  if  &syntax = = 'idl' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    syn  cluster  idlCommentable  add = doxygenComment , doxygenCommentL 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  "syn sync clear  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "syn sync maxlines=500  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "syn sync minlines=50  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  sync  match  doxygenComment  groupthere  cComment  "/\@<!/\*" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  sync  match  doxygenSyncComment  grouphere  doxygenComment  "/\@<!/\*[*!]" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  "syn sync match doxygenSyncComment grouphere doxygenComment "/\*[*!]" contains=doxygenStart,doxygenTODO keepend  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  syn  sync  match  doxygenSyncEndComment  groupthere  NONE  "\*/" 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								  if  ! exists ( 'b:current_syntax' ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    let  b :current_syntax  =  "doxygen" 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    let  b :current_syntax  =  b :current_syntax .'.doxygen' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  endif 
							 
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2006-04-17 22:14:47 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								finally  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  let  &cpo  =  s :cpo_save 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								  unlet  s :cpo_save 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								endtry  
						 
					
						
							
								
									
										
										
										
											2017-11-21 23:09:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								let  suppress_doxygen = 1  
						 
					
						
							
								
									
										
										
										
											2006-04-15 20:25:09 +00:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								" vim:et sw=2 sts=2