X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=doclib%2Fdot;h=c6bdbe4e3e0f326e2f2d9f669cf3dd816de14526;hb=25976ed67c66d30811fa0a01043e50347e9d1e69;hp=d0ccf8694559717eedfd2d78813c5ab30403d6c7;hpb=65909c44022ccd7b97d4c2810fbf67ffa980207e;p=senf.git diff --git a/doclib/dot b/doclib/dot index d0ccf86..c6bdbe4 100755 --- a/doclib/dot +++ b/doclib/dot @@ -1,14 +1,20 @@ #!/bin/sh topdir="`dirname "$0"`"; topdir="`cd "$topdir/.."; pwd`" +if head -4 "$1" | grep -q nomunge; then + dot "$@" + exit $? +fi sed -i -e 's/rankdir=LR/rankdir=TB/' "$1" "$topdir/doclib/dot-munge.pl" "$1" +unflatten -l2 -c2 -f -o "$1".unflat "$1" +mv "$1".unflat "$1" case "$2" in -Tpng:gd) - first="$1"; shift; shift - set -- "$first" "-Tpng" "$@" - ;; + first="$1"; shift; shift + set -- "$first" "-Tpng" "$@" + ;; *) esac @@ -18,28 +24,28 @@ dot "$@" case "$4" in *.png) - if [ -r "$4" ]; then - size="`pngtopnm "$4" | sed -n -e '2p'`" - width_a="${size% *}" - height_a="${size#* }" - if [ $width_a -gt 800 ]; then - for file in "${1%.dot}".*; do - cp "$file" "$file.a" - done - sed -e 's/rankdir=LR/rankdir=TB/' -e t -e 's/rankdir=TB/rankdir=LR/' "$1.a" > "$1" - dot "$@" - size="`pngtopnm "$4" | sed -n -e '2p'`" - width_b="${size% *}" - height_b="${size#* }" - if [ $width_a -lt $width_b ]; then - for file in "${1%.dot}".*.a; do - mv "$file" "${file%.a}" - done - else - rm "${1%.dot}".*.a - fi - fi - fi - ;; + if [ -r "$4" ]; then + size="`pngtopnm "$4" | sed -n -e '2p'`" + width_a="${size% *}" + height_a="${size#* }" + if [ $width_a -gt 800 ]; then + for file in "${1%.dot}".*; do + cp "$file" "$file.a" + done + sed -e 's/rankdir=LR/rankdir=TB/' -e t -e 's/rankdir=TB/rankdir=LR/' "$1.a" > "$1" + dot "$@" + size="`pngtopnm "$4" | sed -n -e '2p'`" + width_b="${size% *}" + height_b="${size#* }" + if [ $width_a -lt $width_b ]; then + for file in "${1%.dot}".*.a; do + mv "$file" "${file%.a}" + done + else + rm "${1%.dot}".*.a + fi + fi + fi + ;; *) ;; esac