annotate runtime/syntax/doxygen.vim @ 1125:96cd8222a819

updated for version 7.1a
author vimboss
date Sat, 05 May 2007 18:24:42 +0000
parents 2c885fab04e3
children f4f8014d516e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
1 " DoxyGen syntax hilighting extension for c/c++/idl/java
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
2 " Language: doxygen on top of c, cpp, idl, java
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
3 " Maintainer: Michael Geddes <vimmer@frog.wheelycreek.net>
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
4 " Author: Michael Geddes
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
5 " Last Change: April 2007
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
6 " Version: 1.20
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
7 "
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
8 " Copyright 2004-2006 Michael Geddes
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
9 " Please feel free to use, modify & distribute all or part of this script,
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
10 " providing this copyright message remains.
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
11 " I would appreciate being acknowledged in any derived scripts, and would
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
12 " appreciate and welcome any updates, modifications or suggestions.
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
13
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
14 " NOTE: Comments welcome!
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
15 "
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
16 " There are two variables that control the syntax highlighting produced by this
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
17 " script:
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
18 " doxygen_enhanced_colour - Use the (non-standard) original colours designed
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
19 " for this highlighting.
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
20 " doxygen_my_rendering - Disable the HTML bold/italic/underline rendering.
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
21 "
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
22 " A brief description without '.' or '!' will cause the end comment
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
23 " character to be marked as an error. You can define the colour of this using
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
24 " the highlight doxygenErrorComment.
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
25 " A \link without an \endlink will cause an error highlight on the end-comment.
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
26 " This is defined by doxygenLinkError
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
27 "
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
28 " The variable g:doxygen_codeword_font can be set to the guifont for marking \c
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
29 " words - a 'typewriter' like font normally. Spaces must be escaped. It can
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
30 " also be set to any highlight attribute. Alternatively, a highlight for doxygenCodeWord
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
31 " can be used to override it.
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
32 "
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
33 " By default, highlighting is done assumng you have the JAVADOC_AUTOBRIEF
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
34 " setting turned on in your Doxygen configuration. If you don't, you
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
35 " can set the variable g:doxygen_javadoc_autobrief to 0 to have the
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
36 " highlighting more accurately reflect the way Doxygen will interpret your
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
37 " comments.
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
38 "
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
39 " Special thanks to: Wu Yongwei, Toby Allsopp
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
40 "
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
41
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
42 if exists('b:suppress_doxygen')
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
43 unlet b:suppress_doxygen
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
44 finish
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
45 endif
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
46
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
47 if exists('b:current_syntax') && b:current_syntax =~ 'doxygen' && !exists('doxygen_debug_script')
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
48 finish
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
49 endif
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
50
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
51 let s:cpo_save = &cpo
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
52 try
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
53 set cpo&vim
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
54
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
55 " Start of Doxygen syntax hilighting:
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
56 "
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
57
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
58 " C/C++ Style line comments
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
59 syn region doxygenComment start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contains=doxygenSyncStart,doxygenStart,doxygenTODO keepend fold
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
60 syn region doxygenCommentL start=+//[/!]<\@!+me=e-1 end=+$+ contains=doxygenStartL keepend skipwhite skipnl nextgroup=doxygenComment2 fold
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
61 syn region doxygenCommentL start=+//[/!]<+me=e-2 end=+$+ contains=doxygenStartL keepend skipwhite skipnl fold
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
62 syn region doxygenCommentL start=+//@\ze[{}]+ end=+$+ contains=doxygenGroupDefine,doxygenGroupDefineSpecial fold
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
63
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
64 " Single line brief followed by multiline comment.
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
65 syn region doxygenComment2 start=+/\*\(\*/\)\@![*!]+ end=+\*/+ contained contains=doxygenSyncStart2,doxygenStart2,doxygenTODO keepend fold
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
66 " This helps with sync-ing as for some reason, syncing behaves differently to a normal region, and the start pattern does not get matched.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
67 syn match doxygenSyncStart2 +[^*/]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenStartSpecial,doxygenSkipComment,doxygenStartSkip2 skipwhite skipnl
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
68
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
69 " Skip empty lines at the start for when comments start on the 2nd/3rd line.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
70 syn match doxygenStartSkip2 +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenBody,doxygenStartSpecial,doxygenStartSkip skipwhite skipnl
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
71 syn match doxygenStartSkip2 +^\s*\*$+ contained nextgroup=doxygenBody,doxygenStartSpecial,,doxygenStartSkip skipwhite skipnl
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
72 syn match doxygenStart2 +/\*[*!]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenStartSpecial,doxygenStartSkip2 skipwhite skipnl
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
73
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
74
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
75 " Match the Starting pattern (effectively creating the start of a BNF)
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
76 if !exists('g:doxygen_javadoc_autobrief') || g:doxygen_javadoc_autobrief
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
77 syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
78 syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenPrevL,doxygenBriefL,doxygenSpecial skipwhite
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
79 " Match the first sentence as a brief comment
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
80 if ! exists('g:doxygen_end_punctuation')
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
81 let g:doxygen_end_punctuation='[.]'
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
82 endif
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
83
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
84 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,doxygenContinueComment,doxygenBriefEndComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink,@Spell skipnl nextgroup=doxygenBody'
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
85
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
86 syn match doxygenBriefEndComment +\*/+ contained
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
87
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
88 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'
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
89 syn match doxygenPrevL +<+ contained nextgroup=doxygenBriefL,doxygenSpecial skipwhite
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
90 else
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
91 syn match doxygenStart +/\*[*!]+ contained nextgroup=doxygenBody,doxygenPrev,doxygenFindBriefSpecial,doxygenStartSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
92 syn match doxygenStartL +//[/!]+ contained nextgroup=doxygenPrevL,doxygenLine,doxygenSpecial skipwhite
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
93 syn region doxygenLine start=+@\k\@!\|[\\@]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@<]+ start=+\<+ end='$' contained contains=doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell keepend
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
94 syn match doxygenPrevL +<+ contained nextgroup=doxygenLine,doxygenSpecial skipwhite
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
95
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
96 endif
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
97
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
98 " This helps with sync-ing as for some reason, syncing behaves differently to a normal region, and the start pattern does not get matched.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
99 syn match doxygenSyncStart +\ze[^*/]+ contained nextgroup=doxygenBrief,doxygenPrev,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
100
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
101 syn region doxygenBriefLine contained start=+\<\k+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ contains=doxygenContinueComment,doxygenFindBriefSpecial,doxygenSmallSpecial,@doxygenHtmlGroup,doxygenTODO,doxygenHyperLink,doxygenHashLink skipwhite keepend
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
102
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
103 " Match a '<' for applying a comment to the previous element.
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
104 syn match doxygenPrev +<+ contained nextgroup=doxygenBrief,doxygenBody,doxygenSpecial,doxygenStartSkip skipwhite
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
105
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
106 if exists("c_comment_strings")
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
107 " These are anti-Doxygen comments. If there are more than two asterisks or 3 '/'s
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
108 " then turn the comments back into normal C comments.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
109 syn region cComment start="/\*\*\*" end="\*/" contains=@cCommentGroup,cCommentString,cCharacter,cNumbersCom,cSpaceError
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
110 syn region cCommentL start="////" skip="\\$" end="$" contains=@cCommentGroup,cComment2String,cCharacter,cNumbersCom,cSpaceError
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
111 else
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
112 syn region cComment start="/\*\*\*" end="\*/" contains=@cCommentGroup,cSpaceError
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
113 syn region cCommentL start="////" skip="\\$" end="$" contains=@cCommentGroup,cSpaceError
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
114 endif
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
115
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
116 " Special commands at the start of the area: starting with '@' or '\'
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
117 syn region doxygenStartSpecial contained start=+[@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!+ end=+$+ end=+\*/+me=s-1,he=s-1 contains=doxygenSpecial nextgroup=doxygenSkipComment skipnl keepend
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
118 syn match doxygenSkipComment contained +^\s*\*/\@!+ nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenPage skipwhite
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
119
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
120 "syn region doxygenBodyBit contained start=+$+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
121
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
122 " The main body of a doxygen comment.
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
123 syn region doxygenBody contained start=+\(/\*[*!]\)\@<!<\|[^<]\|$+ matchgroup=doxygenEndComment end=+\*/+re=e-2,me=e-2 contains=doxygenContinueComment,doxygenTODO,doxygenSpecial,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
124
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
125 " These allow the skipping of comment continuation '*' characters.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
126 syn match doxygenContinueComment contained +^\s*\*/\@!\s*+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
127
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
128 " Catch a Brief comment without punctuation - flag it as an error but
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
129 " make sure the end comment is picked up also.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
130 syn match doxygenErrorComment contained +\*/+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
131
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
132
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
133 " Skip empty lines at the start for when comments start on the 2nd/3rd line.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
134 if !exists('g:doxygen_javadoc_autobrief') || g:doxygen_javadoc_autobrief
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
135 syn match doxygenStartSkip +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
136 syn match doxygenStartSkip +^\s*\*$+ contained nextgroup=doxygenBrief,doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage skipwhite skipnl
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
137 else
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
138 syn match doxygenStartSkip +^\s*\*[^/]+me=e-1 contained nextgroup=doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage,doxygenBody skipwhite skipnl
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
139 syn match doxygenStartSkip +^\s*\*$+ contained nextgroup=doxygenStartSpecial,doxygenFindBriefSpecial,doxygenStartSkip,doxygenPage,doxygenBody skipwhite skipnl
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
140 endif
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
141
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
142 " Match an [@\]brief so that it moves to body-mode.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
143 "
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
144 "
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
145 " syn match doxygenBriefLine contained
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
146 syn match doxygenBriefSpecial contained +[@\\]+ nextgroup=doxygenBriefWord skipwhite
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
147 syn region doxygenFindBriefSpecial start=+[@\\]brief\>+ end=+\(\n\s*\*\=\s*\([@\\]\([npcbea]\>\|em\>\|ref\>\|link\>\|f\$\|[$\\&<>#]\)\@!\)\|\s*$\)\@=+ keepend contains=doxygenBriefSpecial nextgroup=doxygenBody keepend skipwhite skipnl contained
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
148
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
149
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
150 " Create the single word matching special identifiers.
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
151
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
152 fun! s:DxyCreateSmallSpecial( kword, name )
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
153
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
154 let mx='[-:0-9A-Za-z_%=&+*/!~>|]\@<!\([-0-9A-Za-z_%=+*/!~>|#]\+[-0-9A-Za-z_%=+*/!~>|]\@!\|\\[\\<>&.]@\|[.,][0-9a-zA-Z_]\@=\|::\|([^)]*)\|&[0-9a-zA-Z]\{2,7};\)\+'
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
155 exe 'syn region doxygenSpecial'.a:name.'Word contained start=+'.a:kword.'+ end=+\(\_s\+'.mx.'\)\@<=[-a-zA-Z_0-9+*/^%|~!=&\\]\@!+ skipwhite contains=doxygenContinueComment,doxygen'.a:name.'Word'
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
156 exe 'syn match doxygen'.a:name.'Word contained "\_s\@<='.mx.'" contains=doxygenHtmlSpecial,@Spell keepend'
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
157 endfun
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
158 call s:DxyCreateSmallSpecial('p', 'Code')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
159 call s:DxyCreateSmallSpecial('c', 'Code')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
160 call s:DxyCreateSmallSpecial('b', 'Bold')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
161 call s:DxyCreateSmallSpecial('e', 'Emphasised')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
162 call s:DxyCreateSmallSpecial('em', 'Emphasised')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
163 call s:DxyCreateSmallSpecial('a', 'Argument')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
164 call s:DxyCreateSmallSpecial('ref', 'Ref')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
165 delfun s:DxyCreateSmallSpecial
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
166
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
167 syn match doxygenSmallSpecial contained +[@\\]\(\<[npcbea]\>\|\<em\>\|\<ref\>\|\<link\>\|f\$\|[$\\&<>#]\)\@=+ nextgroup=doxygenOtherLink,doxygenHyperLink,doxygenHashLink,doxygenFormula,doxygenSymbol,doxygenSpecial.*Word
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
168
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
169 " Now for special characters
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
170 syn match doxygenSpecial contained +[@\\]\(\<[npcbea]\>\|\<em\>\|\<ref\|\<link\>\>\|\<f\$\|[$\\&<>#]\)\@!+ nextgroup=doxygenParam,doxygenRetval,doxygenBriefWord,doxygenBold,doxygenBOther,doxygenOther,doxygenOtherTODO,doxygenOtherWARN,doxygenOtherBUG,doxygenPage,doxygenGroupDefine,doxygenCodeRegion,doxygenVerbatimRegion,doxygenDotRegion
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
171 " doxygenOtherLink,doxygenSymbol,doxygenFormula,doxygenErrorSpecial,doxygenSpecial.*Word
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
172 "
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
173 syn match doxygenGroupDefine contained +@\@<=[{}]+
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
174 syn match doxygenGroupDefineSpecial contained +@\ze[{}]+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
175
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
176 syn match doxygenErrorSpecial contained +\s+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
177
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
178 " Match parameters and retvals (highlighting the first word as special).
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
179 syn match doxygenParamDirection contained "\v\[(\s*in>((]\s*\[|\s*,\s*)out>)=|out>((]\s*\[|\s*,\s*)in>)=)\]" nextgroup=doxygenParamName skipwhite
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
180 syn keyword doxygenParam contained param nextgroup=doxygenParamName,doxygenParamDirection skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
181 syn match doxygenParamName contained +[A-Za-z0-9_:]\++ nextgroup=doxygenSpecialMultilineDesc skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
182 syn keyword doxygenRetval contained retval throw exception nextgroup=doxygenParamName skipwhite
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
183
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
184 " Match one line identifiers.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
185 syn keyword doxygenOther contained addindex anchor
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
186 \ dontinclude endhtmlonly endlatexonly showinitializer hideinitializer
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
187 \ example htmlonly image include ingroup internal latexonly line
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
188 \ overload relates relatesalso sa skip skipline
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
189 \ until verbinclude version addtogroup htmlinclude copydoc dotfile
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
190 \ xmlonly endxmlonly
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
191 \ nextgroup=doxygenSpecialOnelineDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
192
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
193 syn region doxygenCodeRegion contained matchgroup=doxygenOther start=+\<code\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endcode\>+ contains=doxygenCodeRegionSpecial,doxygenContinueComment,doxygenErrorComment,@NoSpell
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
194 syn match doxygenCodeRegionSpecial contained +[\\@]\(endcode\>\)\@=+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
195
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
196 syn region doxygenVerbatimRegion contained matchgroup=doxygenOther start=+\<verbatim\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<endverbatim\>+ contains=doxygenVerbatimRegionSpecial,doxygenContinueComment,doxygenErrorComment,@NoSpell
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
197 syn match doxygenVerbatimRegionSpecial contained +[\\@]\(endverbatim\>\)\@=+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
198
840
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
199 if exists('b:current_syntax')
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
200 let b:doxygen_syntax_save=b:current_syntax
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
201 unlet b:current_syntax
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
202 endif
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
203
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
204 syn include @Dotx syntax/dot.vim
840
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
205
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
206 if exists('b:doxygen_syntax_save')
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
207 let b:current_syntax=b:doxygen_syntax_save
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
208 unlet b:doxygen_syntax_save
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
209 else
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
210 unlet b:current_syntax
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
211 endif
2c885fab04e3 updated for version 7.0e06
vimboss
parents: 835
diff changeset
212
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
213 syn region doxygenDotRegion contained matchgroup=doxygenOther start=+\<dot\>+ matchgroup=doxygenOther end=+[\\@]\@<=\<enddot\>+ contains=doxygenDotRegionSpecial,doxygenErrorComment,doxygenContinueComment,@NoSpell,@Dotx
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
214 syn match doxygenDotRegionSpecial contained +[\\@]\(enddot\>\)\@=+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
215
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
216 " Match single line identifiers.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
217 syn keyword doxygenBOther contained class enum file fn mainpage interface
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
218 \ namespace struct typedef union var def name
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
219 \ nextgroup=doxygenSpecialTypeOnelineDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
220
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
221 syn keyword doxygenOther contained par nextgroup=doxygenHeaderLine
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
222 syn region doxygenHeaderLine start=+.+ end=+^+ contained skipwhite nextgroup=doxygenSpecialMultilineDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
223
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
224 syn keyword doxygenOther contained arg author date deprecated li return returns see invariant note post pre remarks since test nextgroup=doxygenSpecialMultilineDesc
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
225 syn keyword doxygenOtherTODO contained todo attention nextgroup=doxygenSpecialMultilineDesc
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
226 syn keyword doxygenOtherWARN contained warning nextgroup=doxygenSpecialMultilineDesc
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
227 syn keyword doxygenOtherBUG contained bug nextgroup=doxygenSpecialMultilineDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
228
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
229 " Handle \link, \endlink, highlighting the link-to and the link text bits separately.
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
230 syn region doxygenOtherLink matchgroup=doxygenOther start=+\<link\>+ end=+[\@]\@<=endlink\>+ contained contains=doxygenLinkWord,doxygenContinueComment,doxygenLinkError,doxygenEndlinkSpecial
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
231 syn match doxygenEndlinkSpecial contained +[\\@]\zeendlink\>+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
232
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
233 syn match doxygenLinkWord "[_a-zA-Z:#()][_a-z0-9A-Z:#()]*\>" contained skipnl nextgroup=doxygenLinkRest,doxygenContinueLinkComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
234 syn match doxygenLinkRest +[^*@\\]\|\*/\@!\|[@\\]\(endlink\>\)\@!+ contained skipnl nextgroup=doxygenLinkRest,doxygenContinueLinkComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
235 syn match doxygenContinueLinkComment contained +^\s*\*\=[^/]+me=e-1 nextgroup=doxygenLinkRest
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
236 syn match doxygenLinkError "\*/" contained
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
237 " #Link hilighting.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
238 syn match doxygenHashLink /\([a-zA-Z_][0-9a-zA-Z_]*\)\?#\(\.[0-9a-zA-Z_]\@=\|[a-zA-Z0-9_]\+\|::\|()\)\+/ contained contains=doxygenHashSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
239 syn match doxygenHashSpecial /#/ contained
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
240 syn match doxygenHyperLink /\(\s\|^\s*\*\?\)\@<=\(http\|https\|ftp\):\/\/[-0-9a-zA-Z_?&=+#%/.!':;@]\+/ contained
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
241
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
242 " Handle \page. This does not use doxygenBrief.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
243 syn match doxygenPage "[\\@]page\>"me=s+1 contained skipwhite nextgroup=doxygenPagePage
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
244 syn keyword doxygenPagePage page contained skipwhite nextgroup=doxygenPageIdent
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
245 syn region doxygenPageDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend skipwhite skipnl nextgroup=doxygenBody
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
246 syn match doxygenPageIdent "\<[a-zA-Z_0-9]\+\>" contained nextgroup=doxygenPageDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
247
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
248 " Handle section
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
249 syn keyword doxygenOther defgroup section subsection subsubsection weakgroup contained skipwhite nextgroup=doxygenSpecialIdent
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
250 syn region doxygenSpecialSectionDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend skipwhite skipnl nextgroup=doxygenContinueComment
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
251 syn match doxygenSpecialIdent "\<[a-zA-Z_0-9]\+\>" contained nextgroup=doxygenSpecialSectionDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
252
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
253 " Does the one-line description for the one-line type identifiers.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
254 syn region doxygenSpecialTypeOnelineDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
255 syn region doxygenSpecialOnelineDesc start=+.\++ end=+$+ contained skipwhite contains=doxygenSmallSpecial,@doxygenHtmlGroup keepend
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
256
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
257 " Handle the multiline description for the multiline type identifiers.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
258 " Continue until an 'empty' line (can contain a '*' continuation) or until the
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
259 " next whole-line @ command \ command.
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
260 syn region doxygenSpecialMultilineDesc start=+.\++ skip=+^\s*\(\*/\@!\s*\)\=\(\<\|[@\\]\<\([npcbea]\>\|em\>\|ref\|link\>\>\|f\$\|[$\\&<>#]\)\|[^ \t\\@*]\)+ end=+^+ contained contains=doxygenSpecialContinueComment,doxygenSmallSpecial,doxygenHyperLink,doxygenHashLink,@doxygenHtmlGroup,@Spell skipwhite keepend
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
261 syn match doxygenSpecialContinueComment contained +^\s*\*/\@!\s*+ nextgroup=doxygenSpecial skipwhite
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
262
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
263 " Handle special cases 'bold' and 'group'
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
264 syn keyword doxygenBold contained bold nextgroup=doxygenSpecialHeading
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
265 syn keyword doxygenBriefWord contained brief nextgroup=doxygenBriefLine skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
266 syn match doxygenSpecialHeading +.\++ contained skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
267 syn keyword doxygenGroup contained group nextgroup=doxygenGroupName skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
268 syn keyword doxygenGroupName contained +\k\++ nextgroup=doxygenSpecialOnelineDesc skipwhite
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
269
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
270 " Handle special symbol identifiers @$, @\, @$ etc
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
271 syn match doxygenSymbol contained +[$\\&<>#n]+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
272
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
273 " Simplistic handling of formula regions
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
274 syn region doxygenFormula contained matchgroup=doxygenFormulaEnds start=+f\$+ end=+[@\\]f\$+ contains=doxygenFormulaSpecial,doxygenFormulaOperator
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
275 syn match doxygenFormulaSpecial contained +[@\\]\(f[^$]\|[^f]\)+me=s+1 nextgroup=doxygenFormulaKeyword,doxygenFormulaEscaped
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
276 syn match doxygenFormulaEscaped contained "."
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
277 syn match doxygenFormulaKeyword contained "[a-z]\+"
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
278 syn match doxygenFormulaOperator contained +[_^]+
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
279
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
280 syn region doxygenFormula contained matchgroup=doxygenFormulaEnds start=+f\[+ end=+[@\\]f]+ contains=doxygenFormulaSpecial,doxygenFormulaOperator,doxygenAtom
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
281 syn region doxygenAtom contained transparent matchgroup=doxygenFormulaOperator start=+{+ end=+}+ contains=doxygenAtom,doxygenFormulaSpecial,doxygenFormulaOperator
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
282
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
283 " Add TODO hilighting.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
284 syn keyword doxygenTODO contained TODO README XXX FIXME
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
285
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
286 " Supported HTML subset. Not perfect, but okay.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
287 syn case ignore
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
288 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,doxygenContinueComment,doxygenHtmlVar
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
289 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
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
290 syn keyword doxygenHtmlVar contained src alt longdesc name height width usemap ismap href type nextgroup=doxygenHtmlEqu skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
291 syn match doxygenHtmlEqu contained +=+ nextgroup=doxygenHtmlExpr skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
292 syn match doxygenHtmlExpr contained +"\(\\.\|[^"]\)*"\|'\(\\.\|[^']\)*'+ nextgroup=doxygenHtmlVar skipwhite
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
293 syn case match
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
294 syn match doxygenHtmlSpecial contained "&\(copy\|quot\|[AEIOUYaeiouy]uml\|[AEIOUYaeiouy]acute\|[AEIOUaeiouy]grave\|[AEIOUaeiouy]circ\|[ANOano]tilde\|szlig\|[Aa]ring\|nbsp\|gt\|lt\|amp\);"
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
295
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
296 syn cluster doxygenHtmlGroup contains=doxygenHtmlCode,doxygenHtmlBold,doxygenHtmlUnderline,doxygenHtmlItalic,doxygenHtmlSpecial,doxygenHtmlTag,doxygenHtmlLink
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
297
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
298 syn cluster doxygenHtmlTop contains=@Spell,doxygenHtmlSpecial,doxygenHtmlTag,doxygenContinueComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
299 " Html Support
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
300 syn region doxygenHtmlLink contained start=+<[aA]\>\s*\(\n\s*\*\s*\)\=\(\(name\|href\)=\("[^"]*"\|'[^']*'\)\)\=\s*>+ end=+</[aA]>+me=e-4 contains=@doxygenHtmlTop
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
301 hi link doxygenHtmlLink Underlined
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
302
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
303 syn region doxygenHtmlBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderline,doxygenHtmlBoldItalic,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
304 syn region doxygenHtmlBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderline,doxygenHtmlBoldItalic,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
305 syn region doxygenHtmlBoldUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderlineItalic,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
306 syn region doxygenHtmlBoldItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldItalicUnderline,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
307 syn region doxygenHtmlBoldItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,doxygenHtmlBoldItalicUnderline,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
308 syn region doxygenHtmlBoldUnderlineItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
309 syn region doxygenHtmlBoldUnderlineItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
310 syn region doxygenHtmlBoldItalicUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlBoldUnderlineItalic,@Spell
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
311
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
312 syn region doxygenHtmlUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBold,doxygenHtmlUnderlineItalic,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
313 syn region doxygenHtmlUnderlineBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBoldItalic,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
314 syn region doxygenHtmlUnderlineBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlUnderlineBoldItalic,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
315 syn region doxygenHtmlUnderlineItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,htmUnderlineItalicBold,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
316 syn region doxygenHtmlUnderlineItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,htmUnderlineItalicBold,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
317 syn region doxygenHtmlUnderlineItalicBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
318 syn region doxygenHtmlUnderlineItalicBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
319 syn region doxygenHtmlUnderlineBoldItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
320 syn region doxygenHtmlUnderlineBoldItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,@Spell
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
321
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
322 syn region doxygenHtmlItalic contained start="\c<i\>" end="\c</i>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicBold,doxygenHtmlItalicUnderline,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
323 syn region doxygenHtmlItalic contained start="\c<em\>" end="\c</em>"me=e-5 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
324 syn region doxygenHtmlItalicBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicBoldUnderline,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
325 syn region doxygenHtmlItalicBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,doxygenHtmlItalicBoldUnderline,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
326 syn region doxygenHtmlItalicBoldUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
327 syn region doxygenHtmlItalicUnderline contained start="\c<u\>" end="\c</u>"me=e-4 contains=@doxygenHtmlTop,doxygenHtmlItalicUnderlineBold,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
328 syn region doxygenHtmlItalicUnderlineBold contained start="\c<b\>" end="\c</b>"me=e-4 contains=@doxygenHtmlTop,@Spell
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
329 syn region doxygenHtmlItalicUnderlineBold contained start="\c<strong\>" end="\c</strong>"me=e-9 contains=@doxygenHtmlTop,@Spell
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
330
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
331 syn region doxygenHtmlCode contained start="\c<code\>" end="\c</code>"me=e-7 contains=@doxygenHtmlTop,@NoSpell
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
332
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
333 " Prevent the doxygen contained matches from leaking into the c/rc groups.
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
334 syn cluster cParenGroup add=doxygen.*
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
335 syn cluster cParenGroup remove=doxygenComment,doxygenCommentL
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
336 syn cluster cPreProcGroup add=doxygen.*
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
337 syn cluster cMultiGroup add=doxygen.*
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
338 syn cluster rcParenGroup add=doxygen.*
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
339 syn cluster rcParenGroup remove=doxygenComment,doxygenCommentL
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
340 syn cluster rcGroup add=doxygen.*
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
341
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
342 let s:my_syncolor=0
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
343 if !exists(':SynColor')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
344 command -nargs=+ SynColor hi def <args>
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
345 let s:my_syncolor=1
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
346 endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
347
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
348 let s:my_synlink=0
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
349 if !exists(':SynLink')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
350 command -nargs=+ SynLink hi def link <args>
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
351 let s:my_synlink=1
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
352 endif
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
353
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
354 try
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
355 "let did_doxygen_syntax_inits = &background
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
356 hi doxygen_Dummy guifg=black
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
357
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
358 fun! s:Doxygen_Hilights_Base()
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
359 SynLink doxygenHtmlSpecial Special
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
360 SynLink doxygenHtmlVar Type
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
361 SynLink doxygenHtmlExpr String
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
362
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
363 SynLink doxygenSmallSpecial SpecialChar
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
364
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
365 SynLink doxygenSpecialCodeWord doxygenSmallSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
366 SynLink doxygenSpecialBoldWord doxygenSmallSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
367 SynLink doxygenSpecialEmphasisedWord doxygenSmallSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
368 SynLink doxygenSpecialArgumentWord doxygenSmallSpecial
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
369
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
370 " SynColor doxygenFormulaKeyword cterm=bold ctermfg=DarkMagenta guifg=DarkMagenta gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
371 SynLink doxygenFormulaKeyword Keyword
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
372 "SynColor doxygenFormulaEscaped ctermfg=DarkMagenta guifg=DarkMagenta gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
373 SynLink doxygenFormulaEscaped Special
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
374 SynLink doxygenFormulaOperator Operator
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
375 SynLink doxygenFormula Statement
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
376 SynLink doxygenSymbol Constant
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
377 SynLink doxygenSpecial Special
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
378 SynLink doxygenFormulaSpecial Special
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
379 "SynColor doxygenFormulaSpecial ctermfg=DarkBlue guifg=DarkBlue
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
380 endfun
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
381 call s:Doxygen_Hilights_Base()
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
382
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
383 fun! s:Doxygen_Hilights()
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
384 " Pick a sensible default for 'codeword'.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
385 let font=''
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
386 if exists('g:doxygen_codeword_font')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
387 if g:doxygen_codeword_font !~ '\<\k\+='
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
388 let font='font='.g:doxygen_codeword_font
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
389 else
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
390 let font=g:doxygen_codeword_font
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
391 endif
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
392 else
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
393 " Try and pick a font (only some platforms have been tested).
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
394 if has('gui_running')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
395 if has('gui_gtk2')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
396 if &guifont == ''
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
397 let font="font='FreeSerif 12'"
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
398 else
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
399 let font="font='".substitute(&guifont, '^.\{-}\([0-9]\+\)$', 'FreeSerif \1','')."'"
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
400 endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
401
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
402 elseif has('gui_win32') || has('gui_win16') || has('gui_win95')
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
403
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
404 if exists('g:doxygen_use_bitsream_vera') && g:doxygen_use_bitsream_vera
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
405 let font_base='Bitstream_Vera_Sans_Mono'
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
406 else
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
407 let font_base='Lucida_Console'
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
408 endif
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
409 if &guifont == ''
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
410 let font='font='.font_base.':h10'
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
411 else
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
412 let font='font='.matchstr(substitute(&guifont, '^[^:]*', font_base,''),'[^,]*')
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
413 endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
414 elseif has('gui_athena') || has('gui_gtk') || &guifont=~'^\(-[^-]\+\)\{14}'
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
415 if &guifont == ''
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
416 let font='font=-b&h-lucidatypewriter-medium-r-normal-*-*-140-*-*-m-*-iso8859-1'
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
417 else
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
418 " let font='font='.substitute(&guifont,'^\(-[^-]\+\)\{7}-\([0-9]\+\).*', '-b\&h-lucidatypewriter-medium-r-normal-*-*-\2-*-*-m-*-iso8859-1','')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
419 " The above line works, but it is hard to expect the combination of
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
420 " the two fonts will look good.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
421 endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
422 elseif has('gui_kde')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
423 " let font='font=Bitstream\ Vera\ Sans\ Mono/12/-1/5/50/0/0/0/0/0'
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
424 endif
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
425 endif
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
426 endif
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
427 if font=='' | let font='gui=bold' | endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
428 exe 'SynColor doxygenCodeWord term=bold cterm=bold '.font
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
429 if (exists('g:doxygen_enhanced_color') && g:doxygen_enhanced_color) || (exists('g:doxygen_enhanced_colour') && g:doxygen_enhanced_colour)
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
430 if &background=='light'
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
431 SynColor doxygenComment ctermfg=DarkRed guifg=DarkRed
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
432 SynColor doxygenBrief cterm=bold ctermfg=Cyan guifg=DarkBlue gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
433 SynColor doxygenBody ctermfg=DarkBlue guifg=DarkBlue
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
434 SynColor doxygenSpecialTypeOnelineDesc cterm=bold ctermfg=DarkRed guifg=firebrick3 gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
435 SynColor doxygenBOther cterm=bold ctermfg=DarkMagenta guifg=#aa50aa gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
436 SynColor doxygenParam ctermfg=DarkGray guifg=#aa50aa
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
437 SynColor doxygenParamName cterm=italic ctermfg=DarkBlue guifg=DeepSkyBlue4 gui=italic,bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
438 SynColor doxygenSpecialOnelineDesc cterm=bold ctermfg=DarkCyan guifg=DodgerBlue3 gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
439 SynColor doxygenSpecialHeading cterm=bold ctermfg=DarkBlue guifg=DeepSkyBlue4 gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
440 SynColor doxygenPrev ctermfg=DarkGreen guifg=DarkGreen
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
441 else
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
442 SynColor doxygenComment ctermfg=LightRed guifg=LightRed
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
443 SynColor doxygenBrief cterm=bold ctermfg=Cyan ctermbg=darkgrey guifg=LightBlue gui=Bold,Italic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
444 SynColor doxygenBody ctermfg=Cyan guifg=LightBlue
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
445 SynColor doxygenSpecialTypeOnelineDesc cterm=bold ctermfg=Red guifg=firebrick3 gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
446 SynColor doxygenBOther cterm=bold ctermfg=Magenta guifg=#aa50aa gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
447 SynColor doxygenParam ctermfg=LightGray guifg=LightGray
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
448 SynColor doxygenParamName cterm=italic ctermfg=LightBlue guifg=LightBlue gui=italic,bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
449 SynColor doxygenSpecialOnelineDesc cterm=bold ctermfg=LightCyan guifg=LightCyan gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
450 SynColor doxygenSpecialHeading cterm=bold ctermfg=LightBlue guifg=LightBlue gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
451 SynColor doxygenPrev ctermfg=LightGreen guifg=LightGreen
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
452 endif
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
453 else
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
454 SynLink doxygenComment SpecialComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
455 SynLink doxygenBrief Statement
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
456 SynLink doxygenBody Comment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
457 SynLink doxygenSpecialTypeOnelineDesc Statement
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
458 SynLink doxygenBOther Constant
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
459 SynLink doxygenParam SpecialComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
460 SynLink doxygenParamName Underlined
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
461 SynLink doxygenSpecialOnelineDesc Statement
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
462 SynLink doxygenSpecialHeading Statement
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
463 SynLink doxygenPrev SpecialComment
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
464 endif
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
465 endfun
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
466
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
467 call s:Doxygen_Hilights()
834
5117153003bd updated for version 7.0e
vimboss
parents: 831
diff changeset
468
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
469 " This is still a proposal, but won't do any harm.
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
470 aug doxygengroup
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
471 au!
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
472 au Syntax UserColor_reset nested call s:Doxygen_Hilights_Base()
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
473 au Syntax UserColor_{on,reset,enable} nested call s:Doxygen_Hilights()
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
474 aug END
834
5117153003bd updated for version 7.0e
vimboss
parents: 831
diff changeset
475
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
476
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
477 SynLink doxygenBody Comment
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
478 SynLink doxygenLine doxygenBody
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
479 SynLink doxygenTODO Todo
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
480 SynLink doxygenOtherTODO Todo
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
481 SynLink doxygenOtherWARN Todo
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
482 SynLink doxygenOtherBUG Todo
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
483
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
484 SynLink doxygenErrorSpecial Error
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
485 SynLink doxygenErrorEnd Error
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
486 SynLink doxygenErrorComment Error
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
487 SynLink doxygenLinkError Error
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
488 SynLink doxygenBriefSpecial doxygenSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
489 SynLink doxygenHashSpecial doxygenSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
490 SynLink doxygenGroupDefineSpecial doxygenSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
491 SynLink doxygenEndlinkSpecial doxygenSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
492 SynLink doxygenCodeRegionSpecial doxygenSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
493 SynLink doxygenVerbatimRegionSpecial doxygenSpecial
1125
96cd8222a819 updated for version 7.1a
vimboss
parents: 840
diff changeset
494 SynLink doxygenDotRegionSpecial doxygenSpecial
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
495 SynLink doxygenGroupDefine doxygenParam
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
496
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
497 SynLink doxygenSpecialMultilineDesc doxygenSpecialOnelineDesc
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
498 SynLink doxygenFormulaEnds doxygenSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
499 SynLink doxygenBold doxygenParam
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
500 SynLink doxygenBriefWord doxygenParam
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
501 SynLink doxygenRetval doxygenParam
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
502 SynLink doxygenOther doxygenParam
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
503 SynLink doxygenStart doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
504 SynLink doxygenStart2 doxygenStart
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
505 SynLink doxygenComment2 doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
506 SynLink doxygenCommentL doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
507 SynLink doxygenContinueComment doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
508 SynLink doxygenSpecialContinueComment doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
509 SynLink doxygenSkipComment doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
510 SynLink doxygenEndComment doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
511 SynLink doxygenStartL doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
512 SynLink doxygenBriefEndComment doxygenComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
513 SynLink doxygenPrevL doxygenPrev
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
514 SynLink doxygenBriefL doxygenBrief
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
515 SynLink doxygenBriefLine doxygenBrief
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
516 SynLink doxygenHeaderLine doxygenSpecialHeading
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
517 SynLink doxygenStartSkip doxygenContinueComment
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
518 SynLink doxygenLinkWord doxygenParamName
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
519 SynLink doxygenLinkRest doxygenSpecialMultilineDesc
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
520 SynLink doxygenHyperLink doxygenLinkWord
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
521 SynLink doxygenHashLink doxygenLinkWord
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
522
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
523 SynLink doxygenPage doxygenSpecial
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
524 SynLink doxygenPagePage doxygenBOther
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
525 SynLink doxygenPageIdent doxygenParamName
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
526 SynLink doxygenPageDesc doxygenSpecialTypeOnelineDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
527
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
528 SynLink doxygenSpecialIdent doxygenPageIdent
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
529 SynLink doxygenSpecialSectionDesc doxygenSpecialMultilineDesc
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
530
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
531 SynLink doxygenSpecialRefWord doxygenOther
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
532 SynLink doxygenRefWord doxygenPageIdent
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
533 SynLink doxygenContinueLinkComment doxygenComment
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
534
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
535 SynLink doxygenHtmlCh Function
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
536 SynLink doxygenHtmlCmd Statement
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
537 SynLink doxygenHtmlBoldItalicUnderline doxygenHtmlBoldUnderlineItalic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
538 SynLink doxygenHtmlUnderlineBold doxygenHtmlBoldUnderline
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
539 SynLink doxygenHtmlUnderlineItalicBold doxygenHtmlBoldUnderlineItalic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
540 SynLink doxygenHtmlUnderlineBoldItalic doxygenHtmlBoldUnderlineItalic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
541 SynLink doxygenHtmlItalicUnderline doxygenHtmlUnderlineItalic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
542 SynLink doxygenHtmlItalicBold doxygenHtmlBoldItalic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
543 SynLink doxygenHtmlItalicBoldUnderline doxygenHtmlBoldUnderlineItalic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
544 SynLink doxygenHtmlItalicUnderlineBold doxygenHtmlBoldUnderlineItalic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
545 SynLink doxygenHtmlLink Underlined
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
546
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
547 SynLink doxygenParamDirection StorageClass
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
548
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
549
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
550 if !exists("doxygen_my_rendering") && !exists("html_my_rendering")
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
551 SynColor doxygenBoldWord term=bold cterm=bold gui=bold
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
552 SynColor doxygenEmphasisedWord term=italic cterm=italic gui=italic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
553 SynLink doxygenArgumentWord doxygenEmphasisedWord
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
554 SynLink doxygenHtmlCode doxygenCodeWord
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
555 SynLink doxygenHtmlBold doxygenBoldWord
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
556 SynColor doxygenHtmlBoldUnderline term=bold,underline cterm=bold,underline gui=bold,underline
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
557 SynColor doxygenHtmlBoldItalic term=bold,italic cterm=bold,italic gui=bold,italic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
558 SynColor doxygenHtmlBoldUnderlineItalic term=bold,italic,underline cterm=bold,italic,underline gui=bold,italic,underline
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
559 SynColor doxygenHtmlUnderline term=underline cterm=underline gui=underline
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
560 SynColor doxygenHtmlUnderlineItalic term=italic,underline cterm=italic,underline gui=italic,underline
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
561 SynColor doxygenHtmlItalic term=italic cterm=italic gui=italic
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
562 endif
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
563
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
564 finally
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
565 if s:my_synlink | delcommand SynLink | endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
566 if s:my_syncolor | delcommand SynColor | endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
567 endtry
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
568
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
569 if &syntax=='idl'
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
570 syn cluster idlCommentable add=doxygenComment,doxygenCommentL
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
571 endif
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
572
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
573 "syn sync clear
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
574 "syn sync maxlines=500
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
575 "syn sync minlines=50
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
576 syn sync match doxygenComment groupthere cComment "/\@<!/\*"
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
577 syn sync match doxygenSyncComment grouphere doxygenComment "/\@<!/\*[*!]"
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
578 "syn sync match doxygenSyncComment grouphere doxygenComment "/\*[*!]" contains=doxygenStart,doxygenTODO keepend
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
579 syn sync match doxygenSyncEndComment groupthere NONE "\*/"
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
580
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
581 if !exists('b:current_syntax')
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
582 let b:current_syntax = "doxygen"
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
583 else
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
584 let b:current_syntax = b:current_syntax.'.doxygen'
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
585 endif
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
586
835
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
587 finally
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
588 let &cpo = s:cpo_save
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
589 unlet s:cpo_save
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
590 endtry
8bebcabccc2c updated for version 7.0e01
vimboss
parents: 834
diff changeset
591
831
f24a95dae8ee updated for version 7.0d05
vimboss
parents:
diff changeset
592 " vim:et sw=2 sts=2