マクロツイーター

はてダから移行した記事の表示が崩れてますが、そのうちに直せればいいのに(えっ)

「TeX ユーザの集い 2011」について何か書いてみる (3)

LuaTeX-ja の開発

北川弘典 (LuaTeX-ja プロジェクトチーム)

LuaTeX 上の日本語組版パッケージである LuaTeX-ja の現在の開発状況と pTeX との違いについて。
〔スライド作成ソフト: LuaLaTeX-ja + beamer〕

何か書いてみる
  • いやー、順調に進んでますねー。すごいですねー。*1
質疑応答
  • Q: 現状で LuaTeX-ja が非常に遅い(pTeX の 20 倍の時間がかかる)というが、Lua コードをコンパイルすれば改善されるのではないか。(Lua ソースを前もって中間コードにコンパイルして、得られたバイナリファイルを元のソースの代わりに用いるという方法があり、コンパイルにかかる時間を節約できる。)
  • A: ここでいう速度比はスタートアップを含まずに純粋に文書量に比例する部分のことだからコンパイル時間は関係がない。実際には、luaotfload パッケージ(LuaTeX で OpenType を扱うためのライブラリ)と LuaTeX-ja 自身の両方で速度低下が起こっている。LuaTeX-ja を速くする方法はコードの最適化くらいしか考え付かない。
  • まあ、LuaTeX エンジンや luaotfload がもう少し速くなってくれればよいのだがね。
  • Q: (北川さん開発の)e-pTeX の方をもっと発展させる、例えば pdfTeX の機能を取り込むといった予定はもうないのか?
  • A: ないと思ってよい。PDF 出力の方法とかはよく解らない。LuaTeX-ja のアプローチの方がよいと考えている。
  • e-pTeX は、オリジナルの TeX に対する「p- 拡張」と「e- 拡張」の両方を足し合わせて、後は両者の整合性をとる作業(これが大変なのであるが)を行えば済む。これに対して、「pdfpTeX」を作ろうと思うと、今ある「pdf 拡張」と「p- 拡張」だけでは足りず、例えば「CMap の扱い」や「OpenType の処理の改善」などを最初から実装する必要があり、作業量は e-pTeX に比べて格段と多くなる。
  • そもそも pdfpTeX が本当に必要なのか。海外で将来には LuaTeX への移行が進むのは確実で、従って、LuaTeX-ja の開発が必要なのは確かである。(ここで LuaTeX の p- 拡張をするのは馬鹿げている。)一方で、「別に新機能は不要でこれまで通りの pTeX が使えればよい」人も確実にいる。それでは e-pTeX も要らなかったのかというとそうではないという事情がある。私の昨年の発表で述べた通り、「今まで使っていたパッケージがある時から e-TeX を要求するようになる可能性がある」からである。では、同じ理屈で「これまで通りの人」が pdfpTeX を求める日が来るかというとその可能性は低いように思える。その理由は、(意外かも知れないが)「XeTeX があるから」である。つまり、XeTeX は pdfTeX 拡張をもたず、PDF を直接出力しないのである。従って、「パッケージがいつの間にか pdfTeX を要求する」ようになることは(近い将来は)なさそうだ。*2「これまで通りの人」は e-pTeX で十分とすると、pdfpTeX が必要なのはどんな場合だろうか? pdfTeX 特有の機能で、日本人が必要だと思うものがあまり思いつかないのである。
  • ただし、pdfTeX の「PDF とは関係のない(つまりそのまま e-pTeX に持ち込める)機能で便利そうなものは追加する」という考えは妥当である。そして事実、今の e-pTeX は pdfTeX の機能をいくつか取り込んでいる。さて、今どういう状況になっているんだったっけ……。

*1:いや、「集い」の前に一度中身を確認しておきたかったんだが、とある理由でそれができなくなったわけで…。

*2:XeTeX の ML で「XeTeX も obsolete になってしまうのか」という議論を見かけたが……。