Avant de commencer à produire des documents avec LaTeX, faisons un petit tour d’horizon sur les traitements de texte, leur fonctionnement et sur LaTeX.
Qu'est-ce qu'un traitement de texte
Préparation à la mise en page
Comme leur nom l’indique, les logiciels de traitement de texte traitent du texte afin de les préparer à la mise en page. Pour ce faire, le logiciel a besoin que l’on ait donné une signification aux mots du texte, qu’il y ait une sémantique. La sémantique est ce qui fait qu’un ou plusieurs mots ou des paragraphes ne sont plus seulement des mots, mais représentent quelque chose, par exemple un titre, une mise en évidence (emphase), du code source. La sémantique est ensuite traduite visuellement.
Ainsi, un traitement de texte n’est pas fait pour écrire du texte. C’est bien entendu possible, mais fortement déconseillé. C’est le rôle de l’éditeur qui, s’il est bien configuré, est très agréable à utiliser pour saisir du texte. Il faut donc le choisir avec soin. Cette séparation du fond et de la forme est moins un obstacle qu’un avantage. Saisir son texte séparément permet de se concentrer sur son contenu, sa sémantique, et pas sur sa forme.
Malheureusement, les traitements de texte graphiques (basés sur un langage de balisage) sont moins adaptés à cette séparation. Par exemple, avec Word, il est plutôt difficile d’identifier les mots importants dans un texte pour pouvoir décider de tous les mettre en gras ou en couleur par la suite. Il nous faudra tous les mettre en gras à la main, ce qui peut être extrêmement fastidieux.
Format de fichier
Pour enregistrer le travail effectué, on utilise des fichiers. Chaque traitement de texte ou presque utilise un format spécifique. On peut néanmoins les classer en deux grandes catégories : les formats dits simples, qui sont lisibles (ce qui ne veut pas dire compréhensibles) et éditables avec un éditeur de texte, et les formats dits complexes qui ne peuvent être lus que par le logiciel de traitement de texte.
Les formats simples
On utilise principalement deux formats : XML et ses dérivés (par exemple HTML) et le texte brut (qui comprend les langages de balisage légers et le langage LaTeX). XML est très lourd à éditer à la main (mais très facilement compréhensible pour un logiciel) alors que c’est l’inverse pour le texte brut.
Les formats simples sont surtout utilisés par les traitements de textes à balisage et ceux dits WYSIWYM, qui sont des logiciels graphiques faisant apparaître la sémantique.
Les formats simples sont pérennes, le texte brut ne dépendant de rien d’autre que son encodage (manière d’enregistrer les caractères) qui, s’il est bien choisi, sera lisible partout.
Le traitement automatisé d’un fichier simple est aisé par rapport aux fichiers complexes.
Les formats complexes
Surtout utilisés par les logiciels WYSIWYG comme Word et LibreOffice et aussi par les WYSIWYM, ils contiennent toutes les informations liées au document : le texte, bien sûr, mais aussi les éventuelles images ainsi que la mise en page.
Non ouvrables avec un éditeur de texte, ces formats ne sont pas pérennes pour peu qu’ils ne soient pas libres (c’est-à-dire que leurs spécifications sont accessibles pour tous).
Le traitement automatisé de tels formats est difficile.
Différents types de traitements de texte
Il y a trois grandes familles de logiciels de traitement de texte : les WYSIWYG, les WYSIWYM et ceux basés sur un balisage du texte. Tous ont leurs qualités et leurs défauts.
Traitements de textes WYSIWYG
Les traitements de textes de type WYSIWYG sont les plus courants. Ce sont généralement des logiciels complets, par exemple Word ou LibreOffice Writer. L’éditeur de texte, la mise en page et les correcteurs sont étroitement liés.
Ces logiciels s’utilisent visuellement, c’est-à-dire que le résultat final est visible à l’écran. Il existe donc une tentation de faire la mise en page en même temps que la saisie, ce qui est une perte de temps et génère des erreurs. Ainsi, le fond et la forme sont liés, d’autant que la sémantique est invisible (il faut connaître l’aspect que donne le logiciel aux éléments sémantiques et distinguer ce qui est réellement un élément sémantique d’une « reproduction »).
Il y a une différence fondamentale d’utilisation de ce type de logiciels suivant le secteur d’activité. Ainsi, le grand public s’en sert pour saisir le texte, créer la sémantique (ce qui n’est pas systématique, par ignorance) et mettre en page le texte. Un traitement de textes n’étant pas spécialisé dans la mise en page, il en résulte un document au mieux médiocre. Le monde de l’édition utilise des logiciels de mise en page spécifiques (par exemple Adobe InDesign, QuarkXpress et Scribus) qui, s’ils peuvent là aussi être utilisés comme traitements de textes (ce qui est ardu), ne sont utilisés que pour la mise en page. Le texte est sémantisé avec un logiciel de traitement de texte puis importé.
La manière correcte d’utiliser un traitement de texte graphique est de séparer les tâches. On saisira d’abord le texte, puis on appliquera la sémantique, et alors seulement on mettra en page.
Traitements de textes WYSIWYM
Ces logiciels sont rares. Ils sont là-aussi complets, comme LyX. Contrairement aux précédents, les traitements de textes WYSIWYM, on ne visualise pas le rendu final, mais la sémantique du document. La mise en page est générée automatiquement une fois l’aspect des différents éléments défini.
Traitements de textes à balisage
Terminons par les traitements de textes utilisant un langage de balisage. Ce ne sont pas des logiciels complets comme les WYSIWYG et les WYSIWYM. L’éditeur de texte est à choisir soi-même, et il est conseillé de pouvoir colorer le texte en mettant en évidence la syntaxe du langage (ceci n’est qu’une aide visuelle qui n’existe que dans l’éditeur : les fichiers seront toujours bruts). La mise en page est générée automatiquement en prenant en compte les réglages de l’utilisateur. Utiliser un correcteur nécessite d’en trouver un indépendant de tout logiciel.
Pour faire apparaître la sémantique, on utilise des balises. Voici un exemple d’emphase en HTML :
Ceci est du texte normal. <em>Cette phrase est mise en évidence.</em>
<em>
signifie « début de l’emphase » et </em>
« fin de l’emphase ».
On ne s’occupe plus du rendu de cette mise en évidence (qui peut devenir de l’italique, du gras ou tout autre chose). C’est le mécanisme utilisé par tous les traitements de textes en interne. Lorsqu’on sélectionne une portion de texte et qu’on y applique un style, le logiciel insère des balises autour du texte sélectionné.
Comme on travaille sur du texte brut, on peut ajouter la sémantique au fur-et-à-mesure de la saisie, mais il est préférable d’avoir rédigé le document en entier au brouillon.
Il existe un certain nombre de langages de balisage. Ils ont chacun une utilisation propre. Il y a ainsi les langages lourds, basés sur XML (comme le HTML), fastidieux à utiliser à la main et presque jamais utilisés pour le traitement de textes. Les langages légers comme Markdown et Textile sont faits pour être utilisés à la volée. Très peu verbeux, ils sont discrets et peuvent presque être lus directement. À titre d’exemple, voici une emphase en Markdown :
Ceci est *très* important.
Cet exemple se passe de commentaires. Ces langages quasi-naturels sont utilisés pour rédiger. On utilise ensuite souvent des convertisseurs vers, par exemple, HTML ou LaTeX.
Les langages intermédiaires sont plus verbeux que Markdown ou Textile, mais plus digestes que les dérivés de XML. LaTeX est un langage intermédiaire, comme Lout (qui lui ressemble beaucoup).
Présentation de LaTeX
Histoire
Dans les années 70, un informaticien du nom de Donald Knuth trouvait que les logiciels à sa disposition pour écrire du texte avec des formules mathématiques n’étaient pas assez bons. Il décide alors (avec l’aide d’autres personnes) d’écrire le sien, qui sortira en 1978 sous le nom de TeX. Le but était de fournir un outil simple à utiliser pour composer des textes d’une grande qualité typographique. TeX comporte environ 300 commandes. On les appelle des primitives.
Voyant que certaines fonctions étaient compliquées à utiliser, Donal Knuth complète TeX en créant des commandes pour faciliter son utilisation. Le langage ainsi obtenu (combinaison de TeX et de commandes) est appelé un format. Il s’agit du format Plain TeX.
Malgré cela, le format Plain TeX reste compliqué et les utilisateurs ont commencé à écrire des extensions pour simplifier la composition des textes et éviter de tout réécrire depuis zéro. Au début des années 80, Leslie Lamport fusionne un grand nombre d’extensions afin d’obtenir un langage de plus haut niveau : LaTeX. On utilise maintenant la deuxième version de LaTeX, LaTeX2e, sortie en 1994. LaTeX3 est en développement depuis le début des années 90.
Il ne faut pas confondre TeX, le langage, et le moteur, tex, qui est le programme chargé de transformer le code en document.
Anecdotes
- TeX, en tant que création de Donald Knuth, a la réputation d’être parfait. Il est même dit que le dernier bogue aurait été corrigé le 27 novembre 1985.
- Le numéro de version de TeX tend vers π. Sa dernière version, sortie en 2008, est la 3.1415926.
- Le « X » de LaTeX est en fait un chi grec et se prononce donc comme un K.
- On désigne les utilisateurs de LaTeX sous le nom de TeXniciens (soit « techniciens »).
LaTeX
LaTeX est, comme nous l’avons dit, un ensemble de commandes destinées à faciliter l’utilisation de TeX. En gros, ce n’est qu’un sur-ensemble de TeX. Ainsi, le mode mathématique de LaTeX est celui de TeX. De même, la manière dont nous écrivons des paragraphes est héritée de TeX et ainsi de suite. Il ne faut pas oublier cela.
Tout comme TeX et tex, il ne faut pas confondre LaTeX et latex. En fait, latex est le programme chargé de transformer le code, et le format, LaTeX, qui est l’ensemble de commandes exécutées par le moteur. Nous écrivons notre code en LaTeX et le transformons grâce à latex.
Des outils divers
Pour utiliser LaTeX, il nous faut alors juste le moteur. Avec lui, nous pouvons transformer notre code en document. Cependant, nous pouvons nous équiper de nombreux autres logiciels. Conformément à la philosophie UNIX (« un programme fait une tâche et la fait bien »), latex se contente de la composition du document et les autres logiciels viennent le compléter. À ce titre, il y a des logiciels de gestion de bibliographie, ou encore de gestion d’index. Heureusement, il est généralement inutile de manipuler directement tous ces programmes, mais seulement une interface simple, mais faut-il encore savoir laquelle.
Plusieurs moteurs
Le moteur de TeX ne pouvait produire que des fichiers au format DVI
et ne fonctionnait bien évidemment que pour TeX.
Le moteur actuel de LaTeX est PdfTeX qui permet de générer des fichiers au format PDF
. Cependant, plusieurs autres moteurs sont ensuite apparus. Après PdfTeX, il y a eu XeTeX pour utiliser des polices True Type ou Open Type, c’est-à-dire celles utilisables directement par le système d’exploitation et ses logiciels) qui ne peut générer que des fichiers PDF
. Enfin, il y a eu LuaTeX, basé sur le langage Lua, qui permet de réellement programmer à l’intérieur du document pour toujours plus de contrôle sur celui-ci. Il n’est pas encore finalisé à ce jour, mais est utilisable. LuaTeX est destiné à devenir le successeur de PdfTeX.
Un moteur peut avoir une commande pour créer un document PDF
et une autre pour créer un document DVI. Cela donne lieu à plusieurs commandes pour créer un fichier. Voici un tableau récapitulant les compatibilités.
Format | TeX | PdfTeX | XeTeX | LuaTeX | |
---|---|---|---|---|---|
Plain TeX | Sortie PDF | Oui | Oui | Oui | Oui |
Sortie DVI | Non | Oui | Non | Oui | |
LaTeX | Sortie PDF | Non | Oui | Oui | Oui |
Sortie DVI | Non | Oui | Non | Oui |
Dans ce tutoriel, nous utiliserons le moteur PdfTeX et le format LaTeX. Passer à d’autres moteurs n’est pas très compliqué.
Des distributions
Toujours dans l’esprit UNIX, il n’existe pas une seule version de LaTeX (en tant que suite logicielle), il faut donc, là encore, choisir une distribution. Les distributions LaTeX sont identiques en pratique et contiennent tous les logiciels sus-mentionnés, bien que certaines disposent d’une interface simple pour installer des extensions. Les distributions les plus connues sont TeX Live, multiplateforme, MikTeX, pour Windows, et MacTeX pour OS X.
TeX Live étant disponible pour tous les systèmes d’exploitation, elle sera utilisée dans ce cours.
LaTeX est peu, voire pas du tout connu du grand public, ce qui a tendance à restreindre son utilisation à son domaine d’origine, c’est-à-dire les sciences.
Qui utilise LaTeX et pourquoi ?
Les mathématiciens et les informaticiens sont ceux qui utilisent le plus LaTeX (Donald Knuth étant informaticien). La physique compte beaucoup moins d’utilisateurs de LaTeX, mais les articles de recherche sont très souvent composés avec ce système, au moins par l’éditeur.
Très peu de particuliers et d’éditeurs utilisent LaTeX pour des documents non scientifiques. Les amateurs de typographie, lorsqu’ils ne peuvent s’offrir Adobe InDesign ou QuarkXPress, se tournent vers LaTeX. Les programmeurs amateurs, les geeks, aiment bien l’utiliser car il correspond à leur utilisation de l’ordinateur.
Avantages de LaTeX
Gagner du temps et se concentrer sur l’essentiel
LaTeX, en séparant la forme du contenu, nous permet de nous concentrer exclusivement sur ce dernier, sans se prendre la tête et nous permet ainsi de gagner du temps lors de la rédaction.
L’intégration des mathématiques
LaTeX est principalement utilisé par la communauté scientifique, et ce n’est pas par hasard : en effet, l’introduction de formules mathématiques dans le texte est une des forces de LaTeX puisqu’il permet de le faire à l’aide des commandes dont nous avons déjà parlé (écrire a \in b
permettra par exemple d’obtenir ).
La stabilité
Comme dit plus haut, LaTeX et son ancêtre TeX sont réputés pour leur grande stabilité face aux bugs.
La gratuité
LaTeX est également complètement gratuit et libre, ce qui en fait une excellente alternative gratuite aux autres traitements de texte, qui donne un rendu très professionnel.
L’inconvénient de LaTeX
Cependant, toute médaille a son revers, et celui de LaTeX est sa complexité. En effet, il est difficile pour un non-initié de l’utiliser, sans un apprentissage long et fastidieux. Mais le jeu en vaut la chandelle !
Maintenant que nous en savons un peu plus, nous pouvons commencer. Dans le prochain chapitre, nous installerons LaTeX.