Использование tocstyle со стилем ACM acmart

Использование tocstyle со стилем ACM acmart

Недавнийacmartстиль (попробуйтездесьесли эта ссылка не работает) похоже, не работает должным образом сtocstyle. Если я pdflatexдважды запущу следующий документ, второй запуск завершится неудачей (см. ниже).

\documentclass{acmart}

\usepackage{tocstyle}
\usetocstyle{standard}

\begin{document}
\title{Title}
\tableofcontents
\section{Intro}
text
\end{document}

Вот сообщение об ошибке, которое я получаю:

! Missing \endcsname inserted.
<to be read again> 
                   \@@par 
l.8 \tableofcontents

Может быть, есть решение, похожее на то, что указано в вопросеtitletoc? К сожалению, я не знаю, как выяснить, какие tocstyleименно внутренние элементы hyperrefпереопределяются.

решение1

Я не думаю, что это хорошая идея возиться с acmart, который, как предполагается, будет использоваться для заявок в ACM, а значит, с четко определенным стилем (среди доступных вариантов).

Проблема в том, что он tocstyleдолжен быть загружен раньше hyperref, но acmartкласс уже загружает его.

Обходной путь — создать файл с именем acmart-preload-hook.texв рабочем каталоге, содержащий

\let\LoadClassOrig\LoadClass
\renewcommand\LoadClass[2][]{%
  \LoadClassOrig[#1]{#2}%
  \usepackage{tocstyle}%
}

как предложено в acmartдокументации, раздел 2.13.

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