zulip/tools/django-template-graph

21 lines
469 B
Bash
Executable File

#!/usr/bin/env bash
set -e
# Draws the Django template inheritance graph.
cd "$(dirname "$0")"/../templates
(
echo 'digraph {'
find . -name '*.html' -printf '%P\n' | while read -r t; do
echo "\"$t\";" | sed 's|/|\\n|g'
perl -lne 'print "\"'"$t"'\" -> \"$1\";" if m/{%\s*extends\s*"([^"]+)"/' "$t" \
| sed 's|/|\\n|g'
done
echo '}'
) > graph.dot
dot -Tsvg graph.dot > graph.svg
rm graph.dot
echo file://"$(pwd)"/graph.svg