我想使用点文件格式和Graphviz创建Ant任务和依赖关系的图形。像许多Ant脚本一样,它们使用"私有目标"。也就是说,目标名称以短划线(-
)开头。
我正在列出一些像
这样的任务<target name="foo" depends="-init">
<target name="-init">
并创建一个像这样的点文件(它有点冗长,但这不是问题)。
digraph {
foo;
foo -> -init;
-init;
}
我尝试通过dot
程序运行该程序来创建.PNG
,并在node_id中抱怨破折号!
> dot -Tpng -o graph.png graph.gv
Error: graph.gv:3: syntax error near line 3
context: >>> - <<< init;
我可以用下划线或其他东西替换所有破折号,但这会将可搜索性变回源文件。有没有办法逃脱或编码破折号,以便我可以保持源信息正确?
我无法找到全面的点文件格式或语言描述。这描述了AST,但没有定义node_id
的有效值。
答案 0 :(得分:1)
简单地
digraph {
foo;
foo -> "-init";
"-init";
}
或
digraph {
foo;
foo -> init;
init [label="-init"];
}
允许边缘的短名称