Der Online-Compiler TeXlive.net

Ursprünglich auf TeX.co veröffentlicht.

Es gibt ja viele Internet-Foren, Blogs, Wikis und andere Webseiten mit Codebeispielen für TeX und LaTeX. Gerade in Foren ist es üblich, Problem-Beispiele zu posten, und Antworten enthalten oft vollständige Lösungs-Codes. Optimalerweise mit Screenshots zum Komfort aller Leser. Man kann sich den Code herauskopieren und in seinem eigenen LaTeX-Editor ausprobieren.

Was, wenn man den Code mit einem einzigen Klick direkt auf der Webseite übersetzen könnte? Am besten auch auf dem Tablet oder Mobiltelefon, wo auch immer man gerade liest?

Das geht nun mit TeXlive.net.

Am besten sieht man es am Beispiel:

\documentclass[border=10pt]{standalone}
\usepackage{smartdiagram}
\usepackage{metalogo}
\begin{document}
\smartdiagram[bubble diagram]{\TeX\ engines,
  \TeX\ (dvi), pdf\TeX, \XeTeX, \LuaTeX, Con\TeX t}
\end{document}

Einfach “Run LaTeX here” klicken. Dann übersetzt LaTeX den Code und er wird hier direkt dargestellt. Durch Klicken auf >> rechts oben kann man die PDF-Datei speichern.

Auch gut zum Testen und ausprobieren: den Code kann man hier direkt auf der Webseite editieren und wieder auf den Ausgabe-erzeugen-Schalter klicken. Das finde ich extrem praktisch in Foren, wo man ein angegebenes Problembeispiel direkt bearbeiten und testen kann, um eine Lösung zu finden und mitzuteilen. Probier einfach aus, indem Du die Diagramm-Texte oben oder das unten folgende Mathematik-Beispiel etwas editierst und erneut übersetzt.

Wie hier zu sehen, erfolgt Angabe der Engine, des Formats, oder des Ausgabeformats durch einen Kommentar

% !TEX name

wobei name z.B. sein kann: latex, pdflatex, xelatex, lualatex, pdftex, luatex, xetex, context, oder für die Ausgabe pdfjs, pdf, log (Logfile), make4ht, LaTeXML or lwarp, und Tools wie makeindex mit Parametern. Siehe auch Beispiele und Dokumentation.

Die Auslastungs-Statistik von TeXlive.net zeigt, dass täglich ungefähr 2000 verschiedene Nutzer ca. 4000 Dokumente übersetzen, an Wochenenden weniger. Das kommt daher, weil TeXlive.net schon in vielen Webseiten genutzt wird und die Nutzer aktiv die Codebeispiele ausprobieren. Hier einige willkürliche Beispiele, die zeigen, dass es auf verschiedensten Web-Plattformen läuft:

TeXlive.net unterstützt ca. 20 Compiler Engines/Formate einschließlich (pdf)LaTeX, XeLaTeX, LuaLaTeX, plain (pdf)TeX, LuaTeX, XeTeX und ConTeXt sowie Ausgabe via pdfjs, Browser PDF plugin, HTML-Ausgaben mit make4ht, lwarp, oder LaTeXML und Tools wie makeindex, BiBTeX, und biber, kombinierbar.

Warum nicht auch direkt übersetzbaren Code in Twitter-Beiträge einbetten? Das geht mit LaTeX-Dokumenten direkt in einer URL, z.B.: texlive.net/run?\[T_{f(x;a)}=\sum_{n=0}^\infty\frac{f^{(n)}(a)}{n!}\].

Zum Datenschutz: TeXlive.net als Compiler erhält den übergebenen Code, übersetzt ihn und liefert die Ausgabe zurück. Die bei der Übersetzung anfallenden Dateien (PDFs, Logfiles) werden in einer stündlichen Routine gelöscht wenn sie ab 1 Stunde alt sind, d.h. sie liegen 1-2 Stunden vor bis zur automatischen Löschung. Wie bei Webseiten üblich, sieht auch TeXlive.net die IP-Adresse des Aufrufenden (bzw. seines Providers). Webserver-Logdaten (für technische Zwecke (Troublehooting, Performance-Statistik, Schutz gegen Angriffsversuche) werden nach ab 14 Tagen Alter automatisch gelöscht.

Die Software für TeXlive.net wurde von David Carlisle geschrieben, ursprünglich für LearnLaTeX.org, eine multilinguale Tutorial-Seite für LaTeX-Einsteiger, die auch den Online-Compiler in den Lektionen verwendet. Der Server arbeitet mit einem aktuellen TeX Live 2021. Wie die obengenannten Foren und weiteren Webseiten läuft TeXlive.net auf von DANTE e.V. projektfinanzierter Hardware, das sind zwei bei Hetzner laufende Root-Server. Danke an DANTE dafür.