/usr/share/graphviz/gvpr
NameSizeModeActions
addedges2910644editdlrm
addranks8300644editdlrm
addrings13190644editdlrm
anon4220644editdlrm
attr1510644editdlrm
bb9970644editdlrm
bbox5320644editdlrm
binduce11660644editdlrm
bipart4550644editdlrm
chkclusters5320644editdlrm
chkedges9160644editdlrm
cliptree1780644editdlrm
col6010644editdlrm
collapse4690644editdlrm
color14400644editdlrm
cycle5600644editdlrm
dechain2640644editdlrm
deghist3510644editdlrm
deledges1160644editdlrm
delmulti3970644editdlrm
delnodes2490644editdlrm
depath5470644editdlrm
dijkstra6470644editdlrm
flatten880644editdlrm
get-layers-list2770644editdlrm
group7910644editdlrm
histogram3190644editdlrm
indent3780644editdlrm
knbhd12260644editdlrm
maxdeg3070644editdlrm
path4490644editdlrm
rotate11940644editdlrm
scale11470644editdlrm
scalexy11230644editdlrm
span1390644editdlrm
topon4290644editdlrm
treetoclust9880644editdlrm
Edit: /usr/share/graphviz/gvpr/chkedges (916B)
/* Looks for multiedges and loops, and output * those found along with counts. If the -d flag * is given, edge direction is taken into account. */ BEGIN{ char* ename; char* n; int doDir, cnt[]; int loopcnt[]; int nloops, nmulti; if ((ARGC > 0) && (ARGV[0] == "-d")) doDir = 1; else doDir = 0; } BEG_G{unset(cnt); unset(loopcnt); nloops = nmulti = 0;} E{ if (doDir || (tail.name <= head.name)) ename=tail.name+"_"+head.name; else ename = head.name+"_"+tail.name; if (tail == head) { loopcnt[ename] += 1; if (loopcnt[ename] == 1) nloops += 1; } else { cnt[ename] += 1; if (cnt[ename] == 2) nmulti += 1; } } END_G{ printf ("graph %s: %d loops %d multiedges\n", $.name, nloops, nmulti); for (cnt[n]) { if (cnt[n] > 1) printf ("%s : %d\n", n, cnt[n]); } for (loopcnt[n]) { if (loopcnt[n] > 0) printf ("%s : %d\n", n, loopcnt[n]); } }