diff --git a/00-sessie/sessie-agents-en-projecten.pptx b/00-sessie/sessie-agents-en-projecten.pptx index 0939ce6..588218e 100644 Binary files a/00-sessie/sessie-agents-en-projecten.pptx and b/00-sessie/sessie-agents-en-projecten.pptx differ diff --git a/_gereedschap/maak_pptx.py b/_gereedschap/maak_pptx.py index 8465752..b669fd5 100644 --- a/_gereedschap/maak_pptx.py +++ b/_gereedschap/maak_pptx.py @@ -7,8 +7,10 @@ alleen de dia ziet. Het beeld is een afbeelding: de opmaak is precies gelijk aan de tekst is in PowerPoint niet te bewerken. Wijzigen doe je in maak_dias.py en dan opnieuw bouwen. -Gebruik: python3 ../_gereedschap/maak_pptx.py -Bijvoorbeeld in 00-sessie: python3 ../_gereedschap/maak_pptx.py sessie-agents-en-projecten.pdf +Gebruik: python3 ../_gereedschap/maak_pptx.py + vanuit de map van de presentatie (00-sessie, 00-lezing, 00-presentatie). Het script + zoekt zelf de dia-PDF, dus die van de dia's en niet de notitieversie. Staat er meer dan + een, geef dan de naam mee: python3 ../_gereedschap/maak_pptx.py sessie-agents-en-projecten.pdf Staat er een notities-begeleider.json naast maak_dias.py, dan gebruikt het script die uitgebreide notities en zegt het erbij; dat bestand is privé, dus deel die pptx niet. @@ -28,10 +30,31 @@ except ImportError: sys.exit("python-pptx ontbreekt. Bijvoorbeeld: ~/.local/venvs/uitlegvideo/bin/python " "../_gereedschap/maak_pptx.py ") -pdf = Path(sys.argv[1]).resolve() -if not pdf.exists(): - sys.exit(f"niet gevonden: {pdf}") +def zoek_dia_pdf(waar: Path) -> Path: + """De PDF van de dia's in deze map: zonder -met-notities in de naam.""" + if not (waar / "maak_dias.py").exists(): + sys.exit(f"{waar} is geen presentatiemap. Draai dit vanuit 00-sessie, 00-lezing of " + f"00-presentatie, of geef het pad naar de dia-PDF mee.") + kandidaten = [f for f in sorted(waar.glob("*.pdf")) if not f.stem.endswith("-met-notities")] + if not kandidaten: + sys.exit(f"geen dia-PDF in {waar.name}; bouw hem eerst met python3 bouw_pdf.py") + if len(kandidaten) > 1: + namen = ", ".join(f.name for f in kandidaten[:5]) + sys.exit(f"meerdere PDF's in {waar.name} ({namen}); geef de naam van de dia-PDF mee") + return kandidaten[0] + + +if len(sys.argv) > 1: + pdf = Path(sys.argv[1]).resolve() + if not pdf.exists(): + sys.exit(f"niet gevonden: {pdf}") + if pdf.stem.endswith("-met-notities"): + sys.exit(f"{pdf.name} is de notitieversie. Geef de PDF van de dia's, of laat het argument weg.") +else: + pdf = zoek_dia_pdf(Path.cwd()) MAP = pdf.parent +if not (MAP / "maak_dias.py").exists(): + sys.exit(f"geen maak_dias.py in {MAP}; draai dit vanuit de map van een presentatie") P = MAP / "project" PRIVE = (MAP / "notities-begeleider.json").exists()