Re: 数式番号を左側に置くためのクラスファイルの修正

名前: しっぽ愛好家
日時: 2003-07-07 10:32:36
IPアドレス: 210.234.40.*

>>19985 >実際のソースは leqno の前後には空白はありません。 ということは, \ExecuteOptions{a4paper,oneside,onecolumn,notitlepage,final} を \ExecuteOptions{a4paper,oneside,onecolumn,notitlepage,final,leqno} に変更なさったわけですね. amsmath パッケージを用いなければそれだけで充分ですが, amsmath パッケージを用いる場合には, \DeclareOption{leqno}{\input{leqno.clo}} となっている leqno オプションの定義を \DeclareOption{leqno}{% \input{leqno.clo}% \PassOptionsToPackage{leqno}{amsmath}} のように変更するとどうでしょうか. %%% なお,``leqno'' 指定をキャンセルするためのいわば ``reqno'' 指定を %%% 必要としないのでしたら,``leqno'' 処理をオプションにする必要はない %%% わけですが,それは別の問題なので,深入りしません. >>19981 >Q2. 各種のクラスオプションをpreambleに記述する方法がありますか. 私が知る限りでは,そのような方法はありません. 実際,\DeclareOption で宣言された各種オプションの定義内容は, \ProcessOptions の処理を終了する際に消去されます. [補足] \ProcessOptions の定義に手を入れて,クラスファイルの処理の際に限り 個々のオプションの定義内容を(別名のマクロに)保存し, 後で用いることができるように変更することはできなくもありません. しかし,クラスオプションおよびパッケージのオプションの中には オプション自身は何らかのフラグを設定するだけで, オプションに対応する処理はクラスファイルあるいはパッケージの 別の箇所で行われる ようなものも存在します. %%% e.g. 標準クラスファイルにおける twoside オプション. そのようなオプションについては,オプション自身の処理内容だけを 利用することができたとしても意味をなさないことが推察されることでしょう. %%% 個々のオプションの ``実質的な処理内容''(例えば twoside オプションの %%% 場合には,クラスファイル内でフラグ \if@twoside が真である場合に %%% 処理される内容)も保存し,後で利用できるようにすればよい,と思った方は, %%% そのような処理をどうやって実装するのかお考えになってみてください. %%% %%% 何らかのフラグに応じて処理される内容,というのは 1 箇所に %%% %%% 固まっているとは限りませんし,また,他の処理とのタイミングの問題も %%% %%% あります. このようなわけで,オプションを \documentclass(あるいは \usepackage)の 外部で利用できることは(私には)期待できません. %%% そのような処理を首尾よく導入できた方がいらっしゃいましたら, %%% 方針だけでも紹介していただけると幸いです.

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます)