LaTeX

De WikiDMS
Aller à : navigation, rechercher
LaTeX Logo.png

LaTeX désigne à la fois un langage de balisage et un logiciel de composition de documents qui est largement employé par la communauté scientifique. Ce logiciel exige de la part de l'auteur de se concentrer sur la structure et le contenu de son texte, puisqu'il prend en charge la plupart des aspects de la mise en page. En conséquence, il facilite la rédaction d'ouvrages d'envergure tels que les mémoires et les thèses. De plus, il gère particulièrement bien les symboles et les équations mathématiques.

Au DMS, les mémoires et les thèses des étudiants doivent être rédigés avec LaTeX selon les normes de la Faculté des études supérieures et postdoctorales. Plus de renseignements à ce sujet se trouvent à la section Gabarit.


Fonctionnement général

Le langage

TeX Live est la distribution de LaTeX installée au Département

Le logiciel LaTeX est en fait un langage de programmation au même titre que le langage C ou le langage HTML. À l'instar du langage HTML pour les sites web, le langage LaTeX permet de coder la mise en page pour des documents. Le principe est de séparer le fond de la forme, afin que l'auteur puisse mettre son énergie à rédiger le contenu sans être distrait par l'apparence de son document. En écrivant en langage LaTeX, l'utilisateur doit donc définir sémantiquement le contenu de son document plutôt que visuellement. Par exemple, si l'on veut écrire un titre à l'aide de MS Word, il faut augmenter la taille de la police de caractère et centrer le texte afin d'inscrire son titre. Avec LaTeX, il faut plutôt user de la balise title tel quel dans le fichier.

Pour rédiger un document avec LaTeX, il faut donc écrire un fichier qui servira de source pour réaliser un document bien mis en page. Typiquement, la source consistera en un dossier qui contiendra un ou plusieurs fichiers portant l'extension .tex, auxquels on ajoutera optionnellement des images ou d'autres fichiers nécessaires à la réalisation d'une bibliographie. Dans ces fichiers, le contenu du document sera entrecoupé de balises servant à spécifier les caractéristiques de mise en page de l'ouvrage et de mise en forme du texte.

Par exemple, dans le fichier source on pourra écrire :

\emph{ceci sera affiché en italique dans une thèse.}

La balise emph, qui tient lieu pour emphasize en anglais, sert à accentuer un segment de texte dans un document. Ainsi, dans un livre ou un article, le texte sera affiché en italique. Par contre, dans une présentation par diapositives, la même commande produira un texte coloré en rouge. Avec des commandes plus avancées, il est même possible de redéfinir le résultat que produira cette commande pour l'adapter à aux besoins et aux goûts de l'auteur.

Avantages

Une fois que la source est écrite et correctement codée, une étape de compilation permet de produire un document fini. Ce processus en deux étapes permet plusieurs fonctionnalités qui avantage LaTeX vis-à-vis des autres logiciels de traitement de texte. Deux principales qualités seraient la gestion automatique du référencement et une typographie de grande qualité.

La gestion automatique du référencement permet de gérer autant les différentes parties d'un ouvrage que les citations, les notes de bas de page ou la création d'un index. En ayant accès à la totalité du contenu à produire, LaTeX peut analyser la source et produire dans un style uniforme tout le document avec une page titre, une table des matières, une bibliographie, un index, etc. sans que l'auteur ne doivent recopier lui-même l'information pour obtenir ces pages. Par exemple, une simple utilisation de la balise \chapter produira un document où les chapitres se trouveront toujours sur une page impaire et où la table des matières sera ajustée pour inclure tous les chapitres. Cette pratique évite de produire de fausses références ou d'y ajouter de la redondance en plus d'assurer un style uniforme. Ce dernier point prend toute sa valeur pour l'écriture d'un ouvrage par plusieurs auteurs. Pensons, entres autres, à l'écriture d'un article scientifique ou simplement à un travail d'équipe.

