TeX

Page d'aide sur l'homonymie Pour les articles homonymes, voir Tex.
TeX
Logo

Image illustrative de l'article TeX

Développeur Donald Knuth Voir et modifier les données sur Wikidata
Première version Voir et modifier les données sur Wikidata
Dernière version 3.14159265 () [1] Voir et modifier les données sur Wikidata
Écrit en WEB et Pascal Voir et modifier les données sur Wikidata
Environnement multiplate-forme
Type Logiciel de composition ( d)
Langage de programmation
Langage de balisage Voir et modifier les données sur Wikidata
Licence Licence publique générale GNU Voir et modifier les données sur Wikidata
Site web http://www.tug.org/

TeX prononciation ou TeX est un système logiciel libre de composition de documents, indépendant du matériel utilisé pour la visualisation ou l'impression. TeX fut 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...). TeX vient de τεχ, début du mot τέχνη (« art, science », en grec ancien), et se prononce / tɛx/ [2] ou / tɛk/, au choix.

Origine et historique

Lorsque le premier volume de The Art of Computer Programming fut publié en 1968, le premier livre de Donald Knuth, celui-ci était encore 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 réimprimé 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 [3]. 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 [4].

Knuth prévoyait initialement de le terminer en 6 mois pour la fin de son année sabbatique. Il prendra presque 10 ans au final, soit de 1977 à 1989. Bien qu'il fut seul à le développer, il reçut cependant de l'aide de nombreux collaborateurs dont Hermann Zapf, Chuck Bigelow, Kris Holmes, Matthew Carter ou encore Richard Southall [5].

Décidant d'aller travailler dans les locaux de Stanford au lieu des laboratoires Xerox de Palo Alto [6], 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 la collection Gunst [Quoi ?], il se mit en tête de retranscrire les anciens caractères dans son programme en utilisant des formules mathématiques, en tentant 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 fut conçu pendant l'été 1977 par 2 étudiants [Quoi ?], MIchael F. Plass et Frank M. Liang, d'après les spécifications de Knuth. Il ne contenait initialement que quelques définitions de macro et d'opérations élémentaires sur les boites [7].

La première version de TeX fut achevée en 1978 par Knuth sur base du prototype. Il était alors implémenté en langage SAIL. Le premier manuel utilisateur de TeX est écrit lors de l'été par Knuth.

Au début de 1979, Trabb Pardo et Knuth commencent à planifier une conversion du SAIL au WEB. Cela se traduira par une conversion complète entre 1979 et 1980 faite par Ignacio A. Zabala [Qui ?]. Parallèlement, Knuth sortit la première version de Metafont en 1979.

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  (en) original fut remplacé par un nouvel algorithme écrit par Frank Liang en 1983. TeX82 utilise une représentation à virgule fixe à la place de virgule flottante pour renforcer la portabilité sur plusieurs hardwares [8]. Elle inclut également un véritable langage de programmation certifié Turing-complet suivant les pressions de Guy Steele [Qui ?] [9].

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 des caractères spéciaux, mais nettement insuffisant pour les 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 rend utilisable pour une bonne partie des langues d'Europe occidentale [10]. Il introduisit également dans TeX la capacité à faire la césure dans d'autres langages que l'anglais, basée sur plusieurs idées de Michael J. Ferguson. TeX passa alors dans sa version stable 3.0.

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

Other Languages
العربية: تخ (برمجية)
беларуская: TeX
български: TeX
বাংলা: টেক্স
bosanski: TeX
català: TeX
čeština: TeX
dansk: TeX
Deutsch: TeX
English: TeX
Esperanto: TeX
español: TeX
eesti: TeX
euskara: TeX
suomi: TeX
Gaeilge: TeX
galego: TeX
magyar: TeX
Հայերեն: TeX
Bahasa Indonesia: TeX
italiano: TeX
日本語: TeX
한국어: TeX
lietuvių: TeX
മലയാളം: ടെക്ക്
Nederlands: TeX
norsk: TeX
occitan: TeX
polski: TeX
português: TeX
română: TeX
русский: TeX
slovenčina: TeX
slovenščina: TeX
српски / srpski: TeX
svenska: Tex
українська: TeX
اردو: TeX
vèneto: TeX
Tiếng Việt: TeX
中文: TeX