TeX

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir Tex.
TeX
Image illustrative de l'article TeX
Logo

Développeur Donald Knuth
Dernière version 3.14159265 (janvier 2014)
Environnement multiplate-forme
Type mise en page
Licence modifiable librement, du moment que le nouveau programme ne s'appelle pas TeX
Site web http://www.tug.org/

TeXprononciation est un système logiciel de composition de documents, largement utilisé par les scientifiques, particulièrement en mathématiques, physique, bio-informatique, astronomie et informatique. TeX vient de τεχ, début du mot τέχνη (« art, science », en grec ancien), et se prononce /tɛx/[1] ou /tɛk/, au choix.

Origine et historique[modifier | modifier le code]

TeX a été créé à partir de 1977 par le mathématicien et informaticien Donald Knuth, excédé par la piètre qualité de la typographie de l'époque, lorsqu'il était en train de préparer la deuxième édition de The Art of Computer Programming.

À partir de la version 3, TeX a utilisé 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 \pi[2]. La version actuelle de TeX est la 3.14159265, la dernière mise à jour datant du 12 janvier 2014[3]. 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[2].

Fonctionnement[modifier | modifier le code]

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 intuitif (WYSIWYG) 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 donc en entrée un document écrit en mode texte, contenant des commandes (dont la plupart commencent par un antislash « \ ») et crée un fichier au format dvi contenant une description des pages de textes, c'est-à-dire les positions des caractères sur la page. Les commandes TeX servent par exemple à choisir les polices à utiliser, ajouter des espaces... Certains des algorithmes utilisés par TeX sont assez complexes (il lit par exemple un paragraphe en entier pour décider où couper les lignes...).

Les commandes reconnues par le compilateur TeX sont divisées en « primitives » (on en compte environ 300), et « macros », créées à partir des précédentes. Les macros rendent possibles des structures assez complexes (boucles, conditions...) 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 caractères eux-mêmes sont créés avec Metafont.

Utilisation[modifier | modifier le code]

Depuis peu[Quand ?], 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.

Extensions[modifier | modifier le code]

Le compilateur TeX a fait l'objet de quelques extensions (à ne pas confondre avec des formats comme LaTeX, ConTeXt), dont en voici quelques-unes :

Communauté[modifier | modifier le code]

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…).

Références[modifier | modifier le code]

  1. (en) Donald E. Knuth, The TeXbook, Ch. 1: The Name of the Game, p. 1
  2. a et b (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.
  3. (en) « En-tête du code source de TeX », donnant la liste des mises à jour.

Voir aussi[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Bibliographie[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Sur les autres projets Wikimedia :