% \iffalse meta-comment
%
% Copyright (C) 2019 Universite Laval
%
% This file may be distributed and/or modified under the conditions
% of the LaTeX Project Public License, either version 1.3c of this
% license or (at your option) any later version. The latest version
% of this license is in:
%
%   http://www.latex-project.org/lppl.txt
%
% and version 1.3c or later is part of all distributions of LaTeX
% version 2006/05/20 or later.
%
% This work has the LPPL maintenance status `maintained'.
%
% The Current Maintainer of this work is Universite Laval
% <ulthese-dev@bibl.ulaval.ca>.
%
% This work consists of the files ulthese.dtx and ulthese.ins
% and the derived files listed in the README.md file.
%
% \fi
%
% \iffalse
%<*dtx>
\ProvidesFile{ulthese.dtx}
%</dtx>
%<class>\NeedsTeXFormat{LaTeX2e}[2009/09/24]
%<class>\ProvidesClass{ulthese}%
%<*class>
  [2019/11/29 v5.3 Universite Laval thesis and memoir class]
%</class>
%<*driver>
\documentclass[11pt,english,french]{ltxdoc}
  \usepackage[utf8]{inputenc}
  \usepackage[T1]{fontenc}
  \usepackage{natbib}
  \usepackage{babel}
  \usepackage[autolanguage]{numprint}
  \usepackage{microtype}
  \usepackage[scaled=0.92]{helvet}
  \usepackage[scaled=1.02]{inconsolata}
  \usepackage[sc]{mathpazo}
  \usepackage{fontawesome}
  \usepackage{metalogo}
  \usepackage{tabularx,booktabs,caption}
  \DisableCrossrefs
  \CodelineNumbered
  \RecordChanges
  \GlossaryPrologue{\section*{Historique des versions}%
    \addcontentsline{toc}{section}{Historique des versions}}

  %% Couleurs
  \usepackage{xcolor}
  \definecolor{link}{rgb}{0,0.4,0.6}   % ~RoyalBlue de dvips
  \definecolor{url}{rgb}{0.6,0,0}      % rouge foncé
  \definecolor{citation}{rgb}{0,0.5,0} % vert foncé

  %% Liste description alignée à gauche
  \usepackage{enumitem}
  \setlist[description]{leftmargin=*,align=left}

  %% Environnement pour remarques
  \usepackage{amsthm}
  \theoremstyle{definition}
  \newtheorem*{rem}{Remarque}

  %% Hyperliens
  \usepackage{hyperref}
  \hypersetup{%
    pdfauthor = {Faculté des études supérieures et postdoctorales},
    pdftitle = {Guide de l'utilisateur de la classe ulthese},
    colorlinks = {true},
    linktocpage = {true},
    urlcolor = {url},
    linkcolor = {link},
    citecolor = {citation},
    pdfpagemode = {UseOutlines},
    pdfstartview = {Fit},
    bookmarksopen = {true},
    bookmarksnumbered = {true},
    bookmarksdepth = {subsubsection}}
  \addto\extrasfrench{%
    \def\appendixautorefname{annexe}%
    \def\tableautorefname{tableau}%
    \def\subsectionautorefname{section}%
  }

  %% Paramétrage de babel
  \frenchbsetup{%
    StandardItemizeEnv=true,       % listes standards
    ThinSpaceInFrenchNumbers=true, % espace fine dans les nombres
    og=«, fg=»                     % « et » sont les guillemets
  }
  \def\frenchtablename{{\scshape Tab.}}

  %% Commandes de mise en forme spéciales
  \newcommand{\class}[1]{\textsf{#1}}
  \newcommand{\pkg}[1]{\textbf{#1}}

  %% Commandes pour les liens vers la documentation
  \newcommand{\link}[2]{\href{#1}{#2~\raisebox{-0.2ex}{\faExternalLink}}}
  \newcommand{\doc}[2][documentation]{\link{#2}{#1}}

  %% Francisation d'un mot clé de l'historique des commandes
  \def\generalname{Général}

\begin{document}
  \DocInput{ulthese.dtx}
\end{document}
%</driver>
% \fi
% \CheckSum{0}
% \DoNotIndex{\',\^,\`,\ ,\ae}
% \DoNotIndex{\RequirePackage,\ExecuteOptions,\ProcessOptions}
% \DoNotIndex{\newcommand,\newcommand*}
% \DoNotIndex{\setlength}
% \changes{4.4}{2017-05-16}{Prise en charge des bibliographies
%   multiples pour les thèses et mémoires par articles.}
% \changes{4.4}{2017-05-16}{Documentation révisée, principalement ce
%   qui touche à la préparation de la bibliographie.}
% \changes{4.3}{2017-03-01}{Nouvelles options pour les titres de
%   docteur en musique, maître en architecture, maître en
%   ergothérapie, maître en physiothérapie et maître en
%   psychoéducation.}
% \changes{4.3}{2017-03-01}{Modifications à la composition des sigles de
%   grades.}
% \changes{4.3}{2017-03-01}{Vérification de la compatibilité entre le
%   grade et les options multifacultaire, cotutelle, bidiplomation et
%   extension.}
% \changes{4.3}{2017-03-01}{Améliorations à la documentation.}
% \changes{4.2}{2016-03-29}{Ajout de l'option «examen».}
% \changes{4.1}{2016-02-13}{Paquetage geometry déclaré incompatible
%   avec la classe.}
% \changes{4.0}{2015-06-12}{Nouvelles règles de présentation matérielle
%   de la FESP: recto seulement, page frontispice.}
% \changes{3.1}{2014-05-23}{Prise en charge de la maîtrise en bidiplomation.}
% \changes{3.0a}{2014-03-24}{Modifications et corrections à la
%   documentation, notamment relativement à la configuration de natbib.}
% \changes{3.0}{2014-01-06}{Déclaration du grade en option de la
%   classe.}
% \changes{3.0}{2014-01-06}{Moteur XeLaTeX supporté.}
% \changes{3.0}{2014-01-06}{Ajout de l'option nobabel.}
% \changes{2.1}{2013-01-16}{Utilisation transparente de la police
%   Helvetica pour la page de titre.}
% \changes{2.0}{2013-01-13}{Traitement automatique des longs titres.}
% \changes{1.0b}{2012-11-11}{Ajouts et corrections mineures dans la
%   documentation.}
% \changes{1.0a}{2012-10-17}{Précisions dans la documentation.}
% \changes{1.0}{2012-09-30}{Version initiale.}
% \GetFileInfo{ulthese.dtx}
% \title{\class{ulthese}: la classe pour les thèses et mémoires de
%   l'Université Laval\thanks{Ce document décrit la classe
%   \class{ulthese}~\fileversion, datée du \filedate.}}
% \author{Faculté des études supérieures et postdoctorales\thanks{%
%   Cette classe et sa documentation ont été rédigées par Vincent
%   Goulet~(Faculté des sciences et de génie) avec la collaboration de
%   Koassi D'Almeida~(Faculté des études supérieures et postdoctorales) et
%   de Pierre Lasou~(Bibliothèque).}}
% \date{}
% \maketitle
%
% \section{Introduction}
%
% La classe \class{ulthese} permet de composer avec {\LaTeX} ou
% {\XeLaTeX} des thèses et mémoires immédiatement conformes aux règles
% générales de présentation matérielle de la Faculté des études
% supérieures et postdoctorales (FESP) de l'Université Laval. Ces
% règles définissent principalement la présentation des pages de titre
% des thèses et mémoires ainsi que la disposition du texte sur la
% page. La classe en elle-même est donc relativement simple.
%
% Cependant, \class{ulthese} est basée sur la classe \class{memoir}
% \citep{memoir}, une extension de la classe standard \class{book}
% facilitant à plusieurs égards la préparation de documents d'allure
% professionnelle dans {\LaTeX}. La classe \class{memoir} incorpore
% d'office plus de 30 des paquetages les plus populaires\footnote{%
% Consulter la section~18.24 de la documentation de \class{memoir}
% pour la liste ou encore le journal de la compilation (\emph{log})
% d'un document utilisant la classe \class{ulthese}.}. %
% L'intégralité des fonctionnalités de \class{memoir} se retrouve donc
% dans \class{ulthese}.
%
% La classe \class{memoir} fait partie des distributions {\LaTeX}
% modernes; elle devrait donc être installée et disponible sur votre
% système. Elle est livrée avec une %
% \doc{http://texdoc.net/pkg/memoir} %
% exhaustive: le guide de l'utilisateur fait près de 600~pages!
% N'hésitez pas à vous y référer pour réaliser une mise en page
% particulière.
%
% L'autre compagnon naturel de la présente documentation est
% \doc[Rédaction avec {\LaTeX}]{http://texdoc.net/pkg/formation-latex-ul} ^^A
% \citep{formation-latex-ul}, la formation {\LaTeX} de l'Université Laval.
% Vous y trouverez des informations additionnelles sur l'utilisation des
% classes \class{ulthese} et \class{memoir}.
%
% \section{Démarrage rapide (pour les impatients)}
% \label{sec:utilisation:rapide}
%
% La classe est livrée avec les distributions {\TeX}~Live, Mac{\TeX} et
% MiK{\TeX}. Si vous utilisez l'une ou l'autre de ces distributions et
% qu'elle est à jour\footnote{%
%   Validez à l'aide de l'assistant de mise à jour de votre
%   distribution.}, %
% vous devriez pouvoir utiliser \class{ulthese} sans autre
% intervention.
%
% Il est recommandé de segmenter tout document d'une certaine ampleur
% dans des fichiers |.tex| distincts pour chaque partie ---
% habituellement un fichier par chapitre. Le document complet est alors
% composé à l'aide d'un fichier maître qui contient le préambule
% {\LaTeX} et un ensemble de commandes \cmd{\include} pour réunir les
% parties dans un tout.
%
% La classe \class{ulthese} est livrée avec un ensemble de gabarits sur
% lesquels se baser pour:
% \begin{itemize}
% \item le document maître de divers types de thèses et de mémoires
%   (standard, par articles, en cotutelle, en bidiplomation);
% \item les fichiers des parties les plus usuelles (résumés français
%   et anglais, avant-propos, introduction, chapitres, conclusion,
%   etc.).
% \end{itemize}
% Les noms des fichiers devraient permettre de facilement identifier
% leur contenu (c'est là une bonne pratique: le nom |rappels.tex|
% parle de lui-même et résiste mieux aux changements à l'ordre des
% chapitres que |chapitre1.tex|).
%
% Dans {\TeX}~Live, les gabarits sont classés avec la documentation de
% la classe. Pour les utiliser, copiez les fichiers appropriés dans votre
% dossier de travail.
%
% Pour débuter la rédaction, renommez le gabarit de document maître
% approprié d'après votre numéro de dossier. Par exemple, l'étudiante
% dont le numéro de dossier est 111555555 et qui entame la rédaction
% d'une thèse par articles renommera le fichier
% \begin{quote}
%   |gabarit-doctorat-articles.tex|
% \end{quote}
% en
% \begin{quote}
%   |111555555.tex|.
% \end{quote}
%
% Les gabarits comportent des commentaires succincts pour vous guider
% dans la préparation de votre document. La \autoref{sec:gabarits}
% fournit les informations détaillées.
%
% \section{Installation}
%
% Cette section explique comment installer la classe \class{ulthese}
% si elle n'est pas disponible sur votre système ou si la version
% n'est pas à jour.
%
% La classe est distribuée sous forme d'une archive |ulthese.zip| via
% le réseau de sites \emph{Comprehensive {\TeX} Archive Network} (CTAN):
% \begin{quote}
%   \url{https://www.ctan.org/pkg/ulthese}
% \end{quote}
%
% L'installation de la classe consiste à créer le fichier
% |ulthese.cls| et les gabarits |.tex| à partir du code source
% documenté se trouvant dans le fichier |ulthese.dtx|. Il est
% recommandé de simplement créer ces fichiers dans le dossier de
% travail de la thèse ou du mémoire.
%
% Pour procéder à l'installation, décompressez l'archive |ulthese.zip|
% dans votre dossier de travail, puis compilez avec {\LaTeX} le fichier
% |ulthese.ins| en exécutant la commande suivante depuis une invite
% de commande:
% \begin{quote}
%   |latex ulthese.ins|
% \end{quote}
% Vous pouvez aussi ouvrir le fichier |ulthese.ins| dans votre éditeur
% de texte favori et lancer depuis celui-ci la compilation avec
% {\LaTeX}, pdf{\LaTeX}, {\XeLaTeX} ou un autre moteur {\TeX}.
%
% \section{Utilisation}
%
% La classe est compatible avec les moteurs {\LaTeX} traditionnels
% ainsi qu'avec le plus récent moteur {\XeLaTeX}.
%
% On charge la classe avec la commande
% \begin{quote}
% |\documentclass|\oarg{options}|{ulthese}|
% \end{quote}
% Les marges, l'interligne et la numérotation des pages sont adaptées
% aux règles de présentation matérielle de la FESP. Les sections
% suivantes décrivent les options et les commandes définies par la
% classe.
%
% \changes{5.0}{2018-04-24}{La classe ne crée plus de page de titre
%   suite à une nouvelle directive de la FESP.}
% \begin{rem}
%   Depuis la version 5.0, la classe ne crée plus de page de titre
%   par défaut, sa production étant désormais prise en charge par la
%   FESP. Néanmoins, les fonctionnalités de composition d'une page
%   de titre demeurent disponibles dans la classe. Les commandes
%   pertinentes sont regroupées à l'\autoref{sec:pagetitre}.
% \end{rem}
%
% \subsection{Options de la classe}
% \label{sec:utilisation:options}
%
% Cette section passe en revue les \meta{options} que l'on peut
% spécifier au chargement de la classe. Les commandes mentionnées
% ci-dessous font quant à elles l'objet de la
% \autoref{sec:utilisation:commandes}.
%
% \begin{DescribeMacro}{PhD,MSc,MA, ...}
%   Identifie le type de grade; consulter le \autoref{tab:grades} pour
%   la liste complète des options et les grades correspondants. La
%   déclaration d'un type de grade est obligatoire, sauf en cas de
%   l'utilisation de l'option |projet| (voir ci-dessous).
% \end{DescribeMacro}
%
% \begin{table}[t]
%   \centering
%   \caption{Options de la classe pour la déclaration du grade et libellés
%     correspondants}
%   \label{tab:grades}
%   \begin{tabularx}{0.85\linewidth}{lX}
%     \toprule
%     Option & Nom du grade (sigle) \\
%     \midrule
%     |LLD|
%       & Docteur en droit (LL.~D.) \\
%     |DMus|
%       & Docteur en musique (D.~Mus.) \\
%     |DPsy|
%       & Docteur en psychologie (D.~Psy.) \\
%     |DThP|
%       & Docteur en théologie pratique (D.~Th.~P.) \\
%     |PhD|
%       & Philosophi{\ae} doctor (Ph.~D.) \\
%     \addlinespace[6pt]
%     |MATDR|
%       & Maître en aménagement du territoire et développement régional
%       (M.ATDR) \\
%     |MArch|
%       & Maître en architecture
%       (M.~Arch.) \\
%     |MA|
%       & Maître ès arts (M.A.) \\
%     |LLM|
%       & Maître en droit (LL.~M.) \\
%     |MErg|
%       & Maître en ergothérapie (M.~Erg.) \\
%     |MMus|
%       & Maître en musique (M.~Mus.) \\
%     |MPht|
%       & Maître en physiothérapie (M.~Pht.) \\
%     |MSc|
%       & Maître ès sciences (M.~Sc.) \\
%     |MScGeogr|
%       & Maître en sciences géographiques (M.~Sc.~géogr.) \\
%     |MServSoc|
%       & Maître en service social (M.~Serv.~soc.) \\
%     |MPsEd|
%       & Maître en psychoéducation (M.~Ps.~éd.) \\
%     \bottomrule
%   \end{tabularx}
% \end{table}
%
% \begin{DescribeMacro}{cotutelle}
%   Identifie une thèse effectuée en cotutelle avec une autre
%   université. Valide uniquement avec un grade de doctorat.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{bidiplomation}
%   Identifie un mémoire effectué en bidiplomation avec une autre
%   université. Valide uniquement avec un grade de maîtrise.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{examen}
%   Identifie un examen de doctorat. Cette option permet d'utiliser la
%   classe pour la rédaction d'un examen de doctorat respectant les
%   règles de présentation matérielle de la FESP. Elle a pour effet de
%   changer l'appellation «Thèse» sur la page de titre pour «Examen
%   de doctorat». Elle supprime également la page frontispice.
%   L'option n'est compatible qu'avec l'une des options de grade de
%   doctorat.
% \end{DescribeMacro}
%
% \changes{5.0}{2018-05-09}{Ajout d'une option «essai» pour les
%   maîtrises analogue à «examen» pour les doctorats.}
% \changes{5.2}{2019-05-06}{L'option «essai» n'empêche plus
%   l'utilisation d'une page frontispice.}
% \begin{DescribeMacro}{essai}
%   Identifie un essai de maîtrise. Cette option permet d'utiliser la
%   classe pour la rédaction d'un essai de maîtrise respectant les
%   règles de présentation matérielle de la FESP. Elle a pour effet de
%   changer l'appellation «Maîtrise» sur la page de titre pour
%   «Essai». L'option n'est compatible qu'avec l'une des options de
%   grade de maîtrise. Pour un essai de maîtrise, l'utilisation
%   simultanée de l'option |article| de la classe \class{memoir} peut
%   s'avérer tout indiquée.
% \end{DescribeMacro}
%
% \changes{5.2}{2019-05-06}{Ajout d'une option «projet» pour les
%   cours de projet de recherche.}
% \begin{DescribeMacro}{projet}
%   Identifie un projet de recherche. Cette option permet d'utiliser
%   la classe pour la rédaction d'un rapport de projet de recherche
%   respectant les règles de présentation matérielle de la FESP. Elle
%   a pour effet d'inscrire l'appellation «Projet de recherche» sur la
%   page de titre et de supprimer la mention du grade. L'utilisation
%   de cette option rend d'ailleurs non obligatoire la déclaration de
%   grade qui, si elle est présente, est simplement ignorée. Comme
%   pour un essai de maîtrise, l'utilisation simultanée de l'option
%   |article| de la classe \class{memoir} peut s'avérer tout indiquée
%   avec les cette option.
% \end{DescribeMacro}
%
% \changes{5.3}{2019-11-29}{Ajout d'une option «stage» pour les
%   rapports de stage.}
% \begin{DescribeMacro}{stage}
%   Identifie un rapport de stage. L'effet de cette option est
%   identique à celui de l'option |projet| à deux exceptions près:
%   l'inscription sur la page de titre est «Rapport de stage» et la
%   page frontispice est supprimée.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{10pt,11pt,12pt}
%   Sélectionne une taille de police de 10, 11 ou 12~points. Par
%   défaut la classe utilise une police de 11~points. Ces options
%   n'ont aucun effet sur la taille des polices des pages de titre.
% \end{DescribeMacro}
%
% \changes{4.4}{2017-05-15}{Ajout de l'option bibchapitre.}
% \changes{4.4}{2017-05-15}{Ajout de l'option bibsection.}
% \begin{DescribeMacro}{bibchapitre}
%   \begin{DescribeMacro}{bibsection}
%     Permettent de composer une bibliographie distincte après chaque
%     fichier inséré dans le document avec \cmd{\include},
%     habituellement un chapitre; voir la
%     \autoref{sec:bibliographie:multiples}. Ces options sont
%     principalement utiles pour les thèses et mémoires par articles.
%     La bibliographie se présente sous la forme d'un chapitre non
%     numéroté avec |bibchapitre|, et sous la forme d'une section
%     numérotée avec |bibsection|.
%   \end{DescribeMacro}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{nonatbib}
%   Empêche le chargement du paquetage \pkg{natbib}. La paquetage est
%   normalement chargé par la classe; voir la
%   \autoref{sec:bibliographie}. L'option |nonatbib| permet d'empêcher
%   le chargement pour modifier les options du paquetage ou en cas de
%   conflit avec un autre paquetage de mise en forme de la
%   bibliographie.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{nobabel}
%   Empêche le chargement du paquetage \pkg{babel}. La classe utilise
%   par défaut ce paquetage pour le traitement des langues dans le
%   document; voir la \autoref{sec:langues}. L'option |nobabel| permet
%   d'empêcher son chargement si un autre paquetage devait être
%   utilisé --- on pense ici principalement à \pkg{polyglossia} pour
%   un document produit avec le moteur {\XeLaTeX}.
% \end{DescribeMacro}
%
% \changes{5.1}{2018-09-30}{Ajout de l'option nohyperref.}
% \begin{DescribeMacro}{nohyperref}
%   Empêche le chargement du paquetage \pkg{hyperref}. L'interaction
%   de ce paquetage avec les autres est parfois --- voire souvent ---
%   délicate. La classe se charge de le charger en tout dernier tel
%   que généralement recommandé. L'option |nohyperref| permet
%   d'empêcher son chargement s'il est absolument nécessaire de
%   charger d'autres paquetages avant \pkg{hyperref}. Si vous utilisez
%   cette option, vous devez obligatoirement charger \pkg{hyperref}
%   dans le préambule du document.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{english, french, ...}
%   Déclare les langues utilisées dans le document. Ces options sont
%   transférées au paquetage \pkg{babel} (dans la mesure où |nobabel|
%   n'est pas spécifié, bien entendu). Le libellé des langues devrait
%   donc correspondre aux options de \pkg{babel}. La dernière langue
%   spécifiée est la langue active par défaut dans le document.
% \end{DescribeMacro}
%
% Toute autre option sera passée à la classe \class{memoir} dont,
% entre autres, le format du papier. Le format lettre nord-américain
% (option |letterpaper|) est utilisé par défaut. Si votre thèse doit
% être imprimée en format international A4, utilisez l'option
% |a4paper|. La classe \class{memoir} est toujours chargée avec
% l'option |oneside|.
%
% \subsection{Commandes de la classe}
% \label{sec:utilisation:commandes}
%
% La classe \class{ulthese} définit quelques nouvelles commandes
% servant principalement à créer la page frontispice et des éléments
% des pages liminaires. Le sommaire des commandes se trouve dans le
% \autoref{tab:commandes} et les descriptions détaillées, ci-dessous.
%
% \begin{table}[t]
%   \centering
%   \caption{Sommaire des commandes de la classe \class{ulthese}.
%     Celles marquées d'une étoile $^\star$ sont obligatoires.}
%   \label{tab:commandes}
%   \begin{tabularx}{\linewidth}{lX}
%     \toprule
%     Commande & Usage \\
%     \midrule
%     \cmd{\titre}$^\star$ & titre principal du document \\
%     \cmd{\soustitre} & sous-titre du document \\
%     \cmd{\auteur}$^\star$ & nom complet de l'auteur \\
%     \cmd{\programme}$^\star$ & nom officiel du programme d'études \\
%     \cmd{\direction}$^\star$ & nom du directeur (directrice) de recherche \\
%     \cmd{\codirection} & noms des codirecteurs de recherche \\
%     \cmd{\frontispice}$^\star$ & production de la page frontispice \\
%     \cmd{\dedicace} & dédicace du document \\
%     \cmd{\epigraphe} & épigraphe du document \\
%     \bottomrule
%   \end{tabularx}
% \end{table}
%
% \begin{DescribeMacro}{\titre}
%   Titre principal de la thèse ou du mémoire. Ne pas utiliser la
%   commande \cmd{\title} de {\LaTeX} pour ce faire.
%
%   Vous devez couper manuellement avec |\\| ou \cmd{\newline} un
%   titre très long. Par exemple, la déclaration d'un titre d'une
%   seule ligne est:
%   \begin{quote}
%     |\titre{Ceci est un titre d'une seule ligne}|
%   \end{quote}
%   Pour un titre de deux lignes, ce sera plutôt:
%   \begin{quote}
%     |\titre{Ceci est la première ligne d'un long titre \\| \\
%     |       et ceci est la seconde}|
%   \end{quote}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\soustitre}
%   Sous-titre de la thèse ou du mémoire, le cas échéant. Les remarques
%   sur un long titre principal s'appliquent également au sous-titre.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\auteur}
%   Nom complet de l'auteur de la thèse ou du mémoire, sous la forme
%   |Prénom Nom| avec seulement des majuscules initiales. Ne pas
%   utiliser la commande \cmd{\author} de {\LaTeX} pour le nom de
%   l'auteur.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\programme}
%   Nom complet officiel du programme d'études comme «Doctorat en
%   informatique» ou «Maîtrise en mathématiques». Si le programme
%   comporte une majeure, séparer sa mention de celle du programme
%   principal par un tiret demi-quadratin (obtenu avec |--|).
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\direction}
%   Nom complet du directeur ou de la directrice de recherche, sous la
%   forme |Prénom Nom| avec seulement des majuscules initiales, suivi
%   d'une virgule et de la mention «directeur de recherche» ou
%   «directrice de recherche».
%
%   Les thèses en cotutelle comportent un directeur ou une directrice
%   de recherche et un directeur ou une directrice de cotutelle.
%   Séparer chaque mention par |\\|, comme ceci:
%   \begin{quote}
%     |\direction{Prénom Nom, directrice de recherche \\| \\
%     |           Prénom Nom, directeur de cotutelle}|
%   \end{quote}
%
%   De même, les maîtrises en bidiplomation comptent deux directeurs
%   ou directrices de recherche. Séparer chaque mention tel que
%   mentionné ci-dessus.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\codirection}
%   Comme la commande \cmd{\direction}, mais pour le ou les
%   codirecteurs de recherche, s'il y a lieu. Lorsqu'il y a plus d'un
%   codirecteur de recherche, séparer chaque mention par |\\|, comme
%   ceci:
%   \begin{quote}
%     |\codirection{Prénom Nom, directrice de recherche \\| \\
%     |             Prénom Nom, directeur de recherche}|
%   \end{quote}
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\frontispice}
%   Création de la page frontispice. De toutes les commandes
%   ci-dessus, c'est la seule qui doit se trouver dans le corps du
%   document plutôt que dans le préambule.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\dedicace}
%   Ajout d'une dédicace («À mes parents», «À Camille») à la thèse ou
%   au mémoire. La dédicace est disposée seule sur une page liminaire,
%   à une dizaine de lignes de la marge du haut et alignée à droite.
%   Par défaut, elle est composée en italique.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\epigraphe}
%   Ajout d'une épigraphe au début du document. Comme la dédicace,
%   l'épigraphe est disposée seule sur une page liminaire, à une
%   dizaine de lignes de la marge du haut et alignée à droite. La
%   commande accepte deux arguments, soit le texte de la citation et
%   son auteur ou la source, dans l'ordre.
%
%   Pour ajouter une épigraphe au début d'un ou plusieurs chapitres,
%   utiliser directement la commande \cmd{\epigraph} de
%   \class{memoir}, sur laquelle \cmd{\dedicace} et \cmd{\epigraphe}
%   sont d'ailleurs basées.
% \end{DescribeMacro}
%
% \subsection{Citations}
% \label{sec:citations}
%
% {\LaTeX} offre deux environnements pour les citations dans le
% texte: |quote| et |quotation|.
%
% \begin{DescribeEnv}{quote}
%   L'environnement |quote| sert pour les citations «courtes»,
%   quelques lignes au plus. Dans la classe, le texte est alors placé
%   en retrait des marges normales de 10~mm à gauche et à droite.
% \end{DescribeEnv}
%
% \begin{DescribeEnv}{quotation}
%   L'environnement |quotation|, quant à lui, doit être utilisé pour
%   les citations «longues», celles qui peuvent s'étendre sur plus de
%   cinq lignes ou, surtout, plus d'un paragraphe. Dans la classe, le
%   texte est alors toujours placé en retrait de 10~mm, mais également
%   à interligne simple. De plus, un espace vertical sépare les
%   paragraphes, le cas échéant, afin de bien les distinguer les uns
%   des autres.
% \end{DescribeEnv}
%
% \subsection{Interligne}
% \label{sec:interligne}
%
% \begin{DescribeMacro}{\OnehalfSpacing}
%   L'espacement d'un interligne et demi utilisé dans la classe est
%   obtenu avec la commande \cmd{\OnehalfSpacing} de \class{memoir}.
%   L'interligne simple est automatiquement rétabli pour les pages
%   de titre, la table des matières, la liste des tableaux, la liste
%   des figures et les longues citations (\autoref{sec:citations}).
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\SingleSpacing}
%   Si ce devait être nécessaire ailleurs dans le document, la
%   commande \cmd{\SingleSpacing} permet de passer à l'interligne simple.
% \end{DescribeMacro}
%
% \subsection{Hyperliens}
% \label{sec:hyperliens}
%
% Lorsque le document est produit avec pdf{\LaTeX} ou {\XeLaTeX},
% toutes les références internes et externes sont automatiquement
% transformées en hyperliens cliquables. Ceux-ci apparaissent dans une
% teinte de bleu assez foncée tout à la fois visible en couleur et peu
% contrastante si le document est imprimé en noir et blanc.
%
% \begin{DescribeMacro}{\hypersetup}
%   Vous pouvez ajouter des options de configuration pour les
%   hyperliens ou les métadonnées du document PDF avec la commande
%   \cmd{\hypersetup} du paquetage \class{hyperref}.
% \end{DescribeMacro}
%
% \subsection{Autres paquetages chargés}
% \label{sec:paquetages}
%
% Outre \class{memoir}, la classe \class{ulthese} charge quelques
% paquetages qui peuvent aussi vous être utiles. Il n'est donc pas
% nécessaire de charger de nouveau les paquetages suivants:
% \begin{description}
% \item[\normalfont\pkg{babel}] \citep{babel} gestion des documents
%   rédigés dans une ou plusieurs langues autres que l'anglais (si
%   l'option |nobabel| de la classe est absente; voir aussi la
%   \autoref{sec:langues});
% \item[\normalfont\pkg{numprint}] \citep{numprint} requis par la
%   commande \cmd{\nombre} de \pkg{babel}; le paquetage est donc
%   chargé uniquement si \pkg{babel} l'est. Permet de composer
%   automatiquement des nombres avec un séparateur toutes les trois
%   positions (une espace en français);
% \item[\normalfont\pkg{natbib}] \citep{natbib} gestion de la
%   bibliographie (si l'option |nonatbib| de la classe est absente;
%   voir aussi la \autoref{sec:bibliographie});
% \item[\normalfont\pkg{chapterbib}] \citep{chapterbib} gestion de
%   bibliographies multiples (si l'une ou l'autre des options
%   |bibchapitre| ou |bibsection| est spécifiée;
%   voir aussi la \autoref{sec:bibliographie:multiples});
% \item[\normalfont\pkg{hyperref}] \citep{hyperref} permet de
%   transformer toutes les références en hyperliens cliquables lorsque
%   le document est produit avec pdf{\LaTeX} ou {\XeLaTeX} (si
%   l'option |nohyperref| est spécifiée, vous devez obligatoirement
%   charger le paquetage vous-même);
% \item[\normalfont\pkg{etoolbox}] \citep{etoolbox} outils
%   additionnels pour la conception de classes et de paquetages
%   (utilisé pour le chargement de \pkg{hyperref});
% \item[\normalfont\pkg{fontspec}] \citep{fontspec} gestion des
%   polices OpenType sous {\XeLaTeX} (chargé avec ce moteur
%   seulement);
% \item[\normalfont\pkg{graphicx}] \citep{graphicx} insertion et
%   manipulation de graphiques;
% \item[\normalfont\pkg{xcolor}] \citep{xcolor} gestion des couleurs
%   dans le document, notamment celle des hyperliens;
% \item[\normalfont\pkg{textcomp}] multitude de symboles spéciaux,
%   dont un beau symbole de copyright, \textcopyright.
% \end{description}
% L'\autoref{sec:meo} sur la mise en œuvre de la classe fournit
% plus de détails sur la liste des paquetages chargés et les raisons
% pour lesquelles ils sont requis dans la classe.
%
% \subsection{Paquetage incompatible}
% \label{sec:incompatible}
%
% Le paquetage \pkg{geometry} est incompatible avec la classe à cause
% de sa mauvaise interaction avec \class{memoir}. Son chargement dans
% le préambule du document cause une erreur lors de la compilation.
%
% \section{Thèses et mémoires par articles}
% \changes{5.0}{2018-06-08}{Ajout d'une section spécifique sur les
%   thèses et mémoires par articles.}
%
% La rédaction de la thèse ou du mémoire par articles est une pratique
% qui gagne en popularité. Elle consiste à remplacer le corps
% principal du manuscrit par un ou des articles scientifiques. Chaque
% article fait normalement l'objet d'un chapitre dans le document. Les
% résumés en français (obligatoire) et dans la langue de la thèse ou
% du mémoire (le cas échéant) y apparaissent sous forme de
% sections numérotées.
%
% L'autre caractéristique qui distingue la thèse et le mémoire par
% articles des versions standards, c'est la nécessité d'utiliser une
% bibliographie distincte pour chacun des chapitres. Les options de la
% classe |bibchapitre| et |bibsection| permettent de réaliser cette
% mise en forme particulière. La \autoref{sec:bibliographie:multiples}
% explique comment en tirer profit.
%
% Des gabarits de document maître et de chapitre fournissent la
% structure de base pour la thèse et le mémoire par articles. Vous
% pouvez, au besoin, combiner les caractéristiques de ces gabarits à
% celles de la thèse en cotutelle ou du mémoire en bidiplomation. La
% \autoref{sec:gabarits} fournit les détails sur les gabarits.
%
% \section{Français et autres langues}
% \label{sec:langues}
%
% Une complication additionnelle si vous rédigez dans une langue autre
% que l'anglais consiste à adapter {\LaTeX} à votre langue, qu'il
% s'agisse des mots clés, de la typographie ou de la césure des mots.
% La solution standard à ce problème provient du paquetage
% \pkg{babel}. Celui-ci permet de combiner plusieurs langues dans un
% même document et de passer de l'une à l'autre facilement. Il est
% chargé par défaut par la classe \class{ulthese}.
%
% Aucune langue n'est spécifiée dans la classe. Vous aurez sans doute
% recours à l'anglais et au français, ne serait-ce que pour les deux
% résumés demandés par la FESP. Vous devez spécifier les langues
% utilisées dans le document en options à la classe, tel que mentionné
% à la \autoref{sec:utilisation:options}. La \emph{dernière} langue
% spécifiée devient par défaut la langue active du document.
%
% \begin{DescribeMacro}{\selectlanguage}
%   La commande \cmd{\selectlanguage} de \pkg{babel} permet de passer de
%   la langue courante à la langue spécifiée en argument.
% \end{DescribeMacro}
%
% \begin{DescribeEnv}{otherlanguage}
%   L'environnement |otherlanguage| de \pkg{babel} permet de faire
%   la même chose que la commande \cmd{\selectlanguage}, sauf que le
%   changement de langue est local à l'environnement --- utile pour
%   les brefs changements de langue.
% \end{DescribeEnv}
%
% Si vous n'êtes pas autrement familier avec le paquetage
% \pkg{babel}, consultez sa %
% \doc{http://texdoc.net/pkg/babel/}. %
% Celle-ci est éclatée en un
% document principal, pour le cœur du paquetage et plusieurs
% autres pour les fonctionnalités propres à une langue: %
% \doc[anglais]{http://texdoc.net/pkg/babel-english}, %
% \doc[français]{http://texdoc.net/pkg/babel-french}, %
% etc. Consultez au moins les documents consacrés aux
% langues utilisées dans votre thèse ou mémoire. Le plus simple
% consiste sans doute à consulter en ligne sur CTAN les
% \link{https://mirrors.ctan.org/tex-archive/macros/latex/required/babel/contrib/}{%
% documents spécifiques par langue}.
% \changes{4.4}{2017-05-14}{Correction d'une url vers la documentation
%   de babel.}
%
% \begin{DescribeMacro}{\nombre}
%   Le paquetage \pkg{numprint} étant chargé dans la classe avec
%   \pkg{babel}, vous pouvez utiliser la commande \cmd{\nombre} pour
%   formater automatiquement les nombres. Par exemple, le résultat de
%   |\nombre{123456789}| est \nombre{123456789}.
% \end{DescribeMacro}
%
% Les utilisateurs de {\XeLaTeX} qui souhaiteraient plutôt utiliser le
% plus récent paquetage \pkg{polyglossia} \citep{polyglossia} peuvent
% empêcher le chargement de \pkg{babel} avec l'option |nobabel| de la
% classe. Ils devront toutefois charger et configurer
% \pkg{polyglossia} eux-mêmes dans l'entête de leur document. Ce
% paquetage est moins évolué que \pkg{babel} pour la typographie
% française.
%
% \section{Bibliographie}
% \label{sec:bibliographie}
%
% \begin{DescribeMacro}{\bibliography}
%   Tel qu'expliqué au chapitre~8 de \citet{formation-latex-ul},
%   il est fortement recommandé d'utiliser {\BibTeX} pour la
%   préparation de la bibliographie d'un document. Celle-ci est
%   insérée dans le document à l'endroit où apparait la commande
%   \cmd{\bibliography} dans le code source. Cette commande prend en
%   arguments les noms des bases de données bibliographiques séparés
%   par des virgules.
% \end{DescribeMacro}
%
% \subsection{Mise en forme des citations}
% \label{sec:bibliographie:options}
%
% Dans la classe \class{ulthese}, la mise en forme des citations est
% confiée au paquetage \pkg{natbib} (à moins que l'option |nonatbib|
% ne soit spécifiée). Le paquetage est chargé avec les options par
% défaut, soit |round|, |semicolon| et |authoryear|. Pour spécifier
% d'autres options, vous avez deux possibilités:
% \begin{enumerate}
% \item utiliser l'option |nonatbib| de la classe et ensuite charger
%   explicitement \pkg{natbib} avec ses options;
% \item
%   \begin{DescribeMacro}{\setcitestyle}
%     utiliser la commande \cmd{\setcitestyle} pour passer de
%     nouvelles options à \pkg{natbib}.
%   \end{DescribeMacro}
% \end{enumerate}
%
% Par exemple, pour utiliser un style de citation numérique où le
% numéro de la référence se trouve entre crochets, vous pouvez
% procéder de l'une ou l'autre des deux manières suivantes:
% \begin{quote}
%   |\documentclass[nonatbib]{ulthese}| \\
%   |\usepackage[numbers,square]{natbib}| \\
%   |...| \\
%   |\bibliographystyle{plain-fr}|
% \end{quote}
% ou
% \begin{quote}
%   |\documentclass{ulthese}| \\
%   |...| \\
%   |\setcitestyle{numbers,square}| \\
%   |\bibliographystyle{plain-fr}|
% \end{quote}
%
% Consultez la %
% \doc{http://texdoc.net/pkg/natbib/} %
% de \pkg{natbib} pour les détails.
%
% \subsection{Bibliographies multiples}
% \label{sec:bibliographie:multiples}
%
% L'ajout de |bibchapitre| ou de |bibsection| dans les options de la
% classe permet de générer une bibliographie distincte pour chaque
% chapitre, une chose particulièrement utile pour les thèses et
% mémoire par articles.
%
% La classe fait appel au paquetage \pkg{chapterbib}
% \citep{chapterbib} pour composer des bibliographies multiples. La
% \doc{http://texdoc.net/pkg/chapterbib/} du paquetage
% explique la procédure à suivre pour obtenir une bibliographie par
% chapitre avec {\BibTeX}. En résumé:
% \begin{enumerate}
% \item chaque chapitre comportant sa propre bibliographie doit
%   absolument être inséré dans le document principal avec la commande
%   \cmd{\include} \citep[section~3.5]{formation-latex-ul};
% \item chaque fichier visé doit contenir une commande
%   \cmd{\bibliographystyle} (\autoref{sec:bibliographie:style}) et
%   une commande \cmd{\bibliography};
% \item on obtient les diverses bibliographies en compilant avec
%   {\BibTeX} les fichiers individuels, et non le document maître.
% \end{enumerate}
%
% La plupart des auteurs préféreront sans doute l'effet de l'option
% |bibsection|, où la bibliographie apparait comme une section normale
% à la fin d'un chapitre. Lorsque \pkg{babel} est chargé, la section
% sera numérotée. Pour supprimer la numérotation, insérer dans le
% préambule du document la commande
% \begin{quote}
%   |\addto\extras|\meta{langue}|{\renewcommand{\bibsection}{%| \\
%   |  \section*{\bibname}\prebibhook}}|
% \end{quote}
% où \meta{langue} est la langue par défaut du document
% (\autoref{sec:langues}).
%
% \subsection{Style de la bibliographie}
% \label{sec:bibliographie:style}
%
% \begin{DescribeMacro}{\bibliographystyle}
%   Le format général de la bibliographie est contrôlé par un
%   \emph{style} choisi avec la commande \cmd{\bibliographystyle} dans
%   le préambule du document ou dans les fichiers de chaque chapitre
%   dans une thèse ou un mémoire par articles. Les styles standards de
%   {\LaTeX} sont |plain|, |unsrt|, |alpha| et |abbrv|.
% \end{DescribeMacro}
%
% Le paquetage \pkg{natbib} chargé par défaut par la classe supporte
% le style de citation auteur-année fréquemment employé en sciences
% naturelles, plusieurs commandes de citation, un grand nombre de
% styles de bibliographie ainsi que des entrées spécifiques pour les
% numéros ISBN et les URL. Le paquetage fournit des styles de
% bibliographie |plainnat|, |unsrtnat| et |abbrvnat| similaires aux
% styles standards, mais plus complets. Il existe des
% \link{https://mirrors.ctan.org/biblio/bibtex/contrib/bib-fr/}{versions
% francisées} de ces styles (et de quelques autres) dans CTAN.
%
% Le paquetage \pkg{francais-bst} \citep{francais-bst} fournit une
% feuille de style compatible avec \pkg{natbib} permettant de composer
% des bibliographies auteur-année respectant les normes de typographie
% française proposées dans \cite{Malo:1996}. Pour utiliser ce style,
% spécifier dans le préambule du document LaTeX
% \begin{quote}
%   |\bibliographystyle{francais}|
% \end{quote}
%
% Autrement, la FESP n'a pas d'exigences particulières quant à la
% présentation de la bibliographie (présentation du titre, des auteurs
% et autres informations bibliographiques).
%
% \section{Police de caractères du document}
% \label{sec:police}
%
% Les documents {\LaTeX} sont facilement reconnaissables par leur
% police de caractères par défaut, {\fontfamily{cmr}\selectfont
% Computer Modern}. Avec toute distribution {\LaTeX} moderne, il est
% maintenant simple d'utiliser l'une ou l'autre des polices PostScript
% standards. D'ailleurs la classe \class{ulthese} utilise la police
% sans empattements \textsf{Helvetica} pour composer les pages de
% titre.
%
% La FESP permet l'utilisation des polices Times, Palatino (la police
% du présent document) et Lucida~Bright dans les thèse et mémoires.
% \citet[section~10.2]{formation-latex-ul} explique comment utiliser ces
% polices dans votre document.
%
% \section{Gabarits}
% \label{sec:gabarits}
%
% Afin de vous épauler dans la préparation de votre manuscrit, la
% classe \class{ulthese} est livrée avec un ensemble de gabarits. Tout
% d'abord, pour le document maître de différents types de thèses et de
% mémoires:
% \begin{itemize}[noitemsep]
% \item |gabarit-doctorat.tex|;
% \item |gabarit-doctorat-articles.tex|;
% \item |gabarit-doctorat-cotutelle.tex|;
% \item |gabarit-maitrise.tex|;
% \item |gabarit-maitrise-articles.tex|;
% \item |gabarit-maitrise-bidiplomation.tex|.
% \end{itemize}
% Ensuite, pour quelques parties d'un document:
% \begin{itemize}[noitemsep]
% \item |resume.tex|;
% \item |abstract.tex|;
% \item |remerciements.tex|;
% \item |avantpropos.tex|;
% \item |introduction.tex|;
% \item |chapitre1.tex|;
% \item |chapitre1-articles.tex|;
% \item |chapitre2.tex|;
% \item |chapitre2-articles.tex|;
% \item |conclusion.tex|;
% \item |annexe.tex|.
% \end{itemize}
% Vous pourriez devoir combiner les caractéristiques de deux gabarits
% de document maître comme, par exemple, pour une thèse en cotutelle
% par articles.
%
% Les gabarits comportent des commentaires succincts pour vous guider
% dans leur utilisation. Les sections suivantes fournissent des
% détails additionnels, et ce, dans l'ordre où les commandes
% apparaissent dans les fichiers.
%
% \begin{rem}
%   Il n'y a pas de gabarit spécifique pour un examen de doctorat,
%   pour un essai de maîtrise, pour un projet de recherche ou pour un
%   rapport de stage. Utilisez un gabarit de thèse ou de maîtrise et
%   inscrivez l'option |examen|, |essai|, |projet| ou |stage| dans la
%   commande \cmd{\documentclass}.
% \end{rem}
%
% \subsection{Encodage des fichiers}
%
% Composer en {\LaTeX} de longs textes dans une langue ayant recours
% aux signes diacritiques devient rapidement pénible si l'on utilise
% des commandes telles que |\'e|, |\`a| ou |\"o| pour entrer des lettres
% accentuées. Afin de pouvoir plutôt entrer directement |é|, |à| ou
% |ö|, {\LaTeX} doit être configuré pour reconnaître les lettres
% accentuées. C'est le rôle du paquetage \pkg{inputenc}
% \citep{inputenc}.
%
% Il existe plusieurs manières différentes d'encoder --- ou
% d'enregistrer --- les lettres accentuées et autres caractères
% spéciaux (comme, par exemple, le symbole de l'euro) dans un
% ordinateur. La méthode la plus répandue et celle standard sur les
% versions récentes des systèmes d'exploitation Linux et macOS est
% l'UTF-8 de la norme
% \link{https://fr.wikipedia.org/wiki/Unicode}{Unicode}. Les gabarits
% sont livrés dans ce type d'encodage.
%
% La déclaration
% \begin{quote}
%   |\usepackage[utf8]{inputenc}|
% \end{quote}
% dans le préambule assure que {\LaTeX} traitera correctement des
% fichiers source encodés en UTF-8.
%
% La norme Unicode n'est pas aussi uniformément supportée par Windows.
% Selon l'éditeur de texte employé et la version du système
% d'exploitation, il peut être nécessaire d'utiliser les normes
% d'encodage %
% \link{https://fr.wikipedia.org/wiki/ISO_8859-1}{ISO~8859-1} %
% (ou Latin-1; option |latin1| de \pkg{inputenc}), %
% \link{https://fr.wikipedia.org/wiki/ISO_8859-15}{ISO~8859-15} %
% (ou Latin-9; option |latin9|) ou %
% \link{https://fr.wikipedia.org/wiki/Windows-1252}{Windows-1252} %
% (options |cp1252| ou |ansinew|).
%
% La situation est plus simple avec {\XeLaTeX} puisqu'il gère
% nativement Unicode. Le paquetage \pkg{inputenc} est non seulement
% inutile, mais incompatible avec {\XeLaTeX}. C'est pourquoi, dans les
% gabarits, \pkg{inputenc} est chargé seulement lorsque {\XeTeX}
% n'est pas le moteur employé pour compiler le document.
%
% \subsection{Paquetages additionnels}
%
% Tel qu'expliqué à la \autoref{sec:paquetages}, la classe charge déjà
% quelques paquetages. Cependant, il est fort probable que vous devrez
% en charger d'autres pour composer votre document. Les gabarits
% prévoient un endroit pour le chargement de paquetages additionnels.
%
% Si vous utilisez un paquetage non standard dans les distributions
% courantes (\TeX~Live, Mac\TeX, MiK\TeX), vous devez le fournir avec
% le code source de votre document lors du dépôt final.
%
% \subsection{Changement de police de caractères}
%
% Les gabarits comportent des déclarations types pour utiliser les
% polices Palatino ou Times sous {\LaTeX} ou, sous {\XeLaTeX}, leurs
% équivalents Pagella et Termes du projet
% \link{https://www.gust.org.pl/projects/e-foundry/tex-gyre/}{TeX~Gyre}.
%
% \subsection{Options de \pkg{babel}}
%
% \begin{DescribeMacro}{\frenchbsetup}
%   La commande \cmd{\frenchbsetup} de \pkg{babel} permet de contrôler
%   certains ajustements typographiques apportés par le paquetage en
%   mode français. Consultez la documentation de \pkg{babel} pour la
%   liste des options de configuration disponibles.
% \end{DescribeMacro}
%
% Les concepteurs de la classe \class{ulthese}  proposent trois
% ajustements dans les gabarits:
% \begin{enumerate}
% \item l'option |StandardItemizeEnv=true| évite que le mode français de
%   \pkg{babel} ne diminue l'espacement vertical dans les listes;
% \item l'option |ThinSpaceInFrenchNumbers=true| fait en sorte qu'une espace fine
%   sera utilisée comme séparateur des milliers dans les nombres plutôt
%   qu'une espace pleine;
% \item les options |og=«| et |fg=»| déclarent que les caractères « et
%   » utilisés dans le code source représentent les guillemets ouvrant
%   et fermant, respectivement. Cela évite de devoir utiliser les
%   commandes \cmd{\og} et \cmd{\fg} de \pkg{babel} tout en bénéficiant de
%   l'ajutement automatique des espaces autour des symboles.
% \end{enumerate}
% Vous devez évidemment désactiver ces ajustements si l'option
% |nobabel| est spécifiée au chargement de la classe.
%
% \subsection{Style de la bibliographie}
% \label{sec:bibliographystyle}
%
% Tel qu'expliqué à la \autoref{sec:bibliographie:style}, la commande
% \cmd{\bibliographystyle} permet de définir le mode de citation dans
% le texte et la présentation des notices bibliographiques. Cette
% commande devrait figurer dans les fichiers des chapitres
% individuels dans une thèse ou un mémoire par articles.
%
% \subsection{Déclarations de la page frontispice}
%
% Les gabarits comportent toutes les déclarations nécessaires pour
% composer la page frontispice des divers types de thèse ou de
% mémoires. Vous devez remplacer les éléments se trouvant entre
% crochets |< >| en respectant la forme indiquée. Assurez-vous de
% supprimer les caractères |<| et |>| afin qu'ils n'apparaissent pas
% sur la page frontispice de votre document.
%
% \subsection{Pages liminaires}
%
% \begin{DescribeMacro}{\frontmatter}
%   La commande \cmd{\frontmatter} déclare que {\LaTeX} doit considérer le
%   matériel qui suit comme des pages liminaires. En pratique, cela
%   résulte essentiellement en une numérotation des pages en chiffres
%   romains.
% \end{DescribeMacro}
%
% Les normes de présentation de la FESP édictent que les thèses et
% mémoires devraient comporter les pages liminaires suivantes, dans
% l'ordre:
% \begin{enumerate}[noitemsep]
% \item page frontispice (obligatoire);
% \item résumé en français (obligatoire);
% \item résumé en anglais (recommandé, mais non obligatoire);
% \item table des matières (obligatoire);
% \item liste des tableaux;
% \item liste des figures;
% \item liste des abbréviations et des sigles;
% \item dédicace;
% \item épigraphe;
% \item remerciements;
% \item avant-propos (obligatoire dans le cas d'une thèse ou d'un
%   mémoire par articles).
% \end{enumerate}
%
% Les commandes
% \begin{quote}
%   \cmd{\frontispice} \\
%   \cmd{\tableofcontents} \\
%   \cmd{\listoftables} \\
%   \cmd{\listoffigures} \\
%   \cmd{\dedicace}\marg{texte} \\
%   \cmd{\epigraphe}\marg{texte}\marg{auteur}
% \end{quote}
% permettent de générer les pages correspondantes. Seules les deux
% dernières commandes admettent des arguments.
%
% \begin{rem}
%   L'examen de doctorat, l'essai de maîtrise, le rapport de projet de
%   recherche et le rapport de stage comportent une page de titre.
%   Vous devez ajouter dans les gabarits les commandes nécessaires
%   pour la production de la page de titre (\autoref{sec:pagetitre})
%   et supprimer les autres pages liminaires. Rappelons que l'option
%   de classe |examen| a pour effet de supprimer la page frontispice.
% \end{rem}
%
% \begin{DescribeMacro}{\chapter*}
%   Les résumés, la liste des abbréviations et des sigles, les
%   remerciements et l'avant-propos sont composés comme des chapitres
%   normaux, mais sans être numérotés. Il faut donc définir ces éléments
%   avec la commande \cmd{\chapter*}.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\label}
%   La commande \cmd{\label} permet d'utiliser le système de renvois
%   automatiques de {\LaTeX} \citep[section~3.4]{formation-latex-ul}.
%   Les étiquettes des chapitres non numérotés sont déjà configurées
%   pour l'ajout de ces chapitres dans la table des matières (voir
%   ci-dessous). Nous recommandons fortement de définir vos propres
%   étiquettes pour les chapitres normaux.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\phantomsection}
%   \begin{DescribeMacro}{\addcontentsline}
%     \begin{DescribeMacro}{\nameref}
%       Les chapitres déclarés avec la commande \cmd{\chapter*}
%       n'apparaissent pas dans la table des matières. Comme les
%       normes de présentation de la FESP exigent que toutes les pages
%       liminaires y figurent, nous faisons suivre les commandes
%       \cmd{\chapter*}\marg{Titre} et \cmd{\label}\marg{nom} des
%       commandes
%     \end{DescribeMacro}
%   \end{DescribeMacro}
% \end{DescribeMacro}
% \begin{quote}
%   |\phantomsection\addcontentsline{toc}{chapter}{%| \\
%   |  \nameref|\marg{nom}|}|
% \end{quote}
% Celles-ci ajoutent à la table des matières (|toc|) une section de
% niveau |chapter| dont le titre est celui du chapitre auquel
% correspond l'étiquette \meta{nom}. La commande \cmd{\phantomsection}
% est rendue nécessaire (ou recommandée) par le paquetage
% \pkg{hyperref}.
%
% \subsection{Corps du document}
%
% \begin{DescribeMacro}{\mainmatter}
%   La commande \cmd{\mainmatter} délimite le début du corps du document. La
%   numérotation des pages passe en chiffres arabes.
% \end{DescribeMacro}
%
% Le corps du document devrait normalement compter une introduction (non
% numérotée), un développement divisé en chapitres (numérotés) et une
% conclusion (non numérotée).
%
% \subsection{Annexes}
%
% \begin{DescribeMacro}{\appendix}
%   Si la thèse ou le mémoire comporte une ou plusieurs annexes,
%   composer celles-ci comme des chapitres normaux insérés dans le
%   document maître après la commande \cmd{\appendix}. Cette commande a
%   pour effet de passer d'un mode de numération numérique (1, 1.1, 2, 2.1,
%   \dots) à un mode alphanumérique (A, A.1, B, B.1, \dots).
% \end{DescribeMacro}
%
% \subsection{Bibliographie}
%
% La bibliographie figure normalement à la toute fin du document, sous
% forme de chapitre non numéroté. Tel qu'expliqué à la
% \autoref{sec:bibliographie:multiples}, la commande
% \cmd{\bibliography} doit plutôt se trouver dans les fichiers des
% chapitres dans une thèse ou un mémoire par articles.
%
% \section{Commentaires, suggestions et aide}
% \changes{5.0}{2018-08-09}{Code source du projet déplacé de GitHub
%   vers GitLab.}
%
% Le \link{https://gitlab.com/vigou3/ulthese/}{dépôt du projet} dans
% GitLab demeure le meilleur endroit pour rapporter des bogues ou pour
% proposer des améliorations à la classe \class{ulthese}.
%
% Pour obtenir de l'aide additionnelle sur l'utilisation de la classe
% --- et non sur celle de {\LaTeX} en général --- consultez d'abord:
% \begin{enumerate}
% \item le \link{http://www.theses.ulaval.ca/wiki/}{WikiThèse} de
%   l'Université Laval, en particulier la
%   \link{http://www.theses.ulaval.ca/wiki/index.php?title=FAQ}{Foire aux questions};
% \item les
%   \link{http://listes.ulaval.ca/listserv/archives/ulthese-aide.html}{archives}
%   de la liste de distribution \texttt{ulthese-aide}.
% \end{enumerate}
% Si la réponse à votre question ne se trouve ni dans le wiki, ni dans
% les archives, alors écrivez à l'adresse
% \href{mailto:ulthese-aide@listes.ulaval.ca}{\url{ulthese-aide@listes.ulaval.ca}}.
%
% \StopEventually{
%   \begin{thebibliography}{15}
%     \addcontentsline{toc}{section}{Références}
%   \bibitem[{Arseneau(2010)}]{chapterbib}
%     Arseneau, D. 2010,
%     {\selectlanguage{english}\emph{chapterbib. Multiple
%     bibliographies in {\LaTeX}}}.
%     URL~\url{https://www.ctan.org/pkg/chapterbib/}.
%
%   \bibitem[{Braams et Bezos(2016)}]{babel}
%     Braams, J. et J.~Bezos. 2016,
%     {\selectlanguage{english}\emph{Babel}}.
%     URL~\url{https://www.ctan.org/pkg/babel/}.
%
%   \bibitem[{Carlisle et {The \LaTeX3\ Project}(2016)}]{graphicx}
%     Carlisle, D. et {The \LaTeX3\ Project}. 2016,
%     {\selectlanguage{english}\emph{Packages in the `graphics'
%     Bundle}}. URL~\url{https://www.ctan.org/pkg/graphics/}.
%
%   \bibitem[{Charette(2015)}]{polyglossia}
%     Charette, F. 2015, {\selectlanguage{english}\emph{Polyglossia:
%     An Alternative to Babel for {\XeLaTeX} and {\LuaLaTeX}}}.
%     URL~\url{https://www.ctan.org/pkg/polyglossia/}, current
%     maintainer Arthur Reutenauer.
%
%   \bibitem[{Daly(2010)}]{natbib}
%     Daly, P.~W. 2010, {\selectlanguage{english}\emph{Natural
%     Sciences Citations and References}}.
%     URL~\url{https://www.ctan.org/pkg/natbib/}.
%
%   \bibitem[{Goulet(2013)}]{francais-bst}
%     Goulet, V. 2013, {\selectlanguage{french}«Paquetage
%     francais-bst»},
%     URL~\url{https://www.ctan.org/pkg/francais-bst/}.
%
%   \bibitem[{Goulet(2016)}]{formation-latex-ul}
%     Goulet, V. 2016, {\selectlanguage{french}\emph{Rédaction avec
%     {\LaTeX}}}, document libre sous contrat Creative Commons.
%     ISBN~978-2-9811416-7-5.
%     URL~\url{httpss://ctan.org/pkg/formation-latex-ul}.
%
%   \bibitem[{Harders(2012)}]{numprint}
%     Harders, H. 2012, {\selectlanguage{english}\emph{The
%     numprint package}}.
%     URL~\url{https://www.ctan.org/pkg/numprint/}.
%
%   \bibitem[{Jeffrey et Mittelbach(2015)}]{inputenc}
%     Jeffrey, A. et F.~Mittelbach. 2015,
%     {\selectlanguage{english}\emph{inputenc.sty}}.
%     URL~\url{https://www.ctan.org/pkg/inputenc/}.
%
%   \bibitem[{Kern(2016)}]{xcolor}
%     Kern, D.~U. 2016, {\selectlanguage{english}\emph{Extending
%     {\LaTeX}’s color facilities: the xcolor package}}.
%     URL~\url{https://www.ctan.org/pkg/xcolor/}.
%
%   \bibitem[{Lehman et Wright(2018)}]{etoolbox}
%     Lehman, P. et J.~Wright. 2018,
%     {\selectlanguage{english}\emph{The etoolbox package}}.
%     URL~\url{https://www.ctan.org/pkg/etoolbox/}.
%
%   \bibitem[{Malo(1996)}]{Malo:1996}
%     Malo, M. 1996, {\selectlanguage{french}\emph{Guide de la
%     communication écrite au cégep, à l'université et en
%     entreprise}}, Québec Amérique. ISBN~978-2-8903-7875-9.
%
%   \bibitem[{Rahtz et Oberdiek(2017)}]{hyperref}
%     Rahtz, S. et H.~Oberdiek. 2017,
%     {\selectlanguage{english}\emph{Hypertext marks in {\LaTeX}: a
%     manual for hyperref}}.
%     URL~\url{https://www.ctan.org/pkg/hyperref/}.
%
%   \bibitem[{Robertson et Hosny(2017)}]{fontspec}
%     Robertson, W. et K.~Hosny. 2017,
%     {\selectlanguage{english}\emph{The fontspec package: Font
%     selection for {\XeLaTeX} and {\LuaLaTeX}}}.
%     URL~\url{https://www.ctan.org/pkg/fontspec/}.
%
%   \bibitem[{Wilson(2016)}]{memoir}
%     Wilson, P. 2016, {\selectlanguage{english}\emph{The Memoir Class
%     for Configurable Typesetting}}, 8{\ieme} éd., The Herries Press.
%     URL~\url{https://www.ctan.org/pkg/memoir/}, maintained by Lars
%     Madsen.
%   \end{thebibliography}
%   \PrintChanges
% }
%
% \appendix
%
% \section{Création d'une page de titre}
% \label{sec:pagetitre}
%
% La thèse ou le mémoire déposé à la FESP ne doit \emph{pas} comporter
% de page de titre. Les options de classe et les commandes mentionnées
% dans cette section permettent néanmoins de composer une page de
% titre conforme aux normes de présentation matérielles, notamment
% pour les examens de doctorat, les essais de maîtrise ou les rapports
% de projet de recherche ou de stage.
%
% En premier lieu, les \meta{options} suivantes s'ajoutent à celles de
% la \autoref{sec:utilisation:options} lorsque l'on souhaite créer une
% page de titre.
%
% \begin{DescribeMacro}{multifacultaire}
%   Identifie une thèse multifacultaire. Valide uniquement avec un
%   grade de doctorat. Cette déclaration requiert ensuite d'utiliser
%   la commande \cmd{\faculteUL}.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{extensionUdeS}
%   Identifie une thèse réalisée en extension à l'Université de
%   Sherbrooke. Valide uniquement avec un grade de doctorat. Cette
%   déclaration requiert ensuite d'utiliser les commandes
%   \cmd{\faculteUL} et \cmd{\faculteUdeS}.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{extensionUQO}
%   Identifie une thèse réalisée en extension à l'Université du
%   Québec en Outaouais (UQO). Valide uniquement avec un grade de doctorat.
%   Cette déclaration requiert ensuite d'utiliser les commandes
%   \cmd{\faculteUL} et \cmd{\faculteUQO}.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{extensionUQAC}
%   Identifie un mémoire réalisé en extension à l'Université du Québec
%   à Chicoutimi (UQAC). Valide uniquement avec un grade de maîtrise.
%   Cette déclaration requiert ensuite d'utiliser les commandes
%   \cmd{\faculteUL} et \cmd{\faculteUQAC}.
% \end{DescribeMacro}
%
% Ensuite, la composition d'une page de titre peut nécessiter
% d'utiliser les commandes ci-dessous en plus de celles de la
% \autoref{sec:utilisation:commandes}.
%
% \begin{DescribeMacro}{\annee}
%   Année du dépôt final de la thèse ou du mémoire.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\univcotutelle}
%   Nom, ville et pays de l'université de cotutelle, déclarés sous la
%   forme
%   \begin{quote}
%     |\univcotutelle{Nom de l'université \\ Ville, Pays}|
%   \end{quote}
%   Cette commande prend effet seulement lorsque la classe est chargée
%   avec l'option |cotutelle|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\gradecotutelle}
%   Grade conféré par l'université de cotutelle, déclaré
%   sous la forme
%   \begin{quote}
%     |\gradecotutelle{Nom du grade (sigle)}|
%   \end{quote}
%   Cette commande prend effet seulement lorsque la classe est chargée
%   avec l'option |cotutelle|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\univbidiplomation}
%   Nom, ville et pays de l'université de bidiplomation, déclarés sous
%   la forme
%   \begin{quote}
%     |\univbidiplomation{Nom de l'université \\ Ville, Pays}|
%   \end{quote}
%   Cette commande prend effet seulement lorsque la classe est chargée
%   avec l'option |bidiplomation|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\gradebidiplomation}
%   Grade conféré par l'université de bidiplomation, déclaré sous la
%   forme
%   \begin{quote}
%     |\gradebidiplomation{Nom du grade (sigle)}|
%   \end{quote}
%   Cette commande prend effet seulement lorsque la classe est chargée
%   avec l'option |bidiplomation|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\faculteUL}
%   La commande a deux usages:
%   \begin{enumerate}
%   \item noms des facultés pour les thèses et mémoires
%     multifacultaires, séparés par des commandes |\\|;
%   \item nom de la faculté de l'Université Laval où sont réalisés les
%     thèses et mémoires en extension à l'Université de Sherbrooke, à
%     l'UQO ou à l'UQAC.
%   \end{enumerate}
%   Cette commande prend effet seulement lorsque la classe est chargée
%   avec l'une ou l'autre des options |multifacultaire|,
%   |extensionUdeS|, |extensionUQO| ou |extensionUQAC|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\faculteUdeS}
%   Nom de la faculté de l'Université de Sherbrooke hébergeant la
%   thèse en extension. Cette commande prend effet seulement lorsque
%   la classe est chargée avec l'option |extensionUdeS|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\faculteUQO}
%   Nom de la faculté de l'Université du Québec en Outaouais
%   hébergeant la thèse en extension. Cette commande prend effet
%   seulement lorsque la classe est chargée avec l'option
%   |extensionUQO|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\faculteUQAC}
%   Nom de la faculté de l'Université du Québec à Chicoutimi
%   hébergeant le mémoire en extension. Cette commande prend effet
%   seulement lorsque la classe est chargée avec l'option
%   |extensionUQAC|.
% \end{DescribeMacro}
%
% \begin{DescribeMacro}{\pagetitre}
%   Création de la page de titre. Ne pas utiliser la commande
%   \cmd{\pagetitle} de {\LaTeX} pour ce faire. De toutes les
%   commandes ci-dessus, c'est la seule qui doit se trouver dans le
%   corps du document plutôt que dans le préambule.
% \end{DescribeMacro}
%
%
% ^^A Début du code de la classe
%
% \section{Mise en œuvre}
% \label{sec:meo}
%
% Cette annexe passe en revue le code {\TeX} et {\LaTeX} de la classe.
% Elle n'est susceptible d'intéresser que les personnes qui souhaitent
% explorer comment la classe est programmée.
%
% \subsection{Tests et valeurs booléennes}
% \changes{4.4}{2017-06-01}{Tests et valeurs booléennes réalisés sans ifthen.}
%
% Le paquetage \pkg{ifxetex} permet de tester si un document est
% compilé avec \XeTeX.
%    \begin{macrocode}
%<*class>
\RequirePackage{ifxetex}
%    \end{macrocode}
% Nous définissons ici toutes les valeurs booléennes requises par la
% classe.
%    \begin{macrocode}
\newif\ifUL@babel        \UL@babeltrue         % charger babel?
\newif\ifUL@natbib       \UL@natbibtrue        % charger natbib?
\newif\ifUL@hyperref     \UL@hyperreftrue      % charger hyperref?
\newif\ifUL@chapterbib   \UL@chapterbibfalse   % charger chapterbib?
\newif\ifUL@sectionbib   \UL@sectionbibfalse   % option sectionbib de chapterbib?
\newif\ifUL@isthesis                           % programme est une thèse?
\newif\ifUL@iscotutelle  \UL@iscotutellefalse  % thèse en cotutelle?
\newif\ifUL@isexam       \UL@isexamfalse       % examen de doctorat?
\newif\ifUL@isessay      \UL@isessayfalse      % essai de maîtrise?
\newif\ifUL@isresearch   \UL@isresearchfalse   % projet de recherche?
\newif\ifUL@isworkterm   \UL@isworktermfalse   % rapport de stage?
\newif\ifUL@hassubtitle  \UL@hassubtitlefalse  % document a un sous-titre?
\newif\ifUL@hastitlepage \UL@hastitlepagefalse % page titre utilisée?
%    \end{macrocode}
%
% \subsection{Options de la classe}
%
% Les grandes catégories d'options propres à la classe sont: la
% possibilité d'empêcher le chargement du paquetage \pkg{natbib};
% l'activation des bibliographies par chapitre ou par section; la
% possibilité d'empêcher le chargement du paquetage \pkg{babel}; la
% possibilité d'empêcher le chargement du paquetage \pkg{hyperref}; la
% taille de la police de caractères en points; le type de grade; la
% déclaration qu'il s'agit d'un examen de doctorat ou d'un essai de
% maîtrise.
%
% \begin{macro}{nonatbib}
%   L'option |nonatbib| permet d'empêcher la classe de charger le
%   paquetage \pkg{natbib} en cas d'incompatibilité avec d'autres
%   paquetages spécialisés de mise en forme de la bibliographie.
%    \begin{macrocode}
\DeclareOption{nonatbib}{\UL@natbibfalse}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{bibchapitre}
%   \begin{macro}{bibsection}
%     L'option |bibchapitre| entraine le chargement du paquetage
%     \pkg{chapterbib} qui permet de composer des bibliographies
%     multiples dans un document, habituellement une par
%     chapitre. Avec l'option |bibsection|, la bibliographie se
%     présente sous la forme d'une section plutôt que d'un chapitre.
%     La seconde option implique la première.
%    \begin{macrocode}
\DeclareOption{bibchapitre}{\UL@chapterbibtrue}
\DeclareOption{bibsection}{\UL@chapterbibtrue\UL@sectionbibtrue}
%    \end{macrocode}
%   \end{macro}
% \end{macro}
%
% \begin{macro}{nobabel}
%   L'option |nobabel| permet d'empêcher la classe de charger le
%   paquetage \pkg{babel}. Cette option peut s'avérer utile pour
%   les utilisateurs de {\XeLaTeX} qui souhaitent plutôt utiliser
%   \pkg{poyglossia} pour le traitement des langues dans leur
%   document.
%    \begin{macrocode}
\DeclareOption{nobabel}{\UL@babelfalse}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{nohyperref}
%   L'option |nohyperref| permet d'empêcher la classe de charger le
%   paquetage \pkg{hyperref}. Cette option peut s'avérer utile pour
%   charger d'autres paquetages comme \pkg{cleverref} ou
%   \pkg{glossaries} avant \pkg{hyperref}.
%    \begin{macrocode}
\DeclareOption{nohyperref}{\UL@hyperreffalse}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{10pt,11pt,12pt}
%   Les valeurs possibles pour la taille de la police de caractères
%   sont |10pt|, |11pt| et |12pt|. Cette option est gérée au niveau de
%   la classe afin de s'assurer que les divers éléments sur les pages
%   de titre sont toujours de la même taille. La taille de la police
%   par défaut permet de déterminer si, par exemple, le titre du
%   document doit être dans la taille \cmd{\Huge}, \cmd{\huge} ou \cmd{\LARGE} de
%   \class{memoir}.
%
%   La taille de la police est passée à \class{memoir} et la macro
%   \cmd{\UL@ptsize} stocke la taille des caractères pour usage futur.
%    \begin{macrocode}
\newcommand*{\UL@ptsize}{}
\DeclareOption{10pt}{%
  \PassOptionsToClass{10pt}{memoir}
  \renewcommand*{\UL@ptsize}{10}}
\DeclareOption{11pt}{%
  \PassOptionsToClass{11pt}{memoir}
  \renewcommand*{\UL@ptsize}{11}}
\DeclareOption{12pt}{%
  \PassOptionsToClass{12pt}{memoir}
  \renewcommand*{\UL@ptsize}{12}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{PhD,MSc,MA,...}
%   Définition du type de grade et si la thèse ou le mémoire est
%   en cotutelle, en bidiplomation, multifacultaire ou en
%   extension. Seuls les doctorats sont offerts en cotutelle et seules
%   les maîtrises offrent l'option d'une bidiplomation. Les options
%   «multifacultaire» et «en extension» ne sont pertinentes que pour créer
%   une page de titre. La page de titre des programmes en extension
%   comporte une mention «offert en extension» ou «offerte en
%   extension» selon qu'il s'agit d'un doctorat ou d'une maîtrise; le
%   bon terme est défini avec l'option correspondante.
%    \begin{macrocode}
\newcommand*{\UL@typenum}{}
\DeclareOption{LLD}{%
  \UL@isthesistrue
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Docteur en droit (LL.~D.)}}
\DeclareOption{DMus}{%
  \UL@isthesistrue
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Docteur en musique (D.~Mus.)}}
\DeclareOption{DPsy}{%
  \UL@isthesistrue
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Docteur en psychologie (D.~Psy.)}}
\DeclareOption{DThP}{%
  \UL@isthesistrue
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Docteur en th\'eologie pratique (D.~Th.~P.)}}
\DeclareOption{PhD}{%
  \UL@isthesistrue
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Philosophi{\ae} doctor (Ph.~D.)}}
\DeclareOption{MATDR}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en am\'enagement du territoire %
    et d\'eveloppement r\'egional (M.ATDR)}}
\DeclareOption{MArch}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en architecture (M.~Arch.)}}
\DeclareOption{MA}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre \`es arts (M.A.)}}
\DeclareOption{LLM}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en droit (LL.~M.)}}
\DeclareOption{MErg}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en ergoth\'erapie (M.~Erg.)}}
\DeclareOption{MMus}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en musique (M.~Mus.)}}
\DeclareOption{MPht}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en physioth\'erapie (M.~Pht.)}}
\DeclareOption{MSc}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre \`es sciences (M.~Sc.)}}
\DeclareOption{MScGeogr}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en sciences g\'eographiques (M.~Sc.~g\'eogr.)}}
\DeclareOption{MServSoc}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en service social (M.~Serv.~soc.)}}
\DeclareOption{MPsEd}{%
  \UL@isthesisfalse
  \renewcommand*{\UL@typenum}{0}
  \newcommand*{\UL@degree}{Ma\^itre en psycho\'education (M.~Ps.~\'ed.)}}
\DeclareOption{multifacultaire}{%
  \ifUL@isthesis
    \renewcommand*{\UL@typenum}{1}
  \else
    \ClassError{ulthese}{%
      Incompatible option multifacultaire}
    {Use this option with a doctorate degree only.}
  \fi}
\DeclareOption{cotutelle}{%
  \ifUL@isthesis
    \renewcommand*{\UL@typenum}{2}
    \UL@iscotutelletrue
  \else
    \ClassError{ulthese}{%
      Incompatible option cotutelle}
    {Use this option with a doctorate degree only.}
  \fi}
\DeclareOption{bidiplomation}{%
  \ifUL@isthesis
    \ClassError{ulthese}{%
      Incompatible option bidiplomation}
    {Use this option with a master degree only.}
  \else
    \renewcommand*{\UL@typenum}{2}
  \fi}
\DeclareOption{extensionUdeS}{%
  \ifUL@isthesis
    \renewcommand*{\UL@typenum}{3}
    \newcommand*{\UL@offered}{offert}
    \newcommand*{\UL@extensionat}{Universit\'e de Sherbrooke}
    \newcommand*{\UL@extensionloc}{Sherbrooke, Canada}
  \else
    \ClassError{ulthese}{%
      Incompatible option extensionUdeS}
    {Use this option with a doctorate degree only.}
  \fi}
\DeclareOption{extensionUQO}{%
  \ifUL@isthesis
    \renewcommand*{\UL@typenum}{3}
    \newcommand*{\UL@offered}{offert}
    \newcommand*{\UL@extensionat}{Universit\'e du Qu\'ebec en Outaouais}
    \newcommand*{\UL@extensionloc}{Gatineau, Canada}
  \else
    \ClassError{ulthese}{%
      Incompatible option extensionUQO}
    {Use this option with a doctorate degree only.}
  \fi}
\DeclareOption{extensionUQAC}{%
  \ifUL@isthesis
    \ClassError{ulthese}{%
      Incompatible option extensionUQAC}
    {Use this option with a master degree only.}
  \else
    \renewcommand*{\UL@typenum}{3}
    \newcommand*{\UL@offered}{offerte}
    \newcommand*{\UL@extensionat}{Universit\'e du Qu\'ebec \`a Chicoutimi}
    \newcommand*{\UL@extensionloc}{Chicoutimi, Canada}
  \fi}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{examen,essai}
%   L'option |examen| change l'appellation «Thèse» sur la couverture
%   pour «Examen de doctorat». L'option |essai|, quant à elle, change
%   l'appellation «Maîtrise» pour «Essai». L'option |examen|
%   n'est compatible qu'avec l'une des options de thèse, alors que
%   |essai| n'est compatible qu'avec une option de maîtrise. Un
%   message d'erreur est émis en cas d'incompatibilité.
%    \begin{macrocode}
\DeclareOption{examen}{%
  \ifUL@isthesis
    \UL@isexamtrue
  \else
    \ClassError{ulthese}{%
      Incompatible option examen}
    {Use this option with a thesis type only.}
  \fi}
\DeclareOption{essai}{%
  \ifUL@isthesis
    \ClassError{ulthese}{%
      Incompatible option essai}
    {Use this option with a Master's type only.}
  \else
    \UL@isessaytrue
  \fi}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{projet,stage}
%   L'option |projet| inscrit l'appellation «Projet de recherche» sur
%   la page de titre et aucun type de diplôme, alors que l'option
%   |stage| inscrit «Rapport de stage». La page de titre est
%   autrement traitée comme celle d'une thèse ou d'un mémoire
%   standard. Ces options ont préséance sur toute déclaration de type de
%   doctorat ou de maîtrise. Il faut donc les utiliser avec prudence.
%    \begin{macrocode}
\DeclareOption{projet}{%
  \UL@isresearchtrue
  \renewcommand*{\UL@typenum}{0}
  \def\UL@degree{\mbox{}}}
\DeclareOption{stage}{%
  \UL@isworktermtrue
  \renewcommand*{\UL@typenum}{0}
  \def\UL@degree{\mbox{}}}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Chargement de la classe \class{memoir}}
%
% Toutes les options de la classe sont passées à \class{memoir}. Le
% format de papier et la taille de police par défaut sont, dans
% l'ordre, |letterpaper| et |11pt|. On vérifie qu'un type de grade a
% bien été déclaré (à moins que l'option |projet| ou l'option |stage|
% ne soit présente). L'option de \class{memoir} |oneside| est
% explicitement déclarée afin d'éviter toute tentative de passer outre
% à cette exigence de la FESP.
%    \begin{macrocode}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{memoir}}
\ExecuteOptions{11pt,letterpaper}
\ProcessOptions\relax
\ifx\UL@typenum\empty
  \ifUL@isresearch\else
    \ifUL@isworkterm\else
      \ClassError{ulthese}{%
        No thesis type specified}
        {Declare the thesis type as a class option.}
    \fi
  \fi
\fi
\LoadClass[oneside]{memoir}
%    \end{macrocode}
%
% \subsection{Paquetages requis}
% \changes{5.0}{2018-06-10}{Le paquetage unicode-math n'est plus
%   chargé par défaut par la classe.}
% \changes{5.0}{2018-08-11}{Le paquetage hyperref est désormais chargé
%   dans la classe plutôt que dans les gabarits. Requiert le paquetage
%   etoolbox.}
%
% La classe s'efforce de charger un minimum de paquetages afin d'éviter
% les conflits potentiels.
%
% {\XeLaTeX} requiert le paquetage \pkg{fontspec} pour le traitement
% des polices. Sous {\LaTeX}, il est aujourd'hui préférable d'utiliser
% les polices T1.
%    \begin{macrocode}
\ifxetex
  \RequirePackage{fontspec}
  \defaultfontfeatures{Ligatures=TeX}
\else
  \RequirePackage[T1]{fontenc}
\fi
%    \end{macrocode}
%
% Les paquetages \pkg{natbib} et \pkg{chapterbib} doivent être chargés
% avant \pkg{babel} pour bien fonctionner, le cas échéant. Tel que
% précisé dans la documentation de \pkg{natbib}, l'option |sectionbib|
% est passée à ce paquetage lorsqu'il est chargé, ou à
% \pkg{chapterbib} autrement.
%    \begin{macrocode}
\ifUL@natbib
  \ifUL@sectionbib
    \PassOptionsToPackage{sectionbib}{natbib}
  \fi
  \RequirePackage[round,semicolon,authoryear]{natbib}
\fi
\ifUL@chapterbib
  \ifUL@sectionbib
     \ifUL@natbib\else
       \PassOptionsToPackage{sectionbib}{chapterbib}
     \fi
  \fi
  \RequirePackage{chapterbib}
\fi
%    \end{macrocode}
%
% Le support pour les langues autres que l'anglais est offert par le
% paquetage \pkg{babel} --- à moins que l'option |nobabel| n'ait
% été spécifiée au chargement de la classe. Les langues sont passées
% en option de la classe, et non du paquetage. Le paquetage
% \pkg{numprint} est requis par \pkg{babel} pour la définition
% de la commande de mise en forme des nombres \cmd{\nombre}.
%    \begin{macrocode}
\ifUL@babel
  \RequirePackage{babel}
  \RequirePackage[autolanguage]{numprint}
\fi
%    \end{macrocode}
%
% Le paquetage obligatoire \pkg{hyperref} est chargé en tout dernier
% avec la commande \cmd{\AtEndPreamble} du paquetage \pkg{etoolbox}.
% Si l'option |nohyperref| a été spécifiée, la classe vérifie que le
% paquetage a été chargé. La configuration de base de la classe fait
% en sorte que tous les liens sont signalés par la couleur
% |ULlinkcolor| définie à la \autoref{sec:couleurs}.
%    \begin{macrocode}
\ifUL@hyperref
  \RequirePackage{etoolbox}
  \AtEndPreamble{\RequirePackage{hyperref}}
\else
  \AtBeginDocument{%
    \@ifpackageloaded{hyperref}{\relax}{%
      \ClassError{ulthese}{%
        Package hyperref is required}
      {Delete option nohyperref or load the package in the preamble.}}}
\fi
\PassOptionsToPackage{colorlinks,allcolors=ULlinkcolor}{hyperref}
%    \end{macrocode}
%
% L'insertion du logo de l'Université sur la page de titre requiert
% \pkg{graphicx}. Les coloration des hyperliens requiert \pkg{xcolor}.
%    \begin{macrocode}
\RequirePackage{graphicx}
\RequirePackage{xcolor}
%    \end{macrocode}
%
% La commande \cmd{\textcopyright} utilisée sur la page de titre requiert le
% paquetage \pkg{textcomp} pour obtenir un beau signe de copyright.
%    \begin{macrocode}
\RequirePackage{textcomp}
%    \end{macrocode}
%
% \subsection{Paquetage incompatible}
%
% Le chargement du paquetage \pkg{geometry} avec la classe
% \class{memoir} modifie les marges du document. Pour cette raison,
% \pkg{geometry} est déclaré incompatible avec la classe.
%    \begin{macrocode}
\AtBeginDocument{%
  \@ifpackageloaded{geometry}{%
    \ClassError{ulthese}{%
      Package geometry is incompatible with this class}
    {Use the memoir class facilities to change the page layout.}}{\relax}}
%    \end{macrocode}
%
% \subsection{Couleur des hyperliens}
% \label{sec:couleurs}
%
% La classe définit une couleur standard pour les hyperliens, une
% teinte de bleu assez foncée pour être à la fois visible en couleur
% et peu contrastante si le document est imprimé en noir et blanc.
%    \begin{macrocode}
\definecolor{ULlinkcolor}{rgb}{0,0,0.3}
%    \end{macrocode}
%
% \subsection{Marges}
%
% Les marges exigées par les normes de présentation de la FESP sont de
% 30~mm pour les marges gauche et droite et 25~mm pour les marges
% supérieure et inférieure. Le pied de page est placé de sorte que le
% folio de page se retrouve à 10~mm du bas de la page.
%    \begin{macrocode}
\setlrmarginsandblock{30mm}{30mm}{*}
\setulmarginsandblock{25mm}{25mm}{*}
\checkandfixthelayout[nearest]
\setlength{\footskip}{\lowermargin}
\addtolength{\footskip}{-10mm}
%    \end{macrocode}
%
% Comme les thèses et mémoires comportent normalement plusieurs pages
% liminaires, il arrive que des folios (en chiffres romains) dépassent
% dans la marge de droite dans la table des matières. Pour régler ce
% problème, nous augmentont la largeur de la boîte prévue pour les
% imprimer.
%    \begin{macrocode}
\renewcommand{\@pnumwidth}{3em}
\renewcommand{\@tocrmarg}{4em}
%    \end{macrocode}
%
% \subsection{Interligne}
%
% L'espacement entre les lignes est d'un interligne et demi.
% L'espacement «double» entre les paragraphes est fixé à
% |0.5\baselineskip| afin d'en arriver à une disposition agréable à
% l'œil. Le retrait de première ligne est supprimé puisque plus
% nécessaire suite à l'ajout de l'espacement entre les paragraphes.
%    \begin{macrocode}
\OnehalfSpacing
\setlength{\parskip}{0.5\baselineskip}
\setlength{\parindent}{0em}
%    \end{macrocode}
%
% La table des matières, la liste des tableaux et la liste des figures
% sont composées à interligne simple.
%    \begin{macrocode}
\renewcommand{\tocheadstart}{\SingleSpacing\chapterheadstart}
\renewcommand{\lotheadstart}{\SingleSpacing\chapterheadstart}
\renewcommand{\lofheadstart}{\SingleSpacing\chapterheadstart}
%    \end{macrocode}
%
% \subsection{Entêtes et pieds de page}
%
% Les règles pour les entêtes et pieds de page sont uniformes pour
% tout le document: aucun entête et folio au centre du pied de page.
% Ceci correspond au style standard |plain|.
%    \begin{macrocode}
\pagestyle{plain}
%    \end{macrocode}
%
% \subsection{Pages de titre}
%
% Le code pour traiter et composer la page de titre (le cas échéant)
% et la page frontispice constitue l'essentiel de la classe.
%
% \subsubsection{Famille et style de la police de caractères}
%
% Les pages de titre sont composées avec la police \textsf{Helvetica}
% (famille \texttt{phv} dans la classification NFSS) dans les
% tailles\footnote{%
%   La police Helvetica produite par {\LaTeX} est plus grande que
%   celle utilisée par Microsoft Word. Pour cette raison, les tailles
%   utilisées dans la classe sont toutes quelques points inférieures à
%   celles des gabarits Word.}%
% et les graisses présentées au \autoref{tab:polices}. La
% déclaration |\fontencoding{T1}| est nécessaire avec {\XeLaTeX} pour
% explicitement charger la même police que sous {\LaTeX}.
%
% \begin{table}
%   \centering
%   \begin{tabular}{ll}
%     \toprule
%     Élément          & Police \\
%     \midrule
%     Titre            & 17~points gras \\
%     Sous-titre       & 14~points gras \\
%     Auteur           & 12~points gras \\
%     Nom du programme & 12~points gras \\
%     Autres éléments  & 12~points normal \\
%     \bottomrule
%   \end{tabular}
%   \caption{Tailles et graisses de la police Helvetica des éléments
%     de la page de titre}
%   \label{tab:polices}
% \end{table}
%
%    \begin{macrocode}
\newcommand*{\UL@phvfamily}{\fontencoding{T1}\fontfamily{phv}\selectfont}
%    \end{macrocode}
% Les commandes sélectionnant ces polices sont adaptées selon la
% taille de police choisie pour le document afin d'être toujours
% identiques. Nous utilisons les déclarations de taille de police de
% la classe \class{memoir}, présentées au tableau~3.9 de sa
% documentation.
%    \begin{macrocode}
\ifnum\UL@ptsize=10\relax
  \newcommand*{\UL@fonttitle}{\normalfont\huge\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontsubtitle}{\normalfont\LARGE\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontauthor}{\normalfont\Large\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontprogram}{\UL@fontauthor}
  \newcommand*{\UL@fontbase}{\normalfont\Large\UL@phvfamily}
\fi
\ifnum\UL@ptsize=11\relax
  \newcommand*{\UL@fonttitle}{\normalfont\LARGE\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontsubtitle}{\normalfont\Large\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontauthor}{\normalfont\large\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontprogram}{\UL@fontauthor}
  \newcommand*{\UL@fontbase}{\normalfont\large\UL@phvfamily}
\fi
\ifnum\UL@ptsize=12\relax
  \newcommand*{\UL@fonttitle}{\normalfont\Large\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontsubtitle}{\normalfont\large\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontauthor}{\normalfont\normalsize\bfseries\UL@phvfamily}
  \newcommand*{\UL@fontprogram}{\UL@fontauthor}
  \newcommand*{\UL@fontbase}{\normalfont\normalsize\UL@phvfamily}
\fi
%    \end{macrocode}
%
% \subsubsection{Interfaces interne et externe}
%
% Définition des commandes permettant de construire les pages de titre.
% L'interface utilisateur est basée sur un ensemble de commandes
% internes. On commence par celles-ci.
%    \begin{macrocode}
\newcommand{\UL@maintitle}{}
\newcommand{\UL@subtitle}{}
\newcommand*{\UL@author}{}
\newcommand*{\UL@year}{}
\newcommand*{\UL@program}{}
\newcommand*{\UL@director}{}
\newcommand*{\UL@codirector}{}
\newcommand*{\UL@nameother}{}
\newcommand*{\UL@degreeother}{}
\newcommand*{\UL@facUL}{}
\newcommand*{\UL@facother}{}
%    \end{macrocode}
% Puis les commandes visibles pour les utilisateurs, qui redéfinissent
% les commandes internes. Voir la \autoref{sec:utilisation:commandes}
% pour leur signification.
%    \begin{macrocode}
\newcommand{\titre}[1]{\renewcommand{\UL@maintitle}{#1}}
\newcommand{\soustitre}[1]{%
  \UL@hassubtitletrue
  \renewcommand{\UL@subtitle}{#1}}
\newcommand*{\auteur}[1]{\renewcommand*{\UL@author}{#1}}
\newcommand*{\annee}[1]{\renewcommand*{\UL@year}{#1}}
\newcommand*{\programme}[1]{\renewcommand*{\UL@program}{#1}}
\newcommand*{\direction}[1]{\renewcommand*{\UL@director}{#1}}
\newcommand*{\codirection}[1]{\renewcommand*{\UL@codirector}{#1}}
\newcommand*{\univcotutelle}[1]{\renewcommand*{\UL@nameother}{#1}}
\newcommand*{\gradecotutelle}[1]{\renewcommand*{\UL@degreeother}{#1}}
\newcommand*{\univbidiplomation}[1]{\renewcommand*{\UL@nameother}{#1}}
\newcommand*{\gradebidiplomation}[1]{\renewcommand*{\UL@degreeother}{#1}}
\newcommand{\faculteUL}[1]{\renewcommand*{\UL@facUL}{#1}}
\newcommand*{\faculteUdeS}[1]{\renewcommand*{\UL@facother}{#1}}
\newcommand*{\faculteUQO}[1]{\renewcommand*{\UL@facother}{#1}}
\newcommand*{\faculteUQAC}[1]{\renewcommand*{\UL@facother}{#1}}
%    \end{macrocode}
%
% \subsubsection{Titre et sous-titre}
%
% Le titre et le sous-titre peuvent s'étendre sur plus d'une ligne.
% Sans traitement spécial, un long titre ou sous-titre aurait pour
% impact de décaler vers le bas tous les autres éléments de la page
% de titre. Pour contrer ce phénomène, nous devrons mesurer la hauteur du
% titre et du sous-titre pour ensuite ajuster en conséquence la
% distance entre ce bloc et les éléments qui suivent.
%
% \begin{macro}{\UL@measuretitle}
%   On place le titre et le sous-titre centrés dans des boîtes
%   \cmd{\UL@titlebox} et \cmd{\UL@subtitlebox}. La commande
%   \cmd{\UL@measuretitle} permettra de mesurer leur hauteur lorsque le
%   titre sera créé avec \cmd{\pagestitre}, plus loin. Un espacement
%   vertical d'un demi interligne est ajouté entre le titre et le
%   sous-titre, le cas échéant.
%    \begin{macrocode}
\newsavebox{\UL@titlebox}
\newsavebox{\UL@subtitlebox}
\newlength{\UL@titleboxtotht}
\newlength{\UL@subtitleboxtotht}
\newcommand{\UL@measuretitle}{%
  \setbox\UL@titlebox=\vbox{%
    \centering\UL@fonttitle\UL@maintitle}
  \setlength{\UL@titleboxtotht}{%
    \dimexpr\ht\UL@titlebox+\dp\UL@titlebox}
  \ifUL@hassubtitle
    \setbox\UL@subtitlebox=\vbox{%
      \centering\vspace*{0.5\baselineskip}\UL@fontsubtitle\UL@subtitle}
    \setlength{\UL@subtitleboxtotht}{%
      \dimexpr\ht\UL@subtitlebox+\dp\UL@subtitlebox}
  \fi}
%    \end{macrocode}
% \end{macro}
%
% \subsubsection{Type de document}
%
% \begin{macro}{\UL@typeofdoc}
%   La commande |\UL@typeofdoc| contient le type de document qui est
%   produit: thèse, thèse en cotutelle, maîtrise, examen de doctorat,
%   essai, projet de recherche ou rapport de stage.
%    \begin{macrocode}
\ifUL@isthesis
  \ifUL@iscotutelle
    \newcommand*{\UL@typeofdoc}{Th\`ese en cotutelle}
  \else
    \newcommand*{\UL@typeofdoc}{Th\`ese}
  \fi
\else
  \newcommand*{\UL@typeofdoc}{M\'emoire}
\fi
\ifUL@isexam
  \renewcommand*{\UL@typeofdoc}{Examen de doctorat}
\fi
\ifUL@isessay
  \renewcommand*{\UL@typeofdoc}{Essai}
\fi
\ifUL@isresearch
  \renewcommand*{\UL@typeofdoc}{Projet de recherche}
\fi
\ifUL@isworkterm
  \renewcommand*{\UL@typeofdoc}{Rapport de stage}
\fi
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\UL@docid}
%   La commande |\UL@docid| prépare ensuite la mention mise en forme
%   du type de document pour les pages de titre. La thèse ou le
%   mémoire en cotutelle ou en bidiplomation requiert un traitement
%   différent puisque le programme d'étude apparaît immédiatement sous
%   la mention.
%    \begin{macrocode}
\newcommand{\UL@docid}{%
  {\UL@fontprogram\UL@typeofdoc\par
  \ifnum\UL@typenum=2 \UL@program\par \fi}}
%    \end{macrocode}
% \end{macro}
%
% \subsubsection{Détails sur les facultés et universités d'attache}
%
% \begin{macro}{\Ul@details}
%   La commande |\Ul@details| est la plus complexe puisque la
%   disposition des informations additionnelles sur le document varie
%   beaucoup selon le type de thèse ou de mémoire. Il existe quatre
%   grandes catégories de disposition des éléments sur la page de titre:
%   standard; multifacultaire; en cotutelle ou en bidiplomation
%   (disposition identique); en extension.
%
%   Tel qu'expliqué à l'\autoref{sec:pagetitre}, certains
%   types de grade requièrent expressément que certaines informations
%   soient fournies pour la composition d'une page de titre. Si un
%   élément d'information manque, un avertissement est émis.
%    \begin{macrocode}
\newcommand{\UL@details}{%
  \ifcase\UL@typenum\relax% 0 standard
    \vspace{96pt}
    {\UL@fontprogram\UL@program}\par
    \ifnum\ifUL@isresearch 1\else\ifUL@isworkterm 1\else 0\fi\fi
      =1 %
      \vspace{\baselineskip}
    \else
      \UL@degree
    \fi\par
    \vspace{112pt}
    Qu\'ebec, Canada\par
  \or%                      1 multifacultaire
    \vspace{96pt}
    {\UL@fontprogram\UL@program}\par
    \UL@degree\par
    \vspace{36pt}
    \ifx\UL@facUL\empty
      \ClassWarningNoLine{ulthese}{UL faculty names missing.}
    \else
      \UL@facUL\par
    \fi
    \vspace{48pt}
    Qu\'ebec, Canada\par
  \or%                      2 cotutelle et bidiplomation
    \vspace{72pt}
    Universit\'e Laval\par Qu\'ebec, Canada\par
    \UL@degree\par
    \vspace{\baselineskip} et\par \vspace{\baselineskip}
    \ifx\UL@nameother\empty
      \ClassWarningNoLine{ulthese}{Other university name and location missing}
    \else
      \UL@nameother\par
    \fi
    \ifx\UL@degreeother\empty
      \ClassWarningNoLine{ulthese}{Other university degree missing}
    \else
      \UL@degreeother\par
    \fi
  \or%                      3 extension
    \vspace{48pt}
    {\UL@fontprogram\UL@program\ de l'Universit\'e Laval\par
      \UL@offered\ en extension \`a l'\UL@extensionat}\par
    \vspace{36pt}
    \UL@degree\par
    \vspace{36pt}
    \ifx\UL@facother\empty
      \ClassWarningNoLine{ulthese}{Other university faculty name missing}
    \else
      \UL@facother\par
    \fi
    \UL@extensionat\par
    \UL@extensionloc\par
    \vspace{\baselineskip}
    \ifx\UL@facUL\empty
      \ClassWarningNoLine{ulthese}{UL faculty name missing}
    \else
      \UL@facUL\par
    \fi
    Universit\'e Laval\par Qu\'ebec, Canada\par
  \fi}
%    \end{macrocode}
% \end{macro}
%
% \subsubsection{Conception de la page frontispice}
%
% \begin{macro}{\frontispice}
%   Les thèses et mémoires doivent obligatoirement débuter par une
%   page frontispice. Celle-ci comporte, de haut en bas:
%   \begin{enumerate}
%   \item un espace vide (créé avec une boîte de réglure invisible, ou
%     \emph{strut}) de la même hauteur que le logo de l'Université
%     Laval;
%   \item le titre et le sous-titre, le cas échéant;
%   \item le type de document (thèse, thèse en cotutelle,
%     mémoire, etc.);
%   \item le nom complet de l'auteur;
%   \item les noms des directeur et codirecteurs de recherche.
%   \end{enumerate}
%
%   Nous devons rétablir pour les pages de titre l'interligne simple et
%   l'espacement nul entre les paragraphes (\cmd{\parskip}). Ensuite, nous
%   devons ajuster la distance entre le bloc de titre et le type de
%   document (\cmd{\UL@docidspacing}) et celle entre ce dernier et le nom
%   de l'auteur (\cmd{\UL@authorspacing}). Cela fait en sorte que les
%   éléments des pages de titre se retrouvent (presque) toujours au même
%   endroit sur la page. Une distance minimale d'un interligne est
%   conservée entre le bloc de titre et le type de document
%   (précaution nécessaire pour l'éventuel cas d'un bloc de titre
%   s'étendant sur plusieurs lignes).
%
%   Le nom de l'auteur et ceux des directeurs et codirecteurs de
%   recherche sont insérées directement dans le code de la commande
%   \cmd{\frontispice}.
%    \begin{macrocode}
\newlength{\UL@docidspacing}
\setlength{\UL@docidspacing}{82pt}
\newlength{\UL@authorspacing}
\setlength{\UL@authorspacing}{72pt}
\newcommand{\UL@settitledims}{%
  \UL@measuretitle
  \addtolength{\UL@docidspacing}{-\UL@titleboxtotht}
  \addtolength{\UL@docidspacing}{-\UL@subtitleboxtotht}
  \ifdim\UL@docidspacing<\baselineskip\relax
  \setlength{\UL@docidspacing}{\baselineskip}
  \addtolength{\UL@authorspacing}{-\baselineskip}
  \fi}
\newcommand{\frontispice}{{%
    \ifUL@isexam\else\ifUL@isworkterm\else
      \clearpage
      \pagestyle{empty}
      \SingleSpacing\setlength{\parskip}{0pt}
      \centering
      \UL@fontbase
      \ifUL@hastitlepage\else
        \UL@settitledims
      \fi
      \ifnum\UL@typenum>1\relax
        \vspace*{0pt}\par
      \else
        \rule{0mm}{15mm}\par    % strut
      \fi
      \vspace{82pt}
      \box\UL@titlebox
      \box\UL@subtitlebox
      \vspace{\UL@docidspacing}
      \UL@docid
      \vspace{\UL@authorspacing}
      {\UL@fontauthor\UL@author}\par
      \vspace{72pt}
      Sous la direction de:\par
      \vspace{\baselineskip}
      \UL@director\par
      \UL@codirector
    \fi\fi
    \clearpage}}
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\pagetitre}
%   La composition d'une page de titre est optionnelle pour les thèses
%   et mémoires de l'Université Laval. La commande \cmd{\pagetitre}
%   permet néanmoins d'en créer une conforme aux normes de
%   présentation matérielle de la FESP. La page de titre comporte, de
%   haut en bas:
%   \begin{enumerate}
%   \item le logo de l'Université Laval (sauf pour les thèses ou
%     mémoires réalisés en cotutelle, en bidiplomation ou en
%     extension);
%   \item le titre et le sous-titre, le cas échéant;
%   \item le type de document (thèse, thèse en cotutelle,
%     mémoire, etc.);
%   \item le nom complet de l'auteur;
%   \item une description du programme, du grade obtenu et des
%     facultés ou universités d'attache, le cas échéant;
%   \item la mention «Québec, Canada» si le logo de l'Université
%     Laval est présent;
%   \item la notice de copyright.
%   \end{enumerate}
%    \begin{macrocode}
\newcommand{\pagetitre}{{%
    \UL@hastitlepagetrue
    \clearpage
    \pagestyle{empty}
    \SingleSpacing\setlength{\parskip}{0pt}
    \centering
    \UL@fontbase
    \UL@settitledims
    \ifnum\UL@typenum>1\relax
      \vspace*{0pt}\par
    \else
      \includegraphics[height=15mm,keepaspectratio=true]{ul_p}\par
    \fi
    \vspace{82pt}
    \copy\UL@titlebox
    \copy\UL@subtitlebox
    \vspace{\UL@docidspacing}
    \UL@docid
    \vspace{\UL@authorspacing}
    {\UL@fontauthor\UL@author}\par
    \UL@details
    \vfill
    {\textcopyright} \UL@author, \UL@year\par
    \clearpage}}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Listes des figures et des tableaux}
%
% \begin{macro}{\listfigurename}
%   Le paquetage \pkg{babel} définit comme titre pour la liste des
%   figures «Table des figures», alors que la liste des tableaux est
%   «Liste des tableaux». Pour une plus grande symétrie, la classe
%   redéfinit le titre correspondant à \cmd{\listoffigures}. La commande
%   \cmd{\addto} est nécessaire pour éviter que \pkg{babel} redéfinisse
%   le titre à |\begin{document}|.
%    \begin{macrocode}
\ifUL@babel
  \addto\captionsfrench{\renewcommand{\listfigurename}{Liste des figures}}
\fi
%    \end{macrocode}
%   Si \pkg{babel} n'est pas chargé, ce sera à l'utilisateur de faire
%   une correction équivalente. Avec \pkg{polyglossia}, la commande à
%   insérer dans l'entête du document est la même que ci-dessus.
% \end{macro}
%
% \subsection{Dédicace et épigraphe}
%
% La dédicace et l'épigraphe sont mises en forme avec la commande
% \cmd{\epigraph} de \class{memoir}.
% \begin{macro}{\dedicace}
%   La dédicace est une épigraphe simplifiée placée seule sur une
%   page, alignée à droite à une dizaine de lignes de la marge
%   supérieure, sans auteur ou source et sans ligne de démarcation.
%    \begin{macrocode}
\newcommand{\dedicace}[1]{{%
    \clearpage
    \pagestyle{empty}
    \setlength{\beforeepigraphskip}{10\baselineskip}
    \setlength{\epigraphrule}{0pt}
    \epigraphtextposition{flushright}
    \mbox{}\epigraph{\itshape #1}{}}}
%    \end{macrocode}
% \end{macro}
% \begin{macro}{\epigraphe}
%   L'épigraphe de début de document est placée seule sur une page à
%   une dizaine de lignes de la marge supérieure. Pour le reste, on
%   s'en remet à la commande \cmd{\epigraph} de \class{memoir}.
%    \begin{macrocode}
\newcommand{\epigraphe}[2]{{%
    \clearpage
    \pagestyle{empty}
    \setlength{\beforeepigraphskip}{10\baselineskip}
    \mbox{}\epigraph{#1}{#2}}}
%    \end{macrocode}
% \end{macro}
%
% \subsection{Citations}
%
% \begin{environment}{quote}
%   La classe redéfinit l'environnement |quote| de \class{memoir}
%   afin que le texte des citations se trouve en retrait de 10~mm à
%   gauche et à droite, conformément aux règles de présentation de la
%   FESP.
%    \begin{macrocode}
\renewenvironment{quote}{%
  \list{}{\rightmargin 10mm \leftmargin 10mm}%
  \item[]}{\endlist}
%    \end{macrocode}
%   \end{environment}
%
% \begin{environment}{quotation}
%   Il en va de même de l'environnement |quotation|. Cependant, cet
%   environnement passe également à l'interligne simple et la classe
%   ajuste l'espacement vertical entre les paragraphes afin que
%   ceux-ci soient bien distincts les uns des autres tout en demeurant
%   raisonnablement compacts. Cet espacement est ici fixé à 6~points.
%    \begin{macrocode}
\renewenvironment{quotation}{%
  \list{}{%
    \SingleSpacing
    \listparindent 0em
    \itemindent    \listparindent
    \leftmargin    10mm
    \rightmargin   \leftmargin
    \parsep        6\p@ \@plus\p@}%
  \item[]}{\endlist}
%    \end{macrocode}
% \end{environment}
%
% \subsection{Numérotation des divisions du document}
%
% Par défaut, \class{memoir} numérote les divisions du document
% seulement jusqu'au niveau des sections. La classe étend la
% numérotation aux sous-sections.
%    \begin{macrocode}
\setsecnumdepth{subsection}
%</class>
%    \end{macrocode}
% ^^A Fin du code de la classe
%
% ^^A Il faut placer ces notes de changement relatives aux gabarits
% ^^A avant \Finale
% \changes{5.0}{2018-06-08}{Gabarits: meilleure indication du texte à
%   remplacer.}
% \changes{5.0}{2018-06-08}{Gabarits: bonification de la structure
%   d'un chapitre de thèse ou de mémoire par articles.}
% \changes{5.0}{2018-04-25}{Gabarits: ajout d'étiquettes et de renvois
%   dans les gabarits des parties du document.}
% \changes{5.0}{2018-04-25}{Gabarits: automatisation de l'ajout
%   d'entrées dans la table des matières à l'aide d'étiquettes et de
%   renvois.}
% \changes{4.4}{2017-05-16}{Gabarits: nouveau gabarit pour une thèse
%   par articles.}
% \changes{4.2}{2016-03-29}{Gabarits: nouvelles options de babel.}
%
% \Finale
%
% \iffalse
% ^^A Gabarits du document maître
%<*gabarit>
%<phd&standard>%% GABARIT POUR THÈSE STANDARD
%<phd&mesure>%% GABARIT POUR THÈSE SUR MESURE
%<phd&articles>%% GABARIT POUR THÈSE PAR ARTICLES
%<phd&multifac>%% GABARIT POUR THÈSE MULTIFACULTAIRE
%<phd&cotutelle>%% GABARIT POUR THÈSE EN COTUTELLE
%<phd&UdeS>%% GABARIT POUR THÈSE EN EXTENSION À L'UNIVERSITÉ DE SHERBROOKE
%<phd&UQO>%% GABARIT POUR THÈSE EN EXTENSION À L'UQO
%<m&standard>%% GABARIT POUR MÉMOIRE STANDARD
%<m&mesure>%% GABARIT POUR MÉMOIRE SUR MESURE
%<m&bidiplomation>%% GABARIT POUR MÉMOIRE EN BIDIPLOMATION
%<m&UQAC>%% GABARIT POUR MÉMOIRE EN EXTENSION À L'UQAC
%%
%% Consulter la documentation de la classe ulthese pour une
%% description détaillée de la classe, de ce gabarit et des options
%% disponibles.
%%
%% [Ne pas hésiter à supprimer les commentaires après les avoir lus.]
%%
%% Déclaration de la classe avec le type de grade
%<phd>%%   [l'un de LLD, DMus, DPsy, DThP, PhD]
%<m>%%   [l'un de MATDR, MArch, MA, LLM, MErg, MMus, MPht, MSc, MScGeogr,
%<m>%%    MServSoc, MPsEd]
%% et les langues les plus courantes. Le français sera la langue par
%<!articles>%% défaut du document.
%<articles>%% défaut du document. L'option 'bibsection' permet de créer des
%<articles>%% bibliographies par chapitre présentées sous forme de section
%<articles>%% numérotée.
%<phd&standard>\documentclass[PhD,english,french]{ulthese}
%<phd&articles>\documentclass[PhD,bibsection,english,french]{ulthese}
%<phd&cotutelle>\documentclass[PhD,cotutelle,english,french]{ulthese}
%<m&standard>\documentclass[MSc,english,french]{ulthese}
%<m&articles>\documentclass[MSc,bibsection,english,french]{ulthese}
%<m&bidiplomation>\documentclass[MA,bidiplomation,english,french]{ulthese}
  %% Encodage utilisé pour les caractères accentués dans les fichiers
  %% source du document. Les gabarits sont encodés en UTF-8. Inutile
  %% avec XeLaTeX, qui gère Unicode nativement.
  \ifxetex\else \usepackage[utf8]{inputenc} \fi

  %% Charger ici les autres paquetages nécessaires pour le document.
  %% Quelques exemples; décommenter au besoin.
  %\usepackage{amsmath}       % recommandé pour les mathématiques
  %\usepackage{icomma}        % gestion de la virgule dans les nombres

  %% Utilisation d'une autre police de caractères pour le document.
  %% - Sous LaTeX
  %\usepackage{mathpazo}      % texte et mathématiques en Palatino
  %\usepackage{mathptmx}      % texte et mathématiques en Times
  %% - Sous XeLaTeX
  %\setmainfont{TeX Gyre Pagella}      % texte en Pagella (Palatino)
  %\setmathfont{TeX Gyre Pagella Math} % mathématiques en Pagella (Palatino)
  %\setmainfont{TeX Gyre Termes}       % texte en Termes (Times)
  %\setmathfont{TeX Gyre Termes Math}  % mathématiques en Termes (Times)

  %% Options de mise en forme du mode français de babel. Consulter la
  %% documentation du paquetage babel pour les options disponibles.
  %% Désactiver (effacer ou mettre en commentaire) si l'option
  %% 'nobabel' est spécifiée au chargement de la classe.
  \frenchbsetup{%
    StandardItemizeEnv=true,       % format standard des listes
    ThinSpaceInFrenchNumbers=true, % espace fine dans les nombres
    og=«, fg=»                     % caractères « et » sont les guillemets
  }

%<!articles>  %% Style de la bibliographie.
%<!articles> \bibliographystyle{}
%<articles>  %% Suppression du numéro de section de la bibliographie. Utilisation
%<articles>  %% de \extrasfrench parce que c'est la dernière langue déclarée dans
%<articles>  %% \documentclass, ci-dessus.
%<articles>  %\addto\extrasfrench{%
%<articles>  %  \renewcommand{\bibsection}{\section*{\bibname}\prebibhook}}

  %% Composition de la page frontispice. Remplacer les éléments entre < >.
  %% Supprimer les caractères < >. Couper un long titre ou un long
  %% sous-titre manuellement avec \\.
  \titre{<Titre principal>}
  % \titre{Ceci est un exemple de long titre \\
  %   avec saut de ligne manuel}
  % \soustitre{Sous-titre le cas échéant}
  % \soustitre{Ceci est un exemple de long sous-titre \\
  %   avec saut de ligne manuel}
  \auteur{<Prénom Nom>}
%<phd&(standard|cotutelle)>  \programme{Doctorat en <discipline> <-- majeure, s'il y a lieu>}
%<m&standard>  \programme{Maîtrise en <discipline> <-- majeure, s'il y a lieu>}
%<m&bidiplomation>  \programme{Maîtrise en <discipline>}
%<!(cotutelle|bidiplomation)>  \direction{<Prénom Nom>, <directeur ou directrice> de recherche}
%<cotutelle>  \direction{<Prénom Nom>, <directeur ou directrice> de recherche \\
%<cotutelle>             <Prénom Nom>, <directeur ou directrice> de cotutelle}
%<bidiplomation>  \direction{<Prénom Nom>, <directeur ou directrice> de recherche \\
%<bidiplomation>             <Prénom Nom>, <directeur ou directrice> de recherche}
  % \codirection{<Prénom Nom>, <codirecteur ou codirectrice> de recherche}
  % \codirection{<Prénom Nom>, <codirecteur ou codirectrice> de recherche \\
  %              <Prénom Nom>, <codirecteur ou codirectrice> de recherche}

  %% Les commandes ci-dessous servent uniquement pour la création
  %% d'une page de titre (interdite lors du dépôt à la FESP).
  % \annee{<20xx>}
%<cotutelle>  % \univcotutelle{<Université de cotutelle> \\ <Ville>, <Pays>}
%<bidiplomation>  % \univcotutelle{<Université de bidiplomation> \\ <Ville>, <Pays>}
%<cotutelle|bidiplomation>  % \gradecotutelle{<Nom du grade> (<sigle du grade>)}

\begin{document}

\frontmatter                    % pages liminaires

\frontispice                    % production de la page frontispice

\include{resume}                % résumé français
\include{abstract}              % résumé anglais
\cleardoublepage

\tableofcontents                % production de la TdM
\cleardoublepage

\listoftables                   % production de la liste des tableaux
\cleardoublepage

\listoffigures                  % production de la liste des figures
\cleardoublepage

\dedicace{<Dédicace si désiré>}
\cleardoublepage

\epigraphe{<Texte de l'épigraphe>}{<Source ou auteur>}
\cleardoublepage

\include{remerciements}         % remerciements
\include{avantpropos}           % avant-propos

\mainmatter                     % corps du document

\include{introduction}          % introduction
%<!articles>\include{chapitre1}             % chapitre 1
%<articles>\include{chapitre1-articles}    % chapitre 1
%<!articles>\include{chapitre2}             % chapitre 2, etc.
%<articles>\include{chapitre2-articles}    % chapitre 2, etc.
\include{conclusion}            % conclusion

\appendix                       % annexes le cas échéant

\include{annexe}                % annexe A

%<!articles>\bibliography{}                 % production de la bibliographie
%<!articles>
\end{document}
%</gabarit>
%
% ^^A Gabarits des parties du document
%<*resume>
\chapter*{Résumé}               % ne pas numéroter
\label{chap:resume}             % étiquette pour renvois
\phantomsection\addcontentsline{toc}{chapter}{\nameref{chap:resume}} % inclure dans TdM

\begin{otherlanguage*}{french}
  <Texte du résumé en français. Obligatoire.>
\end{otherlanguage*}
%</resume>
%
%<*abstract>
\chapter*{Abstract}             % ne pas numéroter
\label{chap:abstract}           % étiquette pour renvois
\phantomsection\addcontentsline{toc}{chapter}{\nameref{chap:abstract}} % inclure dans TdM

\begin{otherlanguage*}{english}
  <Text of English abstract. Optional, but recommended.>
\end{otherlanguage*}
%</abstract>
%
%<*remerciements>
\chapter*{Remerciements}        % ne pas numéroter
\label{chap:remerciements}      % étiquette pour renvois
\phantomsection\addcontentsline{toc}{chapter}{\nameref{chap:remerciements}} % inclure dans TdM

<Texte des remerciements en prose.>
%</remerciements>
%
%<*avantpropos>
\chapter*{Avant-propos}         % ne pas numéroter
\label{chap:avantpropos}        % étiquette pour renvois
\phantomsection\addcontentsline{toc}{chapter}{\nameref{chap:avantpropos}} % inclure dans TdM

<Texte de l'avant-propos. Obligatoire dans une thèse ou un mémoire par
articles.>
%</avantpropos>
%
%<*introduction>
\chapter*{Introduction}         % ne pas numéroter
\label{chap:introduction}       % étiquette pour renvois
\phantomsection\addcontentsline{toc}{chapter}{\nameref{chap:introduction}} % inclure dans TdM

<Texte de l'introduction. La thèse ou le mémoire devrait normalement
débuter par une introduction. Celle-ci est traitée comme un chapitre
normal, sauf qu'elle n'est pas numérotée.>
%</introduction>
%
%<*chapitre>
\chapter{<Titre du chapitre ou de l'article>}     % numéroté
\label{chap:}                   % étiquette pour renvois (à compléter!)

%<articles>\section{Résumé}
%<articles>
%<articles>\begin{otherlanguage*}{french}
%<articles>  <Résumé de l'article en français. Obligatoire.>
%<articles>\end{otherlanguage*}
%<articles>
%<articles>\section{Abstract}
%<articles>
%<articles>\begin{otherlanguage*}{english}
%<articles>  <English abstract of the paper. Optional, but recommended.>
%<articles>\end{otherlanguage*}
%<articles>
<Texte du chapitre ou de l'article.>
%<articles>
%<articles>\bibliographystyle{}              % style de la bibliographie
%<articles>\bibliography{}                   % production de la bibliographie
%</chapitre>
%
%<*conclusion>
\chapter*{Conclusion}           % ne pas numéroter
\label{chap:conclusion}         % étiquette pour renvois
\phantomsection\addcontentsline{toc}{chapter}{\nameref{chap:conclusion}} % inclure dans TdM

<Texte de la conclusion. Une thèse ou un mémoire devrait normalement
se terminer par une conclusion placée avant les annexes, le cas
échéant. La conclusion est traitée comme un chapitre normal, sauf
qu'elle n'est pas numérotée.>
%</conclusion>
%
%<*annexe>
\chapter{<Titre de l'annexe>}     % numérotée
\label{chap:}                   % étiquette pour renvois (à compléter!)

<Texte de l'annexe.>
%</annexe>
% \fi