D'un autre côté, les documents produits avec LaTeX respectent un usage professionnel des règles de typographie. En effet, pour produire une typographie convenable, il ne suffit pas d'aligner des caractères les uns après les autres, il faut aussi respecter le contexte où les caractères se trouvent. Deux excellents exemples seraient que LaTeX gère correctement la césure ou les lignes veuves et les orphelines, mais pour le cas qui nous intéresse, c'est l'édition des équations et des symboles mathématiques qui illustre le mieux la typographie avancée de LaTeX. En effet, dans LaTeX, les symboles d'adaptent à leur contexte pour produire des équations agréables et ordonnées. C'est cet aspect qui explique l'excellente réputation de LaTeX dans le milieu scientifique.

Distributions et éditeurs

Kile est l'éditeur par défaut au Département

LaTeX est un logiciel libre auquel l'utilisateur doit ajouter des extensions selon ses besoins. Pour faciliter l'installation du logiciel, il est possible de télécharger des distributions de LaTeX qui comprennent le compilateur ainsi que plusieurs extensions qui forment un tout cohérent et complet. Une des distributions les plus populaires pour l'environnement Linux est TeX Live et c'est cette distribution qui est utilisée au Département. MiKTex et MacTex, qui sont disponibles respectivement pour l'environnement Windows et Mac OS X, sont aussi très populaires.

Comme le fichier source peut parfois être difficile à rédiger, il est recommandé d'utiliser un éditeur de texte compatible avec LaTeX. En effet, un bon éditeur pourra vérifier certaines erreurs de programmation courantes, offira la coloration syntaxique, analysera le fichier source pour y naviguer facilement, etc. Au Département, Kile est l'éditeur par défaut. On retrouve aussi l'extension très complète AUCTeX, qui est disponible avec Emacs, et Gedit qui offre la coloration syntaxique.

Pour débuter avec LaTeX

Apprendre le langage

Afin de pouvoir exploiter le potentiel de LaTeX, l'utilisateur doit connaître un minimum de commandes du langage. Voici donc quelques liens utiles pour apprendre les bases et commencer à rédiger :

Utiliser LaTeX chez soi

Pour rédiger des documents à l'aide de LaTeX chez soi, il est important d'installer une distribution et un éditeur. Heureusement, plusieurs sont disponibles gratuitement en ligne. Notamment, une comparaison des différents éditeurs LaTeX est disponible sur Wikipédia.

Pour l'environnement Windows, la distribution MiKTex et l'éditeur Texmaker sont performants et simples d'utilisation. il suffit de cliquer sur les liens pour télécharger leur dernière version, et ce gratuitement. Voici un cour guide pour installer MiKTex :

Miktex-Installation-1.png
1. Acceptez les conditions. Ensuite, appuyez sur Next.
Miktex-Installation-2.png
2. Choisissez de partager l'installation de MiKTex avec les autres usagers, ou la restreindre à celui de la session en cours. Ensuite, appuyez sur Next.
Miktex-Installation-3.png
3. Choisissez le répertoire dans lequel MiKTex sera installé, ou garder celui par défaut. Ensuite, appuyez sur Next.
Miktex-installation-4.png
4. Vérifiez que le format papier est bien Lettre puis choisissez comment vous désirez gèrer les extensions. Ensuite, appuyez sur Next.
Miktex-Installation-5.png
5. Appuyez sur Next.
Miktex-Installation-6.png
6. Une fois l'installation terminée, appuyez sur Next.

Pour une démarche plus détaillée, voici une brève capsule vidéo contenant toutes les étapes pour télécharger et installer ces deux logiciels.

Exemple minimal

Pour débuter rapidement, voici un exemple rudimentaire de code LaTeX qui affiche "Hello World!" suivi d'une formule mathématique et d'une image :

\documentclass[11pt]{article}                       % Règle le type de document à "article" et la taille de la police à 11 pt.

\usepackage[utf8]{inputenc}	                    % Indique à LaTeX que l'encodage du fichier source est UTF-8.
\usepackage[T1]{fontenc}                            % Assure un enregistrement adéquat des accents dans le fichier compilé.
\usepackage{lmodern}                                % Charge la fonte vectorielle "Latin Modern", une version de la fonte
                                                    % par défaut "Computer Modern", qui supporte les caractères latins.

