- English
- français
Environmental Hydraulics Laboratory LHE
Context
The efrench package was created by Bernard Gaulle to manage the specifics of French typography, a task it performs much better than the French option of babel. After the death of its creator in 2006, maintenance was taken over by Raymond Juillerat, who also worked to ensure that the package was included in the MikTeX and TeX Live distributions.
The package has evidently not been updated since 2019. With the evolution of LaTeX and other packages, conflicts can arise that prevent compilation or lead to errors. Among the identified conflicts, there are:
- an error message indicating that msg-msg.tex is missing. This file indeed seems no longer to be provided in recent distributions. It must therefore be downloaded separately;
- footnotes causing compilation errors. A fix needs to be applied for the efrench package to be compatible with the new LaTeX kernels. One workaround is to force compilation with the old kernel.
Nature of the problem
The efrench package creates footnotes that are referenced by numbers. The package uses \verb+\fr@makefntext+ to locally redefine \@thefnmark in the form of a macro command that begins with \egroup. For this command to work, the package assumes that:
- the command \@textsuperscript has a certain functionality;
- the tag \@thefnmark is used nowhere else other than in this context.
The new LaTeX kernel violates at least one of these two assumptions, and the tags \egroup then close a group of the wrong type. During compilation, this generates errors such as « Extra }, or forgotten \endgroup ».
The fix efrench-fix leaves the tags \@thefnmark intact. Instead, it locally redefines \@makefnmark, which directly composes the same mark as the old kernel: same indentation \parindent, same point followed by 0.25 em, and same elevation for \fnsymbol. The footnotes in minipages retain the superscript followed by a thin space. No e-french file is modified.Fix
Workaround
It is always possible to force compilation with the old kernel. Simply place the command in the document preamble before the class call:Under MikTeX
For users on Windows using the MikTeX distribution, a local folder must be created, for example, C:/mytexmf and place the missing files following the usual tree structure. In the MikTeX console, go to Settings, add the folder (e.g., C:/mytexmf) and finally in the top menu under Tasks, choose the command « Refresh file name database ». This allows MikTeX to find the msg-msg.tex and efrench-fix files.
Under TeX Live (Linux)
A local directory must be used or created in the home directory:
mkdir -p ~/texmf/tex/latex/efrench-fix
cp efrench-fix.sty ~/texmf/tex/latex/efrench-fix/
You can check that the environment variable correctly points to the local texmf folder:
kpsewhich -var-value TEXMFHOME
You can verify that LaTeX can find the fix:
kpsewhich efrench-fix.sty
Usage
After each call of french in the preamble of a document, the fix must be called:
\usepackage{french}
\usepackage{efrench-fix}
You can condition the use of the fix:
\usepackage{french}
\IfFormatAtLeastTF{2025-11-02}%
{\IfFileExists{efrench-fix.sty}{\usepackage{efrench-fix}}{}}%
{}
Downloads
Files:- fix: efrench-fix.sty
- documentation (pdf): correctif.pdf
- files for Linux: archive texmf.tar.gz
- files for Windows: archive mytexmf.zip
LHE News
Field of expertise of LHE
- Geophysical fluid mechanics
- Snow avalanches
- Torrential hydraulics
- Risk management (in mountain areas)
- Rheology of suspensions
- Particulate flows
Contacts
Laboratoire d'Hydraulique Environnementale (LHE)
EPFL-ENAC-LHE
Station 18
CH-1015 Lausanne
show on campus map
Fax: +41 (0) 21 693 67 67
