ACM acmart スタイルで tocstyle を使用する

ACM acmart スタイルで tocstyle を使用する

最近のacmartスタイル(試してみてここリンクが壊れている場合は、tocstylepdflatex次のドキュメントを 2 回実行すると、2 回目の実行は失敗します (下記参照)。

\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で提案されているとおりです。

関連情報