未定义计数器部分

未定义计数器部分

出现错误时可能出现什么问题

! LaTeX Error: No counter 'section' defined.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.229 \newtheorem{piston_dfin}{Definition}[section]

有 是什么意思No counter 'section' defined.

我在用

%% piston.sty
\RequirePackage{etoolbox}

\ExplSyntaxOn
\RequirePackage[dvipsnames*,svgnames,x11names]{xcolor}
\newtheorem{piston_dfin}{Definition}[section]
\ExplSyntaxOff

这是文件

\documentclass[a4paper,12pt]{letter}

\usepackage{piston}

\begin{document}

Some Text Here

\end{document}

答案1

\newtheorem{piston_dfin}{Definition}[section]

您定义了一个定理,其计数器在每次增加时都会重置section。但是,分段命令和相应的计数器不是在 LaTeX 内核中定义的,而是在类文件中定义的。该类letter未定义\section,因此您收到错误。

无关:正如 Ulrike 指出的那样她的评论,在这种情况下,即使没有下划线,您实际上也可以使用下划线\ExplSyntaxOn(因为环境名称放在 之间\csname...\endcsname)。但是,这有点危险,因为某些包可能会将下划线定义为活动字符。

相关内容