TeX – Wikipedia

Schriftsatzsystem

TeX (siehe unten), stilisiert im System als T.eX.ist ein Schriftsatzsystem (oder ein “Formatierungssystem”), das von Donald Knuth entworfen und hauptsächlich geschrieben wurde[1] TeX ist ein beliebtes Mittel zum Setzen komplexer mathematischer Formeln. Es wurde als eines der fortschrittlichsten digitalen typografischen Systeme bezeichnet.[2]

TeX ist in der Wissenschaft beliebt, insbesondere in den Bereichen Mathematik, Informatik, Wirtschaft, Ingenieurwesen, Linguistik, Physik, Statistik und quantitative Psychologie. Es hat Unix troff weitgehend verdrängt,[b] das andere bevorzugte Formatierungssystem in vielen Unix-Installationen, die beide für unterschiedliche Zwecke verwenden. Es wird auch für viele andere Satzaufgaben verwendet, insbesondere in Form von LaTeX,[3]ConTeXt und andere Makropakete.

TeX wurde mit zwei Hauptzielen entwickelt: Jedem die Möglichkeit zu geben, mit minimalem Aufwand hochwertige Bücher zu produzieren, und ein System bereitzustellen, das zu jedem Zeitpunkt (zusammen mit der Metafont-Sprache) auf allen Computern genau die gleichen Ergebnisse liefert für die Beschreibung der Schriftarten und die Computer Modern-Schriftfamilie).[4] TeX ist eine kostenlose Software, die es einer Vielzahl von Benutzern zugänglich gemacht hat.

Geschichte[edit]

Beim ersten Papierband von Donald Knuth Die Kunst der Computerprogrammierung wurde 1968 veröffentlicht,[5] Es wurde mit einem Heißmetall-Schriftsatz gesetzt, der von einer Monotype-Maschine eingestellt wurde. Diese Methode aus dem 19. Jahrhundert brachte einen von Knuth geschätzten “klassischen Stil” hervor.[6] Bei der Veröffentlichung der zweiten Ausgabe im Jahr 1976 musste das gesamte Buch erneut gesetzt werden, da die Monotype-Technologie weitgehend durch das Setzen von Fotos ersetzt worden war und die Originalschriftarten nicht mehr verfügbar waren. Als Knuth am 30. März 1977 die Korrekturabzüge des neuen Buches erhielt, fand er sie minderwertig.

Enttäuscht von den Korrekturabzügen der zweiten Ausgabe des zweiten Bandes war er motiviert, sein eigenes Schriftsatzsystem zu entwerfen. Knuth sah zum ersten Mal die Ausgabe eines hochwertigen digitalen Schriftsatzsystems und interessierte sich für digitale Typografie. Am 13. Mai 1977 schrieb er sich ein Memo, in dem er die Grundfunktionen von TeX beschrieb.[7]

Er hatte vor, es 1978 an seinem Sabbatical zu beenden, aber als es passierte, war die Sprache erst 1989, mehr als zehn Jahre später, “eingefroren” (gebrauchsfertig). Guy Steele war zufällig im Sommer 1978 in Stanford, als Knuth seine erste Version von TeX entwickelte. Als Steele im Herbst an das Massachusetts Institute of Technology zurückkehrte, schrieb er die Eingabe / Ausgabe (I / O) von TeX neu, um sie unter dem Betriebssystem Incompatible Timesharing System (ITS) auszuführen. Die erste Version von TeX, TeX78 genannt, wurde in der Programmiersprache SAIL geschrieben, um auf einem PDP-10 unter Stanfords WAITS-Betriebssystem ausgeführt zu werden.

WEB und Alphabetisierung[edit]

Für spätere Versionen von TeX erfand Knuth das Konzept der literarischen Programmierung, eine Möglichkeit, kompilierbaren Quellcode und vernetzten Dokumentationssatz in TeX aus derselben Originaldatei zu erstellen. Die verwendete Sprache heißt WEB und erzeugt Programme in DEC PDP-10 Pascal.

TeX82[edit]

TeX82, eine neue Version von TeX, die von Grund auf neu geschrieben wurde, wurde 1982 veröffentlicht. Unter anderem wurde der ursprüngliche Silbentrennungsalgorithmus durch einen neuen Algorithmus von Frank Liang ersetzt. TeX82 verwendet auch Festkomma-Arithmetik anstelle von Gleitkomma, um die Reproduzierbarkeit der Ergebnisse auf verschiedenen Computerhardware zu gewährleisten.[8] und enthält eine echte, Turing-vollständige Programmiersprache nach intensiver Lobbyarbeit von Guy Steele.[9] 1989 veröffentlichte Donald Knuth neue Versionen von TeX und Metafont.[10] Trotz seines Wunsches, das Programm stabil zu halten, erkannte Knuth, dass 128 verschiedene Zeichen für die Texteingabe nicht ausreichten, um Fremdsprachen aufzunehmen. Die Hauptänderung in Version 3.0 von TeX (auch TeX90 genannt) ist daher die Fähigkeit, mit 8-Bit-Eingaben zu arbeiten, wobei 256 verschiedene Zeichen in der Texteingabe zulässig sind.

Seit Version 3 verwendet TeX ein eigenwilliges Versionsnummerierungssystem, bei dem Aktualisierungen durch Hinzufügen einer zusätzlichen Ziffer am Ende der Dezimalstelle angezeigt wurden, sodass sich die Versionsnummer asymptotisch nähert π. Dies spiegelt die Tatsache wider, dass TeX jetzt sehr stabil ist und nur geringfügige Aktualisierungen erwartet werden. Die aktuelle Version von TeX ist 3.14159265; Es wurde zuletzt am 12. Januar 2014 aktualisiert.[11] Das Design wurde nach Version 3.0 eingefroren, und es werden keine neuen Funktionen oder grundlegenden Änderungen hinzugefügt, sodass alle neueren Versionen nur Fehlerkorrekturen enthalten.[12] Obwohl Donald Knuth selbst einige Bereiche vorgeschlagen hat, in denen TeX hätte verbessert werden können, ist er der festen Überzeugung, dass ein unverändertes System, das jetzt und in Zukunft die gleiche Leistung liefert, wichtiger ist als die Einführung neuer Funktionen. Aus diesem Grund hat er erklärt, dass die “absolut endgültige Änderung (die nach meinem Tod vorgenommen werden muss)” darin besteht, die Versionsnummer in zu ändern πAn diesem Punkt werden alle verbleibenden Fehler zu Features.[13] Ebenso nähern sich Versionen von Metafont nach 2.0 asymptotisch an e (derzeit bei 2.7182818), und eine ähnliche Änderung wird nach Knuths Tod angewendet.[12]

