texjporg / jsclasses

Classes tailored for use with Japanese.
BSD 2-Clause "Simplified" License
60 stars 14 forks source link

autodetect-engine の改良 #40

Closed doraTeX closed 7 years ago

doraTeX commented 7 years ago

39 の続きです。

これと同様に「upLaTeX の場合(かつ uplatex オプション未指定の場合)は uplatex をグローバルオプションに追加」とすれば、たとえば otf パッケージの uplatex オプションも自動判定に追随させられそうに思います。

確かに,otfパッケージにも uplatex オプションを自動で与えなければ価値が半減しますね。 早速追加しました。

なお、「autodetect-engine と uplatex を同時に指定する」という使い方がされた場合の動作については、検討の余地があると思います。

昨日のコードでは,autodetect-engine と uplatex を同時指定した場合には autodetect-engine が優先され,実際には pLaTeX が動いていた場合には uplatex 指定が無視されてコンパイルが成功するようになっていました。

しかし,otfパッケージを使用する場合を考えると,事情が変わってきます。

という状況を考えると,クラスファイル側で uplatex 指定を無視しても,グローバルオプションとして uplatex が伝わってしまい,結局 otf パッケージが JY2 なんたらというエラーを出してしまいます。

そこで,「クラスファイルオプションで autodetect-engine と uplatex を同時指定しているが実際には pLaTeX でコンパイルしている」という状況下では,クラスファイルの段階で「You are running pLaTeX. ~」というエラーを出すように変更しました。

aminophen commented 7 years ago

検討ありがとうございます。私は特に異論ありませんが、考慮すべきケースの見落としを防ぐために、ほかの方のご意見を待ちます。

aminophen commented 7 years ago

大丈夫そうだったのでやっぱりマージしました。