Rédaction d’un memoire avec latex: Partie 2

Vous voici arrivé à la deuxième partie de ce tutoriel qui sera pour vous l’occasion d’un premier contact avec les logiciels que vous venez d’installer.

Organisons d’abord notre projet

Nous allons nous préoccuper dans un premier temps de la structure de notre future mémoire. Il comportera les éléments ci-dessous:

  1. Une page de garde.
  2. Les remerciements.
  3. Les dédicaces.
  4. Un résumé.
  5. Une table des matières.
  6. Une liste des tableaux.
  7. Une liste des figures.
  8. Une liste des abréviations.
  9. Une introduction générale.
  10. Chapitre 1.
  11. Chapitre 2.
  12. Chapitre 3.
  13. Une conclusion générale.
  14. Un chapitre annexe.
  15. Une bibliographie.

Il est recommandé de séparer notre projet LaTeX en plusieurs fichiers, cela facilite un travail organisé et collaboratif. Pour cela, nous allons créer pour chaque élément ci-dessus un fichier qu’on sauvegardera dans un dossier ayant le même nom que ce fichier. Pour ce faire, suivez la procédure suivante :

  1. Créer un dossier sur votre disque dur et nommez-le ModeleMFC, puis créez pour chaque élément cité ci-dessus un sous dossier portant son nom sauf les éléments suivants: la table des matières, la liste des tableaux et la liste des figures.
  2. Ouvrez l’éditeur de texte TexNicCenter(Si TeXnicCenter vous demande le chemin d’installation de MiKTeX , vous devrez fournir un chemin du type C:\Program Files (x86)\MiKTeX 2.8\miktex\bin.).
  3. Votre éditeur est à présent ouvert, créez donc un premier document vide (allez dans le menu File -> New -> File) et enregistrez-le sous le nom Main.tex dans le dossier ModeleMFC. Ce fichier Main.tex sera le fichier principal pour notre projet.
  4. Créez un autre document de la même manière que le précédent et nommez-le PageDeGarde.tex et sauvegardez-le dans le sous dossier nommé PageDeGarde. Faites la même procédure avec les autres éléments ci-dessus (Les remerciements, Les dédicaces…) en sauvegardant chaque document crée dans le dossier lui y correspondant.

Si vous avez bien appliqué ce que j’ai dis ci-dessus vous aurez dans le dossier ModeleMFC le fichier Main.tex et un ensemble de sous dossiers dont chacun contient un document ayant le nom de dossier et l’extension .tex. Voir la capture d’écran ci-dessous.

Arbre

Compilation

Passons maintenant à la rédaction de notre mémoire, commençons par le document Main.tex, ouvrez-le,  et recopiez la portion de code ci-dessous puis enregistrez-le.

C’est dans la partie située entre begin{document} et end{document} que vous allez introduire votre texte ou bien le contenu de votre mémoire.

Comment transformer ces lignes de codes écrites dans une interface graphique en une mise en page ?

Votre distribution LaTeX transforme votre document Main.tex en un fichier ayant l’extension PDF(ou d’autres formats). Cette transformation s’appelle une compilation.

Pour compiler le fichier Main.tex en utilisant l’éditeur graphique TexNicCenter, suivez tout simplement la procédure décrite dans la capture d’écran ci-dessous.

Compilation

La capture d’écran ci-dessous représente le résultat de notre document Main.tex une fois compilé.

Hello world!

Organisons le fichier Main.tex

Pour avoir un code compréhensible et lisible,  je vous propose de structurer le document Main.tex comme présenté dans la figure ci-dessous.

Structuration de Main.tex

Remplacer l’ancien code de fichier Main.tex par le code ci-dessous:

Ici, % suivi d’un texte est un commentaire qui sera ignoré pendant la compilation et qui sert à faire des annotations. Dans la suite du ce tutoriel je me servirai des commentaires pour annoter des morceaux de code et vous aider à vous repérer.

