Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Erstellen des Handbuchs mit Sphinx
Auf dieser Seite wird erklärt, wie Sie eine lokale Kopie des Godot-Handbuchs mithilfe der Sphinx docs-Engine erstellen können. Dies ermöglicht Ihnen, lokale HTML-Dateien zu haben und die Dokumentation z.B. als PDF-, EPUB- oder LaTeX-Datei zu erstellen.
Bevor Sie beginnen, vergewissern Sie sich, dass Sie diese Dinge haben:
Bemerkung
Python 3 sollte mit dem Befehl pip3
ausgeliefert werden. Möglicherweise müssen Sie python3 -m pip
(Unix) oder py -m pip
(Windows) anstelle von pip3
schreiben. Wenn beide Ansätze scheitern, stellen Sie sicher, dass Sie pip3 installiert haben.
(Optional) Richten Sie eine virtuelle Umgebung ein. Virtuelle Umgebungen verhindern mögliche Konflikte zwischen den Python-Paketen in
requirements.txt
und anderen Python-Paketen, die auf Ihrem System installiert sind.Erstellen Sie die virtuelle Umgebung:
py -m venv godot-docs-venv
python3 -m venv godot-docs-venv
Aktivieren Sie die virtuelle Umgebung:
godot-docs-venv\Scripts\activate.bat
source godot-docs-venv/bin/activate
(Optional) Aktualisieren Sie vorinstallierte Pakete:
py -m pip install --upgrade pip setuptools
pip3 install --upgrade pip setuptools
Klonen Sie das Docs-Repository:
git clone https://github.com/godotengine/godot-docs.git
Wechseln Sie in das Verzeichnis des Docs-Repository:
cd godot-docs
Installieren Sie die erforderlichen Pakete:
pip3 install -r requirements.txt
Erstellen Sie die Dokumente:
make html
Bemerkung
Unter Windows wird dieser Befehl
make.bat
anstelle von GNU Make (oder einer Alternative) ausführen.Alternativ können Sie die Dokumentation auch erstellen, indem Sie das Programm sphinx-build manuell ausführen:
sphinx-build -b html ./ _build/html
Die Kompilierung wird einige Zeit dauern, da der Ordner classes/
hunderte von Dateien enthält. Siehe Hinweise zur Performance.
Sie können dann die Dokumentation durchsuchen, indem Sie _build/html/index.html
in Ihrem Webbrowser öffnen.
Umgang mit Fehlern
Wenn Sie auf Fehler stoßen, können Sie den folgenden Befehl versuchen:
make SPHINXBUILD=~/.local/bin/sphinx-build html
If you get a MemoryError
or EOFError
, you can remove the classes/
folder and
run make
again.
This will drop the class references from the final HTML documentation, but will keep the
rest intact.
Wichtig
Wenn Sie den Ordner classes/
löschen, verwenden Sie nicht git add
, wenn Sie an einem Pull Request arbeiten, sonst wird der gesamte Ordner classes/
beim Commit entfernt. Siehe #3157 für weitere Details.
Hinweise zur Performance
RAM-Verbrauch
Das Erstellen der Dokumentation erfordert mindestens 8 GB RAM, um ohne Festplatten-Swapping zu laufen, was es verlangsamt. Wenn Sie mindestens 16 GB RAM haben, können Sie die Kompilierung beschleunigen, indem Sie folgendes ausführen:
set SPHINXOPTS=-j2 && make html
make html SPHINXOPTS=-j2
Sie können -j auto
verwenden, um alle verfügbaren CPU-Threads zu nutzen, aber dies kann eine Menge RAM verbrauchen, wenn Sie viele CPU-Threads haben. Auf einem System mit 32 CPU-Threads kann zum Beispiel -j auto
(was hier -j 32
entspricht) 20+ GB RAM allein für Sphinx benötigen.
Angeben einer Liste von Dateien
Warnung
This section will not work on Windows, since the repository is using
a simplified make.bat
script instead of the real GNU Make program.
If you would like to get a Linux terminal on your system, consider using
Windows Subsystem for Linux (WSL).
Sie können eine Liste der zu erstellenden Dateien angeben, was die Kompilierung erheblich beschleunigen kann:
make html FILELIST='classes/class_node.rst classes/class_resource.rst'
The list of files can also be provided by the git
command.
This way you can automatically get the names of all files that have changed since
the last commit (sed
is used to put them on the same line).
make html FILELIST="$(git diff HEAD --name-only | sed -z 's/\n/ /g')"
You can replace HEAD
with master
to return all files changed from the
master
branch:
make html FILELIST="$(git diff master --name-only | sed -z 's/\n/ /g')"
If any images were modified, the output will contain some warnings about them, but the build will proceed correctly.