"""Sphinx-Konfiguration fuer den Fortna-Dokumentations-Build (DE). Vorlaeufige Konfiguration fuer den ersten vollstaendigen Build aus dem Base-Repo heraus. Die spaetere Zwei-Repo-Architektur (conf_base.py + Projekt-conf.py, siehe doc/Kernkonzepte.md) ist hier noch nicht umgesetzt. """ from __future__ import annotations # -- Projekt ---------------------------------------------------------------- project = "Anlagendokumentation Fortna (500592 / KA 135776)" author = "Schoenenberger Systeme GmbH / Mista GmbH" copyright = "2026, Schoenenberger Systeme GmbH" release = "0.1" language = "de" # -- Allgemein -------------------------------------------------------------- extensions = [ "myst_parser", # erlaubt .md gleichwertig zu .rst (Kernkonzepte.md) ] # Master-Dokument root_doc = "index" source_suffix = { ".rst": "restructuredtext", ".md": "markdown", } # Nur die deutschsprachigen Bausteine in den Build aufnehmen; fremdsprachige # {name}.en.rst / {name}.cz.rst (aktuell keine im Baum) werden ignoriert. # Sphinx sammelt per Default ALLE .rst/.md unter dem Wurzelverzeichnis ein. # Alles ausserhalb von chapters/ ausschliessen, damit nur die Doku-Bausteine # in den Build gelangen (CLAUDE.md, README.md, doc/, Git-Worktrees etc. raus). exclude_patterns = [ "_build", "**/*.en.rst", "**/*.cz.rst", "*.md", ".claude", ".venv", ".git", "doc", "examples", "results", "data", "lib", "bin", "cfg", "log", "tests", "projekte", "_ext", "_templates", "assets", "modules", "glossary", "styles", "scripts", # Defekte Altbestaende aus fruehen Testlaeufen (nicht von den fortna_*-Skripten # erzeugt): unvollstaendiger Bildbestand bzw. fehlende RST-Ueberschrift. # TODO: mit fortna_convert_chapters.py sauber neu erzeugen, dann Exclude entfernen. "chapters/02_sicherheit/risikobewertung/rb_fortna_h_m_500592_ev12_20260311.de.rst", "chapters/00_inhaltsverzeichnis/contens_obsah_500592_135776_v2_1_en_cz.de.rst", ] # -- HTML ------------------------------------------------------------------- html_theme = "alabaster" # -- LaTeX / PDF ------------------------------------------------------------ # lualatex verkraftet die Unicode-Zeichen (tschechische Diakritik, ue/oe/ae, # Sonderzeichen aus der PDF-Extraktion) deutlich besser als pdflatex. latex_engine = "lualatex" latex_documents = [ (root_doc, "Fortna_Dokumentation_DE.tex", "Anlagendokumentation Fortna\\\\500592 / KA 135776", author, "manual"), ] # iconpackage=none: FontAwesome nicht laden. fontawesome7 (MiKTeX) bricht unter # lualatex beim Font-Analyze ab (\faDice undefined). Ohne Icons werden Admonitions # (.. note:: in den Verzeichnislisten) einfach ohne Symbol gesetzt. latex_elements = { "sphinxsetup": "iconpackage=none", "papersize": "a4paper", "pointsize": "11pt", # babel statt polyglossia erzwingen: polyglossia 2.13 (MiKTeX 09/2026) wirft # unter lualatex einen bidi-Initialisierungsfehler (\g__xpg_unibidi_str), der # fuer rein deutschen Text irrelevant ist. babel vermeidet ihn. "polyglossia": "", "babel": r"\usepackage[ngerman]{babel}", # Robustheit gegen ueberlange Zeilen aus der PDF-Textextraktion: "preamble": r""" \usepackage{microtype} \emergencystretch=3em \setcounter{tocdepth}{2} \sloppy """, }