Public Domain[edit]

Da der Quellcode von TeX im Wesentlichen gemeinfrei ist (siehe unten), dürfen andere Programmierer das System verbessern (und werden ausdrücklich dazu ermutigt), müssen jedoch einen anderen Namen verwenden, um das geänderte TeX zu verteilen, was bedeutet, dass der Quellcode dies kann entwickeln sich noch weiter. Beispielsweise wurde das Omega-Projekt nach 1991 entwickelt, um vor allem die mehrsprachigen Satzfähigkeiten von TeX zu verbessern.[14] Knuth hat “inoffizielle” modifizierte Versionen wie TeX-XeT erstellt, mit denen ein Benutzer Texte, die in Schreibsystemen von links nach rechts und von rechts nach links geschrieben wurden, in einem Dokument mischen kann.[15]

Verwendung von TeX[edit]

In verschiedenen technischen Bereichen wie Informatik, Mathematik, Ingenieurwesen und Physik ist TeX de facto zum Standard geworden. Viele tausend Bücher wurden mit TeX veröffentlicht, darunter Bücher von Addison-Wesley, Cambridge University Press, Elsevier, Oxford University Press und Springer. Zahlreiche Zeitschriften in diesen Bereichen werden mit TeX oder LaTeX erstellt, sodass Autoren ihr in TeX verfasstes Rohmanuskript einreichen können. Während viele Veröffentlichungen in anderen Bereichen, einschließlich Wörterbüchern und juristischen Veröffentlichungen, mit TeX erstellt wurden, war es nicht so erfolgreich wie in den eher technischen Bereichen, da TeX hauptsächlich für den Satz von Mathematik entwickelt wurde.

Als Donald Teuth TeX entwarf, glaubte er nicht, dass ein einziges Schriftsatzsystem die Bedürfnisse aller erfüllen würde. Stattdessen entwarf er viele Hooks innerhalb des Programms, damit Erweiterungen geschrieben werden konnten, und veröffentlichte den Quellcode in der Hoffnung, dass die Herausgeber Versionen entwerfen würden, die auf ihre eigenen Bedürfnisse zugeschnitten sind. Während solche Erweiterungen erstellt wurden (einschließlich einiger von Knuth selbst),[15] Die meisten Leute haben TeX nur mit Makros erweitert und es ist ein System geblieben, das mit dem technischen Satz verbunden ist.[17][18]

Satzsystem[edit]

TeX-Befehle beginnen normalerweise mit einem Backslash und werden mit geschweiften Klammern gruppiert. Fast alle syntaktischen Eigenschaften von TeX können im laufenden Betrieb geändert werden, sodass TeX-Eingaben nur von TeX selbst analysiert werden können. TeX ist eine makro- und tokenbasierte Sprache: Viele Befehle, einschließlich der meisten benutzerdefinierten, werden im laufenden Betrieb erweitert, bis nur noch nicht erweiterbare Token übrig sind, die dann ausgeführt werden. Die Expansion selbst ist praktisch frei von Nebenwirkungen. Die Schwanzrekursion von Makros benötigt keinen Speicher, und wenn-dann-sonst-Konstrukte verfügbar sind. Dies macht TeX auch auf Erweiterungsstufe zu einer Turing-vollständigen Sprache.[19] Das System kann in vier Ebenen unterteilt werden: In der ersten Ebene werden Zeichen aus der Eingabedatei gelesen und mit einem Kategoriecode versehen (manchmal auch als “Catcode” bezeichnet). Kombinationen eines Backslashs (eigentlich jedes Zeichen der Kategorie Null) gefolgt von Buchstaben (Zeichen der Kategorie 11) oder einem einzelnen anderen Zeichen werden durch ein Kontrollsequenz-Token ersetzt. In diesem Sinne ist diese Phase wie eine lexikalische Analyse, obwohl sie keine Zahlen aus Ziffern bildet. In der nächsten Stufe werden erweiterbare Steuersequenzen (wie Bedingungen oder definierte Makros) durch ihren Ersetzungstext ersetzt. Die Eingabe für die dritte Stufe ist dann ein Strom von Zeichen (einschließlich solcher mit besonderer Bedeutung) und nicht erweiterbaren Steuersequenzen (typischerweise Zuweisungen und visuelle Befehle). Hier werden die Zeichen zu einem Absatz zusammengefasst, und der Absatzumbruchalgorithmus von TeX optimiert die Haltepunkte über den gesamten Absatz. Die vierte Stufe unterteilt die vertikale Liste von Linien und anderem Material in Seiten.

Das TeX-System kennt die Größe aller Zeichen und Symbole genau und berechnet anhand dieser Informationen die optimale Anordnung der Buchstaben pro Zeile und der Zeilen pro Seite. Anschließend wird eine DVI-Datei (“DeVice Independent”) erstellt, die die endgültigen Positionen aller Zeichen enthält. Diese DVI-Datei kann dann direkt mit einem geeigneten Druckertreiber gedruckt oder in andere Formate konvertiert werden. Heutzutage wird häufig pdfTeX verwendet, wodurch die DVI-Generierung insgesamt umgangen wird.[20] Das Basis-TeX-System versteht ungefähr 300 Befehle, die aufgerufen werden Primitive. Diese Befehle auf niedriger Ebene werden selten direkt von Benutzern verwendet, und die meisten Funktionen werden durch Formatdateien bereitgestellt (vorgefertigte Speicherbilder von TeX, nachdem große Makrosammlungen geladen wurden). Knuths ursprüngliches Standardformat, das etwa 600 Befehle hinzufügt, ist Plain TeX.[22] Das am weitesten verbreitete Format ist LaTeX, das ursprünglich von Leslie Lamport entwickelt wurde. Es enthält Dokumentstile für Bücher, Briefe, Folien usw. und unterstützt die Referenzierung und automatische Nummerierung von Abschnitten und Gleichungen.[3] Ein weiteres weit verbreitetes Format, AMS-TeX, wird von der American Mathematical Society hergestellt und bietet viele weitere benutzerfreundliche Befehle, die von Zeitschriften an ihren Hausstil angepasst werden können. Die meisten Funktionen von AMS-TeX können in LaTeX mithilfe der “AMS-Pakete” verwendet werden (z. amsmath, amssymb) und die “AMS-Dokumentklassen” (z. amsart, amsbook). Dies wird dann als AMS-LaTeX bezeichnet.[23] Andere Formate sind ConTeXt, das hauptsächlich für Desktop-Publishing verwendet wird und hauptsächlich von Hans Hagen in Pragma geschrieben wurde.