\usepackage[french]{babel}                          % "babel", avec l'option "french", pour utiliser la typographie française.
\usepackage{graphicx}                               % Pour inclure des images dans le document.


\begin{document}                                    % Début du document.

Hello World!

Quelques accents : à, é, ô, ï.                      % Les accents devraient s'afficher correctement.

$$                                                  % Le code compris entre $$ permet de produire des équations mathématiques
 \sum_{n=1}^\infty\frac{1}{n^2}=\frac{\pi^2}{6}     % qui ne sont pas numérotées. Pour des équations numérotées, utilisez 
$$                                                  % \begin{equation} et \end{equation}.

\begin{figure}[h]                                   % Notons l'option h (pour "here") qui demande que l'image se retrouve dans
                                                    % le document au même endroit où elle se trouve dans le fichier source.
 \begin{center}                                     % L'image sera centrée sur la page et 
  \includegraphics[width=0.75\textwidth]{image.png} % elle doit occuper 75 % de la largeur de la zone de texte.
  \caption{Une image.}                              % Le texte "Une image." sera affiché en légende.
  \label{fig:image}                                 % Pour faire référence à cette figure dans le document, il suffit d'entrer
 \end{center}                                       % "\ref{fig:image}", ce qui affichera le numéro de la figure.

\end{figure}

\end{document}                                      % Fin du document.

Voici la marche à suivre pour produire le document formaté avec Kile :

  1. Créer un nouveau fichier avec Kile et y copier le code ci-dessus avant de l'enregistrer.
  2. Télécharger l'image image.png et la placer dans le même répertoire que le fichier .tex.
  3. Dans Kile, compiler votre fichier en cliquant sur LaTeX ou PDFLaTeX en haut à droite. La procédure est imagée sur la page de Kile.
  4. Pour voir le résultat, cliquer sur ViewDVI ou ViewPDF. Le document produit devrait être identique à celui-ci.

Un exemple plus avancé

LaTeX permet de se concentrer sur le contenu en gérant lui-même le style. Par contre pour des besoins particuliers, il est quand même nécessaire de détailler à l'aide de quelques commandes le style du document que l'on désire créer. L'élaboration d'un style peut parfois prendre quelques temps, surtout la première fois. Pour accélérer le processus, voici un exemple de style simple que l'on peut modifier facilement et qui est destiné à produire des devoirs.

\documentclass[11pt]{article}

\usepackage[french]{babel}                          % "babel", avec l'option "french", pour utiliser la typographie française.
\usepackage[utf8]{inputenc}                         % Indique à LaTeX que l'encodage du fichier source est UTF-8.

\usepackage{arev}                                   % Pour utiliser la police de caractères Arev.
\usepackage[T1]{fontenc}                            % On utilise la norme T1 pour l'encodage de la fonte.

\usepackage[margin=2cm, vmargin=2.5cm]{geometry}    % Les marges seront de 2 cm, les marges verticales de 2.5 cm.

\usepackage{fancyhdr}                               % Cette extension permet de créer rapidement des entêtes personnalisées.
\fancyhf{}                                          % D'abord, il faut supprimer le style utilisé pas défaut.
\fancyhead[L]{Géométrie arithmétique}               % À gauche (option L), on écrit le nom du cours : Géométrie arithmétique.
\fancyhead[R]{Pierre Desrochers}                    % À droite (option R), on écrit notre nom : Pierre Desrochers.
\fancyfoot[C]{\thepage}                             % En pied de page, on insère le numéro de page au centre (option C).
\renewcommand\headrulewidth{0pt}                    % Par défaut, une ligne est utilisé en entête. Or on la supprime ici.
\pagestyle{fancy}                                   % On utilisera le sytle fancy que l'on vient juste de redéfinir.

