我需要在裡面呼叫我的宏DeclareOption
,但是我的巨集是稍後定義的(這是主要條件)。
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{MyBook}[2014/12/12]
\DeclareOption{llstyle}{\mymacro}
\ProcessOptions\relax
\RequirePackage{titlesec}
\RequirePackage{textcase}
\def\@bookview{
\let\cleardoublepage\clearpage
\renewcommand{\chaptertitlename}{Глава}
\titleformat{\chapter}[display]
{\vspace*{-10ex}\Large}
{\titleline[l]{\textls[200]{\MakeTextUppercase{\chaptertitlename}}\ \thechapter}\vspace{6pt}\titlerule[.8pt]}
{\dimexpr-\baselineskip+6pt\relax}
{\bfseries\MakeUppercase}
}
\def\mymacro{%
\@ifclassloaded{book}{\@bookview}{}
\@ifclassloaded{extbook}{\@bookview}{}
}
\endinput
由於巨集的定義是稍後進行的,因此這種情況會導致錯誤。
答案1
您沒有提供太多背景信息,但也許
\DeclareOption{some}{\AtEndOfPackage{\mymacro}}