Wie es läuft[edit]

Eine Beispielseite, die mit TeX mit den LaTeX-Makros erstellt wurde

Ein Beispiel für ein Hello World-Programm in einfachem TeX ist:

Hello, World
bye          % marks the end of the file; not shown in the final output

Dies könnte in einer Datei sein myfile.tex, wie .tex ist eine gängige Dateierweiterung für einfache TeX-Dateien. Standardmäßig ist alles, was auf ein Prozentzeichen in einer Zeile folgt, ein Kommentar, der von TeX ignoriert wird. Ausführen von TeX für diese Datei (z. B. durch Eingabe) tex myfile.tex In einem Befehlszeileninterpreter oder durch Aufrufen über eine grafische Benutzeroberfläche wird eine Ausgabedatei mit dem Namen erstellt myfile.dvi, die den Inhalt der Seite in a darstellt devEis ichunabhängiges Format (DVI). Eine DVI-Datei kann dann entweder auf dem Bildschirm angezeigt oder in ein geeignetes Format für einen der verschiedenen Drucker konvertiert werden, für die ein Gerätetreiber vorhanden war (die Druckerunterstützung war zum Zeitpunkt der Erstellung von TeX im Allgemeinen keine Betriebssystemfunktion). Knuth hat gesagt, dass TeX nichts inhärent ist, was DVI als Ausgabeformat erfordert, und spätere Versionen von TeX, insbesondere pdfTeX, XeTeX und LuaTeX, unterstützen die Ausgabe direkt als PDF.

Mathematisches Beispiel[edit]

TeX bietet eine andere Textsyntax speziell für mathematische Formeln. Zum Beispiel erscheint die quadratische Formel (die die Lösung der quadratischen Gleichung ist) wie folgt:

Markup Rendert als
The quadratic formula is $-b pm sqrt{b^2 - 4ac} over 2a$
bye

Die quadratische Formel lautet – –b±b2– –4einc2ein{ displaystyle { hbox {Die quadratische Formel lautet}} textstyle {-b pm { sqrt {b ^ {2} -4ac}} over 2a}}

Die Formel wird so gedruckt, wie eine Person von Hand schreiben oder die Gleichung setzen würde. In ein Dokument eingeben Mathematikmodus Beginnen Sie mit einem $ -Symbol, geben Sie eine Formel in die TeX-Syntax ein und schließen Sie erneut mit einem anderen Symbol desselben Symbols. Knuth erklärte im Scherz, dass er das Dollarzeichen gewählt habe, um den Beginn und das Ende des mathematischen Modus in einfachem TeX anzuzeigen, da das Setzen von Mathematik traditionell teuer sein sollte.Mathematik anzeigen (Mathematik in einer neuen Zeile zentriert dargestellt) ist ähnlich, verwendet jedoch $$ anstelle eines einzelnen $ -Symbols. Zum Beispiel das obige mit der quadratischen Formel in der Anzeigemathematik:

Markup Rendert als
The quadratic formula is $$-b pm sqrt{b^2 - 4ac} over 2a$$
bye
Die quadratische Formel lautet{ displaystyle { hbox {Die quadratische Formel lautet}} ,}

– –b±b2– –4einc2ein{ displaystyle -b pm { sqrt {b ^ {2} -4ac}} over 2a}

Aspekte[edit]

Die TeX-Software enthält mehrere Aspekte, die zum Zeitpunkt der Veröffentlichung von TeX in anderen Satzprogrammen nicht verfügbar oder von geringerer Qualität waren. Einige der Innovationen basieren auf interessanten Algorithmen und haben zu mehreren Thesen für Knuths Studenten geführt. Während einige dieser Entdeckungen jetzt in andere Satzprogramme integriert wurden, sind andere, wie die Regeln für den mathematischen Abstand, immer noch einzigartig.

Mathematischer Abstand[edit]

Mathematischer Textsatz mit TeX und der Schriftart AMS Euler

Da das Hauptziel der TeX-Sprache ein qualitativ hochwertiger Satz für Herausgeber von Büchern ist, widmete Knuth den Abstandsregeln für mathematische Formeln große Aufmerksamkeit.[25][26] Er nahm drei Werke, die er als Qualitätsmaßstab für die mathematische Typografie ansah: die Bücher, die von Addison-Wesley Publishing (dem Herausgeber von) herausgegeben wurden Die Kunst der Computerprogrammierung), insbesondere die Arbeiten von Hans Wolf und Joseph Louis Lagrange (Thermodynamik-Innovation, +1856); Ausgaben des mathematischen Journals Acta Mathematica aus der Zeit um 1910; und eine Kopie von Indagationes Mathematicae, eine niederländische Mathematikzeitschrift. Knuth sah sich diese gedruckten Papiere genau an, um nach Regeln für den Abstand zu suchen.[27] Während TeX einige Grundregeln und die Werkzeuge bereitstellt, die zum Festlegen des richtigen Abstands erforderlich sind, hängen die genauen Parameter von der Schriftart ab, die zum Setzen der Formel verwendet wird. Zum Beispiel wurde der Abstand für Knuths Computer Modern-Schriftarten im Laufe der Jahre genau angepasst und ist jetzt festgelegt. Als Knuth jedoch erstmals andere Schriftarten wie AMS Euler verwendete, mussten neue Abstandsparameter definiert werden.[28]

Der Satz von Math in TeX ist nicht ohne Kritik, insbesondere in Bezug auf technische Details der Schriftmetriken, die in einer Zeit entwickelt wurden, in der den Speicheranforderungen große Aufmerksamkeit geschenkt wurde. Dies führte dazu, dass einige “Hacks” einige Felder überlasteten, was wiederum andere “Hacks” erforderte. Auf ästhetischer Ebene wurde auch die Darstellung von Radikalen kritisiert.[29] Die OpenType-Spezifikation für mathematische Schriftarten basiert größtenteils auf TeX, verfügt jedoch über einige neue Funktionen / Verbesserungen.[30][31][32]

Silbentrennung und Rechtfertigung[edit]

