From: Vladimír Vondruš
Date: Sun, 1 Jul 2018 14:07:07 +0000 (+0200)
Subject: m.dot: support structs/records as well.
X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~cjwatson/git?a=commitdiff_plain;h=66549f18fc4c1635808e349db53f28b92bc07ea7;p=blog.git
m.dot: support structs/records as well.
---
diff --git a/css/m-components.css b/css/m-components.css
index 85a59283..b32c8853 100644
--- a/css/m-components.css
+++ b/css/m-components.css
@@ -1012,10 +1012,12 @@ div.m-graph svg g.m-edge polygon,
div.m-graph svg g.m-edge path,
div.m-graph svg g.m-node ellipse,
div.m-graph svg g.m-node polygon,
+div.m-graph svg g.m-node polyline,
div.m-graph.m-default svg g.m-edge polygon,
div.m-graph.m-default svg g.m-edge path,
div.m-graph.m-default svg g.m-node ellipse,
-div.m-graph.m-default svg g.m-node polygon {
+div.m-graph.m-default svg g.m-node polygon,
+div.m-graph.m-default svg g.m-node polyline {
stroke: var(--default-color);
}
div.m-math.m-primary svg, svg.m-math.m-primary,
@@ -1032,7 +1034,8 @@ div.m-graph.m-primary svg g.m-node.m-flat text {
div.m-graph.m-primary svg g.m-edge polygon,
div.m-graph.m-primary svg g.m-edge path,
div.m-graph.m-primary svg g.m-node ellipse,
-div.m-graph.m-primary svg g.m-node polygon {
+div.m-graph.m-primary svg g.m-node polygon,
+div.m-graph.m-primary svg g.m-node polyline {
stroke: var(--primary-color);
}
div.m-math.m-success svg, svg.m-math.m-success,
@@ -1049,7 +1052,8 @@ div.m-graph.m-success svg g.m-node.m-flat text {
div.m-graph.m-success svg g.m-edge polygon,
div.m-graph.m-success svg g.m-edge path,
div.m-graph.m-success svg g.m-node ellipse,
-div.m-graph.m-success svg g.m-node polygon {
+div.m-graph.m-success svg g.m-node polygon,
+div.m-graph.m-success svg g.m-node polyline {
stroke: var(--success-color);
}
div.m-math.m-warning svg, svg.m-math.m-warning,
@@ -1066,7 +1070,8 @@ div.m-graph.m-warning svg g.m-node.m-flat text {
div.m-graph.m-warning svg g.m-edge polygon,
div.m-graph.m-warning svg g.m-edge path,
div.m-graph.m-warning svg g.m-node ellipse,
-div.m-graph.m-warning svg g.m-node polygon {
+div.m-graph.m-warning svg g.m-node polygon,
+div.m-graph.m-warning svg g.m-node polyline {
stroke: var(--warning-color);
}
div.m-math.m-danger svg, svg.m-math.m-danger,
@@ -1083,7 +1088,8 @@ div.m-graph.m-danger svg g.m-node.m-flat text {
div.m-graph.m-danger svg g.m-edge polygon,
div.m-graph.m-danger svg g.m-edge path,
div.m-graph.m-danger svg g.m-node ellipse,
-div.m-graph.m-danger svg g.m-node polygon {
+div.m-graph.m-danger svg g.m-node polygon,
+div.m-graph.m-danger svg g.m-node polyline {
stroke: var(--danger-color);
}
div.m-math.m-info svg, svg.m-math.m-info,
@@ -1100,7 +1106,8 @@ div.m-graph.m-info svg g.m-node.m-flat text {
div.m-graph.m-info svg g.m-edge polygon,
div.m-graph.m-info svg g.m-edge path,
div.m-graph.m-info svg g.m-node ellipse,
-div.m-graph.m-info svg g.m-node polygon {
+div.m-graph.m-info svg g.m-node polygon,
+div.m-graph.m-info svg g.m-node polyline {
stroke: var(--info-color);
}
div.m-math.m-dim svg, svg.m-math.m-dim,
@@ -1117,7 +1124,8 @@ div.m-graph.m-dim svg g.m-node.m-flat text {
div.m-graph.m-dim svg g.m-edge polygon,
div.m-graph.m-dim svg g.m-edge path,
div.m-graph.m-dim svg g.m-node ellipse,
-div.m-graph.m-dim svg g.m-node polygon {
+div.m-graph.m-dim svg g.m-node polygon,
+div.m-graph.m-dim svg g.m-node polyline {
stroke: var(--dim-color);
}
@@ -1132,7 +1140,8 @@ div.m-graph svg g.m-node.m-default.m-flat text {
div.m-graph svg g.m-edge.m-default polygon,
div.m-graph svg g.m-edge.m-default path,
div.m-graph svg g.m-node.m-default ellipse,
-div.m-graph svg g.m-node.m-default polygon {
+div.m-graph svg g.m-node.m-default polygon,
+div.m-graph svg g.m-node.m-default polyline {
stroke: var(--default-color);
}
div.m-graph svg g.m-edge.m-primary polygon,
@@ -1145,7 +1154,8 @@ div.m-graph svg g.m-node.m-primary.m-flat text {
div.m-graph svg g.m-edge.m-primary polygon,
div.m-graph svg g.m-edge.m-primary path,
div.m-graph svg g.m-node.m-primary ellipse,
-div.m-graph svg g.m-node.m-primary polygon {
+div.m-graph svg g.m-node.m-primary polygon,
+div.m-graph svg g.m-node.m-primary polyline {
stroke: var(--primary-color);
}
div.m-graph svg g.m-edge.m-success polygon,
@@ -1158,7 +1168,8 @@ div.m-graph svg g.m-node.m-success.m-flat text {
div.m-graph svg g.m-edge.m-success polygon,
div.m-graph svg g.m-edge.m-success path,
div.m-graph svg g.m-node.m-success ellipse,
-div.m-graph svg g.m-node.m-success polygon {
+div.m-graph svg g.m-node.m-success polygon,
+div.m-graph svg g.m-node.m-success polyline {
stroke: var(--success-color);
}
div.m-graph svg g.m-edge.m-warning polygon,
@@ -1171,7 +1182,8 @@ div.m-graph svg g.m-node.m-warning.m-flat text {
div.m-graph svg g.m-edge.m-warning polygon,
div.m-graph svg g.m-edge.m-warning path,
div.m-graph svg g.m-node.m-warning ellipse,
-div.m-graph svg g.m-node.m-warning polygon {
+div.m-graph svg g.m-node.m-warning polygon,
+div.m-graph svg g.m-node.m-warning polyline {
stroke: var(--warning-color);
}
div.m-graph svg g.m-edge.m-danger polygon,
@@ -1184,7 +1196,8 @@ div.m-graph svg g.m-node.m-danger.m-flat text {
div.m-graph svg g.m-edge.m-danger polygon,
div.m-graph svg g.m-edge.m-danger path,
div.m-graph svg g.m-node.m-danger ellipse,
-div.m-graph svg g.m-node.m-danger polygon {
+div.m-graph svg g.m-node.m-danger polygon,
+div.m-graph svg g.m-node.m-danger polyline {
stroke: var(--danger-color);
}
div.m-graph svg g.m-edge.m-info polygon,
@@ -1197,7 +1210,8 @@ div.m-graph svg g.m-node.m-info.m-flat text {
div.m-graph svg g.m-edge.m-info polygon,
div.m-graph svg g.m-edge.m-info path,
div.m-graph svg g.m-node.m-info ellipse,
-div.m-graph svg g.m-node.m-info polygon {
+div.m-graph svg g.m-node.m-info polygon,
+div.m-graph svg g.m-node.m-info polyline {
stroke: var(--info-color);
}
div.m-graph svg g.m-edge.m-dim polygon,
@@ -1210,7 +1224,8 @@ div.m-graph svg g.m-node.m-dim.m-flat text {
div.m-graph svg g.m-edge.m-dim polygon,
div.m-graph svg g.m-edge.m-dim path,
div.m-graph svg g.m-node.m-dim ellipse,
-div.m-graph svg g.m-node.m-dim polygon {
+div.m-graph svg g.m-node.m-dim polygon,
+div.m-graph svg g.m-node.m-dim polyline {
stroke: var(--dim-color);
}
diff --git a/css/m-dark+doxygen.compiled.css b/css/m-dark+doxygen.compiled.css
index 1dece583..d9e6ae0d 100644
--- a/css/m-dark+doxygen.compiled.css
+++ b/css/m-dark+doxygen.compiled.css
@@ -1312,10 +1312,12 @@ div.m-graph svg g.m-edge polygon,
div.m-graph svg g.m-edge path,
div.m-graph svg g.m-node ellipse,
div.m-graph svg g.m-node polygon,
+div.m-graph svg g.m-node polyline,
div.m-graph.m-default svg g.m-edge polygon,
div.m-graph.m-default svg g.m-edge path,
div.m-graph.m-default svg g.m-node ellipse,
-div.m-graph.m-default svg g.m-node polygon {
+div.m-graph.m-default svg g.m-node polygon,
+div.m-graph.m-default svg g.m-node polyline {
stroke: #dcdcdc;
}
div.m-math.m-primary svg, svg.m-math.m-primary,
@@ -1332,7 +1334,8 @@ div.m-graph.m-primary svg g.m-node.m-flat text {
div.m-graph.m-primary svg g.m-edge polygon,
div.m-graph.m-primary svg g.m-edge path,
div.m-graph.m-primary svg g.m-node ellipse,
-div.m-graph.m-primary svg g.m-node polygon {
+div.m-graph.m-primary svg g.m-node polygon,
+div.m-graph.m-primary svg g.m-node polyline {
stroke: #a5c9ea;
}
div.m-math.m-success svg, svg.m-math.m-success,
@@ -1349,7 +1352,8 @@ div.m-graph.m-success svg g.m-node.m-flat text {
div.m-graph.m-success svg g.m-edge polygon,
div.m-graph.m-success svg g.m-edge path,
div.m-graph.m-success svg g.m-node ellipse,
-div.m-graph.m-success svg g.m-node polygon {
+div.m-graph.m-success svg g.m-node polygon,
+div.m-graph.m-success svg g.m-node polyline {
stroke: #3bd267;
}
div.m-math.m-warning svg, svg.m-math.m-warning,
@@ -1366,7 +1370,8 @@ div.m-graph.m-warning svg g.m-node.m-flat text {
div.m-graph.m-warning svg g.m-edge polygon,
div.m-graph.m-warning svg g.m-edge path,
div.m-graph.m-warning svg g.m-node ellipse,
-div.m-graph.m-warning svg g.m-node polygon {
+div.m-graph.m-warning svg g.m-node polygon,
+div.m-graph.m-warning svg g.m-node polyline {
stroke: #c7cf2f;
}
div.m-math.m-danger svg, svg.m-math.m-danger,
@@ -1383,7 +1388,8 @@ div.m-graph.m-danger svg g.m-node.m-flat text {
div.m-graph.m-danger svg g.m-edge polygon,
div.m-graph.m-danger svg g.m-edge path,
div.m-graph.m-danger svg g.m-node ellipse,
-div.m-graph.m-danger svg g.m-node polygon {
+div.m-graph.m-danger svg g.m-node polygon,
+div.m-graph.m-danger svg g.m-node polyline {
stroke: #cd3431;
}
div.m-math.m-info svg, svg.m-math.m-info,
@@ -1400,7 +1406,8 @@ div.m-graph.m-info svg g.m-node.m-flat text {
div.m-graph.m-info svg g.m-edge polygon,
div.m-graph.m-info svg g.m-edge path,
div.m-graph.m-info svg g.m-node ellipse,
-div.m-graph.m-info svg g.m-node polygon {
+div.m-graph.m-info svg g.m-node polygon,
+div.m-graph.m-info svg g.m-node polyline {
stroke: #2f83cc;
}
div.m-math.m-dim svg, svg.m-math.m-dim,
@@ -1417,7 +1424,8 @@ div.m-graph.m-dim svg g.m-node.m-flat text {
div.m-graph.m-dim svg g.m-edge polygon,
div.m-graph.m-dim svg g.m-edge path,
div.m-graph.m-dim svg g.m-node ellipse,
-div.m-graph.m-dim svg g.m-node polygon {
+div.m-graph.m-dim svg g.m-node polygon,
+div.m-graph.m-dim svg g.m-node polyline {
stroke: #747474;
}
div.m-graph svg g.m-edge.m-default polygon,
@@ -1430,7 +1438,8 @@ div.m-graph svg g.m-node.m-default.m-flat text {
div.m-graph svg g.m-edge.m-default polygon,
div.m-graph svg g.m-edge.m-default path,
div.m-graph svg g.m-node.m-default ellipse,
-div.m-graph svg g.m-node.m-default polygon {
+div.m-graph svg g.m-node.m-default polygon,
+div.m-graph svg g.m-node.m-default polyline {
stroke: #dcdcdc;
}
div.m-graph svg g.m-edge.m-primary polygon,
@@ -1443,7 +1452,8 @@ div.m-graph svg g.m-node.m-primary.m-flat text {
div.m-graph svg g.m-edge.m-primary polygon,
div.m-graph svg g.m-edge.m-primary path,
div.m-graph svg g.m-node.m-primary ellipse,
-div.m-graph svg g.m-node.m-primary polygon {
+div.m-graph svg g.m-node.m-primary polygon,
+div.m-graph svg g.m-node.m-primary polyline {
stroke: #a5c9ea;
}
div.m-graph svg g.m-edge.m-success polygon,
@@ -1456,7 +1466,8 @@ div.m-graph svg g.m-node.m-success.m-flat text {
div.m-graph svg g.m-edge.m-success polygon,
div.m-graph svg g.m-edge.m-success path,
div.m-graph svg g.m-node.m-success ellipse,
-div.m-graph svg g.m-node.m-success polygon {
+div.m-graph svg g.m-node.m-success polygon,
+div.m-graph svg g.m-node.m-success polyline {
stroke: #3bd267;
}
div.m-graph svg g.m-edge.m-warning polygon,
@@ -1469,7 +1480,8 @@ div.m-graph svg g.m-node.m-warning.m-flat text {
div.m-graph svg g.m-edge.m-warning polygon,
div.m-graph svg g.m-edge.m-warning path,
div.m-graph svg g.m-node.m-warning ellipse,
-div.m-graph svg g.m-node.m-warning polygon {
+div.m-graph svg g.m-node.m-warning polygon,
+div.m-graph svg g.m-node.m-warning polyline {
stroke: #c7cf2f;
}
div.m-graph svg g.m-edge.m-danger polygon,
@@ -1482,7 +1494,8 @@ div.m-graph svg g.m-node.m-danger.m-flat text {
div.m-graph svg g.m-edge.m-danger polygon,
div.m-graph svg g.m-edge.m-danger path,
div.m-graph svg g.m-node.m-danger ellipse,
-div.m-graph svg g.m-node.m-danger polygon {
+div.m-graph svg g.m-node.m-danger polygon,
+div.m-graph svg g.m-node.m-danger polyline {
stroke: #cd3431;
}
div.m-graph svg g.m-edge.m-info polygon,
@@ -1495,7 +1508,8 @@ div.m-graph svg g.m-node.m-info.m-flat text {
div.m-graph svg g.m-edge.m-info polygon,
div.m-graph svg g.m-edge.m-info path,
div.m-graph svg g.m-node.m-info ellipse,
-div.m-graph svg g.m-node.m-info polygon {
+div.m-graph svg g.m-node.m-info polygon,
+div.m-graph svg g.m-node.m-info polyline {
stroke: #2f83cc;
}
div.m-graph svg g.m-edge.m-dim polygon,
@@ -1508,7 +1522,8 @@ div.m-graph svg g.m-node.m-dim.m-flat text {
div.m-graph svg g.m-edge.m-dim polygon,
div.m-graph svg g.m-edge.m-dim path,
div.m-graph svg g.m-node.m-dim ellipse,
-div.m-graph svg g.m-node.m-dim polygon {
+div.m-graph svg g.m-node.m-dim polygon,
+div.m-graph svg g.m-node.m-dim polyline {
stroke: #747474;
}
p, ul, ol, dl, blockquote, pre, figure.m-code-figure, figure.m-console-figure,
diff --git a/css/m-dark.compiled.css b/css/m-dark.compiled.css
index 05857fd5..a904f4fa 100644
--- a/css/m-dark.compiled.css
+++ b/css/m-dark.compiled.css
@@ -1312,10 +1312,12 @@ div.m-graph svg g.m-edge polygon,
div.m-graph svg g.m-edge path,
div.m-graph svg g.m-node ellipse,
div.m-graph svg g.m-node polygon,
+div.m-graph svg g.m-node polyline,
div.m-graph.m-default svg g.m-edge polygon,
div.m-graph.m-default svg g.m-edge path,
div.m-graph.m-default svg g.m-node ellipse,
-div.m-graph.m-default svg g.m-node polygon {
+div.m-graph.m-default svg g.m-node polygon,
+div.m-graph.m-default svg g.m-node polyline {
stroke: #dcdcdc;
}
div.m-math.m-primary svg, svg.m-math.m-primary,
@@ -1332,7 +1334,8 @@ div.m-graph.m-primary svg g.m-node.m-flat text {
div.m-graph.m-primary svg g.m-edge polygon,
div.m-graph.m-primary svg g.m-edge path,
div.m-graph.m-primary svg g.m-node ellipse,
-div.m-graph.m-primary svg g.m-node polygon {
+div.m-graph.m-primary svg g.m-node polygon,
+div.m-graph.m-primary svg g.m-node polyline {
stroke: #a5c9ea;
}
div.m-math.m-success svg, svg.m-math.m-success,
@@ -1349,7 +1352,8 @@ div.m-graph.m-success svg g.m-node.m-flat text {
div.m-graph.m-success svg g.m-edge polygon,
div.m-graph.m-success svg g.m-edge path,
div.m-graph.m-success svg g.m-node ellipse,
-div.m-graph.m-success svg g.m-node polygon {
+div.m-graph.m-success svg g.m-node polygon,
+div.m-graph.m-success svg g.m-node polyline {
stroke: #3bd267;
}
div.m-math.m-warning svg, svg.m-math.m-warning,
@@ -1366,7 +1370,8 @@ div.m-graph.m-warning svg g.m-node.m-flat text {
div.m-graph.m-warning svg g.m-edge polygon,
div.m-graph.m-warning svg g.m-edge path,
div.m-graph.m-warning svg g.m-node ellipse,
-div.m-graph.m-warning svg g.m-node polygon {
+div.m-graph.m-warning svg g.m-node polygon,
+div.m-graph.m-warning svg g.m-node polyline {
stroke: #c7cf2f;
}
div.m-math.m-danger svg, svg.m-math.m-danger,
@@ -1383,7 +1388,8 @@ div.m-graph.m-danger svg g.m-node.m-flat text {
div.m-graph.m-danger svg g.m-edge polygon,
div.m-graph.m-danger svg g.m-edge path,
div.m-graph.m-danger svg g.m-node ellipse,
-div.m-graph.m-danger svg g.m-node polygon {
+div.m-graph.m-danger svg g.m-node polygon,
+div.m-graph.m-danger svg g.m-node polyline {
stroke: #cd3431;
}
div.m-math.m-info svg, svg.m-math.m-info,
@@ -1400,7 +1406,8 @@ div.m-graph.m-info svg g.m-node.m-flat text {
div.m-graph.m-info svg g.m-edge polygon,
div.m-graph.m-info svg g.m-edge path,
div.m-graph.m-info svg g.m-node ellipse,
-div.m-graph.m-info svg g.m-node polygon {
+div.m-graph.m-info svg g.m-node polygon,
+div.m-graph.m-info svg g.m-node polyline {
stroke: #2f83cc;
}
div.m-math.m-dim svg, svg.m-math.m-dim,
@@ -1417,7 +1424,8 @@ div.m-graph.m-dim svg g.m-node.m-flat text {
div.m-graph.m-dim svg g.m-edge polygon,
div.m-graph.m-dim svg g.m-edge path,
div.m-graph.m-dim svg g.m-node ellipse,
-div.m-graph.m-dim svg g.m-node polygon {
+div.m-graph.m-dim svg g.m-node polygon,
+div.m-graph.m-dim svg g.m-node polyline {
stroke: #747474;
}
div.m-graph svg g.m-edge.m-default polygon,
@@ -1430,7 +1438,8 @@ div.m-graph svg g.m-node.m-default.m-flat text {
div.m-graph svg g.m-edge.m-default polygon,
div.m-graph svg g.m-edge.m-default path,
div.m-graph svg g.m-node.m-default ellipse,
-div.m-graph svg g.m-node.m-default polygon {
+div.m-graph svg g.m-node.m-default polygon,
+div.m-graph svg g.m-node.m-default polyline {
stroke: #dcdcdc;
}
div.m-graph svg g.m-edge.m-primary polygon,
@@ -1443,7 +1452,8 @@ div.m-graph svg g.m-node.m-primary.m-flat text {
div.m-graph svg g.m-edge.m-primary polygon,
div.m-graph svg g.m-edge.m-primary path,
div.m-graph svg g.m-node.m-primary ellipse,
-div.m-graph svg g.m-node.m-primary polygon {
+div.m-graph svg g.m-node.m-primary polygon,
+div.m-graph svg g.m-node.m-primary polyline {
stroke: #a5c9ea;
}
div.m-graph svg g.m-edge.m-success polygon,
@@ -1456,7 +1466,8 @@ div.m-graph svg g.m-node.m-success.m-flat text {
div.m-graph svg g.m-edge.m-success polygon,
div.m-graph svg g.m-edge.m-success path,
div.m-graph svg g.m-node.m-success ellipse,
-div.m-graph svg g.m-node.m-success polygon {
+div.m-graph svg g.m-node.m-success polygon,
+div.m-graph svg g.m-node.m-success polyline {
stroke: #3bd267;
}
div.m-graph svg g.m-edge.m-warning polygon,
@@ -1469,7 +1480,8 @@ div.m-graph svg g.m-node.m-warning.m-flat text {
div.m-graph svg g.m-edge.m-warning polygon,
div.m-graph svg g.m-edge.m-warning path,
div.m-graph svg g.m-node.m-warning ellipse,
-div.m-graph svg g.m-node.m-warning polygon {
+div.m-graph svg g.m-node.m-warning polygon,
+div.m-graph svg g.m-node.m-warning polyline {
stroke: #c7cf2f;
}
div.m-graph svg g.m-edge.m-danger polygon,
@@ -1482,7 +1494,8 @@ div.m-graph svg g.m-node.m-danger.m-flat text {
div.m-graph svg g.m-edge.m-danger polygon,
div.m-graph svg g.m-edge.m-danger path,
div.m-graph svg g.m-node.m-danger ellipse,
-div.m-graph svg g.m-node.m-danger polygon {
+div.m-graph svg g.m-node.m-danger polygon,
+div.m-graph svg g.m-node.m-danger polyline {
stroke: #cd3431;
}
div.m-graph svg g.m-edge.m-info polygon,
@@ -1495,7 +1508,8 @@ div.m-graph svg g.m-node.m-info.m-flat text {
div.m-graph svg g.m-edge.m-info polygon,
div.m-graph svg g.m-edge.m-info path,
div.m-graph svg g.m-node.m-info ellipse,
-div.m-graph svg g.m-node.m-info polygon {
+div.m-graph svg g.m-node.m-info polygon,
+div.m-graph svg g.m-node.m-info polyline {
stroke: #2f83cc;
}
div.m-graph svg g.m-edge.m-dim polygon,
@@ -1508,7 +1522,8 @@ div.m-graph svg g.m-node.m-dim.m-flat text {
div.m-graph svg g.m-edge.m-dim polygon,
div.m-graph svg g.m-edge.m-dim path,
div.m-graph svg g.m-node.m-dim ellipse,
-div.m-graph svg g.m-node.m-dim polygon {
+div.m-graph svg g.m-node.m-dim polygon,
+div.m-graph svg g.m-node.m-dim polyline {
stroke: #747474;
}
p, ul, ol, dl, blockquote, pre, figure.m-code-figure, figure.m-console-figure,
diff --git a/css/m-light+doxygen.compiled.css b/css/m-light+doxygen.compiled.css
index ca95688c..0de9a89d 100644
--- a/css/m-light+doxygen.compiled.css
+++ b/css/m-light+doxygen.compiled.css
@@ -1312,10 +1312,12 @@ div.m-graph svg g.m-edge polygon,
div.m-graph svg g.m-edge path,
div.m-graph svg g.m-node ellipse,
div.m-graph svg g.m-node polygon,
+div.m-graph svg g.m-node polyline,
div.m-graph.m-default svg g.m-edge polygon,
div.m-graph.m-default svg g.m-edge path,
div.m-graph.m-default svg g.m-node ellipse,
-div.m-graph.m-default svg g.m-node polygon {
+div.m-graph.m-default svg g.m-node polygon,
+div.m-graph.m-default svg g.m-node polyline {
stroke: #000000;
}
div.m-math.m-primary svg, svg.m-math.m-primary,
@@ -1332,7 +1334,8 @@ div.m-graph.m-primary svg g.m-node.m-flat text {
div.m-graph.m-primary svg g.m-edge polygon,
div.m-graph.m-primary svg g.m-edge path,
div.m-graph.m-primary svg g.m-node ellipse,
-div.m-graph.m-primary svg g.m-node polygon {
+div.m-graph.m-primary svg g.m-node polygon,
+div.m-graph.m-primary svg g.m-node polyline {
stroke: #cb4b16;
}
div.m-math.m-success svg, svg.m-math.m-success,
@@ -1349,7 +1352,8 @@ div.m-graph.m-success svg g.m-node.m-flat text {
div.m-graph.m-success svg g.m-edge polygon,
div.m-graph.m-success svg g.m-edge path,
div.m-graph.m-success svg g.m-node ellipse,
-div.m-graph.m-success svg g.m-node polygon {
+div.m-graph.m-success svg g.m-node polygon,
+div.m-graph.m-success svg g.m-node polyline {
stroke: #31c25d;
}
div.m-math.m-warning svg, svg.m-math.m-warning,
@@ -1366,7 +1370,8 @@ div.m-graph.m-warning svg g.m-node.m-flat text {
div.m-graph.m-warning svg g.m-edge polygon,
div.m-graph.m-warning svg g.m-edge path,
div.m-graph.m-warning svg g.m-node ellipse,
-div.m-graph.m-warning svg g.m-node polygon {
+div.m-graph.m-warning svg g.m-node polygon,
+div.m-graph.m-warning svg g.m-node polyline {
stroke: #c7cf2f;
}
div.m-math.m-danger svg, svg.m-math.m-danger,
@@ -1383,7 +1388,8 @@ div.m-graph.m-danger svg g.m-node.m-flat text {
div.m-graph.m-danger svg g.m-edge polygon,
div.m-graph.m-danger svg g.m-edge path,
div.m-graph.m-danger svg g.m-node ellipse,
-div.m-graph.m-danger svg g.m-node polygon {
+div.m-graph.m-danger svg g.m-node polygon,
+div.m-graph.m-danger svg g.m-node polyline {
stroke: #f60000;
}
div.m-math.m-info svg, svg.m-math.m-info,
@@ -1400,7 +1406,8 @@ div.m-graph.m-info svg g.m-node.m-flat text {
div.m-graph.m-info svg g.m-edge polygon,
div.m-graph.m-info svg g.m-edge path,
div.m-graph.m-info svg g.m-node ellipse,
-div.m-graph.m-info svg g.m-node polygon {
+div.m-graph.m-info svg g.m-node polygon,
+div.m-graph.m-info svg g.m-node polyline {
stroke: #2e7dc5;
}
div.m-math.m-dim svg, svg.m-math.m-dim,
@@ -1417,7 +1424,8 @@ div.m-graph.m-dim svg g.m-node.m-flat text {
div.m-graph.m-dim svg g.m-edge polygon,
div.m-graph.m-dim svg g.m-edge path,
div.m-graph.m-dim svg g.m-node ellipse,
-div.m-graph.m-dim svg g.m-node polygon {
+div.m-graph.m-dim svg g.m-node polygon,
+div.m-graph.m-dim svg g.m-node polyline {
stroke: #bdbdbd;
}
div.m-graph svg g.m-edge.m-default polygon,
@@ -1430,7 +1438,8 @@ div.m-graph svg g.m-node.m-default.m-flat text {
div.m-graph svg g.m-edge.m-default polygon,
div.m-graph svg g.m-edge.m-default path,
div.m-graph svg g.m-node.m-default ellipse,
-div.m-graph svg g.m-node.m-default polygon {
+div.m-graph svg g.m-node.m-default polygon,
+div.m-graph svg g.m-node.m-default polyline {
stroke: #000000;
}
div.m-graph svg g.m-edge.m-primary polygon,
@@ -1443,7 +1452,8 @@ div.m-graph svg g.m-node.m-primary.m-flat text {
div.m-graph svg g.m-edge.m-primary polygon,
div.m-graph svg g.m-edge.m-primary path,
div.m-graph svg g.m-node.m-primary ellipse,
-div.m-graph svg g.m-node.m-primary polygon {
+div.m-graph svg g.m-node.m-primary polygon,
+div.m-graph svg g.m-node.m-primary polyline {
stroke: #cb4b16;
}
div.m-graph svg g.m-edge.m-success polygon,
@@ -1456,7 +1466,8 @@ div.m-graph svg g.m-node.m-success.m-flat text {
div.m-graph svg g.m-edge.m-success polygon,
div.m-graph svg g.m-edge.m-success path,
div.m-graph svg g.m-node.m-success ellipse,
-div.m-graph svg g.m-node.m-success polygon {
+div.m-graph svg g.m-node.m-success polygon,
+div.m-graph svg g.m-node.m-success polyline {
stroke: #31c25d;
}
div.m-graph svg g.m-edge.m-warning polygon,
@@ -1469,7 +1480,8 @@ div.m-graph svg g.m-node.m-warning.m-flat text {
div.m-graph svg g.m-edge.m-warning polygon,
div.m-graph svg g.m-edge.m-warning path,
div.m-graph svg g.m-node.m-warning ellipse,
-div.m-graph svg g.m-node.m-warning polygon {
+div.m-graph svg g.m-node.m-warning polygon,
+div.m-graph svg g.m-node.m-warning polyline {
stroke: #c7cf2f;
}
div.m-graph svg g.m-edge.m-danger polygon,
@@ -1482,7 +1494,8 @@ div.m-graph svg g.m-node.m-danger.m-flat text {
div.m-graph svg g.m-edge.m-danger polygon,
div.m-graph svg g.m-edge.m-danger path,
div.m-graph svg g.m-node.m-danger ellipse,
-div.m-graph svg g.m-node.m-danger polygon {
+div.m-graph svg g.m-node.m-danger polygon,
+div.m-graph svg g.m-node.m-danger polyline {
stroke: #f60000;
}
div.m-graph svg g.m-edge.m-info polygon,
@@ -1495,7 +1508,8 @@ div.m-graph svg g.m-node.m-info.m-flat text {
div.m-graph svg g.m-edge.m-info polygon,
div.m-graph svg g.m-edge.m-info path,
div.m-graph svg g.m-node.m-info ellipse,
-div.m-graph svg g.m-node.m-info polygon {
+div.m-graph svg g.m-node.m-info polygon,
+div.m-graph svg g.m-node.m-info polyline {
stroke: #2e7dc5;
}
div.m-graph svg g.m-edge.m-dim polygon,
@@ -1508,7 +1522,8 @@ div.m-graph svg g.m-node.m-dim.m-flat text {
div.m-graph svg g.m-edge.m-dim polygon,
div.m-graph svg g.m-edge.m-dim path,
div.m-graph svg g.m-node.m-dim ellipse,
-div.m-graph svg g.m-node.m-dim polygon {
+div.m-graph svg g.m-node.m-dim polygon,
+div.m-graph svg g.m-node.m-dim polyline {
stroke: #bdbdbd;
}
p, ul, ol, dl, blockquote, pre, figure.m-code-figure, figure.m-console-figure,
diff --git a/css/m-light.compiled.css b/css/m-light.compiled.css
index 2e737dca..ea40bc14 100644
--- a/css/m-light.compiled.css
+++ b/css/m-light.compiled.css
@@ -1312,10 +1312,12 @@ div.m-graph svg g.m-edge polygon,
div.m-graph svg g.m-edge path,
div.m-graph svg g.m-node ellipse,
div.m-graph svg g.m-node polygon,
+div.m-graph svg g.m-node polyline,
div.m-graph.m-default svg g.m-edge polygon,
div.m-graph.m-default svg g.m-edge path,
div.m-graph.m-default svg g.m-node ellipse,
-div.m-graph.m-default svg g.m-node polygon {
+div.m-graph.m-default svg g.m-node polygon,
+div.m-graph.m-default svg g.m-node polyline {
stroke: #000000;
}
div.m-math.m-primary svg, svg.m-math.m-primary,
@@ -1332,7 +1334,8 @@ div.m-graph.m-primary svg g.m-node.m-flat text {
div.m-graph.m-primary svg g.m-edge polygon,
div.m-graph.m-primary svg g.m-edge path,
div.m-graph.m-primary svg g.m-node ellipse,
-div.m-graph.m-primary svg g.m-node polygon {
+div.m-graph.m-primary svg g.m-node polygon,
+div.m-graph.m-primary svg g.m-node polyline {
stroke: #cb4b16;
}
div.m-math.m-success svg, svg.m-math.m-success,
@@ -1349,7 +1352,8 @@ div.m-graph.m-success svg g.m-node.m-flat text {
div.m-graph.m-success svg g.m-edge polygon,
div.m-graph.m-success svg g.m-edge path,
div.m-graph.m-success svg g.m-node ellipse,
-div.m-graph.m-success svg g.m-node polygon {
+div.m-graph.m-success svg g.m-node polygon,
+div.m-graph.m-success svg g.m-node polyline {
stroke: #31c25d;
}
div.m-math.m-warning svg, svg.m-math.m-warning,
@@ -1366,7 +1370,8 @@ div.m-graph.m-warning svg g.m-node.m-flat text {
div.m-graph.m-warning svg g.m-edge polygon,
div.m-graph.m-warning svg g.m-edge path,
div.m-graph.m-warning svg g.m-node ellipse,
-div.m-graph.m-warning svg g.m-node polygon {
+div.m-graph.m-warning svg g.m-node polygon,
+div.m-graph.m-warning svg g.m-node polyline {
stroke: #c7cf2f;
}
div.m-math.m-danger svg, svg.m-math.m-danger,
@@ -1383,7 +1388,8 @@ div.m-graph.m-danger svg g.m-node.m-flat text {
div.m-graph.m-danger svg g.m-edge polygon,
div.m-graph.m-danger svg g.m-edge path,
div.m-graph.m-danger svg g.m-node ellipse,
-div.m-graph.m-danger svg g.m-node polygon {
+div.m-graph.m-danger svg g.m-node polygon,
+div.m-graph.m-danger svg g.m-node polyline {
stroke: #f60000;
}
div.m-math.m-info svg, svg.m-math.m-info,
@@ -1400,7 +1406,8 @@ div.m-graph.m-info svg g.m-node.m-flat text {
div.m-graph.m-info svg g.m-edge polygon,
div.m-graph.m-info svg g.m-edge path,
div.m-graph.m-info svg g.m-node ellipse,
-div.m-graph.m-info svg g.m-node polygon {
+div.m-graph.m-info svg g.m-node polygon,
+div.m-graph.m-info svg g.m-node polyline {
stroke: #2e7dc5;
}
div.m-math.m-dim svg, svg.m-math.m-dim,
@@ -1417,7 +1424,8 @@ div.m-graph.m-dim svg g.m-node.m-flat text {
div.m-graph.m-dim svg g.m-edge polygon,
div.m-graph.m-dim svg g.m-edge path,
div.m-graph.m-dim svg g.m-node ellipse,
-div.m-graph.m-dim svg g.m-node polygon {
+div.m-graph.m-dim svg g.m-node polygon,
+div.m-graph.m-dim svg g.m-node polyline {
stroke: #bdbdbd;
}
div.m-graph svg g.m-edge.m-default polygon,
@@ -1430,7 +1438,8 @@ div.m-graph svg g.m-node.m-default.m-flat text {
div.m-graph svg g.m-edge.m-default polygon,
div.m-graph svg g.m-edge.m-default path,
div.m-graph svg g.m-node.m-default ellipse,
-div.m-graph svg g.m-node.m-default polygon {
+div.m-graph svg g.m-node.m-default polygon,
+div.m-graph svg g.m-node.m-default polyline {
stroke: #000000;
}
div.m-graph svg g.m-edge.m-primary polygon,
@@ -1443,7 +1452,8 @@ div.m-graph svg g.m-node.m-primary.m-flat text {
div.m-graph svg g.m-edge.m-primary polygon,
div.m-graph svg g.m-edge.m-primary path,
div.m-graph svg g.m-node.m-primary ellipse,
-div.m-graph svg g.m-node.m-primary polygon {
+div.m-graph svg g.m-node.m-primary polygon,
+div.m-graph svg g.m-node.m-primary polyline {
stroke: #cb4b16;
}
div.m-graph svg g.m-edge.m-success polygon,
@@ -1456,7 +1466,8 @@ div.m-graph svg g.m-node.m-success.m-flat text {
div.m-graph svg g.m-edge.m-success polygon,
div.m-graph svg g.m-edge.m-success path,
div.m-graph svg g.m-node.m-success ellipse,
-div.m-graph svg g.m-node.m-success polygon {
+div.m-graph svg g.m-node.m-success polygon,
+div.m-graph svg g.m-node.m-success polyline {
stroke: #31c25d;
}
div.m-graph svg g.m-edge.m-warning polygon,
@@ -1469,7 +1480,8 @@ div.m-graph svg g.m-node.m-warning.m-flat text {
div.m-graph svg g.m-edge.m-warning polygon,
div.m-graph svg g.m-edge.m-warning path,
div.m-graph svg g.m-node.m-warning ellipse,
-div.m-graph svg g.m-node.m-warning polygon {
+div.m-graph svg g.m-node.m-warning polygon,
+div.m-graph svg g.m-node.m-warning polyline {
stroke: #c7cf2f;
}
div.m-graph svg g.m-edge.m-danger polygon,
@@ -1482,7 +1494,8 @@ div.m-graph svg g.m-node.m-danger.m-flat text {
div.m-graph svg g.m-edge.m-danger polygon,
div.m-graph svg g.m-edge.m-danger path,
div.m-graph svg g.m-node.m-danger ellipse,
-div.m-graph svg g.m-node.m-danger polygon {
+div.m-graph svg g.m-node.m-danger polygon,
+div.m-graph svg g.m-node.m-danger polyline {
stroke: #f60000;
}
div.m-graph svg g.m-edge.m-info polygon,
@@ -1495,7 +1508,8 @@ div.m-graph svg g.m-node.m-info.m-flat text {
div.m-graph svg g.m-edge.m-info polygon,
div.m-graph svg g.m-edge.m-info path,
div.m-graph svg g.m-node.m-info ellipse,
-div.m-graph svg g.m-node.m-info polygon {
+div.m-graph svg g.m-node.m-info polygon,
+div.m-graph svg g.m-node.m-info polyline {
stroke: #2e7dc5;
}
div.m-graph svg g.m-edge.m-dim polygon,
@@ -1508,7 +1522,8 @@ div.m-graph svg g.m-node.m-dim.m-flat text {
div.m-graph svg g.m-edge.m-dim polygon,
div.m-graph svg g.m-edge.m-dim path,
div.m-graph svg g.m-node.m-dim ellipse,
-div.m-graph svg g.m-node.m-dim polygon {
+div.m-graph svg g.m-node.m-dim polygon,
+div.m-graph svg g.m-node.m-dim polyline {
stroke: #bdbdbd;
}
p, ul, ol, dl, blockquote, pre, figure.m-code-figure, figure.m-console-figure,
diff --git a/pelican-plugins/m/dot.py b/pelican-plugins/m/dot.py
index f24b7596..5e2e69e9 100644
--- a/pelican-plugins/m/dot.py
+++ b/pelican-plugins/m/dot.py
@@ -51,7 +51,7 @@ _class_dst = r"""
{title}
<{element} """
-_attributes_src = re.compile(r"""<(?Pellipse|polygon) fill="[^"]+" stroke="[^"]+" """)
+_attributes_src = re.compile(r"""<(?Pellipse|polygon|polyline) fill="[^"]+" stroke="[^"]+" """)
_attributes_dst = r"""<\g """
diff --git a/pelican-plugins/m/test/dot/page.html b/pelican-plugins/m/test/dot/page.html
index 41b0f52b..664d8351 100644
--- a/pelican-plugins/m/test/dot/page.html
+++ b/pelican-plugins/m/test/dot/page.html
@@ -167,6 +167,40 @@ and the arrowheads, nothing else. Non-default font size should be preserved.
+Structs:
+
+
+
+Structs
+
+struct
+
+a
+
+b
+
+c
+
+d
+
+e
+
+
+another
+
+a
+
+b
+
+c
+
+d
+
+e
+
+
+
+
diff --git a/pelican-plugins/m/test/dot/page.rst b/pelican-plugins/m/test/dot/page.rst
index 2961be1e..a1fc85fe 100644
--- a/pelican-plugins/m/test/dot/page.rst
+++ b/pelican-plugins/m/test/dot/page.rst
@@ -46,3 +46,11 @@ Strict graphs:
a -- b
a -- b
+
+Structs:
+
+.. digraph:: Structs
+
+ struct [label="{ a | b | { c | d | e }}" shape=record class="m-info"]
+
+ another [label="a | { b | c } | d | e" shape=record]