- Titelfolie
27 JahreVergesst Kabelschachts \expandafter
- Motive/Inhalt
– Uploads, Kabelschacht,
blogexec.sty
- Vortragsteile 2014
- Vortragsteile 2012
[→| ↑ ]
blog.sty-Erweiterungen
texlive.htm – „vollständige“ Übersicht
zu Teil 1 (Engines und Formate)
von 2012 anhand von Arno Trautmanns tex-overview
– Beispiel für HTML-Erzeugung aus LaTeX-artiger
Syntax mit blog.sty
(morehype-Bündel; + Motiv btx12)
- Blicke auf meine Linklisten und
Notizen über Links
– untergegangen: auch Entwürfe und Briefe mit geringen Formerfordernissen –
weitere
blog.sty-Anwendungen
- Die „Vortragsfolien“ bilden eine mit der Erweiterung
blogdot.sty von blog.sty erzeugte
HTML-Datei.
- Funktionsweise: mit TeXs primitiven Funktionen
∗
read und ∗write wird jede Zeile einer
.tex-Datei in eine .htm-Datei „kopiert“,
wobei dann aber LaTeX-artige Makros zu HTML-Code
expandieren.
- Beispiel:
\textit ist als \STS{i}
(„simple tags surround“) definiert; aus dem
Codebeispiel \textit{Text} entsteht daher
die Liste
?STS{1i11}2{1T11e11x11t11}2
von Tokens, die weiter zu <12i11>12T11e11x11t11<12/12i11>12
expandiert und als
<i>Text</i>
in der .htm-Datei erscheint.
- Erläuterung: Teile 2 und
4 von 2012 sowie die Dokumentation
dowith.pdf des Pakets
dowith
gingen/gehen näher auf die Schreibweise von Tokens ein;
im Vortrag habe ich dazu eine Tabelle
von TeXs „Teilprozessoren“ an die Tafel geworfen
und zur Schreibweise benannter Tokens etwas mit ähnlichem
Inhalt wie Folien back-disambig
und disambig-? an die Tafel geschrieben.
- Problem: 2011 fand die Verarbeitung des
blog-Quellcodes
ausschließlich im zweiten Argument der ∗write-Funktion
statt, durch den Expansionsprozessor. Es treten
ähnliche Probleme wie bei LaTeXs Verwendung von
Hilfsdateien (.aux etc.) auf, wo teils
\protect und \DeclareRobustCommand
„allzu expressive“ Makros temporär „einfrieren“;
am Bestimmungsort können sie sich wieder „frei ausleben“.
(Dies ist gegenüber meiner die „übliche“ Verwendung
der ∗write Funktion.) Diese Möglichkeit
gibt es bei blog nicht. – Illustrationen:
Folien alphs und toks-over.
- Fortschritt: Stattdessen greift inzwischen die
Erweiterung
blogexec.sty „Makros“ wie
\EXECUTE, \begin und \end mit ihren
Argumenten aus der eingelesenen Zeile heraus,
um Zuweisungen und Anweisungen wie
\tracingmacros=1 auszuführen, bevor die
eingelesene Zeile ggf. modifiziert der ∗write-Funktion
übergeben wird.
Damit: Prüfung korrekter \begin/\end-Paarung
(wie bei normalem LaTeX), spezielle Syntax für
Tabellen oder dokumentierten Code – auf die
Umgebung beschränkt, Berechnungen in Tabellen,
Debugging-Breakpoints.
- Bei dieser Gelegenheit
vereinfachte Auszeichnungssprachen
wie Wiki-Syntax und Markdown
(Anregung Uwe Ziegenhagen 2011) und überhaupt die
altbekannten TeX-Ligaturen für Striche und ähnliches
flexibel einrichtbar, siehe
markblog.htm sowie Paket
blogligs.sty.
(TODO: ff etc.!?)
- Untergegangen: typografische Anführunsstriche mit
catchdq und langcode, vgl. csquotes, langcode auch zu Wikipedia-Links in texlinks.sty.
- Untergegangen: Gegenüberstellung
hallow.tex / hallow.htm, auch markblog.tex
[→| ↑ ]
\listfiles-Erweiterungen
(Dateilisten statt Listen von Tokens
oder Codezeichen – now for something completely different
– Motiv CTAN)
– führe durch
latexfileinfo-pkgs.htm:
readprov liest nur \Provides...
myfilist Wahl von Dateien und Reihenfolge –
Liste der für ein Projekt mit verschiedenen Bearbeitern
und Arbeitsplätzen an einem Rechner verwendeten Dateiversionen.
nicefilelist für lange Dateinamen etc.
Untergegangen: filedate [fehlt noch] · typeoutfileinfo – fast vollständig: texproj.htm#ctan vollständig: taeglich.htm bzw. ctan.org/author/lueck
[→| ↑ ]
- Programmieren mit TeX Motiv btx12
- Bereits TeXs Expansionsprozessor
(ohne Arithmetik des Ausführungsprozessors,
die übernimmt
bigintcalc im Expansionsprozessor)
Turing-vollständig
nach Jeffrey
– eine fragwürdige Auszeichnung: en:Turing tarpit …
immerhin können brauchbare
Hochsprachen
darauf aufgebaut werden, Beispiel BaSiX:
BASIC-Emulation in TeX …
- intuitiver als Jeffrey eine universelle Turingmaschine
in TeX bauen: (vgl. meinen Code zu 2012:)
je ein Makroargument hält eine Bandrichtung,
Übergänge werden als
|