J’ai organisé le fichier Main.tex en 5 zones :

Zone 1 : c’est dans cette zone qu’on fait l’importation des packages nécessaires.
Zone 2 : elle ne sera pas numérotée et nous allons inclure à l’intérieur les documents suivants :

  • PageDeGarde.tex
  • Dedicaces.tex
  • Remerciements.tex
  • Resume.tex

Zone 3 : c’est dans cette zone que nous allons personnaliser de manière bien plus approfondie nos entêtes et pieds de page.
Zone 4 : elle sera numérotée avec les chiffre romains. Nous dirons ici à Latex d’insérer automatiquement une table de matière, une table de figure et une liste des tableaux, qui seront met à jour à chaque fois que vous modifiez le contenu de votre mémoire. Nous allons inclure aussi dans cette zone le document contenant la liste des abréviations.
Zone 5 : Elle sera numéroté avec les chiffres arabes. Nous allons inclure dedans les fichiers suivants :

  • Introduction générale.
  • Vos différents chapitres.
  • Conclusion générale.
  • Les annexes.
  • La bibliographie.

Dans ce qui suit, nous allons écrire un code spécifique dans chacune de ces zones.

Importation des packages

Dans LaTeX, des outils ont été créés dans le but de pallier certains manques et d’implanter de nouvelles fonctions. Grâce à ces derniers, l’univers LaTeX permet de réaliser chaque jour de nouvelles choses. Ces outils sont appelés « packages ».

Nous allons importer les packages essentiels et c’est à vous de rajouter les packages qui vous seront nécessaires par la suite. Pour importer un package on utilise la commande ci-dessous:

Recopiez le code ci-dessous et collez-le dans la zone 1.

Inclure nos différents fichiers dans le fichier principal Main.tex

Passons directement à la zone 2, je vous ai dis tout à l’heure que cette partie ne contiendra pas des numéros de pages. Nous allons écrire dedans un code, qui nous permettra d’inclure les documents suivants : PageDeGarde.tex, Dedicaces.tex, Remerciements.tex et Resume.tex.

La commande ci-dessous sert à inclure un fichier :

Du coup, pour inclure tous ces fichiers, rajoutez le code ci-dessous dans la zone 2:

Essayons Maintenant de compiler et visionner le document Main.tex. Ne soyez pas étonné si vous aurez une seule page vide, car on n’a pas encore écrit de texte dans les fichiers que nous venons d’inclure dans le fichier Main.tex.

La numérotation avec les chiffres romains commence au niveau de la page contenant la table des matières, la page contenant la liste des abréviations sera elle aussi numérotée par les chiffres romains d’où vous allez inclure le fichier ListeDesAbreviations.tex dans la zone 4. Insérer la ligne de code suivante dans la zone 4.

NB: j’ai consacré une section pour vous expliquer comment rajouter la tables des matières, la liste des tableaux et la liste des figures qu’on va inclure aussi dans la zone 4.

Passons à la zone 5, nous allons inclure de la même manière les fichiers suivants: IntroductionGenerale.tex, vos différents chapitres ( j’ai crée 3 chapitres avec les noms suivants : Chapitre1.tex, Chapitre2.tex et Chapitre3.tex), ConclusionGenerale.tex, les annexes (j’ai crée un seul Annexe.tex), et Bibliographie.tex. Recopiez donc le code ci-dessous et collez-le dans la zone 5 de fichier Main.tex.

Jusqu’à ici nous avons inclus tous les fichiers, mais le résultat de compilation de document Main.tex est toujours une page vide, dans ce qui suit on va écrire un texte dans chacun de ces fichiers, et vous allez constater un résultat différent après la compilation.

Hiérarchiser son mémoire sous formes de parties, chapitres, sections, …

Maintenant, vous allez apprendre comment hiérarchiser des informations sous formes de chapitres, de sections, …etc. Voici ci–dessous des commandes résumant les différents niveaux de hiérarchisation de votre contenu.

