Je viens de « me mettre » à
LaTeX, traitement de texte qui est en fait plutôt un outil de composition
typographique. Il me semble utile de noter les épisodes de cette petite
aventure.
Lorsque l’on s’apprivoise à un
nouveau logiciel, on traverse en effet des étapes que l’on oubliera bientôt,
comme si l’on était passé d’un bond de l’ignorance totale à l’utilisation pratique.
Or ce n’est pas le cas. Ces étapes ressemblent à l’apprentissage d’un morceau de
piano : déchiffrer la partition, jouer lentement mains séparées, mettre
lentement les mains ensemble, respecter accents, liaisons et notes piquées,
noter les doigtés, isoler et travailler à part les passages difficiles,
accélérer jusqu’à ce que l’on ait atteint (mais jamais dépassé) le tempo
giusto, introduire les nuances du toucher et du rubato… La qualité de
l’interprétation supposera aussi que l’on connaisse bien le compositeur, son
époque, et la façon dont les maîtres l’ont interprété.
Lors d’un tel apprentissage, on
est souvent un peu ridicule. On commet des erreurs par étourderie, précipitation
et présomption. On peste contre soi-même, l’ordinateur, les rédacteurs de la
notice, les programmeurs qui ont mis tant de choses saugrenues dans ce truc
incroyable.
* *
J’ai rencontré LaTeX en 1988 au
CNET (acronyme que Word s’obstine à corriger en CENT). Dominique Henriet s’y
apprivoisait pour composer ses publications. J’avais alors bien du mal à
maîtriser Textor, mon premier traitement de texte. LaTeX me passait largement
au-dessus de la tête.
Par la suite je me suis mis à
Word, qui règne sur le monde aimable mais imparfait du Wysiwyg. Aimable parce que
commode ; imparfait parce qu’il joue des tours, comme de corriger CNET,
d’imposer des sauts de page ou de signaler comme fautive une construction
usuelle de la syntaxe française. Le plus drôle, c’est l’insertion d’un
graphique : souvent celui-ci se colle dans un endroit où il n’a rien à faire,
puis résiste au drag and drop en glissant comme une savonnette
mouillée.
J’aime les « guillemets » à la
française que je trouve clairs et beaux. But if I write in
English, Word will use ugly “quotation marks”. Und auf
Deutsch werden noch andere „Anführungszeichen“ erscheinen. Tout ça
automatiquement, et sans qu’on ne demande rien à Word !
C’est que la facilité de son
utilisation est trompeuse. Dans un grand logiciel se condense une des
ingénieries les plus complexes que l’humanité ait jamais inventées. Les
programmeurs font leur possible pour la masquer afin de faciliter la vie de
l’utilisateur, tout en respectant les contraintes physiques de l’automate
(performance, taille mémoire etc.) Cela les contraint à des compromis qui
donnent au logiciel un comportement parfois contrariant. Il se peut aussi qu’ils
n’aient pas une idée exacte de ce dont l’utilisateur a besoin, ni de ce qui sera
simple pour lui.
Il faut dire que le singulier
du mot « utilisateur » est lui aussi trompeur : il recouvre des personnes diverses par
leur savoir, leur expérience et leur forme d’intuition. Les besoins de l’un ne
sont pas les besoins de l’autre, ce qui est simple pour l’un ne l’est pas pour
l’autre. Satisfaire tout le monde avec un seul produit est une gageure. Il n’est
pas étonnant que les programmeurs n'y réussissent pas souvent.
* *
Ainsi nos traitements de texte
sont commodes, mais capricieux. Pour composer des textes ayant la
qualité typographique d’un livre ou d’un article il faut ouvrir le capot et
devenir un tant soit peu programmeur.
Cela exige de quitter le mol
oreiller du Wysiwyg pour entrer dans le monde austère de l’« Invite de
commandes » que l’on ouvre, sous Windows, en passant par « Démarrer », « Tous
les programmes » et « Accessoires ». En guise d’ergonomie elle présente ces mots
sévères écrits en blanc sur un fond noir :
Microsoft Windows XP [version 5.1.2600]
<C> Copyright 1985-2001 Microsoft Corp.
C:\>
Cet écran était familier dans
les années 80, du temps de MS-DOS. Windows le cache aujourd’hui sous l’ergonomie
flatteuse qu’il a imitée du Macintosh, qui l’avait lui-même imitée de l’Alto du
PARC. Mais il est toujours là, cet écran,
c’est par lui qu’il faut passer pour soulever le capot.
Il ne s’agit pas de le soulever
complètement, d’aller jusqu’au langage machine : seuls les concepteurs
d’un ordinateur font cela. Il s’agit d’entrer dans un traitement de texte qui
fonctionne en mode « run-off » : on tapera quelque chose qui mélange le
texte au code qui permet de le composer. L’affichage ne ressemble donc pas à ce qui
sera imprimé et qui n’apparaîtra qu’après passage par un compilateur, puis par un
afficheur.
* *
Parlons un peu de LaTeX (il
convient de prononcer latek, la dernière lettre n’étant pas notre X mais le
« chi » grec qui s’écrit X et se prononce K).
Donald Knuth a en 1979 mis au
point TeX,
logiciel de composition typographique. LaTeX a été créé en 1983 par Leslie
Lamport, de DEC : c’est une version de TeX facile à utiliser (« facile », façon
de parler).
Knuth en avait assez de voir
ses textes mal imprimés. Il a consacré plusieurs années à TeX (voir
Digital Typography). TeX associe à chaque caractère et à chaque
intervalle une boîte aux dimensions précises, et il effectue les calculs
nécessaires pour que les boîtes se combinent harmonieusement sur la page. Il
permet ainsi de composer un texte de mathématiques (sous Word, composer une
intégrale ou une racine carrée donne un résultat hideux). Knuth a pris le temps
de dessiner les caractères qui lui plaisaient le mieux. Lorsqu’on regarde une
page d’un de ses livres on est frappé par la qualité de la présentation.
Étant moi aussi amateur de
belle typographie, j’ai apprécié la démarche de Knuth et compris les principes
qui fondent TeX. Mais comprendre le principe d’un outil et savoir l’utiliser
sont deux choses différentes : on peut connaître les principes de la mécanique
sans savoir conduire une automobile, et certains des conducteurs qui « sentent »
parfaitement leur voiture ne comprennent rien à la mécanique.
* *
Pour utiliser un outil, il faut
d’abord le charger sur son ordinateur. Pour charger LaTeX, je suis allé sur
Google où j’ai trouvé un site danois
qui indique la liste des logiciels à posséder. Ils appartiennent au monde du
logiciel ouvert, ils sont gratuits : leurs auteurs méritent et la gloire, et
notre reconnaissance.
J'ai tout téléchargé et
installé avec précipitation, ce qui m’a pris une matinée, sans avoir aperçu la
page qui donnait les consignes d’installation.
Honte à moi ! Peut-être certaines des difficultés rencontrées ensuite viennent
de là.
Ensuite il fallait ouvrir
LaTeX. Ayant survolé des pages Web sans les lire vraiment, j’ignorais que parmi
les programmes téléchargés se trouvait une interface nommée MiKTeX. En fouillant
Google j’ai fini par l’apprendre.
J’ai donc ouvert MiKTeX (qui
sur mon bureau s’appelait WinEdt). S’est affichée une
fenêtre vide entourée d’une éruption de boutons et ourlée de menus déroulants,
le tout incompréhensible pour un bizut. L’un des menus se nomme « Help ». A
l’aide ! Alors s’est ouverte la notice. Ah, la notice… qu’elle soit rédigée en
anglais, c’est là son moindre défaut. J’étais coincé.
* *
Arrivé à ce point, la meilleure
solution est de consulter un collègue plus avancé. Si vous travaillez dans une
entreprise et si vos collègues sont serviables, pas de problème. Mais si vous
êtes comme moi un solitaire qui vit à la campagne, c’est impossible. L’interface
homme-machine est comme un coffre-fort : si vous ne connaissez pas la façon de
l’ouvrir, ou si vous n’êtes pas outillé comme un cambrioleur, rien à faire. Il
suffirait de cliquer ici, puis là et encore là, et ça marcherait : mais vous ne
savez pas où cliquer, et sur une interface à laquelle on ne connaît rien la
combinatoire des clics possibles est pratiquement infinie.
Sans doute, l’expérience permet
de la réduire. A force de passer d’une interface à l’autre on finit par
entrevoir comment les programmeurs s’y prennent et cela permet d’éviter quelques
impasses. Mais on ne les évite pas toutes. J’ai honte d’avouer que parfois je
clique un peu au hasard. Je me sens comme un gamin que l’on aurait mis aux
commandes d’un avion de ligne : gare à la casse !
* *
Il fallait en sortir. J’ai pris
rendez-vous avec Laurent Bloch, informaticien expert,
à l'occasion d'un voyage à Paris. Laurent écrit ses livres en LaTeX, cela
facilite la vie et soulage la bourse de ses éditeurs. Nous avons passé ensemble
une après-midi pendant laquelle il m’a initié au B A BA.
Apprendre LaTeX lui a pris,
m’a-t-il dit, un mi-temps pendant trois mois. Ce qu’il appelle « apprendre »,
certes, c’est assez complet ; il a sans doute ouvert le code source pour le lire
au moins en partie, je n’en ferai pas autant. Mais il m’a réconforté : s’il
faut trois mois à un bon informaticien pour s’en sortir je peux me pardonner
d’avoir piétiné pendant quelques matinées.
Laurent travaille sous Linux,
auquel je n’ai pas encore réussi à m’apprivoiser : j’utilise Windows, c’est
moins chic. « LaTeX sous Windows, ce sera plus difficile pour toi que
si tu avais Linux, m’a-t-il dit ; mais apprends LaTeX d’abord, tu te mettras à
Linux ensuite. Apprendre les deux à la fois te demanderait un trop gros
effort. » Je n'en aurai donc jamais fini d'apprendre !
Laurent a eu la gentillesse de
m’indiquer « Apprends
LaTeX ! », note pédagogique éditée par l’ENSTA sous le modeste pseudonyme de
babafou. Il m’a enfin appris, car étant bizut j’ignorais ce point parfaitement
basique, que tout programme LaTeX doit commencer par quelques lignes de commande
qui contiennent les options choisies pour la présentation du texte.
« Lorsqu’on a paramétré un
premier document, m’a dit Laurent, on réutilisera les mêmes paramètres par la
suite. Le premier paramétrage prend du temps mais c’est un travail que l’on ne
fait qu’une fois ». Le travail le plus délicat doit ainsi être fait tout au
début : comme c’est accueillant pour un débutant ! Certes, il n’est pas possible de
faire autrement, mais tout de même… J’ai pompé sans vergogne les paramètres
programmés par Laurent, car sa mise en page me plaisait (je l’ai un peu modifiée
par la suite).
Voici, pour l’ébahissement des
bizuts moins anciens que je ne le suis désormais, la petite panoplie ainsi
constituée. Elle me servira longtemps :
\documentclass[a4paper,11pt]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english, francais]{babel}
\usepackage{hyperref}
\parskip1ex
\usepackage[dvips,lmargin=3cm,rmargin=3cm,tmargin=2.5cm,
bmargin=2.5cm]{geometry}
\newcommand{\sep}{\begin{center}*\ \ \ * \end{center}}
\title{Titre du document}
\author {Nom de l’auteur}
\date{Date du jour}
\begin{document}
Après cette dernière ligne, il
faut taper le texte en y insérant les codes utiles, et lorsque le texte sera
terminé on tapera \end{document}.
On fait tout cela dans la fenêtre de MiKTeX, qui est un tout petit peu plus
avenante que celle de l’invite de commande.
Après avoir montré comment
composer et enregistrer le texte, Laurent m’a indiqué les instructions qui
permettent, en passant par l’invite de commandes, de le compiler grâce à la
commande latex,
puis de l’afficher grâce à la commande
yap.
Miracle ! J’ai enfin vu à l’écran l’image de mon premier document LaTeX.
Laurent m'a montré également
comment télécharger les packages qui permettent d’enrichir LaTeX. Nous en avons
goinfré mon ordinateur portable.
* *
De retour dans mon ermitage
babafou m’a montré, entre autres enseignements, comment traiter les notes de bas de
page et programmer une petite commande utile. Je l’ai lu et
feuilleté dans tous les sens, il est écorné et ses pages se détachent de leur
agrafe. J’ai enfin composé
mon premier document LaTeX, vous pouvez le télécharger si vous en êtes
curieux. Une fois imprimé, il me plaît beaucoup : mes efforts ont été payés de
retour.
Un des agréments de LaTeX,
c’est l’abondance des forums de discussion et autres sources d’expertise que
l’on trouve sur le Web grâce à Google. Les fanas de LaTeX publient leurs bonnes
recettes et astuces de déboguage. J’aurais voulu, par exemple, passer au mode
verbatim
dans une note en bas de page pour imprimer une adresse URL en caractères
courier. Mais dans
les notes en bas de page, verbatim
ne marche pas ! Une recherche sur le Web m’a permis de trouver la solution :
utiliser la commande \texttt.
J'aurais eu du mal à le deviner tout seul.
Ce que l’on trouve sur le Web
n’est cependant pas toujours utilisable tel quel. Certains exemples ou
commentaires sont relatifs à des versions anciennes. Il faut copier, corriger,
interpréter… Tout cela prend du temps et les matinées passent vite.
* *
Une mauvaise surprise
m’attendait lorsque j’ai voulu composer des équations. Tout se passait bien
jusqu’à l’affichage, mais
yap
ignorait certaines polices de caractère (peut-être à cause des erreurs commises lors de l’installation des logiciels). Si je passais en force malgré les
messages d’erreur, j’obtenais un document qui contenait des espaces blancs à la
place des symboles voulus.
C’est, me suis-je dit, qu’il me
manque le bon package. Et que je fouille, et que je charge, et que je recommence
… rien à faire. J’y ai passé des matinées entières. J’ai cherché sur le Web.
J’ai échangé des messages avec Laurent. Mes fichiers
.tex
s’affichaient correctement chez lui mais refusaient de le faire chez moi.
Fallait-il recommencer
l’installation ? Je craignis d’avoir à le faire. Quand on réinstalle un
logiciel, il faut souvent désinstaller ce que l’on avait chargé auparavant. On
risque alors de provoquer je ne sais quelle catastrophe dans les tripes intimes
de Windows…
La nuit porte conseil. Dans un
demi-sommeil agité, j’ai vu s’afficher devant moi les boutons de MiKTeX. Et si,
me suis-je dit, je tentais de les utiliser au lieu de passer par cette invite de
commandes que Laurent affectionne tant ?
Le lendemain matin à l’aube,
j’ai cliqué sur ces fameux boutons. Au lieu de taper
latex essai
pour compiler le fichier
essai,
j’ai cliqué sur le bouton LaTeX, et ça a marché ! Puis j’ai cliqué sur le bouton
dvi->pdf. Acrobat 6.0 s’est alors chargé tout seul et le document s’est affiché
au complet, les équations alignées comme à la parade. Jamais une
intégrale ne m’avait paru aussi belle.
* *
Qu’il est bête, vous
dites-vous ! C’est vrai, je suis bête, ignorant et pagailleur. Dans ma bêtise et
à ma façon, j’incarne bien l’utilisateur débutant.
Avec LaTeX je resterai
longtemps un bizut. Après avoir traité les formules mathématiques, je dois
apprendre à insérer des graphiques dans le texte. J’aimerais pouvoir entourer
mes graphiques par du texte passant à droite, à gauche ou tout autour selon ma
fantaisie.
Un des bons outils du monde
LaTeX est BibTeX, qui sert à faire des bibliographies. Là aussi, j’ai été
d’abord incapable de faire quoique ce soit ; puis, à force de piocher sur le Web,
j’ai trouvé des exemples, les ai adaptés, et petit à petit j’ai appris à
utiliser BibTeX. Je bute encore sur une difficulté : si je donne la valeur
« deuxième » au paramètre EDITION
dans la description d’un livre, cela donne à l’impression « deuxième edition »,
sans accent sur le « e » de édition. Utiliser le package
frenchle
n’y change rien. Si vous connaissez la solution, je suis preneur.
* *
On peut avec LaTeX écrire des
partitions musicales, des formules de molécules etc. : on dirait que rien n’a
échappé aux personnes qui s’activent pour enrichir cet outil.
En pratique, je compose mon
document sous Word puis je fais un copier-coller vers une fenêtre MiKTeX en haut
de laquelle je colle les lignes de commandes et où je ferai la finition. Je dois
réintroduire les italiques, les notes de bas de page, les liens hypertexte
etc. Pour un document de quelques pages, cela me prend de l’ordre d’une
heure. Peut-être dans quelque temps composerai-je directement en LaTeX ?
On peut à partir du document
.tex
produire un document HTML. Le passage ne se fait pas sans casse : mes bien-aimés
guillemets à la française deviennent par exemple les symboles << et >>. Ce
transcodage exige donc des corrections manuelles.
* *
Dans quelques semaines ou
quelques mois j’utiliserai LaTeX de façon réflexe, avec le même naturel que
lorsque j’utilise Word. J’aurai oublié l'apprentissage durant lequel je me
suis montré si parfaitement niais. Je saurai où trouver de l’aide en cas de problème. J’aurai
du mal à comprendre les personnes qui n’utilisent pas LaTeX, parmi lesquelles je
me suis pourtant trouvé pendant une vingtaine d'années. Je ne concevrai pas les
difficultés que rencontre un bizut et, à l’occasion, je manquerai de patience
envers lui. Bref : je serai devenu un utilisateur normal, personnage entièrement
différent de l’utilisateur débutant.
C’est pour entretenir mon
humilité que j’ai noté à chaud mon apprentissage. Louanges soient rendues à
Laurent Bloch, qui dans sa sagesse est si patient avec le bizut que j’étais et
suis encore. Merci à babafou qui m’a donné des indications claires et simples.
Merci à Donald Knuth, à Leslie Lamport, aux auteurs des logiciels et
commentaires qui entourent LaTeX : ils m’ont déjà procuré bien du plaisir, et
j’en attends davantage encore.
|