あおしまの日記

あおしまさんの日記らしいです。個人的に興味がある事を時々書きます。スマートウォッチPebble日本語パックを作成、公開しています。

pTeX on OSX

先日購入したちんこいMacTeX一式を入れた。ほぼmake一発で通るので何も考えずにすんだ。なんだからくちんで脳味噌が腐りそうだ。

それにしても、いまだに内山さんかよ、という気もする。MacTeXというとOS8な頃から名前を見るのは内山さんばかり。LinuxPPCなOFFでは「だってTeXヒラギノが使えるんだよ!」と言って当時のPBG4衝動買いと言う話も聞いた事がある*1し、いったい今は何時なんでしょう?10年前から何も変わってない気がする。

桐木さんという方が出て来ているからまだいい方なのかもしれないが、この世界はとかく人材不足なのかなあ。

*1:今や亜細亜を担う事になった亀の人からかつて聞いた

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なんてウンコ!」とか一度言ってみたかったのよね。