# LaTeX/Gestion des gros documents

LATEX
* Généralités
* Premiers pas
** Installer LaTeX
** Premier exemple
** Lettre
** Éléments de base
** Les classes
** Structuration du texte
** Mise en forme du texte
** Faire des tableaux
** Inclure des images
** Options de mise en forme avancées
** Écrire des mathématiques
** Écrire de la physique
** Écrire des formules chimiques
** Créer une feuille de style
** À l'aide !
* Structure du document
* Gestion de la bibliographie
* Tableaux
* Images
* Éléments flottants
* Mise en forme du texte
* Choix de la police
* Mise en page
* Mathématiques
* Gestion des gros documents
* Faire des présentations
* LaTeX pour enseignants
* Arts et loisirs
** Écrire de la musique
** Dessiner des échiquiers
* Dessiner avec LaTeX
** Dessiner en LaTeX pur
** Dessiner avec PSTricks
** Dessiner avec PGF et TikZ
** Dessiner des molécules
** Réalisation de graphiques mathématiques
* Créer une extension ou une classe
* Programmer avec LaTeX
Annexes
* Vadémécum
* Conversion vers d'autres formats
* Glossaire de typographie
* Index
* Commandes
* Liens externes
La gestion des gros documents avec LaTeX s'articule sur trois niveaux :
* rigueur de la programmation ;
* choix d'une classe de document adaptée ;
* séparation du code source en plusieurs fichiers ;
* avoir un document final exploitable.

## Rigueur de la programmation

Il faut appliquer à LaTeX la même rigueur que l'on utilise pour la programmation classique. En fait, tout a déjà été dit précédemment, mais nous rappelons ici ces éléments qui, s'ils sont toujours importants, deviennent capitaux dans le cas des gros documents :
* utiliser un éditeur de texte adapté, qui va faciliter l'écriture et éviter les erreurs ;
* structurer le code source, en n'hésitant pas à faire des retours de ligne et à mettre des commentaires :
** limiter les lignes à 72 caractères,
** pas plus d'une commande par ligne, mais on peut étaler une commande sur plusieurs lignes (penser à mettre un % en fin de ligne si les retours de lignes posent problème dans la commande),
** mettre des commentaires détaillés pour repérer facilement les différentes sections, sous-sections, etc.
** utiliser des décalages de colonnes (indentations par des tabulations) pour mettre en évidence l'imbrication des structures (listes, tableaux, …) ;
* séparer le fond de la forme ;
* regrouper le préambule dans un fichier séparé, et commenter les macros dans ce fichier.

## Choix d'une classe de document adaptée

Il faut choisir une classe prévue pour les gros documents. Ces classes disposent en particulier du maximum de niveaux de sectionnement (7 niveaux de \part à \subparagraph).
On citera en particulier :
* book ;
* report ;
* memoir.
Les classes book et memoir disposent de commandes permettant de distinguer l'introduction, le corps et les annexes du document (\frontmatter, \mainmatter et \backmatter). Les annexes sont introduites par la commande \appendix.

## Séparation du code source en plusieurs fichiers

Pour les gros documents, il faut scinder le code source en plusieurs fichiers. Cela permet de limiter les dégâts en cas de mauvaise manipulation, et de s'y retrouver plus facilement.
On crée donc plusieurs fichiers .tex :
* un fichier par chapitre, ou par section selon le niveau de sectionnement que l'on choisit ; dans ces fichiers annexes, il est inutile de rappeler la classe et les packages utilisés.
* un document « maître » faisant appels aux différents fichiers, dont la classe et les packages utilisés s'appliqueront à tous les fichiers utilisés.
Le document maître ne doit contenir que :
* l'appel de la classe : \documentclass[options]{classe} ;
* l'appel au préambule : \input{preambule} ;
* les commandes de page de titre : \title{titre}, \author{auteur}, \date{date}, \maketitle ;
* les commandes \begin{document} et \end{document} ;
* les appels aux fichiers sources ;
* éventuellement, les commandes de sectionnement \front/main/backmatter et \appendix, et les commandes de génération de tables et index : \tableofcontents, \makeindex et \printindex, \bibliographystyle{style} et \bibliography{fichierbib}, \listoftables et \listoffigures.
Les appels des fichiers source se font avec la commande \include{fichier}{fichier} ou \input{fichier} : \include provoque un saut de page et est plus adapté aux chapitres, \input est plus adapté aux sections, aux fichiers relativement petits.
Un fichier appelé ne peut pas lui-même contenir de \include, mais il peut contenir un \input.

## Regrouper des articles

Dans le cas des publications scientifiques, chaque publication est un document (classe de document de type article) avec un titre, un résumé et le nom des auteurs, mais plusieurs articles sont regroupés dans un même ouvrage (périodique, compte-rendu de congrès, …). Pour faire ceci avec LaTeX, on dispose de la classe combine
Voir aussi http://www.tex.ac.uk/cgi-bin/texfaq2html?label=multidoc

## Avoir un document final exploitable

Le document doit être agréable à lire, donc… lisible. On s'attachera en particulier à ajuster le nombre de colonnes de texte au corps afin d'avoir une soixantaine de caractères en largeur par colonne (entre 25 et 80).
Puisqu'il est volumineux, on doit pouvoir facilement retrouver une information. Il doit donc comporter :
* une table des matières et éventuellement un sommaire ;
* des références croisées ;
* un index ;
* une bibliographie.
Lorsqu'il y a beaucoup de références dans le document il peut être agréable de pouvoir les suivre dans le fichier .pdf à la manière de liens hypertextes. Dans ce cas on peut utiliser l'extension \hyperref qui construit les liens à la compilation (fonctionne avec pdflatex uniquement).