お待たせしました! unstable にて pTeX 関連のパッケージがアップデートされたことを報告します。 今回のアップデートは pTeX 本体のアップデートを含む大掛かりなものです。 バージョンアップだけでなく、いくつかシステムとしても変更を行っていますので、 時間に余裕のない方は、アップデートは見送ってしばらく様子をみた方がよいかもしれません。

以下に詳しく変更点を説明します。



まず、今回アップデートされたパッケージとそのバージョンは次の通りです。 それぞれ、fink install パッケージ名 でインストールできると思います。

  • ptex-texmf (2.4-50)
  • ptex, ptex-nox (3.1.9-1050, 10.3 の方は 3.1.9-50)
  • dvipdfmx (20061211-1)
  • okumura-clsfiles (061106-1)
  • otf-fontfiles (1.5.3-1)

これまでは、 ptex-jisfonts, morisawa-fontfiles, ptex-babel というパッケージがありましたが、 これらは頻繁に更新されることはないだろうと判断し、 ptex-texmf に含める事にしました。 もうこれらのパッケージは(バーチャルパッケージとしてしか)存在しません。 また、 UTF16用VF も同様の理由で、 ptex, ptex-nox に含めることにしました。 otf-fontfiles でなくてこちらで十分という方は、 otf-fontfiles は必要ありません。

今回は、土村さんによる ptetex -- teTeX 用日本語パッチ集 で使われているシステムが、ほぼそのまま採用されています。 pTeX のシステムに関して、今回大きな変更点は二つあります。 一つ目は文字コードの扱い方、そしてもう一つはフォントの扱い方です。 一つずつ説明していきたいと思います。

文字コード SJIS, JIS, EUC-JP, UTF-8 に対応

今までの ptex, ptex-nox では、 文字コードは SJIS, JIS, EUC-JP しか扱えませんでした。 また、デフォルトの文字コードを EUC-JP にしていたため、 文字コードが SJIS のファイルをコンパイルするには、 単に platex hogejbibtex hoge ではコンパイルできず、 platex -kanji=sjis hogejbibtex -kanji=sjis hoge のように文字コードを指定する必要がありました。

今回アップデートされた ptex, ptex-nox は、 文字コードは SJIS, JIS, EUC-JP に加えて、 (特殊な場合を除いて)UTF-8 が使えるようになりました。 また、デフォルトの文字コードは UTF-8 にしていますが、 ファイルが上の四つのうち何の文字コードであっても、 単に platex hogejbibtex hoge でコンパイルできるようになりました。 そのため、ユーザのみなさんには、 これまで作ったファイルの文字コードを全て UTF-8 に変えていただく必要はありません。 スムーズにアップデートができると思います。 これは、環境変数に PTEX_IN_FILTER="/sw/bin/nkf -j" を自動的に設定することで実現しています。 今までの挙動の方が好ましい、という方はこの環境変数をクリアして使ってください。

以前までは、EUC-JP 以外の文字コードであってもコンパイルできるように、 ptex-ja というパッケージを東大 Fink チームで独自に提供していましたが、 これが完全に必要なくなりました。 かえって問題を起こすかもしれないので、 ptex-ja がインストールされている場合はアンインストールしてください。

フォントの集中管理の採用

文字コードの扱いに関しては、以前のバージョンと互換性を持つので、 ユーザのみなさんに意識していただくことは特にないと思いますが、 フォントの扱い方に関しては以前のバージョンとは互換性がありません。 フォントの設定を今まで自分では特に行っていないという方は問題がありませんが、 行っていた方は注意してください。

updmap によるフォントの集中管理の方法を、 日本語フォントに対しても拡張することが試みられていて (参考: teTeXのupdmapをdvipdfmx用に改変する)、 書籍にも紹介されるなどいくらか有名になりつつあるようですので、 今回この機構を採用することにしました。

使用するフォントの切り替えは、updmap コマンドによって行います。 dvips や dvipdfmx では、 デフォルトでは日本語フォントは埋め込まない設定になっていますが、 これらの実行時に、例えばヒラギノのフォントを埋め込みたいという場合は、

$ sudo updmap-sys --setoption kanjiEmbed hiragino

を実行してください。 これまでは dvidpfmx の場合 /sw/share/texmf/fonts/map/dvipdfm/cid-x.map、 dvips の場合 /sw/share/texmf/fonts/map/dvips/ptex/psfonts_jp.map を編集することになっていましたが、 今回これらのファイルは削除されました。 また、フォントを埋め込まない設定に戻す場合は、

$ sudo updmap-sys --setoption kanjiEmbed noEmbed

とします。 詳しくは フォントの集中管理 の「フォントの埋め込み/非埋め込み制御」あたりをご覧ください。 今のところ用意している map ファイルは デフォルトでは /sw/share/texmf/fonts/map/dvipdfm/ 以下に、 otf-fontfiles など追加パッケージでは /sw/etc/texmf.local/fonts/map/dvipdfm/ 以下に置いてあります。

せっかく updmap によるフォントの集中管理を採用したので、 いくつかフォント関係のパッケージを用意したいところですが、 自分は他にどんなフォントが使われるのかということをあまり知りません。 用意しているもの以外で新たなフォントのパッケージが欲しい方は、 お知らせいただくと作るかもしれません。 その際もし map ファイルを作られていたら、それも送っていただくと助かります。

コメント求む

今回のアップデートに関して、 何か不具合やご意見などありましたら、 コメントやメールなどでお知らせくださいませ。 特に、ptex, ptex-nox などの大きいパッケージは、 ユーザから「動いたよ」というフィードバックがないとなかなか stable に持っていけません。 「動かない」場合だけでなく、「動いた」場合にもお知らせいただけるとうれしいです。

また、ghostscript-esp についてはアップデートを行っていませんが、 バージョン 7.x から 8.x に移行するかどうかは迷っているところです。 どちらがよいか、ご意見のある方はぜひお寄せください。