#!/usr/bin/env python3 import plantuml import sys import time import os f = open(sys.argv[1], 'r').readlines() p = plantuml.PlantUML(url="http://www.plantuml.com/plantuml/svg/") def generate_svg(name, text): print(f"generating: {text}") try: res = p.processes(plantuml_text=(text)) except Exception: print(p.get_url(plantuml_text=(text))) return svg = 'seq/' + name + '.svg' pdf = 'seq/' + name + '.pdf' open(svg, 'wb').write(res) os.system(f"inkscape {svg} -o {pdf}") time.sleep(1) def parse_sequence(offset): print(f"offset: {offset}") while not "```plantuml" == f[offset].strip(): offset += 1 begin = offset while not "```" == f[offset].strip(): offset += 1 lines = f[begin + 1:(offset )] name = f[begin + 1][1:-1] print(f"name: {name}") generate_svg(name, ''.join(lines)) return offset offset = 0 while offset < len(f): offset = parse_sequence(offset)