[meta] Übersetzen von Code auf TeXwelt.de
Hallo zusammen,
ich habe zu den Code-Boxen jetzt online-Übersetzen eingebaut mittels [TeXlive.net](https://texlive.net), dank David Carlisles Programmierung dort. Man kann direkt hier im Forum mit einem Click die Ausgabe als PDF erhalten und auch modifizieren., ob mit PC oder Tablet oder Smartphone. Auch bei fehlerhaften Code kriegt man auf Klick ein zugehöriges Logfile.
Hier mal an einem Beispiel aus dem [LaTeX-Cookbook](https://latex-cookbook.net/):
\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}
Besonderheiten:
- pdfLaTeX ist voreingestellt.
- Weitere TeX-Engines werden durch konkrete Anweisung am Beginn unterstützt, in der Weise `% !TEX name`, wobei `name` sein kann: `latex`, `pdflatex`, `xelatex`, `lualatex`, `pdftex`, `luatex`, `xetex`, `context`, `none` (letzterer ohne Ausgabe-Button)
- Ohne Angabe einer Engine wird anhand einiger Stichwörter wird eine evtl. passende Engine gewählt (latex für pstricks, lualatex mit `\directlua`) - wenn es nicht pdfLaTeX sein soll, gern eine Engine angeben.
- Wird kein (La)TeX-Kommand am Beginn erkannt (am Backslash) wie z.B. bei Logfiles, BibTeX-Dateien oder Fehlermeldungen, wird kein Ausgabe-Button dazugesetzt.
dazugesetzt. Auf den Button wird auch verzichtet bei Einzeilern/Zweizeilern, die nicht wirklich als übersetzbare Dokumente gemeint sein sollten.
- bei Snippets, die LaTeX sein könnten, wird ein Dokumentframe erzeugt, hierbei werden ein paar gängige Pakete bei Erkennen von Stichworten automatisch geladen. Das wird klar markiert. Das Komfort-Feature soll das Bearbeiten auch von Snippets zu vereinfachen. (man muss es ja nicht nutzen)
- Die `filecontents`-Umgebung kann benutzt werden, um Daten (z.B. für Plots oder Bibliographie) einzubinden.
Den Code kann man direkt auf der Seite editieren mit eigenen Korrekturen oder Test-Änderungen und (erneut) übersetzen.
Weitere Informationen, auch zum Übersetzen mit makeindex und bibtex u.a. sind auf [davidcarlisle.github.io/latexcgi/](https://davidcarlisle.github.io/latexcgi/) dokumentiert.
Evtl. fällt mir noch etwas ein, was ich hier ergänzen kann. Es kann auch noch kleine Verbesserungen oder Änderungen geben. Auch editiere ich evtl. manche Beiträge zum Lauffähig-Machen, wie z.B. Engine-Ergänzung.
Wer Lust hat, kann gern mal ausprobieren, und ein interessantes kleines Beispiel z.B. für eine gewisse Engine hier als Antwort posten als Demo, Referenz oder Test. Schonmal ein paar Links auf hiesige Forum-Beiträge, wo man die Engine-Angabe sieht (oder sie erkannt wird):
- [plain TeX](https://texwelt.de/fragen/106/wie-kann-ich-eine-while-schleife-in-plaintex-erstellen)
- [ConTeXt](https://texwelt.de/fragen/24080/wie-passe-ich-das-aussehen-der-uberschriften-mit-context-an)
- [LuaTeX](https://texwelt.de/fragen/27433/luatex-umlaute-und-silbentrennung)
- [LuaLaTeX](https://texwelt.de/fragen/14531/wie-kann-ich-groe-binomialkoeffizienten-mit-tikz-berechnen)
- [Daten-Einbindung mit `filecontents`](https://texwelt.de/fragen/16433/pgfplots-zeitreihe-3d)
- [TikZ-Snippet](https://texwelt.de/fragen/10802/wie-kann-man-den-ursprung-im-tikz-plot-verschieben), [`\includegraphics` snippet](https://texwelt.de/fragen/19910/pfadangaben-bei-includegraphics)
Ältere Beiträge enthalten noch den alten Link "Open in Online-Editor" der damals für Overleaf war, als man es noch anonym ohne Registrierungs-Anforderung verwenden konnte und als der Service noch in der EU war. Der in älteren Beiträgen zu findende (inaktive) Linktext wird vmtl. bald aufgeräumt.
Ergänzend zum Compiler TeXlive.net findet man Dokumentationen auf [TeXdoc.org](https://texdoc.org). Beides basiert auf aktuellem TeX Live 2020.
Zum Datenschutz: [TeXlive.net](https://texlive.net) als Compiler erhält den im TeXwelt.de-Beitrag zur Veröffentlichung eingegebenen Code, übersetzt ihn und liefert die Ausgabe zurück. Die aus dem veröffentlichten Code 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 und loggt für technische Zwecke (Troublehooting, Last-Statistik, Schutz gegen Angriffsversuche). Diese Webserver-Logdaten werden nach ab 14 Tagen Alter automatisch gelöscht.
TeXlive.net läuft auf einem beim Provider Hetzner in Deutschland stehenden Server und wird durch [DANTE](https://www.dante.de) unterstützt sowie von mir technisch gewartet und die Software pflegt David Carlisle vom LaTeX Projekt.