Im Vergleich zum manuellen Satz ist das Rechtfertigungsproblem mit einem digitalen System wie TeX leicht zu lösen, das, sofern gute Punkte für den Zeilenumbruch definiert wurden, die Leerzeichen zwischen den Wörtern automatisch verteilen kann, um die Zeile auszufüllen. Das Problem besteht daher darin, den Satz von Haltepunkten zu finden, die das optisch ansprechendste Ergebnis liefern. Viele Zeilenumbruchalgorithmen verwenden a First-Fit Ansatz, bei dem die Haltepunkte für jede Zeile nacheinander festgelegt werden und nach der Auswahl kein Haltepunkt geändert wird.[33] Ein solches System kann keinen Haltepunkt definieren, abhängig von der Auswirkung, die es auf die folgenden Zeilen hat. Im Vergleich dazu ist die total fit Der von TeX verwendete und von Donald Knuth und Michael Plass entwickelte Zeilenumbruchalgorithmus berücksichtigt alle die möglichen Haltepunkte in einem Absatz und findet die Kombination von Zeilenumbrüchen, die die global ansprechendste Anordnung ergibt.

Formal definiert der Algorithmus einen Wert namens Schlechtigkeit mit jedem möglichen Zeilenumbruch verbunden; Die Schlechtigkeit wird erhöht, wenn die Zwischenräume auf der Linie zu stark gedehnt oder verkleinert werden müssen, damit die Linie die richtige Breite hat. Strafen werden hinzugefügt, wenn ein Haltepunkt besonders unerwünscht ist: Zum Beispiel, wenn ein Wort getrennt werden muss, wenn zwei Zeilen in einer Reihe getrennt werden oder wenn auf eine sehr lose Zeile sofort eine sehr enge Zeile folgt. Der Algorithmus findet dann die Haltepunkte, die die Summe der Quadrate der Schlechtigkeit (einschließlich Strafen) der resultierenden Linien minimieren. Wenn der Absatz enthält

n{ displaystyle n}

mögliche Haltepunkte, die Anzahl der Situationen, die naiv bewertet werden müssen, ist

2n{ displaystyle 2 ^ {n}}

. Durch die Verwendung der Methode der dynamischen Programmierung kann jedoch die Komplexität des Algorithmus auf reduziert werden

