Hi!
We are using the (current) PlantUML eclipse plugin 1.1.8.8009 (with Eclipse C++ Luna SR1)
and there are two (but related) issues. IMHO these are problems of parsing the source-content between
the keywords @startuml and @enduml.
A) Following (minimal) sample shows an 'Syntax Error?'
/**
* @startuml
*
* state Start #LightGreen
* state Stop #LightGreen
* Start --> Stop
* @enduml
*/
This issue is caused by the 3rd (Ie. empty) line after @startuml, because (our) eclipse removes trailing white-spaces.
B) After deleting this empy line, the resulting graphic is shown;
but if this comment-block has leading tabs and spaces (before the *-character)
in different lines, the plugin still shows an parser-error!
Based on my expiriences, the PlantUML eclipse plugin uses follwing parser-algorithm:
1) detect the column X of the @-character of the keyword @startuml
2) Up to the @enduml-keyword, the leading X-1 characters of each lines afterwards are removed;
the remaining line contains the PlantUML-syntax ...
I think, the problem in 2) is:
A syntax-error occurs, if a line (afterwards) has less than X characters;
Additionally this removing of leading characters does not take TAB/Spaces into account.
A solution would be (before dropping leading characters):
Expand TAB's to n Spaces; maybe n can be determined from eclipse or use 4
If a line has less than X characters: just skip it.
It's (currently) simple to prevent these issues, if developers are briefed about the pitfalls.
But a bug-fix (or feature enhancement) will prevent these "simple" parser-issues on white-spaces ...
Best regards from Salzburg,
Markus