\part{nom de la prtie}: permet de créer une partie.
\chapter{nom du chapitre}: permet de créer un chapitre.
\section{nom de la  section}: permet de créer une section.
\subsection{nom de la sous section}: permet de créer une sous section.
\subsubsection{nom de la sous sous section}: permet de créer une sous sous section.

Application

Rajouter la ligne de code suivante dans chacun des fichiers (sauf les fichiers suivants : PageDeGarde.tex, Bibliographie et Main.tex). En remplaçant nom-de-chapitre par le nom du chapitre correspondant.

Enlever le mot chapitre et ne faire apparaître que le nom du chapitre est possible, en remplaçant la commande \chapter{nom du chapitre} par \chapter*{nom du chapitre}.

Du coup, utilisez la commande \chapter{nom du chapitre} pour les fichiers qui correspondent aux chapitres numérotés (chapitre 1, chapitre 2, chapitre 3) et la commande : \chapter*{nom du chapitre} pour le reste des fichiers.

Essayez de compiler et visionnez le document Main.tex.

Tables des matières, liste des tableaux et liste des figures

Voici les commandes qui permettent de rajouter une table des matières, une liste des tableaux et une table des figures respectivement :

Recopiez la portion de code ci-dessus, et insérez-la dans la zone 4 avant la commande qui \input{ListeDesAbreviations/ListeDesAbreviations.tex}.

La mise à jour des tables ci-dessus se fait automatiquement par LaTex à chaque fois que vous modifier votre contenu.

 

Essayez de compiler et de visionnez le document Main.tex.

Regardez bien le résultat de compilation de votre document Main.tex, vous allez remarquer qu’il n’existe pas des entrée dans la tables des matières pour les éléments suivants: Liste des tableaux, Table des figures, Liste des abréviations, annexe et La bibliographie.

Pour ajouter une entrée pour la Liste des tableaux  dans la table des matières recopiez le code ci-dessous dans la zone 4 aprèsla commande \listoftables:

Pour ajouter une entrée pour la Table des figures dans la table des matières recopiez le code ci-dessous dans la zone 4 après la commande \listoffigures:

Pour ajouter une entrée pour la Liste des abréviations dans la table des matières recopiez le code ci-dessous dans le fichier ListeDesAbreviations.tex après la commande \chapter*{Liste des abréviations}:

Pour ajouter une entrée pour l’Annexe dans la table des matières recopiez le code ci-dessous dans le fichier Annexe.tex après la commande \chapter*{Annexe}:

Pour ajouter une entrée pour la Bibliographie dans la table des matières recopiez le code ci-dessous a la du fichier Bibliographie.tex:

Essayez de compilez pour voir le résultat.

La numérotation des pages

On s’intéressera maintenant à la numérotation des pages, revenons au document principale Main.tex, essayons de revoir la figure dans laquelle on a partagé notre document Main.tex en 5 zones:

Structuration de Main.tex

Selon cette division, notre mémoire aura des pages non numérotées, des pages numérotées en chiffre romains et des pages numérotées en chiffres arabes.

D’abord, nous allons dire à Latex de ne pas numéroter les pages avant la table des matières, et de numéroter les pages contenant la table des matières jusqu’aux pages contenant la liste des abréviations par les chiffres romains. Ensuite, nous passerons à la numérotation des pages avec des chiffres arabes.

Ajouter la portion de code ci-dessous dans les fichiers suivants après la commande \Chapter pour ne pas numéroter les pages suivantes: Dedicaces.tex, Remerciements.tex et Resume.tex.

Vous devez insérer ces deux lignes de code dans la zone 4 après la commande \tableofcontents pour appliquer la numérotation en chiffres romains:

Compilez et essayer de voir le résultat. Vous remarquez que toutes les pages à partir de la table des matières sont numérotées par les chiffres romains alors que cette numérotation doit s’arrêter à la page contenant la liste des abréviations.

