pgfkeys неопределенная последовательность управления

pgfkeys неопределенная последовательность управления

Недавно я обновился до MacTeX 2023 и столкнулся с этим предупреждением при использовании пользовательской библиотеки (https://github.com/slithy/rpg_module):

640: Undefined control sequence.
l.1640 \pgfutil@protected
                         \def\pgfmathprintnumber{%
? 
))

Ошибка не возникает в MacTeX 2019. После экспериментов мне удалось сузить ее до этого минимального примера с использованием vanilla LaTeX:

\documentclass{article}

\usepackage{pgfkeys}

\input{pgfutil-common}
\input{pgfmath.code}

\begin{document}

Test document

\end{document}

Этот документ вызывает то же самое предупреждение. Если я закомментирую \input{pgfmath.code}, ошибка исчезает.

Кто-нибудь знает, что здесь происходит? Библиотека, которую я использую, также имеет эти две входные строки в этом порядке. Я не знаю, является ли удаление этого второго входа правильным решением.

решение1

Вам нужно pgfrcsтакже как и pgfkeysдля pgfmath. Было бы лучше, чтобы загрузить pgfmathпакет.

То есть, лучше было бы использовать

\documentclass{article}

\usepackage{pgfkeys}
\usepackage{pgfmath}

\begin{document}

Test document

\end{document}

Таким образом, если зависимости изменятся, ваш код не сломается (если, конечно, нет ошибки пакета). Отдельные компоненты pgf не предназначены для \inputбезнаказанности. При этом pgfmathзависимости не изменились: pgfrcsтребовалось, как и pgfkeysв версии, которая у меня есть из TeX Live 2019.

Связанный контент