enumitem:带有​​非粗体项目的描述 - 数学模式(hepthesis)

enumitem:带有​​非粗体项目的描述 - 数学模式(hepthesis)

我希望有一个普通字体符号(在数学模式下)作为 hepthesis 文档类中的描述项。
例子:

\documentclass{hepthesis}
\usepackage{amsmath}
\usepackage{enumitem}
\begin{document}
\begin{mainmatter}
        $T$ as in test. (This is what I want.)
        \begin{description}
                \item[$T$] as in test. (This is the default.)
                \item[\textmd{$T$}] as in test. (No.)
                \item[\mdseries $T$] as in test. (No.)
                \item[$\unboldmath T$] as in test. (No.)
        \end{description}
        \begin{description}[format=\mdseries]
                \item[$T$] as in test.
        \end{description}
\end{mainmatter}
\end{document}

我的输出:

但如何呢?

答案1

您可以重新定义\makelabel使用before键:

\documentclass{hepthesis}
\usepackage{amsmath}
\usepackage{enumitem}
\begin{document}
\begin{mainmatter}
        $T$ as in test. (This is what I want.)
        \begin{description}[before={\renewcommand\makelabel[1]{\normalfont ##1}}]
                \item[$T$] as in test.
        \end{description}
\end{mainmatter}
\end{document}

在此处输入图片描述

答案2

这是班级的刻意选择:

%% Misc tweaks
\AtEndOfClass{%
  %% Make maths in titles go automatically bold
  \g@addto@macro\bfseries{\boldmath}
  %% Declare a bold version of the typewriter font
  \DeclareFontShape{OT1}{cmtt}{bx}{n}{<5><6><7><8><9><10><10.95><12><14.4><17.28><20.74><24.88>cmttb10}{}
}

我认为这完全是错误的:物理学家应该非常清楚,符号和粗体版本之间存在很大差异:字母电视意味着标量,而电视将是一个向量。

在章节标题中,你会遇到同样的数学问题,所有标量都会变成矢量。因此,我建议的解决办法是删除“\boldmath标题中”的调整:

\edef\bfseries{\noexpand\protect\expandafter\noexpand\csname bfseries \endcsname}

或者,使用etoolbox

\usepackage{etoolbox}
\patchcmd{\bfseries}{\boldmath}{}{}{}

完整示例

\documentclass{hepthesis}

\edef\bfseries{\noexpand\protect\expandafter\noexpand\csname bfseries \endcsname}

\begin{document}

$T$ as in test. (This is what I want.)
\begin{description}
\item[$T$] as in test. (This is the default.)
\end{description}

\end{document}

在此处输入图片描述

注 1

您尝试将\unboldmath其放置在错误的位置:这样的命令应该放在数学之外:\item[\unboldmath$T$]

笔记2

该类所做的修补除了在数学上是错误的之外,从 LaTeX 的角度来看也是错误的:修补的命令不是\bfseries,而是其内部版本,其名称中带有尾随空格:

\usepackage{xpatch}
\xapptocmd{\bfseries}{\boldmath}

答案3

更简单:

\documentclass{hepthesis}
\usepackage{amsmath}
\usepackage{enumitem}

\begin{document}

\begin{mainmatter}
        $T$ as in test. (This is what I want.)
        \begin{description}[font=\mdseries]
                \item[hehe! $T$] as in test.
        \end{description}
\end{mainmatter}

\end{document}

在此处输入图片描述

相关内容