tocloft、minitoc 和 bold 数学模式存在问题

tocloft、minitoc 和 bold 数学模式存在问题

确保标题中的方程式以粗体显示我还将以下命令添加到我的文档中:

\makeatletter
\g@addto@macro\bfseries{\boldmath}
\makeatother

minitoc在我将其与和结合起来之前,它一直运行良好tocloft。虽然全局目录打印正确,但 minitoc 的部分方程式却以粗体显示。

最小工作示例:

\documentclass{scrbook}

\usepackage{minitoc}
\usepackage[titles]{tocloft}
\usepackage{amsmath}

% --- ENSURE THAT BOLD FACE IS NOT IGNORED BY EQUATION ENVIRONMENTS ---
\makeatletter
\g@addto@macro\bfseries{\boldmath}
\makeatother
% --- END ---

\begin{document}
  % initialize minitoc:
  \dominitoc

  % TOC:
  \tableofcontents

  % dummy structure:
  \chapter{Math, hurray!}
  \minitoc

  \section{Math makes me happy!}
    \subsection{$c^2 = a^2 + b^2$ -- The Pythagorean Theorem}
    \subsection{Who want to live without math?}

  \section{$(a+b)^2 = a^2 + 2ab + b^2$ -- Halleluja}
\end{document}

输出:


全球目录

...

带有奇怪 minitoc 的章节


你能向我解释甚至解决这个奇怪的行为吗?

答案1

您的示例仅在粗体字体在某个组的末尾结束时才按预期工作。如果代码执行类似以下操作,则不起作用

\bfseries some text \normalfont some text

或者

\bfseries some text \mdseries some text

在这种情况下,您必须发出\mathversion{normal}。例如,在您的示例中

\g@addto@macro\normalfont{\mathversion{normal}}

相关内容