使用以下样式文件我得到了,No counter 'section' defined.
因为letter
文档类不支持sections
。
%% 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}
我想以这样的方式修改样式文件,以便在使用该类时使用样式文件letter
不会发送 Latex 错误。
我能做些什么 ?
答案1
\@ifundefined{\c@section}
{}
{\newtheorem{piston_dfin}{Definition}[section]}
或者当然你可以使用 expl3 或 etoolbox 中的类似测试(为什么要加载 etoolbox,expl3 涵盖了它的大部分功能)
\int_if_exist:NT\c@section
{ \newtheorem{piston_dfin}{Definition}[section] }