diff options
Diffstat (limited to 'syntax/plantuml.vim')
-rw-r--r-- | syntax/plantuml.vim | 26 |
1 files changed, 16 insertions, 10 deletions
diff --git a/syntax/plantuml.vim b/syntax/plantuml.vim index 538ef1e1..701cd99a 100644 --- a/syntax/plantuml.vim +++ b/syntax/plantuml.vim @@ -158,19 +158,24 @@ let s:mindmapHilightLinks = [ \ 'Function', 'Todo' \ ] -let i = 1 -let contained = [] -while i < len(s:mindmapHilightLinks) - execute 'syntax match plantumlMindmap' . i . ' /^\([-+*]\)\1\{' . (i - 1) . '}_\?\s\+/ contained' - execute 'syntax match plantumlMindmap' . i . ' /^\s\{' . (i - 1) . '}\*_\?\s\+/ contained' - execute 'highlight default link plantumlMindmap' . i . ' ' . s:mindmapHilightLinks[i - 1] - call add(contained, 'plantumlMindmap' . i) - let i = i + 1 +let s:i = 1 +let s:contained = [] +let s:mindmap_color = '\(\[#[^\]]\+\]\)\?' +let s:mindmap_removing_box = '_\?' +let s:mindmap_options = join([s:mindmap_color, s:mindmap_removing_box], '') +while s:i < len(s:mindmapHilightLinks) + execute 'syntax match plantumlMindmap' . s:i . ' /^\([-+*]\)\1\{' . (s:i - 1) . '}' . s:mindmap_options . '\(:\|\s\+\)/ contained' + execute 'syntax match plantumlMindmap' . s:i . ' /^\s\{' . (s:i - 1) . '}\*' . s:mindmap_options . '\(:\|\s\+\)/ contained' + execute 'highlight default link plantumlMindmap' . s:i . ' ' . s:mindmapHilightLinks[s:i - 1] + call add(s:contained, 'plantumlMindmap' . s:i) + let s:i = s:i + 1 endwhile -execute 'syntax region plantumlMindmap oneline start=/^\([-+*]\)\1*_\?\s/ end=/$/ contains=' . join(contained, ',') +execute 'syntax region plantumlMindmap oneline start=/^\([-+*]\)\1*' . s:mindmap_options . '\s/ end=/$/ contains=' . join(s:contained, ',') +" Multilines +execute 'syntax region plantumlMindmap start=/^\([-+*]\)\1*' . s:mindmap_options . ':/ end=/;$/ contains=' . join(s:contained, ',') " Markdown syntax -execute 'syntax region plantumlMindmap oneline start=/^\s*\*_\?\s/ end=/$/ contains=' . join(contained, ',') +execute 'syntax region plantumlMindmap oneline start=/^\s*\*' . s:mindmap_options . '\s/ end=/$/ contains=' . join(s:contained, ',') " Skinparam keywords @@ -258,6 +263,7 @@ syntax keyword plantumlSkinparamKeyword InterfaceStereotypeFontSize InterfaceSte syntax keyword plantumlSkinparamKeyword LegendBorderColor LegendBorderThickness LegendFontColor LegendFontName syntax keyword plantumlSkinparamKeyword LegendFontSize LegendFontStyle LexicalBackgroundColor LexicalBorderColor syntax keyword plantumlSkinparamKeyword LifelineStrategy Linetype MachineBackgroundColor MachineBorderColor +syntax keyword plantumlSkinparamKeyword LineColor LineStyle LineThickness syntax keyword plantumlSkinparamKeyword MachineBorderThickness MachineFontColor MachineFontName MachineFontSize syntax keyword plantumlSkinparamKeyword MachineFontStyle MachineStereotypeFontColor MachineStereotypeFontName syntax keyword plantumlSkinparamKeyword MachineStereotypeFontSize MachineStereotypeFontStyle MaxAsciiMessageLength |