Ошибка xpatch в texlive 2019?
Sep 09 2020
Я запускаю слегка измененный пример с pdflatex, а затем 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}
Однако заголовок раздела Nomenclatureвсе еще присутствует, хотя его и не должно быть. Компиляция также выводит, successтак что я потерялся. Это ошибка в xpatchпакете?
Ответы
2 egreg Sep 09 2020 at 22:25
nomenclПакет был недавно обновлен и теперь он использует по умолчанию в tocbasicпакет.
Чтобы использовать старый метод, вам нужно вызвать пакет с опцией 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}
С помощью этого tocbasicметода вам необходимо исправить \tocbasic@listhead, но это может иметь неблагоприятные последствия для других частей документа.
\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}