bogue xpatch dans texlive 2019?

Sep 09 2020

J'exécute l' exemple légèrement modifié avec pdflatex puis makeindex (makeindex -s nomencl.ist -o myfile.nls myfile.nlo)

\documentclass[]{article}
\usepackage{xpatch}
\usepackage{nomencl} 

\patchcmd{\thenomenclature}{\section*{\nomname}}{\relax}{\typeout{Success}}{\typeout{Failure}}

\makenomenclature 

\begin{document}
text
\nomenclature[1]{$\mu$}{variable}
\printnomenclature[0.9in]
\end{document}

Cependant, le titre de la section Nomenclatureest toujours là alors qu'il ne devrait pas. La compilation sort également successdonc je suis perdu. Est-ce un bogue dans le xpatchpackage?

Réponses

2 egreg Sep 09 2020 at 22:25

Le nomenclpackage a été mis à jour récemment et utilise maintenant par défaut le tocbasicpackage.

Pour utiliser l'ancienne méthode, vous devez appeler le package avec l'option notocbasic.

% arara: pdflatex
% arara: nomencl
% arara: pdflatex

\documentclass[]{article}
\usepackage{xpatch}
\usepackage[notocbasic]{nomencl} 

\patchcmd{\thenomenclature}{\section*{\nomname}}{\relax}{\typeout{Success}}{\typeout{Failure}}
\makenomenclature 

\begin{document}
text
\nomenclature[1]{$\mu$}{variable}
\printnomenclature[0.9in]
\end{document}

Avec la tocbasicméthode, vous devez patcher \tocbasic@listhead, mais cela peut avoir des effets néfastes sur d'autres parties du document.

\documentclass[]{article}
\usepackage{xpatch}
\usepackage{nomencl}

\makeatletter
\patchcmd\tocbasic@listhead{\section*}{\@gobble}{}{}
\makeatother

\makenomenclature

\begin{document}
text
\nomenclature[1]{$\mu$}{variable}
\printnomenclature[0.9in]
\end{document}