Pour régler ce problème, et avoir une numérotation en chiffres arabes à partir de l’introduction générale, insérez les deux lignes de code suivantes dans la zone 5 après la commande \input{IntroductionGenerale/IntroductionGenerale}:

Compilez pour voir le résultat.

Les entêtes et pieds de pages

Théorie

Les en-têtes et les pieds de page sont les zones qui apparaissent dans les marges supérieures et inférieures de chaque page dans un document. Dans cette partie je vais vous expliquez comment créer des entêtes et pieds de page personnalisés pour votre mémoire avec LaTex.

Par défaut LaTeX propose principalement trois styles pour les en-têtes et pieds de page :

Le style empty : aucun en-tête et aucun pied de page ne seront affichés.
Le style plain (c’est le style par défaut) : seul le numéro de page est affiché au centre du pied de page.
Le style headings : les en-têtes et les pieds de page sont définis automatiquement selon la classe de document utilisée (book, report, article…etc).

Pour utiliser l’un de ces styles, il suffit d’inclure la commande ci-dessous en spécifiant le nom de style.

Il est bien sur possible de passer outre ces styles et de paramétrer soi-même les en-têtes et les pieds de page grâce au package fancyhdr et c’est ce que nous allons appliquer à notre mémoire.

Afin que vous puissiez créer des entêtes et pieds de pages personnalisés pour votre mémoire, vous devez ajouter un nouveau package dans la zone 1 de document Main.tex, ce package s’appelle fancyhdr, faites cela en recopiant la ligne de code suivante :

La commande qui permet d’utiliser des entêtes et pieds de pages personnalisés est : \pagestyle{fancy} (fournie par le package fancyhdr).

\pagesstyle{fancy} découpe chaque entêtes et pieds de pages en trois segments. Le paramétrage des en-têtes se fait avec la commande \fancyhead[zone]{contenu} et le paramétrage des pieds de page avec la commande \fancyfoot[zone]{contenu}.

Pour définir la zone, on utilise le codage suivant :
L : champ gauche pour toutes les pages.
LE : champ gauche pour les pages paires.
LO : champ gauche pour les pages impaires.
C : champ central pour toutes les pages.
CE : champ central pour les pages paires.
CO : champ central pour les pages impaires.
R : champ droit pour toutes les pages.
RE : champ droit pour les pages paires.
RO : champ droit pour les pages impaires.

Pour le contenu, on dispose de toutes les commandes de formatage de texte de LaTeX, ainsi que des instructions suivantes :

\thepage : imprime le numéro de la page courante.
\thesection : imprime le numéro de la section courante.
\thechapter avec un document du type books ou report : imprime le numéro du chapitre courant.
\leftmark : avec un document du type article, imprime le nom de la section courante avec un document du type books ou report, imprime le nom du chapitre courant.
\rightmark : avec un document du type article, imprime le nom de la sous-section courante avec un document du type books ou report, imprime le nom de la section courante.

Pour forcer une zone à rester vide, il suffit d’utiliser les commandes \fancyhead[zone concernée] {}, pour les en-têtes et \fancyfoot[zone concernée]{}, pour les pieds de page.

Pour forcer l’affichage d’une ligne horizontale, on utilise la commande \renewcommand{\headrulewidth}{1pt}, pour les en-têtes et \renewcommand{\footrulewidth}{1pt}, pour les pieds de page.

Pour ne pas afficher de ligne horizontale, on fait appelle à la commande \renewcommand{\headrulewidth}{0pt}, pour les en-têtes et \renewcommand{\footrulewidth}{0pt}, pour les pieds de page.

Application: Revenons au fichier Main.tex

Afin que vous puissiez créer des entêtes et pieds de pages personnalisés pour votre mémoire, n’oublier pas de rajouter le package fancyhdr, si ce n’est pas encore fait, recopier la ligne de code suivante dans la zone 1 de document Main.tex:

