与另一个类模拟包的选项冲突

与另一个类模拟包的选项冲突

我正在使用 ShareLaTex加州大学伯克利分校论文模板

我想要使appendix​​用titletocheader选项加载:

\usepackage[titletoc,header]{appendix}
\usepackage{algorithmic}

它会引发编译错误。

LaTeX Error: Option clash for package appendix.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              

l.24 \usepackage
                {algorithmic}
The package appendix has already been loaded with options:
  []
There has now been an attempt to load it with options
  [titletoc,toc]

我了解到,该类是从模板中包含的类使用的类appendix中加载的。深入研究原始日志后,我发现了以下内容:memoireucbthesis

Package appendix [2008/07/23] emulated by memoir.

那么...有没有什么办法可以告诉我memoir不要模仿appendix

下面是从ucbthesis类中memoire传递了一堆选项的一个示例。

\newcommand\thes@sidedness{-1}
\DeclareOption{oneside}
  {\renewcommand\thes@sidedness{1}\PassOptionsToClass{\CurrentOption}{memoir}}
\DeclareOption{twoside}
  {\renewcommand\thes@sidedness{2}\PassOptionsToClass{\CurrentOption}{memoir}}

%  Changing the default point size from 10pt to 12pt uses a similar procedure,
%  but it's messier.

\newcommand\thes@ptsize{0}
\DeclareOption{9pt}
  {\renewcommand\thes@ptsize{9}\PassOptionsToClass{\CurrentOption}{memoir}}
%yada yada yada
\DeclareOption{*pt}
  {\renewcommand\thes@ptsize{99}\PassOptionsToClass{\CurrentOption}{memoir}}

% Other options are passed on to the memoir class.

\DeclareOption*{\PassOptionsToClass{\CurrentOption}{memoir}}

答案1

不是的,你可以使用

\DisemulatePackage{appendix}

停止memoir声称appendix已经加载,但如果你尝试加载它

\documentclass[titletoc,header]{memoir}
\DisemulatePackage{appendix}
\usepackage[titletoc,header]{appendix}
\usepackage{algorithmic}
\begin{document}
\end{document}

你收到多个错误

! LaTeX Error: Command \c@@ppsavesec already defined.

附录功能不是通过加载appendix一些固定选项来实现的,据我在源代码中看到的那样,它只是嵌入在核心memoir代码中。您应该查看是否有适合您所需布局的“回忆录方式”。

相关内容