TeX Live 2011 に移行する
まあ昔から、文書をタイプセットするのに LaTeX を使っているわけだけど、この何か月か、僕はふたつの TeX 処理系を併用していた。ひとつは Mac OS X 上で動作する TeX Live 2010、そしてもうひとつは Linux 上で動作する TeX Live 2009 + pTeXLive である。
2010 以降の TeX Live は pTeX / pLaTeX を内包しているので、実は pTeXLive はその使命を半ば終えたと言っていい。この1年程の間にも、ptetex3 から pTeXLive に移行していたものを、更に新しい処理系に移行するのは少々面倒で、あまりちゃんとしていなかったのであった。しかし、Mac 上でヒラギノを使って PDF を作成すると、これの品位の高さには少々驚かされた。いつも使っていた小塚フォントも決して悪くはないのだが、特に教育目的で使用する文書などは、少々癖のある小塚よりもヒラギノの方がスムースでいいのかもしれない。というわけで、処理系を含めて、フォントの問題をちゃんとしよう、と重い腰を上げたのだった。
実は、最新版の TeX Live の tree は、subversion で常に更新された状態で手元に置いてあった。先頃、ついに正式に TeX Live 2011 が出てきたので、これを機会にそちらに完全移行することにした。
TeX Live で日本語を扱う上で問題になるのは、フォントの問題と、旧字の処理の問題だ。特に後者は、pTeXLive では標準装備であったOpen Type Font用VF(いわゆる OTF パッケージ)を自力で入れなければならないのだが、(当然)TeX Live 2011 付属の ovp2ovf は ver. 2.1 であり、makeotf による VF 作成作業がうまくいかないのである。これを解決するのが面倒なので、今迄手をつけずにいたわけだ。
で、今回は少し考えを変えて、ad hoc にやってみることにしたわけだ。以下手順を示す。
まず、TeX Live 2011 の tree 入手法に関しては、他をあたっていただきたい(単純に書くのが面倒なので……以前に一度 tree を消したときのことが、拙 blog のどこかに書いてあるかもしれない)。TeX Live 2009 + pTeXLive と TeX Live 2011 がインストールされていることを前提に、話を進める。
何をしようとしているのか、既に皆さんお分かりだろうと思うけれど、要するに pTeXLive の OTF をそのまま TeX Live 2011 に移植してしまおう、というわけである。まず、pTeXLive の OTF パッケージの在処だが:
/usr/local/texlive/p2009/texmf/packages/otfcurrentこのディレクトリである。これを tar して、
/usr/local/texlive/2011/texmf-dist/tex/platex/に展開する。あとは、
$ cd /usr/local/texlive/2011/texmf-dist/fonts/tfm……と、これで ad hoc なフォント設定は完了したわけだ。かなりアヤしいけれど。
$ ln -fs ../../tex/platex/otfcurrent/tfm ./otfcurrent
$ cd ../vf
$ ln -fs ../../tex/platex/otfcurrent/vf ./otfcurrent
$ cd ../ofm
$ ln -fs ../../tex/platex/otfcurrent/ofm ./otfcurrent
次にフォントマップを設定しておく。僕は印刷用に dvipdfmx で小塚明朝を埋め込んだ PDF を作成・使用することが多いので、こんなマップファイルを作って、
/usr/local/texlive/2011/texmf/fonts/map/dvipdfmx内に aozora.map などという名前で置いておく。この名前は、このマップを作成したのがもともと青空文庫の PDF 化のためだったからなのだけど、まあ他の名前でもいいだろうし、場合によっては、同じディレクトリ内にある cip-x.map を書き換えてもいいだろう。ただし、このファイルを直接書き直すと、tlmgr で TeX Live のアップデートをかける度にこのファイルが元に戻ってしまうことになるので、別名で作成されることをお薦めしておく。
次に、
$ cd /usr/local/texlive/2011/texmf-dist/fonts/opentype/publicのようにして、小塚フォントを TeX Live のシステムが参照できるようにしておく。最後に、
$ mkdir kozuka
$ chmod 2755 ./kozuka
$ cd kozuka
$ ln -fs /opt/Adobe/Reader9/Resource/CIDFont/*.otf ./
$ /usr/local/texlive/2011/bin/x86_64-linux/texhashを実行しておく。
platex 使用時には、普通のままで特に何も問題はない。dvipdfmx 使用時には、
$ dvipdfmx -f aozora.map foo.dviのように、明示的にフォントマップを指定してやる必要がある(勿論、cid-x.map をじかに書き換えた場合はこれは不要だろうと思うが)。
thomas@shannon:~/documents/test$ dvipdfmx -f aozora.map foo.dvi……ちょーっと引っかかる(これ何なんだろう? EPS 貼り込みのときに dvipdfmx の version によってこういうメッセージが出るバグが……云々、という話は聞いたことがあるのだけど)が、PDF は何も問題なく正常に作成される。OTF パッケージを使用してコードで指定した旧字等も、問題なく表示される。
foo.dvi -> foo.pdf
[1][2][3][4][5][6][7][8][9][10][11][12][13][14][15][16][17][18][19]
738735 bytes written
** WARNING ** 1 memory objects still allocated
thomas@shannon:~/documents/test$
……と、ここまで Linux 上で確認したところで、Mac OS X 上でも同様のことをする。ただし、小塚フォントの代わりにヒラギノフォントを用いるわけで、フォントマップもそれに合わせて作り直しているのだが、基本的には、上の手続きと何も代わるところはない。そして、問題なくヒラギノを埋め込んだ PDF が作成できたのだった。勿論、OTF パッケージの使用も、縦書きも、問題なくできる。
かくして、Linux、Mac OS X 共、基本的な TeX / LaTeX での環境は TeX Live 2011 ベースになった(一応バックアップに TeX Live 2009 + pTeXLive は残してあるけれど)。これで今後は書きものをしていくことになるだろう。