Afin d’avoir un bon résultat lors de la compilation, je vous recommande d’ajouter un texte à vos chapitres même si c’est un faut texte, pour créer des entêtes qui ressemblent à la capture d’écran ci-dessous. Le texte utilisé ci-dessous est un « faux texte » généré par le site internet lipsum.com.

entete

Vous devez écrire le code suivant dans la zone 3 de document Main.tex:

Pour créer des pieds de pages qui ressemble à la capture d’écran ci-dessous :

pied de page

Vous devez écrire le code suivant dans la zone 3 de document Main.tex.

Et pour forcer l’affichage d’une ligne horizontale à notre pied de page, il suffit de rajouter la commande suivante dans le fichier Main.tex après la commande \pagestyle{fancy}:

Voici le résultat après la compilation :

pied de page

Le document Bibliographie

Avant de parler technique, j’aimerais bien parler de principe de la bibliographie.

La bibliographie c’est les pages dans lesquelles vous citez vos références ou bien les œuvres auxquelles vous avez fait recours pour réaliser votre mémoire.

Pour créer une bibliographie, vous devez d’abord rassemblez toutes les informations concernant les œuvres constituant les références de votre mémoire(le titre de l’œuvre, les auteurs, la date de publication…etc.) dans la page Bibliographie et d’associer ensuite à chaque œuvre une étiquette (Un numéro par exemple), puis d’utiliser cette étiquette dans son mémoire afin de faire référence à l’œuvre concernée.

Principe de la bibliographie avec Latex

On liste d’abord les ressources documentaires de son mémoire dans un fichier portant l’extension .bib, ce dernier sera notre base de données contenant les références, il va contenir toutes les informations concernant chaque œuvre (auteur, date de publication,…etc.), puis associer à chaque œuvre une étiquette.

L’auteur va ensuite appeler ces œuvres dans son mémoire à partir des fichiers ayant l’extension .tex en utilisant les étiquettes relatives au œuvres concernés.

Votre travail avec la bibliographie se termine ici, et c’est à LaTex de faire le reste. LaTex va sélectionner dans la base de données qu’a été crée précédemment, c.-à-d. dans le fichier ayant l’extension .bib, les œuvres appelés dans les fichiers .tex puis il créera la bibliographie pour votre mémoire.

Passons à la pratique !

Dans un premier temps nous allons créer la base de données (le fichier .bib).

Création de la base de données

La base de données se constitue de paragraphes contenant chacun des informations sur les œuvres de la bibliographie.

Créer un nouveau fichier, qui contiendra la base de données, puis enregistrez-le dans le dossier Bibliographie sous le nom BibliographieBDD.bib.

Pour ajouter une œuvre à la base de données (le fichier BibliographieBDD.bib) on utilise la commande ci-dessous:

Explication :

@type_d’œuvre peut prendre l’une de ces valeurs :

  • @article (pour un œuvre de type article),
  • @book (un livre),
  • @manual (un document technique),
  • @misc (utilisé pour les sites web et ce qui ne trouve pas sa place ailleurs),
  • @phdthesis (pour les thèses de doctorat),
  • @unpublished (pour un manuscrite non publié)

Référence_courte : c’est une étiquète par exemple ref1, ref2 ou AN12….
Pour Titre_du_champi (i = 1.2.3…) il peut prendre les valeurs suivantes:

  • author : l’auteur de l’oeuvre.
  • journal : le journal où a été publié s’il s’agit d’un œuvre de type article.
  • title : le titre de l’oeuvre.
  • year : l’année de publication.
  • month : le mois de publication.
  • pages : le numéro de la page concernée.
  • notes : notes complimentaires.
  • publisher : l’éditeur.
  • organization : le nom de l’organisme.
  • school : l’université ou bien l’école (en cas d’une thèse par exemple).

