5.10.08

La mécanique: LaTeX

Le problème avec les traitements de texte


Tout le monde connaît les traitements de texte (TdT). Ce sont des programmes qui offrent plus ou moins une interface WYSIWIG (What You See Is What You Get), où les enrichissements de texte et les formatages sont visibles à l"écran.

Je dis plus ou moins parce que le formatage cafouille souvent (surtout pour les documents compliqués) et que la typographie française n'est pas toujours très bien respectée par les programmes comme Word ou OpenOffice.

En outre, les traitements de texte sont utiles pour des documents courts. Mais ces programmes vous jettent au milieu d'une flopée de gadgets (palettes, menus flottants, etc.) qui transforment la moindre opération simple en une partie de cache-cache entre votre souris et l'option voulue.

Il y a des fois où on aime avoir des options partout. Quand je développe sous Eclipse, je suis content d'avoir plein d'options sous la main. Mais c'est parce qu'en programmation, il y a de multiples tâches à accomplir rapidement avec des informations qui proviennent de différents fichiers.

Quand on écrit un long texte, on se réfère de temps à autre à d'autres documents (un synopsis, une carte ou encore une liste de personnages) mais rarement plus d'une fois toutes les trois ou quatre pages. On passe la majeure partie de son temps à taper du texte. Pour de longs textes comme des livres, les gadgets toujours présents sur l'écran sont des distractions.

Et je ne dis pas ça parce que je suis un vieux ronchon! Pour être précis : oui, je suis un vieux ronchon, mais je ne suis pas le seul à être de cet avis... Il y a actuellement un courant de révolte contre les lourdeurs de Word et autres TdT ordinaires. La simplicité retrouve un attrait perdu depuis l'époque de DOS. On commence à trouver des programmes dont le but avoué est de laisser l'utilisateur écrire sans distractions. Par exemple:

  • Writer, un éditeur de texte en ligne ultra-simpliste style "écran vert".
  • Sous Mac, beaucoup d'écrivains sont passés à WriteRoom, qui débarasse l'écran de gadgets pour favoriser la créativité.
  • Sous Windows, on peut télécharger gratuitement Darkroom, garanti sans boutons ni barres d'outils.


Il n'y a pas que moi, vous voyez... Des fois, les vieux ronchons sont des précurseurs de la prochaine vague!


Regardez mon nouveau truc, c'est rond et ça tourne...


Donc, puisqu'on se remet à écrire avec des outils simples, autant faire les choses correctement. Si vous regardez tous ces outils, vous verrez qu'ils emploient des commandes plus ou moins compliquées pour ajouter structure et enrichissements au texte. Mais ce faisant, ils réinventent la roue: tout cela a déjà été mis au point et s'est perfectionné durant de longues années.

