if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'plantuml') == -1 " Vim syntax file " Language: PlantUML " Maintainer: Anders Thøgersen " Last Change: 03-Apr-2011 " Version: 0.2 " TODO: There are some bugs, add << >> " if exists("b:current_syntax") finish endif if version < 600 syntax clear endif let s:cpo_orig=&cpo set cpo&vim let b:current_syntax = "plantuml" syntax sync minlines=100 syntax match plantumlPreProc /\%(^@startuml\|^@enduml\)\|!\%(include\|ifdef\|define\|endif\)\s*.*/ contains=plantumlDir syntax region plantumlDir start=/\s\+/ms=s+1 end=/$/ contained syntax keyword plantumlTypeKeyword namespace component package interface class interface enum object participant activity skinparam abstract syntax keyword plantumlKeyword actor boundary control entity database partition title activate as deactivate note left right top bottom of end destroy syntax keyword plantumlKeyword if then else endif syntax keyword plantumlCommentTODO XXX TODO FIXME NOTE contained syntax match plantumlColor /#[0-9A-Fa-f]\{6\}\>/ " Arrows - Differentiate between horizontal and vertical arrows syntax match plantumlHorizontalArrow /\%([-\.]\%(|>\|>\|\*\|o\>\|\\\\\|\\\|\/\/\|\/\|\.\|-\)\|\%(<|\|<\|\*\|\\|>>\|>\|\*\|o\>\|\\\\\|\\\|\/\/\|\/\|\.\|-\)\%(\[[^\]]*\]\)\?/ contains=plantumlLabel syntax match plantumlDirectedOrVerticalArrowRL /\%(<|\|<<\|<\|\*\|\