Il en existe aussi d’autres champs, mais ceux-cités ci-dessus sont les plus utilisés.

Pour author, les noms et prénoms sont séparés par une virgule, et les différents auteurs par AND.

Vous pouvez créer autant d’œuvre que vous souhaitez. De plus, si vous essayez d’écrire entre deux œuvres votre texte sera ignoré et sera considéré comme commentaire.

Je vais vous donnez un exemple illustratif d’une bibliographie, et c’est à vous de l’adapter à vous besoin.

Ouvrez le fichier BibliographieBDD.bib puis recopiez la portion de code ci-dessous (il s’agit de deux œuvre : un livre et une thèse de doctorat respectivement):

Le fichier Bibliographie.tex

Apprenons maintenant à nous servir de cette base de données. Pour faire des références à des éléments de la base de données, on fait appel à la commande \cite{référence_courte} que nous placerons à l’endroit voulu dans le texte (dans les fichiers .tex).

Deux autres commandes, \bibliographystyle{ } et \bibliography{nom du fichier .bib sans l’extension .bib} servent respectivement à donner à LaTeX le style de mise en page souhaitée pour la bibliographie ainsi que la localisation de la base de données.

Les éléments de la base de données auxquels les commandes \cite{référence_courte} font référence seront listés avec leurs informations respectives dans une page « Bibliographie».

Voici quelques exemples, illustrant les différents styles de bibliographies possibles:

\bibliographystyle{plain} : classe les entrées par ordre alphabétique et les numérote en conséquence.
\bibliographystyle{abbrv}: classe les entrées par ordre alphabétique, les numérote en conséquence et abrège certains éléments de la bibliographie (figure suivante).
\bibliographystyle{unsrt}: trie les entrées par ordre d’apparition dans le texte (figure suivante).
\bibliographystyle{alpha} le repère n’est plus un chiffre mais les trois premières lettres du nom de l’auteur ainsi que les deux derniers chiffres de l’année de parution.

Application

Ouvrez le fichier Bibliographie.tex, puis recopiez le code suivant après la commande \addcontentsline{toc}{chapter}{Bibliographie}:

pour prendre en considération les modifications faites sur la base de données vous devez compilez deux fois avant de visionner votre mémoire.

Si vous essayez de compiler le document Main.tex et voir le résultat, vous aurez une page Bibliographie blanche, et cela parce que vous n’avez pas injecté la commande \cite{référence_courte} dans votre texte. Ouvrez l’un des fichiers .tex, prenons par exemple le fichier Chapitre1.tex, puis ajouter le texte ci-dessous (le texte que j’ai ajouté est généré aléatoirement):

Compilez deux fois votre document Main.tex pour voir le résultat.

Voici le résultat de compilation de la page 1 de chapitre 1:

Bibliographie

La page bibliographie

Bibliographie

La Page De Garde

Voici le code qui vous permet d’avoir une page de garde comme celle ci-dessous :

Page de garde

Recopiez ce code dans le fichier page PageDeGarde.tex

Conclusion

Chers amis, vous qui avez suivi avec attention jusque là, je dois vous annoncer que vous arrivez à la fin de ce tutoriel. je vous informe que vous pouvez personnalisé ce modèle comme bon vous semble et vous pouvez télécharger le projet complet ici. Si vous avez des question posez les via les commentaires.

Vous aimerez aussi ...

4 Reponses

  1. Boukhalfa dit :

    Bonjour, comment mettre l’entête de la bibliographie en gras et minuscule et non pas en majuscule?

  2. Khichane dit :

    Salut mon frère j’arrive pas à afficher les accents correctement dans les chapitres.

  3. nassira dit :

    merci boucouq

  4. grossmann dit :

    Salut
    J’ai juste remarqué que quand on met des accents dans les sous fichiers, ceux qui sont appelés par le fichier main les accents ne passent pas
    auriez vous une explication ?
    merci bien

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *