bug di xpatch in texlive 2019?

Sep 09 2020

Sto eseguendo l' esempio leggermente modificato con pdflatex e quindi 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}

Tuttavia, il titolo della sezione Nomenclatureè ancora lì mentre non dovrebbe. Anche la compilation esce, successquindi sono perso. È un bug nel xpatchpacchetto?

Risposte

2 egreg Sep 09 2020 at 22:25

Il nomenclpacchetto è stato aggiornato di recente e ora utilizza di default il tocbasicpacchetto.

Per utilizzare il vecchio metodo, è necessario chiamare il pacchetto con l'opzione 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}

Con il tocbasicmetodo, è necessario applicare la patch \tocbasic@listhead, ma ciò potrebbe avere effetti negativi su altre parti del documento.

\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}