![尝试编写课程时感到困惑](https://linux22.com/image/307224/%E5%B0%9D%E8%AF%95%E7%BC%96%E5%86%99%E8%AF%BE%E7%A8%8B%E6%97%B6%E6%84%9F%E5%88%B0%E5%9B%B0%E6%83%91.png)
我正在为论文写自己的课程...是的,又一个论文课程!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