名前: ut 日時: 2011-12-06 10:26:44 IPアドレス: 157.118.27.*
>>56442 昨日、変なことを言ってしまいましたので、訂正させてください: > ただ、元の質問から離れますと、report.cls と jreport.cls どち > らにも twoside というオプションが残してあって、そして、偶然か > も知れませんけれどいずれでも oneside よりも後ろで宣言されてい > ることもあって、twoside というオプションをクラスオプションで > 有効に出来ると思います(openright と openany についても、openright > のほうが先に宣言されてます)。 これは間違いで、クラスオプションでオプションを指定することで、 デフォルトの設定を変更できるというのは、\ExecuteOptions と \ProcessOptions との関係によるものですね。この場合には、\DeclareOption の宣言の順番は関係ありませんでした…。 \DeclareOption の宣言の順番が影響するのは、\ProcessOptions の 場合でした。 ですから、 \DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue} \DeclareOption{report}{\@reporttrue\@openrightfalse\@twosidefalse\@mparswitchfalse} のような対立するオプションを用意する場合で、かつ、ユーザーに より多くの自由度を与えようとするならば、\DeclareOption の宣言 の順番に注意する必要がある、ということになるかと思います(或 いは、\ProcessOptions* にしておくとか)。
この書き込みへの返事: