\tableofcontents non traduit en doctex

Cette question n’a suscité aucune réponse, soit car elle n’a pas été vue lorsqu’elle a été envoyée par mail, soit car personne ne sait répondre, soit car moins de personnes que d’habitude ont testé car le protocole de test ne leur était pas familier (avec du unzip et du make).

On va simplifier le protocole de test de la façon suivante : dézippez le fichier .zip dont le lien a été donné. Dans le dossier ainsi obtenu, prenez le fichier temp2.dtx et sortez-le du dossier en question. Appliquez pdflatex sur le fichier temp2.dtx.

Pour ceux qui ne veulent pas télécharger le fichier .zip, le fichier le plus important (et le seul utile ici) est le fichier temp2.dtx dont le contenu est le suivant :

%\iffalse
\documentclass{ltxdoc}
\usepackage{efrench}
\title{ECM}
\begin{document}
\DocInput{temp2.dtx}
\end{document}
%\fi
%\maketitle
%\tableofcontents
%\section{Un}
%\StopEventually{}

Première constatation, le problème observé est spécifique à efrench, peu connu et peu employé actuellement.

En remplaçant \usepackage{efrench} par \usepackage[french]{babel}, on obtient bien une date et un titre de sommaire en français.

Note : après avoir testé avec efrench, virez tous les fichiers intermédiaires avant de recompiler avec babel et son option french.

Notons une difficulté supplémentaire : si vous cherchez efrench sur le CTAN vous n’obtiendrez rien (https://ctan.org/search?phrase=efrench).

Et la raison va vous étonner : pour le CTAN, efrench n’est pas un package (même si on le charge avec \usepackage, allez comprendre). Pour le CTAN, un package (https://ctan.org/pkg) n’est pas la même chose qu’un package (chargé avec \usepackage).

Il s’agit là d’une subtilité qui dépasse le commun des mortels, mais ils y tiennent.

Bref, si on veut chercher des informations sur efrench il faut chercher e-french (https://ctan.org/search?phrase=e-french, sauf que leur moteur de recherche vire le tiret et la recherche se transforme en :

On finit par trouver e-french au bas de la 6e page de résultats :

Et encore, il n’y a aucune trace de efrench sur la page https://ctan.org/pkg/e-french (il y a frenchle et frenchpro qui sont cités).

Il faut vraiment aller dans l’arborescence, https://ctan.org/tex-archive/language/french/e-french/texmf/tex, pour trouver un efrench.sty :

La documentation elle-même est confuse, il y a bien un fichier https://mirrors.ctan.org/language/french/e-french/texmf/doc/manuels/frenchle.pdf qui parle de Efrench mais parle-il du package efrench alors que le nom de la documentation est frenchle qui est le nom d’un package (frenchle.sty) ?

image

Finalement, en fouillant dans l’arborescence, je tombe sur le manuel de efrench : https://mirrors.ctan.org/language/french/e-french/texmf/doc/manuels/efrench.pdf.

Il est surprenant qu’il ne soit pas visible sur la page principale, https://ctan.org/pkg/e-french.



Bref, avec le peu d’utilisateurs actuels du package (qui a probablement un intérêt par rapport à d’autres packages de gestion de la langue, et son auteur initial est malheureusement tragiquement parti bien trop tôt), il n’est pas certain qu’une explication au comportement observé puisse être obtenue.

Excepté que, pour une raison à déterminer, lorsque \DocInput{temp2.dtx} est exécuté, efrench n’est pas actif (alors que babel avec l’option french l’est). Mais c’est plus une constatation qu’une explication.

Il faut un expert humain (ce que je ne suis pas), les IA sont à la ramasse pour répondre à la question de l’explication (du moins les IA utilisables gratuitement).

Pour ce qui est de la voie de contournement, elle est en fait très simple (à moins que quelque chose vous empêche de l’employer) :

insérez %\french (heureusement que j’ai pu accéder à la documentation cachée située à https://mirrors.ctan.org/language/french/e-french/texmf/doc/manuels/efrench.pdf pour découvrir cette commande \french).

Donc avec :

%\iffalse
\documentclass{ltxdoc}
\usepackage{efrench}
\title{ECM}
\begin{document}
\DocInput{temp2.dtx}
\end{document}
%\fi
%\french
%\maketitle
%\tableofcontents
%\section{Un}
%\StopEventually{}

dans le contenu du fichier temp2.dtx, la date et le titre de la table des matières sont en français.