Ö((n2){ displaystyle O (n ^ {2})}

(siehe Big O-Notation). Weitere Vereinfachungen (z. B. das Testen extrem unwahrscheinlicher Haltepunkte wie eine Silbentrennung im ersten Wort eines Absatzes oder sehr überfüllte Zeilen) führen zu einem effizienten Algorithmus, dessen Laufzeit beträgt

Ö((nw){ displaystyle O (nw)}

, wo

w{ displaystyle w}

ist die Breite einer Linie. Ein ähnlicher Algorithmus wird verwendet, um den besten Weg zu finden, um Absätze auf zwei Seiten aufzuteilen, um Witwen oder Waisen zu vermeiden (Zeilen, die allein auf einer Seite erscheinen, während sich der Rest des Absatzes auf der folgenden oder vorhergehenden Seite befindet). Im Allgemeinen zeigt eine Arbeit von Michael Plass jedoch, wie das Problem des Seitenumbruchs aufgrund der zusätzlichen Komplikation beim Platzieren von Zahlen NP-vollständig sein kann. Der Zeilenumbruchalgorithmus von TeX wurde von mehreren anderen Programmen übernommen, z. B. Adobe InDesign (eine Desktop-Publishing-Anwendung).[35] und das GNU fmt Unix-Befehlszeilenprogramm.[36]

Wenn für eine Zeile kein geeigneter Zeilenumbruch gefunden werden kann, versucht das System, ein Wort zu trennen. In der Originalversion von TeX wurde ein Silbentrennungsalgorithmus verwendet, der auf einer Reihe von Regeln basiert, um Präfixe und Suffixe von Wörtern zu entfernen und um zu entscheiden, ob eine Unterbrechung zwischen den beiden Konsonanten in ein Muster der Form Vokal-Konsonant-Konsonant eingefügt werden soll Vokal (was meistens möglich ist). TeX82 führte einen neuen Silbentrennungsalgorithmus ein, der 1983 von Frank Liang entwickelt wurde, um Haltepunkten in Buchstabengruppen Prioritäten zuzuweisen. Eine Liste von Silbentrennungsmustern wird zuerst automatisch aus einem Korpus von Silbentrennungswörtern (eine Liste von 50.000 Wörtern) generiert. Wenn TeX die akzeptablen Silbentrennungspositionen im Wort finden muss EnzyklopädieBeispielsweise werden alle Unterwörter des erweiterten Wortes berücksichtigt .Enzyklopädie., wo . ist eine spezielle Markierung, die den Anfang oder das Ende des Wortes angibt. Die Liste der Unterwörter enthält alle Unterwörter der Länge 1 (., e, n, c, yusw.) mit einer Länge von 2 (.e, en, ncusw.) usw. bis zu dem Teilwort der Länge 14, das das Wort selbst ist, einschließlich der Markierungen. TeX untersucht dann seine Liste der Silbentrennungsmuster und findet Unterwörter, für die es die Wünschbarkeit der Silbentrennung an jeder Position berechnet hat. Im Fall unseres Wortes können nämlich 11 solcher Muster abgeglichen werden 1c4l4, 1cy, 1d4ich3ein, 4edi, e3dia, 2ich1a, ope5d, 2p2ed, 3pedi, pedia4y1c. Für jede Position im Wort berechnet TeX die höchster Wert erhalten unter allen übereinstimmenden Mustern, was en ergibt1cy1c4l4Ö3p4e5d4ich3ein4. Schließlich sind die akzeptablen Positionen diejenigen, die durch eine ungerade Zahl angezeigt werden, was die akzeptablen Silbentrennungen ergibt Enzyklopädie. Dieses auf Unterwörtern basierende System ermöglicht die Definition sehr allgemeiner Muster (z 2ich1a) mit niedrigen indikativen Zahlen (entweder ungerade oder gerade), die dann durch spezifischere Muster (wie z 1d4ich3a) falls erforderlich. Diese Muster finden ungefähr 90% der Bindestriche im ursprünglichen Wörterbuch. Noch wichtiger ist, dass sie keinen falschen Bindestrich einfügen. Darüber hinaus enthält das Plain TeX-Format eine Liste von Ausnahmen (Wörter, für die die Muster nicht die richtige Silbentrennung vorhersagen). zusätzliche können vom Benutzer angegeben werden.[page needed][39]

Metafont[edit]

Metafont, nicht ausschließlich Teil von TeX, ist ein Schriftbeschreibungssystem, mit dem der Designer Zeichen algorithmisch beschreiben kann. Es werden Bézier-Kurven auf ziemlich übliche Weise verwendet, um die tatsächlich anzuzeigenden Zeichen zu generieren, aber Knuth widmet dem Rasterungsproblem bei Bitmap-Anzeigen erhebliche Aufmerksamkeit. Eine andere These von John Hobby untersucht dieses Problem der Digitalisierung von “Pinselbahnen” weiter. Dieser Begriff leitet sich aus der Tatsache ab, dass Metafont Zeichen als von abstrakten Pinseln (und Radiergummis) gezeichnet beschreibt. Es wird allgemein angenommen, dass TeX auf Bitmap-Schriftarten basiert, aber tatsächlich “wissen” diese Programme nichts über die Schriftarten, die sie verwenden, außer ihren Dimensionen. Es liegt in der Verantwortung des Gerätetreibers, Schriftarten anderer Typen, einschließlich PostScript Type 1 und TrueType, angemessen zu behandeln. Computer Modern (allgemein bekannt als “die TeX-Schriftart”) ist im Typ 1-Format frei verfügbar, ebenso wie die AMS-Mathematikschriftarten. Benutzer von TeX-Systemen, die direkt in PDF ausgeben, wie z. B. pdfTeX, XeTeX oder LuaTeX, verwenden im Allgemeinen überhaupt keine Metafont-Ausgabe.

Makrosprache[edit]

TeX-Dokumente werden in einer ungewöhnlichen Makrosprache geschrieben und programmiert. Im Allgemeinen umfasst das Ausführen dieser Makrosprache Erweiterungs- und Ausführungsphasen, die nicht direkt interagieren. Die Erweiterung umfasst sowohl die wörtliche Erweiterung von Makrodefinitionen als auch die bedingte Verzweigung. Die Ausführung umfasst Aufgaben wie das Festlegen von Variablen / Registern und den eigentlichen Satzprozess zum Hinzufügen von Glyphen zu Feldern.

Die Definition eines Makros enthält nicht nur eine Liste von Befehlen, sondern auch die Syntax des Aufrufs. Es unterscheidet sich von den am häufigsten verwendeten lexikalischen Präprozessoren wie M4 darin, dass der Körper eines Makros zur Definitionszeit tokenisiert wird.

Die Makrosprache TeX wurde zum Schreiben größerer Dokumentproduktionssysteme verwendet, insbesondere von LaTeX und ConTeXt.

Entwicklung[edit]

Der ursprüngliche Quellcode für die aktuelle TeX-Software ist in WEB geschrieben, einer Mischung aus in TeX geschriebener Dokumentation und einer Pascal-Teilmenge, um die Portabilität sicherzustellen. Zum Beispiel führt TeX seine gesamte dynamische Zuordnung selbst aus Arrays fester Größe selbst durch und verwendet für seine internen Berechnungen nur Festkomma-Arithmetik. Infolgedessen wurde TeX auf fast alle Betriebssysteme portiert, normalerweise mithilfe des web2c-Programms, um den Quellcode in C zu konvertieren, anstatt den Pascal-Code direkt zu kompilieren. Knuth hat ein sehr detailliertes Protokoll aller von ihm korrigierten Fehler und Änderungen, die er seit 1982 im Programm vorgenommen hat, geführt. Stand 2008[update]Die Liste enthält 427 Einträge, ohne die Versionsänderung, die nach seinem Tod als endgültige Änderung in TeX vorgenommen werden sollte.[40][41] Knuth bietet Geldpreise für Personen an, die einen Fehler in TeX finden und melden. Die Auszeichnung pro Fehler begann bei 2,56 US-Dollar (ein “hexadezimaler Dollar”).[42]) und verdoppelte sich jedes Jahr, bis es auf seinen aktuellen Wert von 327,68 USD eingefroren wurde. Knuth hat relativ wenig Geld verloren, da nur sehr wenige Fehler gemeldet wurden. Darüber hinaus ist bekannt, dass Empfänger ihren Scheck als Beweis dafür einrahmen, dass sie einen Fehler in TeX gefunden haben, anstatt ihn einzulösen.[43][44]

Da Betrüger gescannte Kopien seiner Schecks im Internet finden und damit versuchen, sein Bankkonto zu belasten, verschickt Knuth keine echten Schecks mehr, sondern diejenigen, die Fehlerberichte einreichen, können stattdessen eine Gutschrift bei der Bank of San Serriffe erhalten.[45]

Distributionen und Erweiterungen[edit]

TeX wird normalerweise in Form eines einfach zu installierenden Bundles von TeX selbst zusammen mit Metafont und allen erforderlichen Schriftarten, Dokumentformaten und Dienstprogrammen bereitgestellt, die für die Verwendung des Schriftsatzsystems erforderlich sind. Auf UNIX-kompatiblen Systemen, einschließlich Linux und Apple MacOS, wird TeX als Teil der größeren TeX Live-Distribution vertrieben. (Vor TeX Live war die teTeX-Distribution der De-facto-Standard auf UNIX-kompatiblen Systemen.) Unter Microsoft Windows gibt es die MiKTeX-Distribution (erweitert durch proTeXt) und die Microsoft Windows-Version von TeX Live.

Mehrere Dokumentverarbeitungssysteme basieren auf TeX, insbesondere jadeTeX, das TeX als Backend für den Druck von James Clarks DSSSL Engine, dem Arbortext-Publishing-System, und Texinfo, dem GNU-Dokumentationsverarbeitungssystem, verwendet. TeX ist seit 1984 das offizielle Satzpaket für das Betriebssystem GNU.

Es gibt zahlreiche Erweiterungen und Begleitprogramme für TeX, darunter BibTeX für Bibliografien (im Lieferumfang von LaTeX enthalten), pdfTeX, eine TeX-kompatible Engine, die DVI umgeht und eine Ausgabe in PDF erzeugt, XeTeX, eine TeX-kompatible Engine, die Unicode und OpenType unterstützt, und LuaTeX, eine Unicode-fähige Erweiterung von TeX, die eine Lua-Laufzeit mit umfangreichen Einbindungen in die zugrunde liegenden TeX-Routinen und -Algorithmen enthält. Die meisten TeX-Erweiterungen sind kostenlos bei CTAN, dem Comprehensive TeX Archive Network, erhältlich.

Redakteure[edit]

Es gibt eine Vielzahl von Editoren, die für die Arbeit mit TeX entwickelt wurden:

  1. Der TeXmacs-Texteditor ist ein wissenschaftlicher WYSIWYG-WYSIWYM-Texteditor, der sowohl von TeX als auch von Emacs inspiriert wurde. Es verwendet Knuths Schriftarten und kann TeX-Ausgabe generieren.
  2. BaKoMa-TeX ist ein Windows / Mac / Linux-basierter WYSIWYG-Editor, mit dem Sie das Dokument bearbeiten können, indem Sie den Quellcode oder den Code direkt ändern Vorschau des Quellcodes.
  3. Overleaf ist ein Teil-WYSIWYG-Online-Editor, der TeX eine Cloud-basierte Lösung sowie zusätzliche Funktionen für die kollaborative Bearbeitung in Echtzeit bietet.
  4. LyX ist ein WYSIWYM-Dokumentprozessor, der auf einer Vielzahl von Plattformen ausgeführt wird, darunter:
    1. Linux,
    2. Microsoft Windows (neuere Versionen erfordern Windows 2000 oder höher)
    3. Apple Mac OS X (unter Verwendung eines nicht nativen Qt-Frontends).
  5. TeXShop (für Mac OS X), TeXworks (für Linux, Mac OS X und Windows) und WinShell (für Windows) sind ähnliche Tools und bieten eine integrierte Entwicklungsumgebung (IDE) für die Arbeit mit LaTeX oder TeX. Für KDE / Qt bietet Kile eine solche IDE an.
  6. Texmaker ist das Pure Qt-Äquivalent von Kile mit einer Benutzeroberfläche, die fast der von Kile entspricht.
  7. TeXstudio ist eine Open-Source-Gabel (2009) von Texmaker, die einen anderen Ansatz für Konfigurierbarkeit und Funktionen bietet. Kostenlose herunterladbare Binärdateien werden für Windows, Linux, Mac OS X, OS / 2 und FreeBSD bereitgestellt.
  8. GNU Emacs bietet verschiedene integrierte Pakete und Pakete von Drittanbietern mit Unterstützung für TeX, wobei AUCTeX das wichtigste ist.
  9. Mögliche Plugins für Vim sind Vim-LaTeX Suite,[46] Automatisches TeX[47] und TeX-9.[48]
  10. Für Google Text & Tabellen ist Auto-Latex Equations ein Google Text & Tabellen-Add-On, das mathematischen TeX-Satz bietet (MathJax unterstützt).
  11. Für Apache OpenOffice und LibreOffice können die Erweiterungen iMath und TexMaths einen mathematischen TeX-Satz bereitstellen.[49][50]
  12. Für MediaWiki ist die Mathematische Erweiterung bietet mathematischen TeX-Satz, aber der Code muss von umgeben sein
    Etikett.

Lizenz[edit]

Donald Knuth hat mehrfach angedeutet[51][52][53] dass der Quellcode von TeX in den “öffentlichen Bereich” gestellt wurde und er Änderungen oder Experimente mit diesem Quellcode nachdrücklich empfiehlt. Insbesondere da Knuth die Reproduzierbarkeit der Ausgabe aller TeX-Versionen sehr schätzt, darf jede geänderte Version nicht als TeX oder etwas verwirrend Ähnliches bezeichnet werden. Um diese Regel durchzusetzen, muss jede Implementierung des Systems eine Testsuite bestehen, die als TRIP-Test bezeichnet wird[54] bevor man TeX heißen darf. Die Frage der Lizenz wird durch die Aussagen am Anfang des TeX-Quellcodes etwas verwirrt.[55] die darauf hinweisen, dass “alle Rechte vorbehalten sind. Das Kopieren dieser Datei ist nur zulässig, wenn … Sie absolut keine Änderungen an Ihrer Kopie vornehmen”. Diese Einschränkung sollte als Verbot der Änderung des Quellcodes interpretiert werden solange die Datei tex.web heißt. Diese Interpretation wird später im Quellcode bestätigt, wenn der TRIP-Test erwähnt wird (“Wenn dieses Programm geändert wird, sollte das resultierende System nicht ‘TeX’ heißen“).[56] Die American Mathematical Society versuchte Anfang der 1980er Jahre, eine Marke für TeX zu beanspruchen. Dies wurde abgelehnt, da zu dem Zeitpunkt “TEX” (alle Großbuchstaben) von Honeywell für das Textverarbeitungssystem “Text EXecutive” registriert wurde.[citation needed]

XML-Veröffentlichung[edit]

Es ist möglich, TeX zur automatischen Generierung eines anspruchsvollen Layouts für XML-Daten zu verwenden. Die Unterschiede in der Syntax zwischen den beiden Beschreibungssprachen können mit Hilfe von TeXML überwunden werden. Im Rahmen der XML-Veröffentlichung kann TeX daher als Alternative zu XSL-FO angesehen werden. Mit TeX konnten wissenschaftliche Arbeiten in mathematischen Disziplinen auf relativ kleine Dateien reduziert werden, die clientseitig gerendert werden konnten, sodass vollständig gesetzte wissenschaftliche Arbeiten über das frühe Internet und das aufkommende World Wide Web ausgetauscht werden konnten, selbst wenn das Senden großer Dateien schwierig war. Dies ebnete den Weg für die Erstellung von Repositories für wissenschaftliche Veröffentlichungen wie arXiv, über die Veröffentlichungen ohne einen zwischengeschalteten Verlag “veröffentlicht” werden konnten.[57]

Aussprache und Rechtschreibung[edit]

Der Name TeX soll von seinem Entwickler mit dem Endkonsonanten von sein See oder Bach.[58] Die Buchstaben des Namens sollen die griechischen Großbuchstaben Tau, Epsilon und Chi darstellen, da TeX eine Abkürzung für τέχνη (ΤΕΧΝΗ – ist) technē), Griechisch für “Kunst” und “Handwerk”, was auch das Wurzelwort von ist technisch. Englisch sprechende sprechen es oft aus / ˈTɛk /, wie die erste Silbe von technisch. Knuth weist an, dass es mit dem “E” unterhalb der Grundlinie und einem verringerten Abstand zwischen den Buchstaben gesetzt werden soll. Dies geschieht, wie Knuth in seinem erwähnt TeXbook, um TeX von anderen Systemnamen wie TEX zu unterscheiden, dem Text EXecutive-Prozessor (entwickelt von Honeywell Information Systems).[59] Fans vermehren gerne Namen aus dem Wort “TeX” – wie zum Beispiel TeXnician (Benutzer der TeX-Software), TeXhacker (TeX-Programmierer), TeXmaster (kompetenter TeX-Programmierer), TeXhax, und TeXnique.[60]

