如何在植物 uml 序列图中自动激活和销毁

How do I auto activate and destroy in a plant uml sequence diagram

在 PlantUML 中,在序列图中添加激活线可能会非常混乱。有什么方法可以让它在没有所有额外文本的情况下自动激活和停用吗?

例如

生成没有激活线的序列图

@startuml

First -> Second
Second -> Third
Third -> Second
Second ->  First

@enduml

但是要添加激活线会变得非常混乱

@startuml

First -> Second : message
activate First
activate Second
Second -> Third: message
activate Third
Third -> Second: response
deactivate Third
Second ->  First: response
deactivate First
deactivate Second

@enduml

我想知道是否有可能让它自动检测可能的自动创建销毁点

是 (2017) 自动激活 ;语法仍在 incubation 中,但它已经成为发行版的一部分已有一段时间了。

请注意,在所有情况下,您仍然需要手动激活第一个,因为没有收到消息。

语法紧凑

如果你想保持对(去)激活的控制,你可以在同一行用++--符号表达activation/deactivation来激活目标。

activate First
First -> Second ++ : message12
Second -> Third ++ : message23
Third -> Second -- : response32
Second ->  First -- : response21
deactivate First

自动激活

根据您的原始描述,您很快就会发现您需要将您的台词正确描述为 return,否则您将激活广告令人作呕。

autoactivate on
activate First
First -> Second
Second -> Third
Third --> Second
Second --> First
deactivate First