« TeX » : différence entre les versions
m →Étymologie et prononciation : e̷t̷ |
m Robot : Ajout d'un portail (requête) |
||
(33 versions intermédiaires par 24 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
{{Voir homonymes|Tex}} |
{{Voir homonymes|Tex}} |
||
{{Infobox Logiciel}} |
{{Infobox Logiciel}} |
||
'''TeX''' est un système [[logiciel]] libre de composition de documents, indépendant du matériel utilisé pour la visualisation ou l'impression. Il |
'''TeX''' est un système [[logiciel]] libre de composition de documents, indépendant du matériel utilisé pour la visualisation ou l'impression. Il a été créé à partir de 1977 par le mathématicien et informaticien [[Donald Knuth]], excédé par la piètre qualité de la typographie des logiciels d'édition de l'époque. Il est principalement conçu pour l'édition de documents techniques et est largement utilisé par les scientifiques, particulièrement en [[mathématiques]], [[physique]], [[bio-informatique]], [[astronomie]] et [[informatique]]. Il est également extensible et permet notamment l'édition de documents plus complexes (affiches, plaquettes publicitaires, partitions musicales...). |
||
== Origine et historique == |
== Origine et historique == |
||
=== Origines du programme === |
=== Origines du programme === |
||
Lorsque le premier volume de ''[[The Art of Computer Programming]]'' |
Lorsque le premier volume de ''[[The Art of Computer Programming]]'' a été publié en 1968, le premier livre de [[Donald Knuth]], celui-ci a d'abord été imprimé par composition par métal chaud, une technique datant du {{s-|XIX}} qui donnait un caractère « ancien » apprécié par Knuth. Cependant lors de la seconde édition du second volume en 1976, le livre entier a dû être recomposé parce que les éditeurs utilisaient une nouvelle technique appelée [[photocomposition]] qui ne fonctionnait plus avec les anciennes polices. En effet, les anciennes imprimeries avaient été remplacées par des imprimeries à impression photographique. Lorsque Knuth reçut les premiers essais de son deuxième livre, il les trouva horribles<ref>{{Ouvrage|langue=en|auteur1=Donald Knuth E.|titre=Digital Typography|éditeur=|année=|passage=p.5|isbn=}}{{Citation étrangère bloc|langue=en|I had spent 15 years writing those books, but if they were going to look awful I didn't want to write any more}}</ref>. Tant et si bien qu'il décida de résoudre le problème et de réaliser lui-même son outil d'édition typographique qui ne serait d'aucun ressort photographique mais bien informatique<ref>{{Lien web|langue=en|format=vidéo|titre=Interview of Donald Knuth - Deciding to make my own typesetting program|url=https://www.webofstories.com/play/donald.knuth/51|site=webofstories.com|date=2001|consulté le=7 juin 2017}}</ref>. |
||
Knuth prévoyait initialement de le terminer en six mois pour la fin de son année sabbatique. Il prendra finalement presque 10 ans, soit de [[1977]] à [[1989]]. Bien qu'il fût seul à le développer, il reçut cependant de l'aide de nombreux collaborateurs dont [[Hermann Zapf]], Chuck Bigelow, [[Kris Holmes]], [[Matthew Carter]] et Richard Southall<ref>{{Ouvrage|langue=en|auteur1=Donald E. Knuth|titre=Computers & Typesetting, Volume E |
Knuth prévoyait initialement de le terminer en six mois pour la fin de son année sabbatique. Il prendra finalement presque 10 ans, soit de [[1977]] à [[1989]]. Bien qu'il fût seul à le développer, il reçut cependant de l'aide de nombreux collaborateurs dont [[Hermann Zapf]], Chuck Bigelow, [[Kris Holmes]], [[Matthew Carter]] et [[Richard Southall]]<ref>{{Ouvrage|langue=en|auteur1=Donald E. Knuth|titre=Computers & Typesetting, Volume E|sous-titre=Computer Modern Typefaces|lieu=Massachusetts|éditeur=[[Addison-Wesley]]|année=1984|pages totales=483|passage=Introduction|isbn=0-201-13448-9}}</ref>. |
||
Décidant d'aller travailler dans les locaux de [[Université Stanford|Stanford]] au lieu des laboratoires Xerox de [[Palo Alto Research Center|Palo Alto]]<ref>{{Lien web|langue=en|format=vidéo|titre=Interview de Donald Knuth - Working on my typesetting program|url=https://www.webofstories.com/play/donald.knuth/52|site=webofstories.com|date=2001|consulté le=7 juin 2017}}</ref>, Knuth se mit au travail sur TeX lors du printemps 1977. En tenant comme référence un grand nombre de livres de typographie, notamment ceux de l'ancienne collection Aldine<ref>{{Lien web|langue=en|auteur1=John E Mustain|titre=Aldine Collection|url=https://library.stanford.edu/collections/aldine-collection|site=library.stanford.edu |
Décidant d'aller travailler dans les locaux de [[Université Stanford|Stanford]] au lieu des laboratoires [[Xerox]] de [[Palo Alto Research Center|Palo Alto]]<ref>{{Lien web|langue=en|format=vidéo|titre=Interview de Donald Knuth - Working on my typesetting program|url=https://www.webofstories.com/play/donald.knuth/52|site=webofstories.com|date=2001|consulté le=7 juin 2017}}</ref>, Knuth se mit au travail sur TeX lors du printemps 1977. En tenant comme référence un grand nombre de livres de typographie, notamment ceux de l'ancienne collection Aldine<ref>{{Lien web|langue=en|auteur1=John E Mustain|titre=Aldine Collection|url=https://library.stanford.edu/collections/aldine-collection|site=library.stanford.edu|consulté le=3 janvier 2018}}</ref>, il se mit en tête de retranscrire les anciens caractères dans son programme en utilisant des formules mathématiques. Il tentait alors de comprendre la logique derrière les lettres. C'est ainsi qu'il se mit à travailler sur son propre logiciel de polices de caractères [[Metafont]]. |
||
Le premier prototype de TeX |
Le premier prototype de TeX a été implémenté pendant l'été 1977 par 2 étudiants de Knuth, Michael F. Plass et [[Frank Liang|Frank M. Liang]], d'après les spécifications qu'il leur avait données. Il ne contenait initialement que quelques définitions de macros et d'opérations élémentaires sur les boîtes<ref>{{Ouvrage|langue=en|auteur1=Donald E. Knuth|titre=TeX : The Program|volume=B|éditeur=[[Addison-Wesley]]|série=Computers & Typesetting|année=1991|année première édition=1986|pages totales=600 p.|passage=p2|isbn=0-201-13437-3}}</ref>. |
||
=== Première version === |
=== Première version === |
||
La première version de TeX, également dénommé Tau Epsilon Chi, |
La première version de TeX, également dénommé Tau Epsilon Chi, a été achevée en 1978 par Knuth sur base du prototype. Celle-ci était implémentée en langage SAIL, un langage de compilation semblable à [[Algol (langage)|Algol]], et le premier manuel utilisateur fut rédigé durant l'été 1978<ref>{{Ouvrage|langue=en|auteur1=Donald Knuth|titre=TAU EPSILON CHI, A System for Technical Text|éditeur=Providence, R.I. : American Mathematical Society|année=1978|isbn=0-8218-0209-7|lire en ligne=https://purl.stanford.edu/jy605yq4819}}</ref>. |
||
Au début de 1979, Trabb Pardo et Knuth commencèrent à planifier une conversion du SAIL au [[WEB]]. Cela se traduira par une conversion complète entre 1979 et 1980 faite par Ignacio A. Zabala<ref>{{Article|langue=en|auteur1=Ignacio Zabala|auteur2=Luis Trabb-Pardo|titre=The status of the Pascal implementation of TeX|périodique=TUGboat|volume=1|numéro=1|date=1980-10 |
Au début de 1979, Trabb Pardo et Knuth commencèrent à planifier une conversion du SAIL au [[WEB]]. Cela se traduira par une conversion complète entre 1979 et 1980 faite par Ignacio A. Zabala<ref>{{Article|langue=en|auteur1=Ignacio Zabala|auteur2=Luis Trabb-Pardo|titre=The status of the Pascal implementation of TeX|périodique=TUGboat|volume=1|numéro=1|date=1980-10|lire en ligne=https://www.tug.org/TUGboat/tb01-1/tb01zabala.pdf}}</ref>. Parallèlement, Knuth sortit la première version de [[Metafont]] en 1979. |
||
=== Deuxième version === |
=== Deuxième version === |
||
En 1982 est publiée une nouvelle version nommée ''TeX82'', pratiquement réécrite de A à Z. Cette version inclut notamment des idées de l'implémentation de 1979 en MESA écrite par Leonidas Guibas, Robert Sedgewick et Douglas Wyatt du centre de recherche Xerox de [[Palo Alto Research Center|Palo Alto]]. L'[[algorithme de césure]] original fut remplacé par un nouvel algorithme écrit par Frank Liang en 1983. ''TeX82'' utilisa une représentation à [[virgule fixe]] à la place de [[virgule flottante]] afin de renforcer la portabilité sur plusieurs hardwares<ref>Knuth and Plass, {{p.|144}}</ref>. Knuth inclut également un véritable langage de programmation certifié [[Turing-complet]] sous la pression de programmeurs, notamment [[Guy Lewis Steele, Jr.|Guy Steele]]<ref>{{Lien web|langue=en|format=pdf|auteur1=Christina Thiele|titre=Knuth meets NTG members|url=http://maps.aanhet.net/maps/pdf/16_15.pdf|site=aanhet.net|date=13 mars 1996|consulté le=7 juin 2017}}</ref>. |
En 1982 est publiée une nouvelle version nommée ''TeX82'', pratiquement réécrite de A à Z. Cette version inclut notamment des idées de l'implémentation de 1979 en MESA écrite par Leonidas Guibas, Robert Sedgewick et Douglas Wyatt du centre de recherche Xerox de [[Palo Alto Research Center|Palo Alto]]. L'[[algorithme de césure]] original fut remplacé par un nouvel algorithme écrit par Frank Liang en 1983. ''TeX82'' utilisa une représentation à [[virgule fixe]] à la place de [[virgule flottante]] afin de renforcer la portabilité sur plusieurs hardwares<ref>Knuth and Plass, {{p.|144}}</ref>. Knuth inclut également un véritable [[langage de programmation]] certifié [[Turing-complet]] sous la pression de programmeurs, notamment [[Guy Lewis Steele, Jr.|Guy Steele]]<ref>{{Lien web|langue=en|format=pdf|auteur1=Christina Thiele|titre=Knuth meets NTG members|url=http://maps.aanhet.net/maps/pdf/16_15.pdf|site=aanhet.net|date=13 mars 1996|consulté le=7 juin 2017}}</ref>. |
||
En août 1989, Donald Knuth entame de nouvelles modifications dans le code de TeX et [[Metafont]]. En effet, jusque-là les caractères étaient codés sur 7 bits, ce qui est suffisant pour afficher 128 lettres, soit l'alphabet anglais plus quelques caractères spéciaux, mais nettement insuffisant pour des alphabets étrangers (notamment en Europe et en Asie). Il dut donc réadapter entièrement TeX et [[Metafont]] pour fonctionner en 8 bits, soit 256 caractères différents, ce qui le rendit utilisable pour une bonne partie des langues d'Europe occidentale<ref>{{Lien web|langue=en|auteur1=Donald E. Knuth|titre=The New Versions of TeX and METAFONT|url=http://www.tug.org/TUGboat/Articles/tb10-3/tb25knut.pdf|site=TUGboat|date=1989|consulté le=7 juin 2017}}</ref>. Il introduisit également dans TeX la capacité de faire la césure dans d'autres langues que l'anglais, basée sur plusieurs idées de Michael J. Ferguson. TeX passa alors dans sa version stable 3.0. |
En {{date-|août 1989}}, Donald Knuth entame de nouvelles modifications dans le code de TeX et [[Metafont]]. En effet, jusque-là les caractères étaient codés sur 7 bits, ce qui est suffisant pour afficher 128 lettres, soit l'alphabet anglais plus quelques caractères spéciaux, mais nettement insuffisant pour des alphabets étrangers (notamment en Europe et en Asie). Il dut donc réadapter entièrement TeX et [[Metafont]] pour fonctionner en 8 bits, soit 256 caractères différents, ce qui le rendit utilisable pour une bonne partie des langues d'Europe occidentale<ref>{{Lien web|langue=en|auteur1=Donald E. Knuth|titre=The New Versions of TeX and METAFONT|url=http://www.tug.org/TUGboat/Articles/tb10-3/tb25knut.pdf|site=TUGboat|date=1989|consulté le=7 juin 2017}}</ref>. Il introduisit également dans TeX la capacité de faire la césure dans d'autres langues que l'anglais, basée sur plusieurs idées de Michael J. Ferguson. TeX passa alors dans sa version stable 3.0. |
||
=== Troisième version === |
=== Troisième version === |
||
À partir de la version 3, TeX utilisa un système [[idiosyncrasie| |
À partir de la version 3, TeX utilisa un système [[idiosyncrasie|idiosyncrasique]] de [[version d'un logiciel|numérotation de version]], les mises à jour étant indiquées en ajoutant un chiffre supplémentaire après le point décimal, le numéro de version approchant ainsi [[limite (mathématiques)|asymptotiquement]] le nombre [[Pi|<math>\pi</math>]]<ref name="pi">{{en}} Donald E. Knuth. [http://www.ntg.nl/maps/05/34.pdf ''The future of TeX and METAFONT''], NTG journal MAPS (1990), 489. Réimprimé comme {{nobr|chapitre 30}} de ''Digital Typography'', {{p.}}571.</ref>. La version actuelle de TeX est la 3.141592653, la dernière mise à jour datant de {{date-|février 2021}}<ref>{{lien web|langue=en|description=Notice du paquet tex|url=https://ctan.org/pkg/tex|site=[[CTAN]]|consulté le=2023-05-11}}.</ref>. Les caractéristiques essentielles de TeX ont été figées après la {{nobr|version 3.0}}, et toutes les versions suivantes ne contiennent que des corrections de [[bug (informatique)|''bugs'']]. Donald Knuth, bien qu'ayant signalé des améliorations possibles, a insisté sur le fait qu'avoir un système fixe qui produira toujours la même sortie est plus important que d'introduire des caractéristiques nouvelles. |
||
== Fonctionnement == |
== Fonctionnement == |
||
=== Principales caractéristiques === |
=== Principales caractéristiques === |
||
Dès le départ, le système TeX |
Dès le départ, le système TeX a été conçu afin d'être : |
||
* ergonomique, le système étant conçu afin que les auteurs puissent directement l'utiliser, c'est-à-dire les personnes sans grande connaissance en informatique ; |
* ergonomique, le système étant conçu afin que les auteurs puissent directement l'utiliser, c'est-à-dire les personnes sans grande connaissance en informatique ; |
||
* gratuit, le logiciel provenant d'une source universitaire. |
* gratuit, le logiciel provenant d'une source universitaire. |
||
Ligne 35 : | Ligne 35 : | ||
=== Le langage TeX === |
=== Le langage TeX === |
||
[[Fichier:LaTeX sample.png|vignette|Un exemple de page produite à l'aide de TeX avec les macros [[LaTeX]].]] |
|||
Le langage TeX est un [[Langage de balisage|langage balisé]]. Il utilise à la fois du [[texte brut]] pour le corps du texte ainsi que des commandes commençant par une [[contre-oblique]] « \ ». |
Le langage TeX est un [[Langage de balisage|langage balisé]]. Il utilise à la fois du [[texte brut]] pour le corps du texte ainsi que des commandes commençant par une [[contre-oblique]] « \ ». |
||
Ligne 63 : | Ligne 64 : | ||
=== Le programme TeX === |
=== Le programme TeX === |
||
TeX interprète un langage de description formel de document défini par D. Knuth (couramment, on ne fait pas la distinction entre le logiciel TeX et ce langage que l'on appelle également TeX) |
TeX interprète un langage de description formel de document défini par D. Knuth (couramment, on ne fait pas la distinction entre le logiciel TeX et ce langage que l'on appelle également TeX). Autrement dit, ce n'est pas un formateur de texte [[What you see is what you get|à rendu immédiat]] où le document en préparation apparaît à l'écran comme il est censé être une fois imprimé, mais un logiciel traduisant une description textuelle en un document graphique. |
||
TeX prend en entrée un document écrit en langage TeX et crée un fichier au format '''[[DVI (TeX)|dvi]]''' contenant une description des pages, c'est-à-dire les positions des caractères, images, figures, etc sur la page. Afin d'être imprimé ou exporté, le dvi doit être traduit dans un autre format reconnu par l'appareil. [[PostScript]] (pour les imprimantes notamment) et [[Portable Document Format|PDF]] sont les formats les plus populaires pour TeX. |
TeX prend en entrée un document écrit en langage TeX et crée un fichier au format '''[[DVI (TeX)|dvi]]''' contenant une description des pages, c'est-à-dire les positions des caractères, images, figures, etc sur la page. Afin d'être imprimé ou exporté, le dvi doit être traduit dans un autre format reconnu par l'appareil. [[PostScript]] (pour les imprimantes notamment) et [[Portable Document Format|PDF]] sont les formats les plus populaires pour TeX. |
||
Ligne 72 : | Ligne 73 : | ||
==== Algorithme de césure de Frank Liang ==== |
==== Algorithme de césure de Frank Liang ==== |
||
{{Article |
{{Article détaillé|Algorithme de césure}} |
||
Il a été écrit par Frank Liang lors de sa thèse de doctorat en 1983 au département informatique de [[Université Stanford|Stanford]]. C'est cet algorithme qui détermine à quels endroits un mot doit être correctement coupé entre deux lignes. L'implémentation utilisée dans TeX, le programme [[Patgen]], utilise peu de place et son taux de réussite se trouve vers 90-95 % de chances de trouver une [[Césure (typographie)|césure]] correcte. Son principe repose sur l'utilisation de dictionnaires et sur la reconnaissance de motifs dans les mots<ref>{{Ouvrage|langue=en|auteur1=Donald E. Knuth|titre=The TeXBook|volume=A |
Il a été écrit par Frank Liang lors de sa thèse de doctorat en 1983 au département informatique de [[Université Stanford|Stanford]]. C'est cet algorithme qui détermine à quels endroits un mot doit être correctement coupé entre deux lignes. L'implémentation utilisée dans TeX, le programme [[Patgen]], utilise peu de place et son taux de réussite se trouve vers 90-95 % de chances de trouver une [[Césure (typographie)|césure]] correcte. Son principe repose sur l'utilisation de dictionnaires et sur la reconnaissance de motifs dans les mots<ref>{{Ouvrage|langue=en|auteur1=Donald E. Knuth|titre=The TeXBook|volume=A|éditeur=American Mathematical Society et Addison Wesley|série=Computer & Typesettings|année=1986|passage=Appendix H - p449|isbn=}}</ref>. |
||
==== Metafont ==== |
==== Metafont ==== |
||
{{Article |
{{Article détaillé|Metafont}} |
||
[[Fichier:METAFONT logo.svg|alt=Logo de Metafont|vignette|Logo de Metafont.]] |
[[Fichier:METAFONT logo.svg|alt=Logo de Metafont|vignette|Logo de Metafont.]] |
||
Ligne 91 : | Ligne 92 : | ||
Cependant, il a d'autres usages notamment dans le milieu professionnel. Il peut par exemple produire des cartes de visites, des lettres, des programmes de concert ou encore des livres (la motivation de départ de Knuth). |
Cependant, il a d'autres usages notamment dans le milieu professionnel. Il peut par exemple produire des cartes de visites, des lettres, des programmes de concert ou encore des livres (la motivation de départ de Knuth). |
||
Il est possible d'utiliser TeX pour générer de manière complètement automatique la mise en page délicate de données XML. Ceci permet la conciliation des différences syntaxiques entre les deux langages descriptifs à l'aide de [[TeXML]]. On peut donc considérer TeX comme une alternative à [[XSL-FO]] dans le cadre de publication en XML. |
Il est possible d'utiliser TeX pour générer de manière complètement automatique la [[mise en page]] délicate de données XML. Ceci permet la conciliation des différences syntaxiques entre les deux langages descriptifs à l'aide de [[TeXML]]. On peut donc considérer TeX comme une alternative à [[XSL-FO]] dans le cadre de publication en XML. |
||
=== Licence === |
=== Licence === |
||
Donald Knuth a répété plusieurs fois que le code source de TeX était dans le domaine public<ref>{{Lien web|langue=en|format=pdf|auteur1=Donald Knuth|titre=Computers and Typesettings|url=http://www.tug.org/TUGboat/Articles/tb07-2/tb15gordon.pdf|site=TUGboat|date=1995-1998|consulté le=11 juin 2017}}</ref> et qu'il encourageait fortement les modifications de celui-ci. D'autre part bien qu'il soit dans le domaine public, Knuth demande que lorsqu'une modification de TeX est publiée, celle-ci porte une autre dénomination que TeX pour permettre de la distinguer (exemple avec [[LaTeX]] ou [[ConTeXt]]). |
Donald Knuth a répété plusieurs fois que le code source de TeX était dans le domaine public<ref>{{Lien web|langue=en|format=pdf|auteur1=Donald Knuth|titre=Computers and Typesettings|url=http://www.tug.org/TUGboat/Articles/tb07-2/tb15gordon.pdf|site=TUGboat|date=1995-1998|consulté le=11 juin 2017}}</ref> et qu'il encourageait fortement les modifications de celui-ci. D'autre part, bien qu'il soit dans le domaine public, Knuth demande que, lorsqu'une modification de TeX est publiée, celle-ci porte une autre dénomination que TeX, pour permettre de la distinguer (exemple avec [[LaTeX]] ou [[ConTeXt]]). |
||
== Extensions == |
== Extensions == |
||
Ligne 113 : | Ligne 114 : | ||
{{Article détaillé|Groupe d'utilisateurs de TeX|}} |
{{Article détaillé|Groupe d'utilisateurs de TeX|}} |
||
Il existe de nombreux groupes d'utilisateurs de TeX/LaTeX de par le monde, qui sont généralement liés à une langue : |
Il existe de nombreux groupes d'utilisateurs de TeX/LaTeX de par le monde, qui sont généralement liés à une langue : |
||
[[GUTenberg]] (francophone), TUG (anglophone, signifie ''TeX Users Group''), DANTE (germanophone), CervanTeX (hispanophone), |
[[GUTenberg]] (francophone), [[:en:TeX#Community|TUG]] (anglophone, signifie ''TeX Users Group''), [[:de:Deutschsprachige_Anwendervereinigung_TeX|DANTE]] (germanophone), CervanTeX (hispanophone), GuIT (italophone), NTG (néerlandophone)… |
||
Certains de ces groupes publient des journaux (les ''[[Cahiers GUTenberg]]'', la ''Lettre GUTenberg'', ''PracTeX'', ''TUGboat''…) et organisent aussi des conférences, parfois de façon conjointe (''EuroTeX''…). |
Certains de ces groupes publient des journaux (les ''[[Cahiers GUTenberg]]'', la ''Lettre GUTenberg'', ''PracTeX'', ''TUGboat''…) et organisent aussi des conférences, parfois de façon conjointe (''EuroTeX''…). |
||
Ligne 119 : | Ligne 120 : | ||
=== Chasse aux bugs === |
=== Chasse aux bugs === |
||
Donald Knuth encourage quiconque à trouver des bugs et des erreurs de typographie dans le code source de TeX et dans le reste de son œuvre {{incise|logiciels ou livres|stop}}. Jusqu'en 2008, il offrait même une |
Donald Knuth encourage quiconque à trouver des bugs et des erreurs de typographie dans le code source de TeX et dans le reste de son œuvre {{incise|logiciels ou livres|stop}}. Jusqu'en 2008, il offrait même une {{Lien|trad=Knuth_reward_check|fr=Knuth_reward_check|texte=récompense}} financière. Celle-ci s’élevait à {{unité|2,56|[[Dollar américain|$]]}} (un « dollar [[hexadécimal]] »<ref>{{lien web |url=http://www-cs-faculty.stanford.edu/~knuth/faq.html |langue=en |titre={{lang|en|Frequently Asked Questions}} |auteur=Donald Knuth |consulté le=2019-11-28 |site=son site personnel}}</ref>) pour une erreur ([[Coquille (typographie)|coquille]] ou autre) dans un livre imprimé. Pour un [[Bug (informatique)|bug logiciel]], le montant augmentait avec l’âge : de {{unité|1,28|$}} la première année d’existence du bug, il était ensuite doublé chaque année jusqu’à un plafond de {{unité|327,68|$}} (soit {{unité|128|« dollars hexadécimaux »}}, atteint après huit ans)<ref>{{Lien web |langue=en |titre={{lang|en|History of TeX}} |url=https://www.tug.org/whatis.html |site=tug.org |date=12 août 2015 |consulté le=3 janvier 2018}}</ref>. |
||
Malgré le grand nombre de chèques envoyés et leur montant parfois élevé, très peu d’entre eux étaient encaissés<ref name="knuthfinancialfiasco">{{lien web |url=http://www-cs-faculty.stanford.edu/~knuth/news08.html |langue=en |titre={{lang|en|Recent News — Financial Fiasco}} |auteur=Donald Knuth |date=2008 |site=son site personnel }}</ref>, leurs destinataires préférant les encadrer<ref name="stanfordmag">{{lien web |url=http://www.stanfordalumni.org/news/magazine/2006/mayjun/features/knuth.html |langue=en |titre={{lang|en|Love at First Byte}} |auteur=Kara Platoni |site=stanfordalumni.org |date=2006 |
Malgré le grand nombre de chèques envoyés et leur montant parfois élevé, très peu d’entre eux étaient encaissés<ref name="knuthfinancialfiasco">{{lien web |url=http://www-cs-faculty.stanford.edu/~knuth/news08.html |langue=en |titre={{lang|en|Recent News — Financial Fiasco}} |auteur=Donald Knuth |date=2008 |site=son site personnel }}</ref>, leurs destinataires préférant les encadrer<ref name="stanfordmag">{{lien web |url=http://www.stanfordalumni.org/news/magazine/2006/mayjun/features/knuth.html |langue=en |titre={{lang|en|Love at First Byte}} |auteur=Kara Platoni |site=stanfordalumni.org |date=2006 |archive-url=https://web.archive.org/web/20060604115901/http://www.stanfordalumni.org/news/magazine/2006/mayjun/features/knuth.html |archive-date=2008-09-25 }}</ref>. |
||
Depuis 2008, Knuth n’envoie plus de chèques réels, leur préférant des certificats de dépôt de la banque de la nation imaginaire de [[San Serriffe]]<ref name="knuthfinancialfiasco"/>. |
Depuis 2008, Knuth n’envoie plus de chèques réels, leur préférant des certificats de dépôt de la banque de la nation imaginaire de [[San Serriffe]]<ref name="knuthfinancialfiasco"/>, pour faire jeu de mots typographique avec une police sans serif, tout en évoquant un douteux paradis fiscal ''offshore'' ; l'adresse qu'il en donne poursuit le jeu. |
||
== Étymologie et |
== Étymologie, prononciation et typographie du nom == |
||
Selon son auteur<ref name="phon"/>, le mot « TeX » |
Selon son auteur<ref name="phon">{{en}} Donald E. Knuth, ''The TeXbook'', Ch. 1: The Name of the Game, {{p.|1}}</ref>, le mot « TeX » a été créé à partir du [[grec ancien]] {{grec ancien|τέχνη|tékhnē}} (« art, habileté à faire quelque chose »<ref name="Bailly">{{lien web |auteur=Anatole Bailly ; 2020 : Hugo Chávez, Gérard Gréco, André Charbonnet, Mark De Wilde, Bernard Maréchal & contributeurs|titre=Le Bailly |date=2020 |url=https://bailly.app/techn%C3%AA|consulté le=14 juin 2024}}.</ref>, [[Étymologie|racine étymologique]] du mot « [[technique]] ») ; le logotype {{TeX}} serait en fait composé des lettres grecques [[tau]], [[epsilon]] et [[chi]] sous leur forme capitale. |
||
Selon les époques, cette dernière lettre s’est prononcée |
Selon les époques, cette dernière lettre s’est prononcée |
||
Ligne 133 : | Ligne 134 : | ||
puis {{MSAPI|x}} (<!--en [[koinê]] et [[grec moderne]] — -->comme ''ch'' dans l'allemand {{citation étrangère|lang=de|Buch}} et ''j'' dans l’espagnol {{citation étrangère|lang=es|Juan Carlos}}). Donald Knuth recommande la seconde prononciation, {{MSAPI|tɛx}}. Cependant, le son {{MSAPI|x}} n’étant connu ni en français ni en anglais (hors mots d’emprunt), de nombreux utilisateurs emploient plutôt la première prononciation, {{MSAPI|tɛk}}. |
puis {{MSAPI|x}} (<!--en [[koinê]] et [[grec moderne]] — -->comme ''ch'' dans l'allemand {{citation étrangère|lang=de|Buch}} et ''j'' dans l’espagnol {{citation étrangère|lang=es|Juan Carlos}}). Donald Knuth recommande la seconde prononciation, {{MSAPI|tɛx}}. Cependant, le son {{MSAPI|x}} n’étant connu ni en français ni en anglais (hors mots d’emprunt), de nombreux utilisateurs emploient plutôt la première prononciation, {{MSAPI|tɛk}}. |
||
{{Référence nécessaire|On entend aussi, de la part des novices, la prononciation erronée {{MSAPI|tɛks}}, comme dans le mot « texte ».|date=novembre 2019}} |
{{Référence nécessaire|On entend aussi, particulièrement de la part des novices, la prononciation jugée erronée {{MSAPI|tɛks}}, comme dans le mot « texte ».|date=novembre 2019}} |
||
Le nom du logiciel s’écrit avec un « X » majuscule qui rappelle la forme du logotype, « {{TeX}} ». Ce dernier évoque les possibilités de mise en forme offertes par TeX (en l’occurrence : formules mathématiques avec exposants, indices et lettres grecques). |
|||
== Références == |
|||
== Notes et références == |
|||
{{références}} |
{{références}} |
||
Ligne 167 : | Ligne 170 : | ||
{{Palette|TeX|Donald Knuth}} |
{{Palette|TeX|Donald Knuth}} |
||
{{Portail|logiciels libres|informatique|Édition numérique}} |
{{Portail|logiciels libres|informatique|Édition numérique|typographie}} |
||
[[Catégorie:TeX| ]] |
[[Catégorie:TeX| ]] |
||
[[Catégorie:Format ouvert]] |
[[Catégorie:Format ouvert]] |
||
[[Catégorie:Logiciel libre]] |
[[Catégorie:Logiciel sous licence libre]] |
||
[[Catégorie:Donald Knuth]] |
[[Catégorie:Donald Knuth]] |
Version du 28 juillet 2024 à 20:47
Créateur | Donald Knuth |
---|---|
Première version | |
Dernière version | 3.141592653 ()[1] |
Dépôt | www.tug.org/svn/texlive |
Écrit en | WEB, Pascal et SAIL (en) |
Système d'exploitation | Multiplateforme |
Formats écrits | DVI (TeX) |
Type |
Logiciel de composition (d) Langage de balisage Format de fichier (en) Langage de programmation |
Site web | www.tug.org |
TeX est un système logiciel libre de composition de documents, indépendant du matériel utilisé pour la visualisation ou l'impression. Il a été créé à partir de 1977 par le mathématicien et informaticien Donald Knuth, excédé par la piètre qualité de la typographie des logiciels d'édition de l'époque. Il est principalement conçu pour l'édition de documents techniques et est largement utilisé par les scientifiques, particulièrement en mathématiques, physique, bio-informatique, astronomie et informatique. Il est également extensible et permet notamment l'édition de documents plus complexes (affiches, plaquettes publicitaires, partitions musicales...).
Origine et historique
Origines du programme
Lorsque le premier volume de The Art of Computer Programming a été publié en 1968, le premier livre de Donald Knuth, celui-ci a d'abord été imprimé par composition par métal chaud, une technique datant du XIXe siècle qui donnait un caractère « ancien » apprécié par Knuth. Cependant lors de la seconde édition du second volume en 1976, le livre entier a dû être recomposé parce que les éditeurs utilisaient une nouvelle technique appelée photocomposition qui ne fonctionnait plus avec les anciennes polices. En effet, les anciennes imprimeries avaient été remplacées par des imprimeries à impression photographique. Lorsque Knuth reçut les premiers essais de son deuxième livre, il les trouva horribles[2]. Tant et si bien qu'il décida de résoudre le problème et de réaliser lui-même son outil d'édition typographique qui ne serait d'aucun ressort photographique mais bien informatique[3].
Knuth prévoyait initialement de le terminer en six mois pour la fin de son année sabbatique. Il prendra finalement presque 10 ans, soit de 1977 à 1989. Bien qu'il fût seul à le développer, il reçut cependant de l'aide de nombreux collaborateurs dont Hermann Zapf, Chuck Bigelow, Kris Holmes, Matthew Carter et Richard Southall[4].
Décidant d'aller travailler dans les locaux de Stanford au lieu des laboratoires Xerox de Palo Alto[5], Knuth se mit au travail sur TeX lors du printemps 1977. En tenant comme référence un grand nombre de livres de typographie, notamment ceux de l'ancienne collection Aldine[6], il se mit en tête de retranscrire les anciens caractères dans son programme en utilisant des formules mathématiques. Il tentait alors de comprendre la logique derrière les lettres. C'est ainsi qu'il se mit à travailler sur son propre logiciel de polices de caractères Metafont.
Le premier prototype de TeX a été implémenté pendant l'été 1977 par 2 étudiants de Knuth, Michael F. Plass et Frank M. Liang, d'après les spécifications qu'il leur avait données. Il ne contenait initialement que quelques définitions de macros et d'opérations élémentaires sur les boîtes[7].
Première version
La première version de TeX, également dénommé Tau Epsilon Chi, a été achevée en 1978 par Knuth sur base du prototype. Celle-ci était implémentée en langage SAIL, un langage de compilation semblable à Algol, et le premier manuel utilisateur fut rédigé durant l'été 1978[8].
Au début de 1979, Trabb Pardo et Knuth commencèrent à planifier une conversion du SAIL au WEB. Cela se traduira par une conversion complète entre 1979 et 1980 faite par Ignacio A. Zabala[9]. Parallèlement, Knuth sortit la première version de Metafont en 1979.
Deuxième version
En 1982 est publiée une nouvelle version nommée TeX82, pratiquement réécrite de A à Z. Cette version inclut notamment des idées de l'implémentation de 1979 en MESA écrite par Leonidas Guibas, Robert Sedgewick et Douglas Wyatt du centre de recherche Xerox de Palo Alto. L'algorithme de césure original fut remplacé par un nouvel algorithme écrit par Frank Liang en 1983. TeX82 utilisa une représentation à virgule fixe à la place de virgule flottante afin de renforcer la portabilité sur plusieurs hardwares[10]. Knuth inclut également un véritable langage de programmation certifié Turing-complet sous la pression de programmeurs, notamment Guy Steele[11].
En , Donald Knuth entame de nouvelles modifications dans le code de TeX et Metafont. En effet, jusque-là les caractères étaient codés sur 7 bits, ce qui est suffisant pour afficher 128 lettres, soit l'alphabet anglais plus quelques caractères spéciaux, mais nettement insuffisant pour des alphabets étrangers (notamment en Europe et en Asie). Il dut donc réadapter entièrement TeX et Metafont pour fonctionner en 8 bits, soit 256 caractères différents, ce qui le rendit utilisable pour une bonne partie des langues d'Europe occidentale[12]. Il introduisit également dans TeX la capacité de faire la césure dans d'autres langues que l'anglais, basée sur plusieurs idées de Michael J. Ferguson. TeX passa alors dans sa version stable 3.0.
Troisième version
À partir de la version 3, TeX utilisa un système idiosyncrasique de numérotation de version, les mises à jour étant indiquées en ajoutant un chiffre supplémentaire après le point décimal, le numéro de version approchant ainsi asymptotiquement le nombre [13]. La version actuelle de TeX est la 3.141592653, la dernière mise à jour datant de [14]. Les caractéristiques essentielles de TeX ont été figées après la version 3.0, et toutes les versions suivantes ne contiennent que des corrections de bugs. Donald Knuth, bien qu'ayant signalé des améliorations possibles, a insisté sur le fait qu'avoir un système fixe qui produira toujours la même sortie est plus important que d'introduire des caractéristiques nouvelles.
Fonctionnement
Principales caractéristiques
Dès le départ, le système TeX a été conçu afin d'être :
- ergonomique, le système étant conçu afin que les auteurs puissent directement l'utiliser, c'est-à-dire les personnes sans grande connaissance en informatique ;
- gratuit, le logiciel provenant d'une source universitaire.
Durant le développement, le logiciel devint indépendant par rapport à son support. Pour un même fichier d'entrée, il délivre le même fichier de sortie quel que soit l'ordinateur ou système d'exploitation sur lequel il est installé.
Le langage TeX
Le langage TeX est un langage balisé. Il utilise à la fois du texte brut pour le corps du texte ainsi que des commandes commençant par une contre-oblique « \ ».
Les commandes reconnues par le compilateur TeX sont divisées en « primitives » (on en compte environ 300), et « macros », créées à partir des primitives. Les macros rendent possibles des structures assez complexes (boucles, conditions, etc) ainsi que la réalisation de calculs.
Afin de simplifier la préparation d'un document, D. Knuth a défini un ensemble d'environ 600 macros appelé plain TeX qui est décrit dans son livre The TeXbook en même temps que les primitives et les mécanismes internes. Cela fait qu'il y a souvent confusion entre plain TeX et le compilateur TeX. Afin d'accélérer la création d'un document, cet ensemble de macros, appelé format, est précompilé.
L'utilisation directe du format plain TeX étant assez ardue, il a été étendu en LaTeX (là encore, pas de distinction avec le nom du langage dans lequel est décrit le document que l'on appelle également LaTeX), écrit à l'origine par Leslie Lamport, qui constitue en fait un jeu de macro-commandes basées sur TeX. D'autres formats sont aussi disponibles, comme ConTeXt, AMS-LaTeX.
Les commandes TeX ont de nombreuses utilisations. Elles servent par exemple à définir les polices à utiliser, ajouter des espaces, etc.
Exemples
Voici un exemple de code TeX pour afficher "Hello World!".
Hello World!
\bye
%\Bye désigne la fin du fichier
Voici un exemple de code de formule mathématique. Celui-ci montre les solutions d'une équation du second degré.
Balisage | Rendu |
---|---|
|
. |
Le programme TeX
TeX interprète un langage de description formel de document défini par D. Knuth (couramment, on ne fait pas la distinction entre le logiciel TeX et ce langage que l'on appelle également TeX). Autrement dit, ce n'est pas un formateur de texte à rendu immédiat où le document en préparation apparaît à l'écran comme il est censé être une fois imprimé, mais un logiciel traduisant une description textuelle en un document graphique.
TeX prend en entrée un document écrit en langage TeX et crée un fichier au format dvi contenant une description des pages, c'est-à-dire les positions des caractères, images, figures, etc sur la page. Afin d'être imprimé ou exporté, le dvi doit être traduit dans un autre format reconnu par l'appareil. PostScript (pour les imprimantes notamment) et PDF sont les formats les plus populaires pour TeX.
TeX lit l'entrée octet par octet. Dans un premier temps, il va assembler ces octets en unités lexicales. Pour cela TeX utilise un système très souple de catégorisation des caractères. Dès qu'il rencontre un caractère d'échappement, il lit tout ce qui suit jusqu'à rencontrer un caractère qui n'est pas catégorisé comme une lettre. Cet ensemble de caractères est stocké comme un nom de commande. Celle-ci peut ou bien servir d'abréviation, et elle sera simplement développée lors de la composition, ou bien être exécutée, un peu comme une fonction ou une procédure d'un langage de programmation.
Certains des algorithmes utilisés par TeX sont assez complexes. Par exemple, l'un d'entre eux lit un paragraphe en entier afin de décider de l'endroit où faire un retour à la ligne. Celui de la césure est notamment décrit peu après.
Algorithme de césure de Frank Liang
Il a été écrit par Frank Liang lors de sa thèse de doctorat en 1983 au département informatique de Stanford. C'est cet algorithme qui détermine à quels endroits un mot doit être correctement coupé entre deux lignes. L'implémentation utilisée dans TeX, le programme Patgen, utilise peu de place et son taux de réussite se trouve vers 90-95 % de chances de trouver une césure correcte. Son principe repose sur l'utilisation de dictionnaires et sur la reconnaissance de motifs dans les mots[15].
Metafont
Metafont est un logiciel également conçu par Knuth qui permet de créer des caractères et, par extension, des polices de caractères. Bien que Metafont ne fasse pas partie de TeX à proprement parler, il reste très lié à celui-ci. En effet, la police de caractère utilisée par TeX, Computer Modern, a été conçue à l'aide de Metafont.
Metafont utilise de nombreuses techniques pour tracer les lettres, comme les courbes de Bézier. Lors de sa conception, Knuth essayait de trouver une certaine logique entre lettres. Par exemple la lettre n prend exactement 2 fois la largeur de la lettre i, la lettre m prend 3 fois la largeur de la lettre i et la lettre u prend la même largeur que la lettre n[16].
Sous Metafont, les lettres sont créées à partir d'équations.
Utilisation
TeX est souvent utilisé dans les milieux académiques et scientifiques afin de produire des documents techniques, cela principalement dû à son rendu de formules et autres symboles.
Cependant, il a d'autres usages notamment dans le milieu professionnel. Il peut par exemple produire des cartes de visites, des lettres, des programmes de concert ou encore des livres (la motivation de départ de Knuth).
Il est possible d'utiliser TeX pour générer de manière complètement automatique la mise en page délicate de données XML. Ceci permet la conciliation des différences syntaxiques entre les deux langages descriptifs à l'aide de TeXML. On peut donc considérer TeX comme une alternative à XSL-FO dans le cadre de publication en XML.
Licence
Donald Knuth a répété plusieurs fois que le code source de TeX était dans le domaine public[17] et qu'il encourageait fortement les modifications de celui-ci. D'autre part, bien qu'il soit dans le domaine public, Knuth demande que, lorsqu'une modification de TeX est publiée, celle-ci porte une autre dénomination que TeX, pour permettre de la distinguer (exemple avec LaTeX ou ConTeXt).
Extensions
Le compilateur TeX a fait l'objet de quelques extensions (à ne pas confondre avec des formats comme LaTeX, ConTeXt), parmi lesquelles :
- pdfTeX : crée directement des fichiers au format Portable Document Format ;
- MlTeX : multi-lingual TeX ;
- TeX-XeT : supporte les écritures allant de droite à gauche ;
- VTeX : compilateur commercial de MicroPress ;
- Omega : pour traiter des documents multilingues ;
- epsilon-TeX : ajoute quelques primitives à TeX ;
- XeTeX : une version Unicode de TeX avec gestion de polices modernes ;
- LuaTeX : une version Unicode qui embarque un interpréteur pour le langage Lua ;
- XyMTeX (en) : une extension pour afficher des formules chimiques.
Communauté
Il existe de nombreux groupes d'utilisateurs de TeX/LaTeX de par le monde, qui sont généralement liés à une langue : GUTenberg (francophone), TUG (anglophone, signifie TeX Users Group), DANTE (germanophone), CervanTeX (hispanophone), GuIT (italophone), NTG (néerlandophone)…
Certains de ces groupes publient des journaux (les Cahiers GUTenberg, la Lettre GUTenberg, PracTeX, TUGboat…) et organisent aussi des conférences, parfois de façon conjointe (EuroTeX…).
Chasse aux bugs
Donald Knuth encourage quiconque à trouver des bugs et des erreurs de typographie dans le code source de TeX et dans le reste de son œuvre — logiciels ou livres. Jusqu'en 2008, il offrait même une récompense (en) financière. Celle-ci s’élevait à 2,56 $ (un « dollar hexadécimal »[18]) pour une erreur (coquille ou autre) dans un livre imprimé. Pour un bug logiciel, le montant augmentait avec l’âge : de 1,28 $ la première année d’existence du bug, il était ensuite doublé chaque année jusqu’à un plafond de 327,68 $ (soit 128 « dollars hexadécimaux », atteint après huit ans)[19].
Malgré le grand nombre de chèques envoyés et leur montant parfois élevé, très peu d’entre eux étaient encaissés[20], leurs destinataires préférant les encadrer[21].
Depuis 2008, Knuth n’envoie plus de chèques réels, leur préférant des certificats de dépôt de la banque de la nation imaginaire de San Serriffe[20], pour faire jeu de mots typographique avec une police sans serif, tout en évoquant un douteux paradis fiscal offshore ; l'adresse qu'il en donne poursuit le jeu.
Étymologie, prononciation et typographie du nom
Selon son auteur[22], le mot « TeX » a été créé à partir du grec ancien τέχνη / tékhnē (« art, habileté à faire quelque chose »[23], racine étymologique du mot « technique ») ; le logotype TEX serait en fait composé des lettres grecques tau, epsilon et chi sous leur forme capitale.
Selon les époques, cette dernière lettre s’est prononcée [k] (comme k dans « kayak » et ch dans « technique ») puis [ x] (comme ch dans l'allemand « Buch » et j dans l’espagnol « Juan Carlos »). Donald Knuth recommande la seconde prononciation, [tɛx]. Cependant, le son [ x] n’étant connu ni en français ni en anglais (hors mots d’emprunt), de nombreux utilisateurs emploient plutôt la première prononciation, [tɛk].
On entend aussi, particulièrement de la part des novices, la prononciation jugée erronée [tɛks], comme dans le mot « texte ».[réf. nécessaire]
Le nom du logiciel s’écrit avec un « X » majuscule qui rappelle la forme du logotype, « TEX ». Ce dernier évoque les possibilités de mise en forme offertes par TeX (en l’occurrence : formules mathématiques avec exposants, indices et lettres grecques).
Notes et références
- « https://www-cs-faculty.stanford.edu/~knuth/abcde.html »
- (en) Donald Knuth E., Digital Typography, p.5
« I had spent 15 years writing those books, but if they were going to look awful I didn't want to write any more »
- (en) « Interview of Donald Knuth - Deciding to make my own typesetting program » [vidéo], sur webofstories.com, (consulté le )
- (en) Donald E. Knuth, Computers & Typesetting, Volume E : Computer Modern Typefaces, Massachusetts, Addison-Wesley, , 483 p. (ISBN 0-201-13448-9), Introduction
- (en) « Interview de Donald Knuth - Working on my typesetting program » [vidéo], sur webofstories.com, (consulté le )
- (en) John E Mustain, « Aldine Collection », sur library.stanford.edu (consulté le )
- (en) Donald E. Knuth, TeX : The Program, vol. B, Addison-Wesley, (1re éd. 1986), 600 p. (ISBN 0-201-13437-3), p2
- (en) Donald Knuth, TAU EPSILON CHI, A System for Technical Text, Providence, R.I. : American Mathematical Society, (ISBN 0-8218-0209-7, lire en ligne)
- (en) Ignacio Zabala et Luis Trabb-Pardo, « The status of the Pascal implementation of TeX », TUGboat, vol. 1, no 1, (lire en ligne)
- Knuth and Plass, p. 144
- (en) Christina Thiele, « Knuth meets NTG members » [PDF], sur aanhet.net, (consulté le )
- (en) Donald E. Knuth, « The New Versions of TeX and METAFONT », sur TUGboat, (consulté le )
- (en) Donald E. Knuth. The future of TeX and METAFONT, NTG journal MAPS (1990), 489. Réimprimé comme chapitre 30 de Digital Typography, p. 571.
- (en) Notice du paquet tex, sur CTAN (consulté le ).
- (en) Donald E. Knuth, The TeXBook, vol. A, American Mathematical Society et Addison Wesley, , Appendix H - p449
- (en) « Mathematical formula for letter shape », Interview de Donald Knuth [vidéo], sur webofstories.com, (consulté le ).
- (en) Donald Knuth, « Computers and Typesettings » [PDF], sur TUGboat, 1995-1998 (consulté le )
- (en) Donald Knuth, « Frequently Asked Questions », sur son site personnel (consulté le )
- (en) « History of TeX », sur tug.org, (consulté le )
- (en) Donald Knuth, « Recent News — Financial Fiasco », sur son site personnel,
- (en) Kara Platoni, « Love at First Byte » [archive du ], sur stanfordalumni.org,
- (en) Donald E. Knuth, The TeXbook, Ch. 1: The Name of the Game, p. 1
- Anatole Bailly ; 2020 : Hugo Chávez, Gérard Gréco, André Charbonnet, Mark De Wilde, Bernard Maréchal & contributeurs, « Le Bailly », (consulté le ).
Voir aussi
Articles connexes
- GUTenberg, groupe francophone des utilisateurs de TeX
- Comprehensive TeX Archive Network
- MiKTeX
- Une liste partielle des Groupes d'utilisateurs de TeX
- LaTeX, un jeu de macros de TeX.
- ConTeXt, un autre jeu de macros TeX
- TeXML
- Metafont, le logiciel compagnon de TeX destiné à créer et gérer les polices de caractères
- Computer Modern, la famille de police utilisée par défaut dans TeX, LaTeX, etc.
Bibliographie
- Donald Knuth (trad. Jean-Côme Charpentier), Le TeXbook : composition informatique, Vuibert, 2003, 555 p. (ISBN 978-2-7117-4819-8).
- (en)Donald Knuth (original), The TeXbook, Vol. A. : Computers & Typesetting, Addison-Wesley, 1984 (première édition), 483 p. (ISBN 0-201-13448-9).
- (en)Donald Knuth, TeX: The Program, Vol. B. : Computers & Typesetting, Addison-Wesley Professional, 1986, 624 p. (ISBN 978-0-201-13437-7). Cet ouvrage contient le source du compilateur TeX en Pascal, en utilisant les techniques de programmation lettrée.
Liens externes
- Le site de l'association GUTenberg (Groupe francophone des Utilisateurs de TeX) http://www.gutenberg.eu.org
- Le site des archives des packages pour TeX, Comprehensive TeX Archive Network (CTAN) : http://www.ctan.org/
- Une photocopie de la thèse de doctorat de Frank Liang sur la césure disponible au téléchargement : http://www.tug.org/docs/liang/
- La liste de dictionnaires de motifs classés par langue : https://www.tug.org/tex-hyphen/