diff options
Diffstat (limited to 'src/doctokenizer.l')
-rw-r--r-- | src/doctokenizer.l | 32 |
1 files changed, 31 insertions, 1 deletions
diff --git a/src/doctokenizer.l b/src/doctokenizer.l index 3bd2058..ea4a1a4 100644 --- a/src/doctokenizer.l +++ b/src/doctokenizer.l @@ -417,6 +417,8 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}|{LNKWORD2} %x St_Verbatim %x St_Dot %x St_Msc +%x St_PlantUMLOpt +%x St_PlantUML %x St_Param %x St_XRefItem %x St_XRefItem2 @@ -843,7 +845,7 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}|{LNKWORD2} <St_Dot>. { /* dot text */ g_token->verb+=yytext; } -<St_Msc>{CMD}("endmsc"|"endvhdlflow") { +<St_Msc>{CMD}("endmsc") { return RetVal_OK; } <St_Msc>[^\\@\n]+ | @@ -851,6 +853,23 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}|{LNKWORD2} <St_Msc>. { /* msc text */ g_token->verb+=yytext; } +<St_PlantUMLOpt>\n { + g_token->sectionId=g_token->sectionId.stripWhiteSpace(); + BEGIN(St_PlantUML); + } +<St_PlantUMLOpt>["{}] { // skip curly brackets or quotes around the optional image name + } +<St_PlantUMLOpt>. { + g_token->sectionId += yytext; + } +<St_PlantUML>{CMD}"enduml" { + return RetVal_OK; + } +<St_PlantUML>[^\\@\n]+ | +<St_PlantUML>\n | +<St_PlantUML>. { /* plantuml text */ + g_token->verb+=yytext; + } <St_Title>"\"" { // quoted title BEGIN(St_TitleQ); } @@ -1121,6 +1140,10 @@ REFWORD {LABELID}|{REFWORD2}|{REFWORD3}|{LNKWORD2} g_endMarker="endmsc"; BEGIN(St_SecSkip); } +<St_Sections>{CMD}"startuml"/[^a-z_A-Z0-9] { + g_endMarker="enduml"; + BEGIN(St_SecSkip); + } <St_Sections>{CMD}"htmlonly"/[^a-z_A-Z0-9] { g_endMarker="endhtmlonly"; BEGIN(St_SecSkip); @@ -1318,6 +1341,13 @@ void doctokenizerYYsetStateMsc() BEGIN(St_Msc); } +void doctokenizerYYsetStatePlantUML() +{ + g_token->verb=""; + g_token->sectionId=""; + BEGIN(St_PlantUMLOpt); +} + void doctokenizerYYsetStateParam() { BEGIN(St_Param); |