# Eine Dokument-Engine wählen

Verstehen, wie LaTeX-, Typst-, Markdown-, Quarto- und Calepin-Dokumente zu einem PDF werden, und den Compiler wählen, den Ihr Projekt braucht.

Eine Engine verwandelt Ihren Quelltext in das Dokument, das Menschen lesen. Wählen Sie die Dokumentsprache, wenn Sie ein Projekt anlegen. Für ein LaTeX-Projekt können Sie außerdem wählen, welcher LaTeX-Compiler den Build ausführt.

## Eine Sprache wählen

| Ihre Arbeit | Beginnen Sie mit | So wird es ein PDF |
|---|---|---|
| Eine Zeitschrifteneinreichung, eine etablierte Klasse für Abschlussarbeiten oder ein bestehendes `.tex`-Projekt | LaTeX | Tectonic oder ein Compiler über `latexmk` |
| Ein neuer Aufsatz, Bericht oder Lebenslauf mit knapper Satzsyntax | Typst | Das eingebaute Typst 0.15.1 oder eine andere Typst-Version, die das Projekt fixiert |
| Ein Prosacentwurf, Notizen oder ein Dokument, das Sie in mehrere Formate exportieren möchten | Markdown | Pandoc wandelt den Quelltext nach LaTeX um; Tectonic erzeugt das PDF |
| Ein Analysebericht, ein Artikel oder eine Folienpräsentation, deren R-, Python- oder Julia-Code die Ergebnisse erzeugt | Quarto | Quarto rendert `.qmd`- oder `.Rmd`-Dateien zu einem PDF, einer Webseite oder Folien |
| Ein Typst-Dokument mit Code-Chunks | Calepin | Calepin führt den Code aus, dann baut das eingebaute Typst das PDF |

