emath BBS

新規発言一覧最新記事過去一覧検索HOME

No.4998  \Pii は予約語です。
発言者: tDB
発言日: 2006 07/25 09:37
発言元: 210.229.6.211
\Pii は eclarith.sty で
  \def\Pii{6.28318531}
と定義されており,それを用いて
  \Sin, \Cos
が記述されています。

お示しのリストは,\Pii が再定義されており,

> \Landl\A\O\Pi\PiPii\Pii

\Sin, \Cos の計算が出来なくなったというエラーです。
(\Yogen[a]... では,サブルーティンとして \Sin が呼ばれます。)

では,どうしてロード順が?
についての解説です。

emathパッケージでは,\Sin, \Cos を再定義しています。
(graphicsパッケージ内の trig.sty を利用する形式で,
 \Pii は使いません。)
その再定義は emathC.sty にあります。
ロード順との関係です:
(1) emathMw, emathP の場合は
    emathMw ---> emathC
    emathP  ---> eclarith
  となりますから,\Sin, \Cos は eclarith の定義が有効です。
  したがって,\Pii の再定義は致命傷です。
(2) emathP, emathMw の場合は
    emathP ---> eclarith, emath(---> emathC)
  となりますから,\Sin, \Cos は emathC の定義が有効です。
  したがって,\Pii の再定義は痛くも痒くもありません。

さてと,対策ですね。

emathC.sty における \Sin, \Cos の定義に
  \AtBeginDocument{%
をかぶせてみました。
この結果,ロード順とは無関係に,\Sin, \Cos は emathC.sty の定義が有効となります。この修正をしたものを
    emathC.sty v 0.30
とし,「実験版」ページに置きます。

▼関連発言

4996:emathMw と emathP の相性に関して [aka] 07/25 00:15
 ├4997:情報の追加 [aka] 07/25 00:46
 │└4998:\Pii は予約語です。 [tDB] 07/25 09:37
 │ └4999:Re:\Pii は予約語です。 [田中徹] 07/25 11:30
 └5017:[解決] emathMw と emathP の相性に関して [aka] 07/28 21:44<-last

Pass 保存


CGIROOM