mathtools 包的问题

mathtools 包的问题

以下代码会产生错误。如果删除 mathtools 包,它就可以正常工作。为什么?


\documentclass{report}

\usepackage{mathtools}
\usepackage{etoolbox}

\newbool{shorttoc}

\makeatletter
\patchcmd{\@startshorttoc}{\bgroup}{\bgroup\booltrue{shorttoc}}{}{}
\makeatother

\begin{document}

\tableofcontents

\addtocontents{toc}{\protect\ifbool{shorttoc}{\setcounter{tocdepth}{0}}{}}

\chapter{Test Appendix}

\end{document}

这个问题与我之前的一个问题

答案1

mathtools加载calc包,这会更改\setcounter命令。现在你还必须保护它:

\addtocontents{toc}{\protect\ifbool{shorttoc}{\protect\setcounter{tocdepth}{0}}{}}

相关内容