Diese Wahl bestimmt die Werkzeugleiste des Editors, die Syntax des Quelltexts und die verfügbaren Exportformate. Ein Wechsel des LaTeX-Compilers übersetzt das Dokument nicht nach Typst oder Markdown. Um ein LaTeX-Projekt nach Typst zu bringen, [konvertieren Sie es in ein neues Typst-Projekt](/docs/typst/#convert-a-latex-project-to-typst).

## Tectonic

Verwenden Sie **Tectonic** für eine unkomplizierte LaTeX-Einrichtung. Es liegt Oleafly bei, lädt die TeX-Pakete herunter, die ein Build braucht, und speichert sie für spätere Builds zwischen. Beginnen Sie hier, wenn Ihre Vorlage keinen bestimmten Compiler verlangt.

Kompilieren Sie vor einer Reise einmal, während Sie online sind. Ein zwischengespeichertes Projekt kann offline kompilieren; ein neues Paket kann trotzdem einen Download brauchen. Aktivieren Sie **Einstellungen → Allgemein → Offline-Modus**, um Tectonic anzuweisen, seinen Zwischenspeicher zu verwenden.

## pdfLaTeX

Wählen Sie **pdfLaTeX**, wenn ein Verlag oder ein bestehendes Projekt es vorgibt. Es folgt dem klassischen LaTeX-Workflow und passt gut zu älteren Klassen und Paketkombinationen. Es braucht eine TeX-Distribution mit installiertem `latexmk`.

## XeLaTeX

Wählen Sie **XeLaTeX** für ein Projekt, das es verlangt, besonders wenn es `fontspec`, OpenType-Schriften oder mehrsprachigen Text nutzt. Stellen Sie sicher, dass die im Quelltext genannten Schriften installiert sind oder zum Projekt gehören. Es läuft ebenfalls über `latexmk`.

## LuaLaTeX

Wählen Sie **LuaLaTeX** für eine Vorlage, die es erfordert, für Lua-basierten Satz oder für Oleafys Workflow für getaggte PDFs. Getaggte PDFs tragen Dokumentstruktur, die assistierende Technologien nutzen können. Führen Sie die [Preflight-Prüfungen](/docs/preflight/) aus, um das Ergebnis zu begutachten; die Wahl des Compilers allein legt die Qualität der Tags nicht fest.

## Typst

Oleafly liefert Typst 0.15.1 mit. Erstellen Sie ein Typst-Projekt, schreiben Sie in `.typ`-Dateien und klicken Sie auf **Neu kompilieren**. Es gibt keine TeX-Installation, die eingerichtet werden müsste.

**Einstellungen → Engines → Typst** kann auch Typst 0.11 bis 0.15 installieren und ein Typst verwenden, das bereits auf Ihrem Rechner installiert ist. Jedes Projekt fixiert seine eigene Version, sodass ein Aufsatz sein Layout behält, wenn Oleafly zu einem neueren Typst wechselt. Typst lädt Pakete aus Typst Universe herunter, sobald ein Dokument sie zum ersten Mal importiert, und der **Offline-Modus** beschränkt es auf Pakete, die bereits zwischengespeichert oder im Projekt abgelegt sind.

Typst hat eine eigene Syntax, eigene Pakete und eine eigene Schriftverwaltung. [Typst-Projekte](/docs/typst/) behandelt Versionen, Pakete, Schriften und Build-Varianten. Die [Typst-Schreibanleitung](/docs/writing/typst/) enthält ein vollständiges Ausgangsdokument und die Steuerungen der Werkzeugleiste.

## Markdown

Markdown nutzt **Pandoc**, um ein gesetztes Dokument vorzubereiten, und Tectonic, um sein PDF zu bauen. Öffnen Sie **Einstellungen → Engines → Markdown**, um Pandoc zu installieren, wenn es fehlt. Öffnen Sie dann Ihr Markdown-Projekt und kompilieren Sie es.

Für Überschriften, Listen, Formeln und den visuellen Editor siehe [Markdown schreiben](/docs/writing/markdown/). Die [Export-Anleitung](/docs/export/) erklärt, welche Ausgabeformate das Projekt anbietet.

## Quarto

Quarto macht aus `.qmd`- und `.Rmd`-Dokumenten ein PDF, eine Webseite oder Folien. Oleafly verwendet das Quarto auf Ihrem Computer, wenn es eines findet. Gibt es keines, öffnen Sie **Einstellungen → Engines → Quarto** und wählen Sie **Quarto 1.10.19 herunterladen**. Die Schaltfläche zeigt auch die Größe des Downloads. Oleafly prüft den Download, bevor es ihn entpackt, und legt die Kopie in seinem eigenen App-Ordner ab. Wenn Sie kompilieren, bevor Quarto da ist, bietet die Vorschau an, es sofort zu installieren, oder **Engine-Einstellungen öffnen**.

Das erste Format, das das Dokument angibt, entscheidet, was Sie bekommen:

- `pdf`, `typst` und `beamer` erzeugen ein PDF. `format: typst` braucht keine TeX-Installation. `pdf` und `beamer` laufen über LaTeX. Installieren Sie also TinyTeX über **Einstellungen → Engines → LaTeX**, wenn Sie noch kein TeX haben.
- `html`, `revealjs` und `dashboard` erzeugen eine Webseite. Wählen Sie in der Vorschau **Im Browser öffnen**, um sie anzusehen.

Gibt das Dokument kein Format an, sucht Oleafly eines in `_quarto.yml` oder `_metadata.yml`, im Ordner des Dokuments und in den Ordnern darüber bis zum Stammordner des Projekts. Steht nirgends ein Format, erzeugt Quarto eine Webseite. Eine `.Rmd`-Datei, die ein R-Markdown-`output:` nennt, etwa `pdf_document`, bekommt das passende Quarto-Format.

Der Code läuft in dem R, Python oder Julia, das bereits auf Ihrem Computer ist. Oleafly installiert diese Sprachen nie, und **Sprachen** im selben Einstellungs-Tab zeigt, welche es gefunden hat. Python-Code braucht außerdem Jupyter in diesem Python. Der Export bietet DOCX und HTML an, beide von Quarto erzeugt. Der Dialog **Neues Projekt** hat zwei Quarto-Vorlagen: **Quarto article**, ein über Typst gebautes PDF, und **Quarto slides**, eine reveal.js-Präsentation.

## Calepin

Calepin führt den Code in einem Typst-Dokument aus und setzt die Ergebnisse ins PDF. Ein Calepin-Dokument ist eine `.typ`-Datei, die `/.calepin/calepin.typ` importiert. Beginnen Sie eines mit der Vorlage **Calepin report**, oder öffnen Sie in einem Typst-Projekt den Pfeil neben **Neu kompilieren** und wählen Sie unter **Engine (dieses Projekt)** den Eintrag **Calepin**.

Installieren Sie es wie Quarto über **Einstellungen → Engines → Calepin**, mit **Calepin 0.0.61 herunterladen**. Calepin baut mit dem Typst, das Oleafly mitbringt. Ein Chunk, dessen Sprache nicht installiert ist, zeigt einen kurzen Hinweis, und der Rest des Dokuments wird trotzdem gebaut. Der Export bietet HTML an, von Calepin erzeugt.

## Code in einem Projekt erlauben

Code in einem Quarto- oder Calepin-Dokument läuft mit Ihren Berechtigungen, deshalb bleibt er in jedem Projekt aus, bis Sie ihn erlauben. Nach einer Kompilierung, die Code brauchte, sagt ein Banner über dem Editor, dass Code ausgeschaltet ist, und bietet **Code in diesem Projekt erlauben** an. Sie können auch den Pfeil neben **Neu kompilieren** öffnen und unter **Code (dieser Computer)** den Eintrag **Code auf diesem Computer ausführen** wählen. **Aus** schaltet ihn wieder aus. Erlauben Sie Code nur, wenn Sie jeder Datei im Projekt vertrauen.

Die Wahl gilt nur für diesen Computer. Sie wird nicht im Projekt gespeichert, und wenn Sie die Engine des Projekts ändern, ist Code wieder aus. In einem [geteilten Projekt](/docs/collaboration/) fragt Oleafly noch einmal nach, weil jeder, der das Projekt bearbeiten kann, seinen Code ändern kann.

Solange Code aus ist:

- Quarto zeigt den Code jedes Chunks, ohne ihn auszuführen. Filter, Shortcodes, `_extensions`, Pre-Render- und Post-Render-Skripte sowie Inline-R-Code führen auch dann Code aus. Ein Dokument, das sie verwendet, kompiliert deshalb erst, wenn Sie Code erlauben.
- Calepin kann Code nicht überspringen. Oleafly baut das PDF mit reinem Typst aus den Ergebnissen, die Calepin bei seinem letzten Lauf gespeichert hat. Gibt es keine, bricht die Kompilierung ab und bittet Sie, Code zu erlauben.

Auch einem [vor Ort geöffneten Ordner](/docs/library/#folders-opened-in-place) muss vertraut werden, bevor Quarto oder Calepin ihn kompilieren können. Der Abgleich zwischen Quelltext und PDF ist für keine der beiden Engines verfügbar.

## Einen Standard für neue Projekte festlegen

Öffnen Sie **Einstellungen → Engines → LaTeX** und wählen Sie **Standard-Engine zum Kompilieren**: **Tectonic (eingebaut)** oder **latexmk (System-TeX)**. Jedes LaTeX-Projekt, das Sie danach anlegen, startet damit:

- Ein leeres Projekt oder eine Vorlage aus dem Dialog **Neues Projekt**, und ein Recherche-Projekt.
- Eine importierte ZIP-Datei, ein importierter Ordner, ein arXiv-Aufsatz oder ein GitHub-Repository.
- Ein Dokument, das Sie in ein LaTeX-Projekt umwandeln, etwa eine Word-Datei oder ein PDF.

Die Engine wird in die `project.json` des Projekts geschrieben, sodass jemand, der das Projekt später öffnet, es auf dieselbe Weise kompiliert. Ein importiertes Projekt, das pdfLaTeX, XeLaTeX oder LuaLaTeX angibt, behält diesen Compiler, wenn es auf `latexmk` trifft. Der gespeicherte Compiler eines bestehenden Projekts bleibt dessen eigene Wahl.

Ein Ordner, den Sie [an Ort und Stelle öffnen](/docs/library/#folders-opened-in-place) und der keine eigene Engine hat, folgt dem Standard, sobald Sie ihm vertrauen. Bis dahin zeigt er Tectonic an und kompiliert damit. Oleafly schreibt in beiden Fällen nichts in den Ordner.

Für Typst öffnen Sie **Einstellungen → Engines → Typst** und wählen die Standardversion. Neue Typst-Projekte fixieren die Version, die beim Erstellen Standard ist. Eine spätere Änderung des Standards verschiebt bestehende Projekte nicht.

## Den Compiler des aktuellen Projekts ändern

Öffnen Sie den Pfeil neben **Neu kompilieren** in der [Projekt-Werkzeugleiste](/docs/project-toolbar/). Wählen Sie in einem LaTeX-Projekt unter **Compiler (dieses Projekt)** Tectonic, Auto, pdfLaTeX, XeLaTeX oder LuaLaTeX und kompilieren Sie dann. Lesen Sie das Protokoll, wenn eine Vorlage ein Paket oder eine Schrift braucht, die die gewählte Installation nicht mitbringt.

In einem Typst-Projekt heißt der Eintrag stattdessen **Typst-Version (dieses Projekt)**. Wählen Sie eine installierte Version oder **Standard**, um den Einstellungen zu folgen. Die Gruppe **Engine (dieses Projekt)** in diesem Menü schaltet das Dokument zwischen **Typst** und **Calepin** um.

## Eine bestehende TeX-Distribution erkennen

Öffnen Sie **Einstellungen → Engines → LaTeX** und prüfen Sie die erkannte Toolchain. Oleafly prüft auf eine vollständige Compiler-Ausstattung, einschließlich `latexmk` und der unterstützenden Werkzeuge. Eine unvollständige Systeminstallation hat keinen Vorrang vor einer funktionierenden verwalteten Installation.

## Verwaltetes TinyTeX installieren

Verwenden Sie die Installieren-Steuerung in den LaTeX-Engine-Einstellungen, wenn Sie einen klassischen Compiler brauchen und keinen haben. Oleafly lädt seine eigene TinyTeX-Installation nach `~/.oleafly/tinytex` herunter; Administratorrechte sind nicht nötig. Planen Sie rund 250 MB für den ersten Download und zusätzlichen Platz für Pakete ein.

## Pakete verwalten

Die Paketliste in den LaTeX-Engine-Einstellungen lässt Sie Pakete filtern, Beschreibungen ansehen und Pakete hinzufügen oder entfernen. Auszeichnungen für Tagging kennzeichnen Pakete, die bei der Erzeugung eines getaggten PDFs besondere Aufmerksamkeit brauchen. Diese Steuerungen verwalten die TeX-Distribution, die `latexmk` verwendet; Tectonic hat einen eigenen Zwischenspeicher.

[Lesen Sie die Anleitung zu LaTeX-Paketen und getaggten PDFs →](/docs/latex-engines/)
