\chapter{Développements futurs}\label{cha:devel-futurs}

\section{Pour la prochaine version}
\label{sec:pour-la-prochaine}

\subsection{Classe}

% ^^A \begin{enumerate}
  % ^^A \item S'assurer que les termes anglais choisis pour les noms de
  % ^^A commandes sont judicieux.
  % ^^A \item Mettre le bon \docAuxCommand*{CheckSum}.
% ^^A \end{enumerate}

\subsection{Documentation de la classe}
\label{sec:documentation-de-la}

\begin{enumerate}
\item À corriger :
  \begin{enumerate}
  \item si la documentation est imprimée, les commandes et environnements sont
    peu lisibles dans les boîtes de warnings ;
  \item la fonte en forme de canevas passe mal dans Acrobat
    Reader. Cf. \url{http://tex.stackexchange.com/q/134121/18401}.
  \end{enumerate}
\item Documenter les spécimens et canevas.
  % ^^A \item Revoir les instructions d'installation de la classe et de
  % ^^A production de sa documentation.
\item Prévoir une version imprimable.
\end{enumerate}

\section{Pour les versions ultérieures}
\label{sec:pour-les-versions}

\subsection{Classe}
\label{sec:classe-ult}

\begin{enumerate}
\item Vérifier que toutes les macros (publiques et privées) sont en anglais.
\item Factoriser, nettoyer et documenter correctement le code.
\item Homogénéiser les styles de page en parties \enquote{mainmatter} et
  \enquote{appendix}.
  % ^^A (voir s'il n'y a pas mieux que le hack actuel pour corriger l'absence
  % ^^A d'espace entre le numéro et le titre du chapitre en partie
  % ^^A \enquote{appendix})
\item Remplacer \refCom{coinstitute}, et peut-être aussi \refCom{company}, par des
  occurrences multiples de \refCom{institute}, distinguables par l'ordre de saisie
  et/ou par des  options.
%^^A \item Voir si les noms \foreignquote{english}{flat-template} et
%^^A   \foreignquote{english}{non-flat-template} ne devraient pas être changés en
%^^A   \foreignquote{english}{single-file} et
%^^A   \foreignquote{english}{master-slaves-files}.
%^^A \item Faire des pseudo-chapitres de la partie liminaire (\refCom{acknowledgements},
%^^A   \refCom{caution}, \refCom{frenchabstract}, \refCom{foreword}, \refCom{preface}) des objets analogues
%^^A   à \refEnv{abstract} (c-à-d des environnements pour les préparer et des commandes
%^^A   \docAuxCommand*{make...} pour les produire).
%^^A \item Finir d'implémenter et documenter \docAuxKey*{affiliationsecondary}
% ^^A et assimilés.
\item Fournir une option pour les polices.
\item Faire figurer la discipline sur la 4\ieme{} de couverture.
\item Permettre :
  \begin{enumerate}
  \item de choisir l'ordre des éléments de la page de titre ;
  \item de choisir l'ordre dans les lignes et dans les colonnes du
    tableau des membres du jury.
  \end{enumerate}
  Plus généralement, fournir une option de classe (par exemple
  \docAuxKey*{style}) qui permette, à partir des commandes
  \docAuxCommand*{author}, \docAuxCommand*{title}, ...,
  \docAuxCommand*{supervisor}, \docAuxCommand*{examiner}, etc. de la \yatcl{},
  d'obtenir une page de couverture adaptée à telle ou telle université (ou
  \gls{pres}), rien qu'en ajoutant une option de classe telle que
  \docAuxKey*{style}×=×\docValue*{lille-1}. Pour ce faire, documenter la
  production des pages de titres et les macros publiques
  (\docAuxCommand*{print...}) qui permettent de faire apparaître les éléments
  qui les constituent ; ainsi, des contributeurs pourront eux-mêmes coder la
  chose !
\item Augmenter le nombre de métadonnées du \File{.pdf} (au moyen du
  \Package{hyperxmp} ?)
\item Fournir une commande \docAuxCommand*{includeall} permettant de
  neutraliser les effets de la commande \docAuxCommand*{includeonly}.
\item Fournir une commande \docAuxCommand*{phrase} pour les incises telles que
  \phrase{celle-ci} ou \phrase*{celle-là}.
\item Faire écrire les \foreignquote{english}{warnings} propres à la \yatcl{}
  dans un fichier auxiliaire (disons \file{.yad}) lu avant le \File{.aux} de sorte que ceux-ci
  soient les premiers à figurer dans le fichier de
  \foreignquote{english}{log}. Faire alors usage du \Package*{rerunfilecheck}
  pour s'assurer que le \File{.yad} est à jour.
  % ^^A \item Répartir les \docAuxKey*{moretexcs} et \docAuxKey*{morekeywords}
  % ^^A du \File{lstlang0.sty} selon leurs packages ou classes.
\item Faire en sorte que, optionnellement, il soit possible de centrer
  verticalement le titre (en fait la boîte le contenant) dans les pages de
  titre.
\item Tester l'intégration du \Package{minitoc}.
\item Rendre personnalisable les différents \enquote{output} en proposant
  diverses options.
\end{enumerate}

\subsection{Documentation de la classe}
\label{sec:documentation-de-la-ult}

\begin{enumerate}
\item Écrire un \foreignquote{english}{Quick tour}.
\item Écrire un \foreignquote{english}{How-To} :
  \begin{enumerate}
  \item pour les doctorants qui commencent leur rédaction sous la \yatcl{} ;
  \item pour les doctorants qui migrent d'une autre classe vers la \yatcl{} ;
  \item pour le passage de la version par défaut (\docValue*{inprogress}) à la
    version finale (\docValue*{final}).
  \end{enumerate}
  Pour les deux derniers, fournir un lien vers le chapitre ou la section qui
  traite des éléments \enquote{obligatoires}.
\item Indiquer la présence du \File{latexmkrc} pour les spécimen et canevas, et
  expliquer l'usage de \program{latexmk} dans les \enquote{trucs et astuces}.
\item Utiliser le \Package{tcolorbox} pour s'affranchir des raccourcis
  % ^^A
  \lstDeleteShortInline×%^^A
  % ^^A
  \lstinline|×|
  %^^A
  \lstMakeShortInline[style=dbtex]×%^^A
  %^^A
  et ×÷× ainsi pouvoir compiler la documentation avec \program{pdflatex} et non
  plus \program{xelatex} (il faudra alors renoncer au \Package*{fontawesome}
  qui fournit l'icône en forme de canevas).
\item Prévoir un index des concepts en plus de celui des commandes.
\item Prévoir un \File{.el} (pour \program{Emacs+AUCTeX}) et voir le format
  pour \program{TeXworks}.
\item Indiquer comment obtenir un nom de fichier \acrshort{pdf} différent de
  ×\jobname×, par exemple pour le fichier à imprimer :
\begin{lstlisting}
pdflatex -jobname=these_a_imprimer "\PassOptionsToClass{output=paper}{yathesis}\input{these}"
\end{lstlisting}
Évoquer éventuellement les \enquote{makefile}.
\end{enumerate}

%
\iffalse
%%% Local Variables:
%%% mode: latex
%%% eval: (latex-mode)
%%% ispell-local-dictionary: "fr_FR"
%%% TeX-engine: xetex
%%% TeX-master: "../yathesis.dtx"
%%% End:
\fi
