背景説明その1

MePoTeX は TeX から MetaPost を起動します。
TeX には外部プログラムを起動する仕組みがあるのですが, これを悪用してヤバいプログラムの起動を TeX ソースに埋め込まれることも想定して, デフォルトでは「許可リスト」に記載されているものしか起動できないようになっています。 詳しく言うと,現在の TeX の外部プログラムに対する設定は次の 3 つです。

(注) これらの切り替えは,TeX 起動時のオプションまたは設定ファイル (texmf.cnf) の修正でできます。

上で 現在の と強調しているのは,2009/02/27 以前の TeX には

しかなかったためです。つまり,危険を承知で許可するか一切許可しないかの 2 択だったわけです。

というわけで,何らかの事情で古い TeX を使い続ける必要がある場合を除いて, TeX を速やかに対策済みの最新版にすることをお勧めします。 以下は,特殊事情で TeX を最新版にできない方への情報です。

背景説明その2

MetaPost の実行ファイル名が 2016/11/30 と 2019/01/07 に変更されています。 実行ファイル名は 2016/11/29 までは mpost.exe でしたが,2019/01/07 以降は r-mpost.exe です。

したがって,2019/01/07 以前の MetaPost の実行ファイル名は,MePoTeX ver4.40 の想定しているもの (デフォルト) と異なるので, それを TeX 側に教える必要があります。
具体的には TeX ソースの \usepackage{MePoTeX} の部分を \usepackage{MePoTeX}\mptMP{mpost} にします。 これで実行ファイル名が mpost であると伝わります。

タイプセットの仕方(自動モード)

危険を承知で「あらゆるプログラムを許可」状態で LaTeX を起動する方法です。具体的には
   platex -shell-escape MPTgraph.tex
のように,-shell-escape というオプションをつけて起動するだけです。相互参照を反映させるため,これを二三度繰り返します。 (MetaPost は自動で起動しますので,ユーザーが起動する必要はありません。相互参照がない場合は1回だけで OK です。)
(注)この設定のときは MetaPost だけでなくあらゆるプログラムが TeX から起動できるようになりますので, 素性の怪しいソースをタイプセットするのは危険です。
毎回 -shell-escape というオプションをつけるのが面倒なときは,バッチファイルを作るか, TeX の設定ファイルを書き換えます。( やりかたは mptinst.tex に書いてあります。)

タイプセットの仕方(手動モード)

MetaPost の起動を TeX に任せず手動で行う方法です。

手動モードにするには,まず LaTeX ソースのプリアンブルで \usepackage{MePoTeX} を書き込むときに, パッケージオプション sefalse を書き込みます ( つまり \usepackage[sefalse]{MePoTeX} のように書き込めば,手動モードの動作になります)。 毎回 sefalse を書くのが面倒な場合は MePoTeX.sty のデフォルトオプションを変更してください。 ( やりかたは mptinst.tex に書いてあります。)

手動モードでのタイプセットの仕方は以下のようになります。(MPTgraph.tex をタイプセットする場合で説明します。)
まず1回普通にタイプセットします
   platex MPTgraph.tex
これで同じフォルダに @MPTgraph.mp というファイルができますのでこれに対し MetaPost を作用させます。
   mpost @MPTgraph.mp
この後相互参照を反映させるため,一二度
   platex MPTgraph.tex
を繰り返します。(MetaPostの返す値を反映させるため,相互参照がなくても最低1回は platex を行ってください。)



戻る