\PassOptionsToClass{\CurrentOption} 不起作用

\PassOptionsToClass{\CurrentOption} 不起作用

我收到一个我无法理解的错误。我有以下名为 error.cls 的 cls 文件

\NeedsTeXFormat{LaTeX2e}                                            
\ProvidesClass{error}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{scrartcl}}  
\ProcessOptions\relax
% 
\LoadClass{scrartcl} 
\endinput

例如,如果我用以下代码启动我的 LaTeX 文件

\documentclass[titlepage=true]{error}

那么我应该得到一个单独的标题页。但不幸的是,编译过程停止调用/usr/local/texlive/2021/.../koma-script/tocbasic.sty

这是我正在使用的 TeX 文件:

% ------------------
%\documentclass[titlepage=true]{error} % not working
% Compiling stops with 
% /usr/local/texlive/2021/.../koma-script/tocbasic.sty
% ------------------
\documentclass{error}   
% working with \LoadClass[titlepage=true]{scrartcl} or 
% \LoadClass{scrartcl}in the error.cls file
% ------------------
\begin{document}
%
\subject{-- \LaTeX --} 
\title{--Titel--}
\subtitle{--Untertitel--}
\date{\today} 
\maketitle
\section{Abschnitt}
\subsection{Unterabschnitt}
Text
\end{document}

答案1

这有效:

\NeedsTeXFormat{LaTeX2e}
\ProvidesClass{error}
\DeclareOption*{\expandafter\PassOptionsToClass\expandafter{\CurrentOption}{scrartcl}}
\ProcessOptions\relax
%
\LoadClass{scrartcl}
\endinput

相关内容