\newcommand{\exercice}[2]{                          % Une macro à 2 arguments pour écrire les exercices rapidement.
  \noindent\underline{\large {#1}}                  % Sans indentation, on souligne le numéro de la question (#1).
  \medskip                                          % Un espage moyen entre le numéro de la question et la question.
  \par{#2}\bigskip                                  % On mets la question (#2) dans un paragraphe suivi d'un espace vertical.
}

\begin{document}                                    % Début du document

\begin{center}                                      % On centre le titre
  {\LARGE Devoir 5}                                 % qui sera affiché très gros (plus gros que \large).
\end{center}
\bigskip

\exercice{Exercice 1}{Soit $f:A \rightarrow B$ une fonction qui présente 
certaines propriétés. Démontrez qu'elle en possède d'autres.}

J'écris ici ma démonstration.

\end{document}                                      % Fin du document
Le résultat du code ci-haut.

Voici la marche à suivre pour produire le document formaté avec Kile :

  1. Créer un nouveau fichier avec Kile et y copier le code ci-dessus avant de l'enregistrer.
  2. Dans Kile, compiler votre fichier en cliquant sur PDFLaTeX en haut à droite. La procédure est imagée sur la page de Kile.
  3. Pour voir le résultat, cliquer sur ViewPDF.

Un conseil pour les images

Bien que LaTeX permet d'insérer des images sous plusieurs formats, un certain type d'image est à privilégier pour produire des documents plus portables. Il s'agit des images vectorielles. Par opposition aux images matricielles que l'on utilisent habituellement, les images vectorielles ne représentent pas une image comme un tableau de points nommés pixels. Elles enregistrent plutôt l'information géométrique d'une image et calcul une nouvelle disposition des pixels à chaque affichage. En conséquence, elles ne sont aucunement affectées par une mise à l'échelle.

Généralement, les images vectorielles se présentent sous le format .pdf ou .eps. Elles sont particulièrement bien adaptées pour produire des diagrammes et des schémas, car ces images sont souvent composés de structures simples. Au département, il est possible de produire des images vectorielles à l'aide de Inkscape et de GIMP.

Quelques extensions courantes

Presque toutes les extensions de LaTeX se trouvent sur CTAN (The Comprehensive TeX Archive Network). On y trouve beaucoup d'extensions courantes avec leur documentation. En cas de doute, la recherche de la fonctionnalité désirée dans un moteur de recherche permet généralement d'identifier rapidement l'extension qui offre cette fonctionnalité.

Pour utiliser une extension, il est nécessaire de la charger au moment de la compilation du fichier source. Pour ce faire, il suffit d'utiliser la balise usepackage. Par exemple, la ligne suivante, insérée dans le préambule du fichier, chargera l'extension amsmath.

\usepackage{amsmath}

Voici aussi une brève liste d'extensions pertinentes :

  • Mise en forme
    • amsmath pour écrire selon les normes de l'AMS;
    • hyperref permet l'ajout d'hyperliens dans le document de sortie (PDF ou EPS);
    • natbib assure que les citations apparaissent au format auteur-année et offre plus de contrôle sur les listes de références avec BibTeX;
  • Diagrammes commutatifs
    • amscd est simple, mais minimal;
    • diagrams offre plusieurs fonctionnalités;
    • tikz-cd est une extension très complète;
  • Images
    • epstopdf permet l'inclusion d'images EPS avec pdfLaTeX;
    • floatflt pour insérer des images entourées de texte;
    • PSTricks permet de concevoir des images vectorielles de grande qualité, d'y incorporer du texte et des équations directement dans votre code;
    • Subfig offre plus de possibilités pour l'affichage d'images;
  • Insertion de code
    • SageTeX permet d'employer, dans vos documents LaTeX, du code Sage;
    • verbatim permet d'écrire textuellement, sans que les commandes LaTeX ne soient pris en compte.

Faire une bibliographie

Il est possible de créer une brève bibliographie à la fin de n'importe quel document LaTeX à l'aide de l'environnement thebibliography. Par contre, si l'on cite souvent les mêmes sources pour différents documents, il peut être avantageux d'utiliser une fonctionnalité de LaTeX qui gère les bibliographies. Cette fonctionnalité, nommé BibTeX, permet de se créer un banque de sources dans un fichier portant l'extension .bib. De cette façon, on évite de recopier la source à chaque document que l'on écrit. Il suffit de mettre une copie du fichier .bib dans le même répertoire que le document .tex et toutes les sources peuvent être référencées. Un exemple de document dont la bibliographie est générée par BibTeX est disponible à la section Gabarit.

BibTeX permet également de modifier rapidement le style de la bibliographie à l'aide de la commande bibliographystyle{fichier de style à utiliser}. Voici quelques fichiers de style propices aux bibliographies françaises que vous pouvez utiliser :

Obtenir de l'aide

Comme pour la plupart des logiciels libres, Internet abonde de ressources pour vous aider dans vos projets. Par conséquent, la meilleure ressource consiste en un bon moteur de recherche en ligne. Pour les problèmes mineurs, c'est la façon la plus rapide de trouver la solution à son problème. Sinon, quelques forums tels que TeX Stack Exchange permettent de poser des questions techniques.

Au Département, il est aussi possible d'obtenir de l'aide auprès de l'équipe informatique. Veuillez consulter la page Qui contacter? pour savoir à qui vous adresser.

Particularités liées au français

Encodage

Le fichier source

Pour que LaTeX interprète correctement les accents et les caractères inexistants dans l'alphabet anglais, il est nécessaire d'utiliser l'extension inputenc et d'y spécifier l'encodage du fichier source. L'encodage des caractères d'un fichier permet de faire le lien entre le code binaire et les caractères de l'alphabet lors de la lecture du document par l'ordinateur. Par exemple, la commande ci-bas, qui doit être insérée dans l'entête du fichier (c'est-à-dire avant \begin{document}), signifie que le fichier source est écrit selon l'encodage UTF-8, ce qui permet au logiciel d'associer le bon caractère à une suite binaire.

\usepackage[utf8]{inputenc}

Le type d'encodage par défaut dépend du système d'exploitation utilisé. Cependant, rien n'empêche l'utilisateur de choisir un autre encodage pour ses fichiers. Le tableau suivant indique les encodages les plus couramment employés par les systèmes d'exploitation, ainsi que l'option de l'extension inputenc à utiliser.

Système Nom de l'option Type d'encodage
Windows ansinew Windows-1252 ou CP-1252
Linux latin1 ISO-8859-1
utf8 UTF-8
Mac OS applemac Apple MacIntosh

Pour plus de détails concernant l'encodage ainsi que sur l'écriture en langues différentes de l'anglais, consultez la page sur l'internationalisation de Wikibooks à ce sujet.

Le document fini

Contrairement au fichier source, le document fini n'est pas un fichier de texte pure. L'encodage du document fini n'est donc pas le lien entre une suite binaire et un caractère. Il s'agit plutôt d'un lien entre une suite binaire et l'image d'un caractère dans une fonte. Il s'agit d'une différence subtile, mais qui augmente grandement les possibilités d'affichage. Par exemple, c'est ce qui permet d'afficher des lettres en italiques ou en gras.

En particulier, pour les documents finis en français, il est recommandé d'utiliser l'encodage T1 en ajoutant la commande suivante en entête.

\usepackage[T1]{fontenc}

Cet encodage assure que les lettres accentuées seront encodées en un seul symbole plutôt que deux (le caractère et son accent). En particulier, ceci assure que les copier-coller effectués sur le document fini géreront bien les accents.

Règles de typographie française

LaTeX est un logiciel de traitement de texte qui prend en charge la presque totalité des règles de typographie contemporaines. Lors de l'écriture d'un document, il est important de spécifier au logiciel d'utiliser les règles de typographie de la langue de rédaction, car elles diffèrent selon la langue. Par défaut, LaTeX utilise les règles typographiques de l'anglais. Pour utiliser la typographie française, il suffit d'insérer la commande suivante dans l'entête de votre document :

\usepackage[french]{babel}

Particularités liées aux mémoires, thèses et examens

L'Université exige une certaine uniformité dans la présentation des mémoires et des thèses. Le Guide de présentation des mémoires et des thèses explique les particularités liées à la mise en page des ouvrages tandis que le site des bibliothèques offre une section entièrement dédiée à la remise électronique de ces documents (dépôt final) sur Papyrus.

Gabarits du DMS

Mémoires, thèses et travaux

LaTeX permet l'utilisation d'un gabarit (template en anglais) que l'on retrouve sous la forme d'un fichier d'extension .cls.

Le Département met à la disposition des étudiants un tel gabarit permettant de faciliter la rédaction des travaux soumis pour l'obtention d'un grade. La classe dms.cls du dossier compressé prends en charge la mise en page à l'aide de variables spécialement conçues pour ce genre de document. Pour modifier ces variables, il suffit de modifier le fichier GabaritDMS.tex. Il est à noter qu'il incombe à l'étudiant de s'assurer que son travail respecte les normes imposées par le Guide de présentation des mémoires et des thèses de la Faculté des études supérieures et postdoctorales, que ce soit pour la rédaction d'un rapport de stage, d'un mémoire ou d'une thèse.

Comme la rédaction d'un premier ouvrage LaTeX d'envergure peut être un défi, le Département offre aussi un exemple de document utilisant cette classe. Le fichier .tex comprend plusieurs exemples élémentaires : une énumération avec et une autre sans numérotation, des équations mathématiques numérotées ou non, une définition, un théorème et une démonstration, un tableau simple, une bibliographie générée par BibTeX, des images insérées côtes-à-côtes et, finalement, l'incorporation d'hyperliens dans le fichier de sortie (.pdf).

Examens

Le Département met à la disposition des professeurs et chargés de cours un gabarit permettant de faciliter la rédaction des examens pour les cours donnés au DMS. La classe examenDMS.cls du dossier compressé prends en charge la mise en page à l'aide de variables spécialement conçues pour ce genre de document. Pour modifier ces variables, il suffit de modifier le fichier DMS0000.tex. Vous pourrez, par exemple, modifier le nombre de pages allouées par question ainsi qu'ajouter des directives spécifiques à votre examen.

Encapsulation des fontes

L'encapsulation des fontes d'un document assure qu'il sera affiché tel quel, peu importe la plate-forme du lecteur. Encapsuler les fontes signifie simplement de joindre toutes les fontes aux documents. Ainsi, la plate-forme ne choisira pas arbitrairement une nouvelle fonte pour afficher les caractères et le document sera présenté comme l'a prévu l'auteur.

Pour les dépôts électroniques d'un mémoire ou d'une thèse sur Papyrus, il est nécessaire que toutes les fontes soient encapsulées dans le fichier pdf.

Sur un environnement Linux, il est possible de vérifier si les fontes sont encapsulées à l'aide de la commande pdffonts. Pour ce faire, il suffit de taper :

pdffonts fichier.pdf

Plusieurs renseignements sont alors affichés. Si la colonne nommée emb (pour embedded) ne contient que des yes, alors toutes les fontes sont encapsulées.

Si ce n'est pas le cas, il est possible d'utiliser la commande ps2pdf afin de forcer l'encapsulation. Par exemple, il suffit généralement d'utiliser la commande suivante :

ps2pdf -dPDFSETTINGS=/prepress -dEPSCrop fichier.pdf

Si cela ne s’avère pas suffisant, vous pouvez essayer de convertir le pdf en postscript (ps) :

pdftops fichier.pdf

puis de le reconvertir en pdf à l'aide des options suivantes :

ps2pdf -dSAFER -dNOPLATFONTS -sPAPERSIZE=letter -dEmbedAllFonts=true -dPDFSETTINGS=/prepress fichier.ps fichier.pdf

Ceci contourne le problème que Kile n'encapsule pas les polices de bases times et helvetica souvent contenues dans les graphiques générés par Matlab. Noter qu'il est possible de changer le type de fonte utilisée par Matlab.

Si le problème persiste le plus simples reste de supprimer l'utilisation des fontes de types 3, qui peuvent êtres incluses via une image ou bien dans certains package fournissant des fontes, tel que bbm.

Concaténer plusieurs documents

Au moment du dépôt final, vous aurez peut-être plusieurs documents que vous devrez fusionner en un seul afin de satisfaire aux exigences du dépôt électronique. La commande gs vous permettra de concaténer vos documents.

Voir aussi

Séminaires LaTeX

L'équipe informatique offre, selon les besoins, des séminaires LaTeX pour introduire les notions de base du langage. Les fichiers suivants sont présentés pendant le séminaire :

Guides et outils de référence

Distributions et éditeurs

Articles connexes

Références externes