Document undocumented attributes
Steps to reproduce
The following linux command will list all the undocumented calls to agget (the attribute fetching routine) in any .c or .h file in the lib directory tree (according to doc/infosrc/attrs)
grep 'agget(' $(find . -type f |grep '\.[ch]$')|grep './lib/'|gawk -F'"' '{print $2}'|sort -u|gawk 'NR==1{next}{print}'|while read X;do Z=
grep "^:$X:" doc/infosrc/attrs;echo "$X +++ $Z";done |grep -v ':'
Expected Behaviour
No undocumented attributes (naively)
Actual Behaviour
Several useful attributes discovered
OS Version
git source
Additional info
Undocumented attributes:
-
_draw_
+++ required for _background, in lib/common/emit.c -
TBbalance
+++ see here graphviz#1339 (closed), in lib/common/ns.c -
beautify
+++ sfdp attribute, in lib/sfdpgen/sfdpinit.c -
cluster
+++ alternate to naming a graph "cluster...", in lib/common/utils.c -
clustercolor
+++ in lib/sparse/DotIO.c -
compact
+++ for edges into/out of a cluster, used to determine "is_a_strong_cluster", in lib/dotgen/rank.c -
labelaligned
+++ part of emit_begin_edge, in lib/common/emit.c -
linelength
+++ used to determine max length of printed text output, in lib/cgraph/write.c -
odb
+++ used to help debug ortho lines (if #DEBUG is defined), in lib/ortho/ortho.c -
oneblock
+++ circo only, in lib/circogen/circular.c -
postaction
+++ allows "reparseable input", in lib/common/input.c
Edited by Mark Hansen