Zu den bemerkenswerten Entitäten in der TeX-Community gehört die TeX Users Group (TUG), die veröffentlicht Schlepper und Das PracTeX Journalund deckt eine breite Palette von Themen der digitalen Typografie ab, die für TeX relevant sind. Die Deutschsprachige Anwendervereinigung TeX (DANTE) ist eine große Nutzergruppe in Deutschland. Die TeX Users Group wurde 1980 zu pädagogischen und wissenschaftlichen Zwecken gegründet und bietet eine Organisation für diejenigen, die sich für Typografie und Schriftdesign interessieren und das von Knuth erfundene TeX-Schriftsatzsystem verwenden. Die TeX Users Group vertritt die Interessen der TeX-Benutzer weltweit. Die TeX Users Group veröffentlicht das Journal Schlepper dreimal pro Jahr;[61] DANTE veröffentlicht Die TeXnische Komödie viermal pro Jahr. Andere Benutzergruppen sind DK-TUG in Dänemark, Gutenberg in Frankreich, GuIT in Italien und UK-TUG im Vereinigten Königreich; TUG führt eine vollständige Liste.[62]

Erweiterungen[edit]

Siehe auch[edit]

Verweise[edit]

  1. ^ “Per Bothner (Assistent von Knuth) diskutiert Autorenschaft”. Knuth hat definitiv den größten Teil des Codes selbst geschrieben, zumindest für das Umschreiben von Metafont, für das ich pe habe[r]Klangwissen. Einige seiner Schüler (wie Michael Plass und John Hobby) arbeiteten jedoch an den in TeX und Metafont verwendeten Algorithmen.
  2. ^ Yannis Haralambous. Schriftarten und Kodierungen (Übersetzt von P. Scott Horne). Peking; Sebastopol, Kalifornien: O’Reilly Media, 2007, S. 235.
  3. ^ ein b “Die endgültige, nicht technische Einführung in LaTeX, professionellen Satz und wissenschaftliches Publizieren”. Math Vault. 5. September 2015. Abgerufen 21. Juli 2019.
  4. ^ Gaudeul, Alexia (27. März 2006). “Reagieren Open Source-Entwickler auf den Wettbewerb?: Die (La) TeX-Fallstudie”. SSRN 908946.
  5. ^ Knuth, Donald E. “Weniger kurze Biographie”. Don Knuths Homepage. Abgerufen 9. Januar 2017.
  6. ^ Knuth, Donald E. “Gedenkvortrag zum Kyoto-Preis, 1996” (PDF). Kyoto-Preis. Archiviert von das Original (PDF) am 27. Januar 2018. Abgerufen 18. August 2018.
  7. ^ Knuth, Donald Ervin, TEXDR.AFT, archiviert von das Original am 12. Januar 2015
  8. ^
  9. ^ Knuth, Donald E. Knuth trifft NTG-Mitglieder, NTG: KARTEN. 16 (1996), 38–49. Nachdruck als Fragen und Antworten, III, Kapitel 33 von Digitale Typografie, p. 648.
  10. ^ Knuth, Donald E. Die neuen Versionen von TeX und METAFONT, Schlepper 10 (1989), 325–328; 11 (1990), 12. Nachdruck als Kapitel 29 von Digitale Typografie.
  11. ^ “TeX 14 Release”. Abgerufen 20. Januar 2014.
  12. ^ ein b “Was ist die Zukunft von TeX?”. Die TeX FAQ. 27. Mai 2018. Abgerufen 21. Juli 2019.
  13. ^ Knuth, Donald E. Die Zukunft von TeX und METAFONT, NTG Journal MAPS (1990), 489. Nachgedruckt als Kapitel 30 von Digitale Typografie, p. 571.
  14. ^ “TeX Engine Entwicklung”. Die TeX FAQ. 24. Mai 2018. Abgerufen 21. Juli 2019.
  15. ^ ein b Knuth, Donald E; MacKay, Pierre (1987), “Mischen von Texten von rechts nach links mit Texten von links nach rechts” (PDF), Schlepper, 8: 14-25. Nachdruck als Bigelow, Charles; Day, Donald (1983). “Kapitel 4”. Digitale Typografie. Wissenschaftlicher Amerikaner. 249. p. 106. Bibcode:1983SciAm.249b.106B. doi:10.1038 / Scientificamerican0883-106.
  16. ^ Knuth, Donald E (1996), “Fragen und Antworten I”, Schlepper, 17: 7–22. Nachdruck als Bigelow, Charles; Day, Donald (1983). “Kapitel 31”. Digitale Typografie. Wissenschaftlicher Amerikaner. 249. p. 598. Bibcode:1983SciAm.249b.106B. doi:10.1038 / Scientificamerican0883-106.
  17. ^ Knuth, Donald E (1996), “Fragen und Antworten II”, Schlepper, 17: 355–367. Nachdruck als Bigelow, Charles; Day, Donald (1983). “Kapitel 32”. Digitale Typografie. Wissenschaftlicher Amerikaner. 249. S. 616–617. Bibcode:1983SciAm.249b.106B. doi:10.1038 / Scientificamerican0883-106.
  18. ^ Jeffrey, Alan (1990), “Listen in TeXs Mund” (PDF), Schlepper, 11 (2): 237–45
  19. ^ “CTAN: Paket pdftex”. ctan.org. Abgerufen 21. Juli 2019.
  20. ^ Plain TeX (Quellcode), CTAN
  21. ^ “Was sind die AMS-Pakete (Amsmath usw.)?”. Die TeX FAQ. 27. Mai 2018. Abgerufen 21. Juli 2019.
  22. ^ Slater, Robert (1989), Porträts aus Silizium, MIT Press, p. 349, ISBN 9780262691314
  23. ^ Syropoulos, Apostolos; Tsolomitis, Antonis; Sofroniou, Nick (2003), Digitale Typografie mit LaTeX, Springer, p. 93, ISBN 9780387952178
  24. ^ Knuth, Donald E (1996), “Fragen und Antworten II”, Schlepper, 17: 355–367. Nachdruck als Bigelow, Charles; Day, Donald (1983). “Kapitel 32”. Digitale Typografie. Wissenschaftlicher Amerikaner. 249. S. 620–624. Bibcode:1983SciAm.249b.106B. doi:10.1038 / Scientificamerican0883-106.
  25. ^ Knuth, Donald E. Satzbetonmathematik, Schlepper 10 (1989), S. 31–36, 342. Nachdruck als Kapitel 18 von Digitale TypografieS. 367–378.
  26. ^ Ulrik Vieth (2001) Mathe-Satz in TEX: Das Gute, das Schlechte, das Hässliche
  27. ^ “Hochwertige Bearbeitung und Anzeige von mathematischem Text in Office 2007”.
  28. ^ “LineServices”.
  29. ^ “Karte” (PDF). ntg.nl.
  30. ^ Barnett, Michael P (1965), Computer-Satz: Experimente und Perspektiven, Cambridge, MA: MIT Press
  31. ^ “Donald E. Knuth”, Schlepper (Interview), Advogato, 21: 103–10, 2000, archiviert von das Original am 22. Januar 2009abgerufen 26. Dezember 2005
  32. ^ “4.1 fmt: Absatztext neu formatieren”, Handbuch der Core GNU Utilities (GNU Coreutils), GNU-Projekt, 2016
  33. ^ “Anhang H: Silbentrennung”, Das TeXbookS. 449–55
  34. ^ Knuth, Donald E. Liste der im September 1982 veröffentlichten Aktualisierungen der TeX82-Liste, verfügbar auf CTAN.
  35. ^ Knuth, Donald E. Anhang zum Fehler von TeX Papier, verfügbar auf CTAN, zuletzt geändert im Januar 2003.
  36. ^ Knuth, Donald E. “Knuth: Häufig gestellte Fragen”. www-cs-faculty.stanford.edu/~knuth/. Archiviert von das Original am 6. März 2008. Abgerufen 28. November 2019.
  37. ^ Kara Platoni (Mai – Juni 2006). “Liebe auf den ersten Blick”. Stanford Magazine. Archiviert von das Original am 4. Juni 2006.
  38. ^ TeX-Benutzergruppe. “Geschichte von TeX”. tug.org. Abgerufen 28. November 2019.
  39. ^ Knuth, Donald E (2008). “Knuth: Aktuelle Nachrichten – Finanzielles Fiasko”. www-cs-faculty.stanford.edu/~knuth/.
  40. ^ Vim-LaTex, SourceForge
  41. ^ Automatisches TeX-Plugin, Startrampe[permanent dead link]
  42. ^ TeX-9, Vim.org
  43. ^ TexMaths Homepage, free.fr
  44. ^ iMath, SourceForge
  45. ^ Bigelow, Charles; Day, Donald (1983). “Die Zukunft von TeX und METAFONT”. Digitale Typografie. Wissenschaftlicher Amerikaner. 249. p. 572. Bibcode:1983SciAm.249b.106B. doi:10.1038 / Scientificamerican0883-106.
  46. ^ Knuth, Donald E (1986), “Computer und Schriftsätze” (PDF), Schlepper, 7: 95–98
  47. ^ Bigelow, Charles; Day, Donald (1983). “Kapitel 28” (PDF). Digitale Typografie. Wissenschaftlicher Amerikaner. 249. p. 560. Bibcode:1983SciAm.249b.106B. doi:10.1038 / Scientificamerican0883-106.
  48. ^ “Ausflug”, CTAN (TeX) (Quellcode)
  49. ^ Knuth, Donald E (1986), TeX: Das Programm, Computer und Satz, B., Reading, MA: Addison-Wesley, ISBN 0-201-13437-3
  50. ^ Open Source: Technologie und Politik von Fadi P. Deek, James AM McHugh “Public Domain”, Seite 227 (2008)
  51. ^ O’Connell, Heath (2002). “Physiker gedeihen mit papierlosem Publizieren”. Hep Lib.web. 6: 3. arXiv:Physik / 0007040.
  52. ^ Knuth, Donald E. Das TeXbook, CH. 1: Der Name des Spiels, p. 1.
  53. ^ Knuth, Donald E. Das TeX-Logo in verschiedenen Schriftarten, Schlepper 7 (1986), 101. Nachgedruckt als Kapitel 6 von Digitale Typografie.
  54. ^ “Die Jargon-Datei – TeX”. Abgerufen 23. Juli 2016.
  55. ^ “Die Kommunikation der TeX Users Group”. tug.org. TeX-Benutzergruppe. Abgerufen 15. März 2019.
  56. ^ “Alle TeX-Benutzergruppen”. tug.org. TeX-Benutzergruppe. Abgerufen 17. November 2019.

