MxDVI
その内山さんのMxDVIであるが、どうにもこうにも文章が表示出来ずに異常終了したりフォントが出て来なかったりする。これは困ったと数日悩んでおりましたが、コンソールに何かログは無いかと見たところ、MxDVIの起動時ログらしき物を発見。環境変数が拾えていない事が判明する。しかもPATHがおかしい。PATHがおかしいのでmktexpkが見つけられずにフォントが生成されていなかった。この時のMxDVIが吐いたログがこれ。
TEXMFCNF=/usr/local/teTeX/share/texmf/web2c TEXMFMAIN=(null) SELFAUTOLOC= SELFAUTODIR= SELFAUTOPARENT= PATH=/usr/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
しかし、シェル側の変数は全く異なる値を保持しているので、別の場所由来だろう事だけはわかる。結局OSXのアプリ側の環境変数がどこに由来しているのか結論は出なかったが、MxDVIのreadmeを拡大解釈して回避出来るのではないか、と思い以下の様に設定する事にした。このreadmeをさらっと訳してみる。
Mxdvi: TeX previewer for Mac OS X Version 0.274 02-Feb-06 Takanori Uchiyama 1. 概要 MxdviはTeX DVI ファイル向けプレビューアーです。 teTeXもしくはteTeXベースのシステムが導入されている事が前提です。 pTeX(アスキーが開発した日本語TeXシステム)が使いたい場合には、 以下のURLからpTeXのパッケージを入手してください。 2. 導入 1) MxDVIでは既定の環境変数 $TEXMF は /usr/local/share/texmfです。 このパスを変えたくない方は3)へ飛んでください。 2) 環境変数$TEXMF パスの変更 - "~/.MacOSX/environment.plist"というファイルを作ります。 (訳注:ホームディレクトリ以下に.MacOSXというディレクトリを掘り、 その中にenvironment.plistというテキストファイルを作る。) -以下の例の様に$TEXMFパスを書く。 パスは<string> と </string>タグ間に書かなければならない。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>TEXMFCNF</key> <string>/usr/local/share/texmf/web2c</string> </dict> </plist> 3) PK, PFB そして MacOS用のType1 フォントをサポートしています。 MacOS用Type1フォント(PFBではない)を推奨します。 "A"アイコンを持つPostScriptフォントとスクリーンフォント(スーツケースフォント)の 両方を、/Library/Fonts か、 ~/Library/Fonts、 または classic環境のフォント フォルダに入れてください。 PKフォントやカラースペシャルPFBフォントはサポートして いません。これらは常にグレースケールで表示されます。 (以下略)
本来TEXMFCNFの設定のみである変数定義を、TEXMFMAINとPATHにも適用する。具体的には~/.MacOSX/environment.plistを以下の様に書いた。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>TEXMFCNF</key> <string>/usr/local/teTeX/share/texmf/web2c</string> <key>TEXMFMAIN</key> <string>/usr/local/teTeX/share/texmf</string> <key>PATH</key> <string>/usr/local/teTeX/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string> </dict> </plist>
そしてログアウトしてログインし直すと、MxDVI起動時ログは以下の様に変化した。
TEXMFCNF=/usr/local/teTeX/share/texmf/web2c TEXMFMAIN=/usr/local/teTeX/share/texmf SELFAUTOLOC=/usr/local/teTeX/bin SELFAUTODIR=/usr/local/teTeX SELFAUTOPARENT=/usr/local PATH=/usr/local/bin:/usr/local/teTeX/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
PATHが通った事で、mktexpkが裏で正常に動く様になり、足りないフォントが生成される事で今まで落ちていたdviファイル(jclasses.dviほか)も表示出来るようなった。
プレビュー出来ないと何ともならない事をするのでここだけは大事だったので、まずはめでたし、と。
ところで目的はナニ?
TeXとMETAFONTで遊ぶ事です。資料も揃いました。目標も出来ました。グレーフォントも作れる様になりました。あとは遊ぶだけです。わくわく。活版印刷ごっこにLaな部分は要りませんし。*1
*1:「scribeなんてウンコ!」とか一度言ってみたかったのよね。