VnTeX 3

Utf82TeX のテストとしてそのサンプル変換結果を UNIX と Windows とにおいて platex コンパイルしたところ,前者では問題がないのに後者ではヴェトナム語のアクセント命令でエラーになった。ヴェトナム語 Tiếng Việt は Utf82TeX 変換後 Ti\'\^eng Vi\d\^et となり VnTeX で処理できる記法となるはずだが,これで Windows では "! You can't use a prefix with `end-group character }'." とのエラーが発生してコンパイルが停止してしまった。まったく,ヴェトナム語と古典ギリシア語は Babel の調整において鬼門なのである。

サンプルは種々の言語を併用しているので,アクセント命令でコンフリクトが起きているのだろうと思い,ひとつずつ言語を削って確認したが,ヴェトナム語だけにしても同じエラーが出ることがわかった。O 氏提供のヴェトナム文字変換テーブルのアクセント付き文字の親文字をグルーピングしたりしてもだめ。VnTeX のマニュアルを探したが README.txt にはインストールについて書かれてあるのみで役に立たず,VnTeX のホームページはヴェトナム語なのでさっぱりわからない。しようがないので VnTeX のスタイルファイルをいろいろ漁って試行錯誤するしかなかった。

結局,dblaccnt.sty なるスタイルファイルがアクセントを重ね書きするためのマクロ定義であることがわかり,これをプリアンブルに指定してみると首尾よくコンパイルできたのである。つまり,もともとの VnTeX 用のプリアンブル:

\usepackage[...,vietnam,...]{babel}
\usepackage[utf8]{vietnam}

を次のとおりにすると,UNIX でも Windows でも OK となった。

\usepackage[...,vietnam,...]{babel}
\usepackage{dblaccnt}
\usepackage{vietnam}

読み込む順番が逆だとだめで,このとおり指定しないといけなかった。でもなんで UNIX では OK で Windows では NG なの? マクロを丹念に調べればわかるのかもしれないが,そのパワーがない。原因が不明なので薄気味悪い。VnTeX に英文のマニュアルはないのだろうか。

とにかく,Unix, Windows ともにタイプセットできるコーディングが得られたので,Utf82TeX のサンプルを修正し,アーカイブを入れ替えた。Utf82TeX のドキュメントも手直しした。なんとなく不毛であるけれど。

ちなみに VnTeX-3.02 の Typewriter 書体のフォント定義 t5cmtt.fd にはバグがある。その 10 行目 <5><6><7><8>vntt8<9>cmtt9%cmtt9 は誤りであって,vntt9 が正しい。