TeX, LaTeX & ConTeXt
qu'est-ce ? & comment ça marche ?
onald Knuth est un mathématicien et informaticien américain, professeur émérite à l'université Stanford. Il est l'auteur d'une bible de la programmation intitulée The Art of Computer Programming (TAOCP). Cet ouvrage de plusieurs volumes et de plusieurs millier de pages est toujours en rédaction, le dernier volume le n°4a est paru en 2011. Donald Knuth a prévu 7 volumes, une véritable somme.
e premier volume paru en 1965, a été publié à l'ancienne avec des caractères en plomb. Quand en 1976 Donald
Knuth décide de publier la seconde édition du volume 2 de TAOCP, les caractères en plomb ont été abandonné au profit de la photocomposition. Donald
Knuth trouve la qualité d'impression de ces machines, médiocre (notamment pour l'écriture des formules mathématiques) et décide de créer deux logiciels pour pouvoir produire ses publications avec une qualité typographique professionnelle. Le premier
TeX sert à la composition de documents, le second
METAFONT à produire des polices vectorielles. Donald
Knuth va mettre plusieurs années avant de sortir en 1983 la version définitive de Tex qui utilise la police Computer Modern qu'il a créé à l'aide de
METAFONT. En effet Donald
Knuth s'était fixé comme but d’arriver à un produit qui devrait être parfait et qui devrait le rester au cours du temps. C'est cette version qui est toujours utilisée et qui fonctionne depuis 30 ans. Donald
Knuth est quand même intervenu sur
TeX à plusieurs reprise, notamment en 1989 pour l'adapter aux caractères nécessaires pour la composition de texte avec d'autres langues que l'anglais (version 2.991). La version actuel de
TeX est la 3.141592653 (janvier 2021).
'autre trait de génie de Donald
Knuth est de confier
TeX à l'American Mathematical Society et d'en faire un logiciel libre. À partir de là d'autres informaticiens vont s'emparer de
TeX pour l'adapter (sortie de document au format pdf, utilisation de format d'image inconnue en 1983, adaptation à d'autres langues que l'anglais, ...) et l'enrichir (module permettant la création de formule chimique, de partition musicale, de diagrammes électrique ou physique,...).
TeX, mais qu'est-ce donc ?
eX est un système de composition de documents. C'est à la foi un langage informatique et un logiciel. Dans un premier temps tu écris ton texte dans lequel tu insères des commandes TeX (qui commencent par un antislash \) qui indiquent des actions typographiques (mettre en gras, sauter une ligne, commencer un nouveau chapitre, … ). Une foi ceci fait il faut à l'aide du logiciel TeX, compiler ton document, c'est à dire exécuter toutes les commandes pour fabriquer ton texte comme souhaité et obtenir le document à imprimer. Les algorithmes utilisé par TeX sont complexe car contrairement à un traitement de texte Wysiwyg, TeX va parcourir tout le texte, pour savoir comment couper les mots et les phrases, où insérer les images, … et il va appliquer des règles typographiques très strictes, afin de fabriquer un document le plus parfait sur la forme. Pour le fond malheureusement TeX est impuissant et il te faudra te débrouiller tout seul.
TeX contient environ 300 commandes de base, dites primitives. Voici comment s'écrit, à l'aide de primitives, le logo de TeX avec le E décalé vers le bas :
T\kern -.1667em\lower .5ex\hbox {E}\kern -.125emX
omme tu peux le voir ces primitives ne sont pas faciles à utiliser. Donald
Knuth les a donc complétées avec environ 600 macros. Une macro est un terme informatique qui désigne un regroupement d'instruction afin d'obtenir une action. Le langage ainsi obtenu constitue ce qu'on appelle un format, et se nomme Plain
TeX. La macro Plain
TeX pour écrire
TeX est
\TeX, tout simplement, elle remplace les commandes ci-dessus.
Et LATeX fût.
n 1982 Leslie Lamport un chercheur en informatique américain écrit LATeX (Lamport TeX) un nouveau jeu de macros beaucoup plus simple à utiliser que Plain TeX. C'est un succès et pratiquement plus personne n'utilise Plain TeX. L'apparition des packages qui permettent facilement d'augmenter les fonctionalités ont rendu LATeX incontournable. La version actuelle de LaTeX est la LATeX2ε qui date de 1994, elle est maintenue par le LATeX3 Project team qui nous prépare la version 3 de LATeX depuis 20 ans !
À la fin des année 90, Hàn Thế Thành crée le moteur pdftex qui permet de sortir les documents au format pdf plus convivial que le format d'origine de TeX le dvi. La dernière version la 1.40.17 date de 2016, pdftex n'est plus développé seuls des corrections de bug y sont apporté.
En 2008 création du moteur XeTeX qui permet d'utiliser les polices installées sur l'ordinateur et de ne pas ce limiter à celles de TeX.
réation du moteur lua
TeX qui complète Xe
TeX et l'ouvre au langage de programation Lua ce qui permet d'étendre les possibilités de
TeX, notament d'intégrer dans les macros des morceaux de code Lua. Lua
TeX est développé par Taco
Hoekwater, Hartmut
Henkel, Hans
Hagen. Con
TeXt créé par Hans
Hagen est un ensemble de macros (comme Plain
TeX ou LaTeX) qui utilise le moteur Lua
TeX.