Zitierfehler: Eine listendefinierte Referenz mit Gruppennamen "" wird im Inhalt nicht verwendet (siehe Hilfeseite).

Quellen[edit]

  • Dieser Artikel basiert auf Material aus dem Kostenloses Online-Wörterbuch für Computer vor dem 1. November 2008 und unter den “Neuzulassungsbedingungen” der GFDL, Version 1.3 oder höher, aufgenommen.
  • Beebe, Nelson HF (2004), “25 Jahre TeX und METAFONT: Rückblick und Ausblick” (PDF), Schlepper, 25: 7–30.
  • Knuth, Donald Ervin (1984), Das TeXbook, Computer und Satz, EIN, Reading, MA: Addison-Wesley, ISBN 0-201-13448-9. Das Quellcode des Buches in TeX (und eine benötigte Reihe von Makros [1]) ist online auf CTAN verfügbar. Es dient nur als Beispiel und die Verwendung zur Erstellung eines Buches wie The TeXbook ist nicht zulässig.
  • ——— (1986), TeX: Das Programm, Computer und Satz, B., Reading, MA: Addison-Wesley, ISBN 0-201-13437-3. Der vollständige Quellcode von TeX; auch auf CTAN verfügbar. Es wurde mit literarischer Programmierung geschrieben und enthält eine Vielzahl von für Menschen lesbaren Dokumentationen.
  • ——— (1999), Digitale Typografie, Vorlesungsunterlagen, Zentrum für das Studium von Sprache und Information, ISBN 1-57586-010-4.
  • ———; Plass, Michael F (1981), “Breaking Paragraphs in Lines”, Software: Praxis und Erfahrung, 11 (11): 1119–84, doi:10.1002 / spe.4380111102, S2CID 206508107. Nachdruck als Bigelow, Charles; Day, Donald (1983). “Kapitel 3”. Digitale Typografie. Wissenschaftlicher Amerikaner. 249. S. 67–155. Bibcode:1983SciAm.249b.106B. doi:10.1038 / Scientificamerican0883-106..
  • ———, TeX (Quellcode), archiviert von das Original (NETZ) am 27. September 2011 enthält eine ausführliche Dokumentation zu den in TeX verwendeten Algorithmen.
  • Lamport, Leslie (1994), LaTeX: Ein Dokumentvorbereitungssystem (2. Aufl.), Reading, MA: Addison-Wesley, ISBN 0-201-52983-1.
  • Liang, Franklin Mark (August 1983), Word Hy-phen-a-tion von Computer (Doktorarbeit), Institut für Informatik, Stanford University.
  • Salomon, David (1995), Das Advanced TeXbook, Springer, Bibcode:1995adte.book ….. S., ISBN 0-387-94556-3.
  • Spivak, MD (1990), Die Freude an TeX (Referenz) (2. Aufl.), American Mathematical Society, ISBN 0-8218-2997-1 auf AMS-TeX.
  • Vulis, Michael (1992), Modernes TeX und seine Anwendungen, CRC Press, ISBN 0-8493-4431-X.

Externe Links[edit]