尝试编写课程时感到困惑

尝试编写课程时感到困惑

我正在为论文写自己的课程...是的,又一个论文课程!XD

这个类是基于标准书籍类的,但是我不希望在写论文的时候书籍类的所有选项都可用。我怎样才能实现这个目标?


LoadClass我对with \PassOptionsToClass{\CurrentOptions}versus的使用感到困惑LoadClassWithOptions,我读过它们的用法clsguide但仍然不明白。

如果有人能告诉我其中的区别,并给我举一些例子,我将不胜感激。

答案1

你可以使用类似

\DeclareOption*{% 
  \ClassWarning{mythesisclass}{Unknown option `\CurrentOption' ignored}%
}

在处理选项和加载类之前。警告是可选的,但最好让用户知道有些东西没有以通常的方式传递。

这样做的目的是忽略所有未明确声明的选项,因此您想要传递下去就必须用 来定义\DeclareOption

以下是我的一个班级的一个例子片段:

\DeclareOption{10pt}{\PassOptionsToClass{10pt}{memoir}}
\DeclareOption{11pt}{\PassOptionsToClass{11pt}{memoir}}
\DeclareOption{12pt}{\PassOptionsToClass{12pt}{memoir}}
\DeclareOption{final}{\PassOptionsToClass{final}{memoir}}
\DeclareOption{draft}{\PassOptionsToClass{draft}{memoir}}
\DeclareOption*{%
  \ClassWarning{mugsthesis}{Unknown option `\CurrentOption' ignored}%
}
\ExecuteOptions{12pt,final} % defaults
\ProcessOptions\relax
\LoadClass[letterpaper,oneside]{memoir} % options here are fixed; no changes allowed

相关内容