Avant les interfaces graphiques et les mulots sur chaque bureau, il y avait déjà des gens qui composaient des articles et des livres sur ordinateurs. Ces gens employaient des logiciels de mise en page typographique. En entrée, on fournissait du texte avec des marquages, et en sortie, on avait des documents de haute qualité. Ces logiciels n'affichaient pas les documents finis à l'écran, mais seulement après une phase de compilation. (Et jadis, il fallait imprimer le document pour le voir faute d'écrans graphiques.). Ces logiciels étaient donc des langages de typographie qu'on compilait pour obtenir des documents.

Il y a eu de nombreux langages de cette sorte. Mais le plus répandu est sans conteste LaTeX.

LaTeX? C'est quoi?




LaTeX est un langage de typographie qui permet de composer un document et d'en régler les moindres détails au millipoil. Mais il permet aussi d'utiliser un gabarit et de simplement taper son texte au kilomètre sans se soucier de mise en page: LaTeX fera le nécessaire.

LaTeX est gratuit et est disponible pour toutes les machines (ou presque, j'ai un moulin à café qui n'a pas assez de mémoire).

Pour utiliser LaTeX sans avoir à l'installer, on peut essayer MonkeyTeX, un version en ligne.

Pourquoi LaTeX


Pourquoi s'embêter à apprendre quelque chose de neuf? Parce que LaTeX offre plusieurs avantages:

  • Une absence de distraction. Une fois qu'on est lancé, on a l'écran blanc avec l'éditeur de texte de son choix. Pas de bouton clignotant, pas de clébard qui vient faire l'imbécile sur l'écran, rien.
  • Un respect très fin de la typographie. Pour les maniaques comme moi, il y a des modules additionnels qui permettent d'ajouter automatiquement des pinaillages qui mettent le bouquin aux normes de l'Imprimerie Nationale.
  • Une communauté très active. LaTeX a une importante communauté d'utilisateurs en France et à l'étranger, et la réponse aux questions n'est jamais bien loin.


Comment débuter?


Il y a de très nombreuses initiations à LaTeX en ligne, en français et en anglais. Par exemple:


Mais bon, rien ne vaut un exemple.

Voici par exemple un document LaTeX minimaliste qu'on peut mettre dans un fichier monlivre.tex:


\documentclass{book}
\begin{document}
Mon texte ici.
\end{document}


Notez que le fichier monlivre.tex est du texte. Le suffixe tex est une simple convention. Vous pouvez utiliser n'importe quel éditeur de texte pour créer ce fichier (pas un traitement de texte, un éditeur, attention!): Emacs, Notepad, gEdit...

Les commandes commençant par un backslash seront interprétées par LaTeX: Ici, on définit le document comme un livre avec \documentclass{book}.

La partie avant le \begin{document} s'appelle le préambule. Un préambule LaTeX peut être assez compliqué si on y met des définitions spéciales, des formats complexes, etc. Mais on peut parfaitement utiliser les définitions faites par quelqu'un d'autre. (Je donnerais mes définitions si on me les demande.)

Notez le texte lui-même n'a pas besoin d'être dans le même fichier:

\begin{document}
\input chapitre1.tex
\input chapitre2.tex
...
\end{document}


Cela permet de laisser le texte de votre livre dans des fichiers séparés, un par chapitre. Et que mettre dans les fichiers de chapitres? Eh bien, surtout du texte, avec quelques commandes ci et là. Par exemple, le début de mon premier chapitre:


\chapter{}
<< Je vais t'étaler sur tous les murs ! >> brailla le colosse.

Nalken recula et buta contre une table. Les choses prenaient une sale tournure.
...


Notez la commande \chapter{}, qui indique qu'on débute un nouveau chapitre. Cela crée un titre du genre "Chapitre 1" en haut d'une page, et automatiquement, les en-têtes et bas de pages sont modifiés. L'en-tête sera par exemple "Chapitre 1" sur les pages paires.

Pour avoir un contrôle encore plus fin, on peut utiliser des modules additionnels (appelés "styles" par abus de langage), comme par exemple le module "French" de Bernard Gaulle, qui intéressera les maniaques de la typographie française. (Ce module est installé sur beaucoup de distributions LaTeX mais est shareware).

Les enrichissements et les commandes



Un bon livre ne doit pas submerger les lecteurs sous une avalanche d'enrichissements typographiques. Qunize corps de caractère par page, c'est ce que font les enfants qui jouent avec un TdT. Mais la typographie d'un ouvrage pro doit savoir rester discrète.

De temps à autre, en fantasy, on tombe sur un petit problème. Comment indiquer un mode de communication particulier? Par exemple, vous avez un perso télépathe. Comment montrer qu'il "émet" une phrase vers quelqu'un au lieu de la prononcer? Une solution est de mettre le dialogue pensé en italiques, ou autre enrichissement léger.

Mais vous pouvez ensuite décider de réserver les italiques pour un autre usage, comme les noms étrangers. Et vous devez alors chercher tous les passages où vous les employez pour des dialogues avec votre télépathe.

Une solution est de créer une commande que vous glissez dans le préambule:


\newcommand{\telepat}[1]{{\sl #1}}


Cela crée une commande, \telepat, qui met ce qui suit en caractères penchés (slanted, une sorte d'italiques). Le jour où vous voulez changer cela, modifiez la commande, pas le texte. C'est comme un style de traitement de texte, en beaucoup plus puissant.

Pour utiliser cette commande, on met le texte à marquer entre accolades:


Une lueur diffuse apparut soudain derrière Varglind. La lumière
semblait surgir d'un pan de rocher, et répandait des éclats nacrés sur
la peau écailleuse du dragon. Elle était assez forte pour illuminer
toute la grotte.

<< Un sort de Luminescence ? s'exclama Erwin. Et puissant, avec ça !
Ce dragon est un mage !

--- \telepat{Nous nous transmettons quelques notions de mère en fille.} >>


Et le résultat:





Essayez-le


LaTeX est un merveilleux logiciel pour quiconque veut se libérer des contraintes d'un traitement de texte. Essayez-le.

2 commentaires:

Mankalas a dit…

Bonjour !

Je suis déjà un fin connaisseur de LaTeX mais votre bout de code concernant les dialogues me pose un problème.

Lorsque j'essaie d'ouvrir un dialogue avec les caractères "<<" dans mon fichier, le résultat est deux points d'exclamation à l'envers (comme en espagnol).

Pouvez-vous indiquer quelles sont les "packages" que vous utilisez pour vos documents ?

Eric Ferris a dit…

Les guillemets français est l'un des problèmes qu'ont les utilisateurs français de LaTeX. Il y en a quelques autres plus subtils.

Pour résoudre tout ça, on a le choix:
* Utiliser le package Babel, option french. D'après la doc du package, on peut utiliser << et >> avec babel et le codage T1, a condition de ne pas oublier les espaces insécable:

<<~Bonjour Mankalas !~>> dit Eric.

* Ou bien utiliser le package French de Bernard Gaulle.

Quand j'ai commencé à écrire mon roman, le package Babel n'était pas aussi élaboré, c'est pourquoi j'ai choisi d'employer le package French de Bernard Gaulle, qui est payant (qques dizaines d'Euros). Ce dernier a aussi quelques fioritures comme la commande lettrine, qui donne de beaux résultats. Voir le résultat sur http://www.amazon.com/gp/reader/0615142249/ref=sib_dp_ptu#reader-link (extraits en ligne sur Amazon).

Comme autres packages, j'utilise aussi graphicx (pour placer présisément les cartes dans le livre), footnpag (pour une bonne numérotation des notes de bas de page, dont le compteur doit revenir à 1 pour chaque page), et garamond (pour la police).

Pour le dimensionnement du livre, j'emploie le package geometry.

\documentclass[10pt,twoside]{book}
\usepackage[T1]{fontenc}
\usepackage{french}
\usepackage{graphicx}
%% Pour les légendes des cartes
\usepackage{caption}
\usepackage{garamond}

% A5, 21 cm x 14.85 cm, +
% 1/4 in. bleed (0.635 cm) de marge de
% fond perdu = 21.635 x 15.485 cm
\usepackage[papersize={15.485cm, 21.635cm},
portrait,
includeheadfoot,
inner=0.8in,
outer=0.75in,
top=0.625in,
bottom=0.625in
]{geometry}