SlavTeX フォント

この休日,SlavTeX のフォントを pTeX で利用するためのスタイルを作成していた。SlavTeX は 1994 年にモスクワ大学の Андрей Слепухин がロシア正教会の委嘱で作成した古代教会スラヴ語組版用 TeX パッケージである。昔のものであり,いつのころからかインターネットで入手できなくなっていたが,CyrTeX ユーザーズグループのヴラジーミル・ヴォローヴィチさんが私の求めに応じてヴォロネジ大学の ftp アーカイブに入れてくださった。

SlavTeX は時代を反映してか,独自のフォーマットファイルをダンプし,Plain TeX で処理する。原稿の記述もロシアの PC-DOS の文字コード CP866 で行わなければならない。よって日本のユーザが pTeX でこれを利用することはできなかった。

私は pTeX で利用可能な古代教会スラヴ語パッケージ Izhitsa-ltn を公開しているが,SlavTeX のフォントの組み上がりの美しさに私は Izhitsa 以上に魅了されていたのである。SlavTeX のフォントを pTeX で使うための調整は Izhitsa に比べ複雑だと思われたので,これまで敬遠していたのである。

以下のような作業を行った。最新の LaTeX のマナーに合わせるよう調整した。

  • フォントを利用するためのローカル・エンコーディングを LST として設定し,LST フォントエンコーディングの文字・アクセントを定義するエンコーディング定義ファイル(lstenc.def)を作成。Izhitsa-ltn のシンボル命令(\OCSaz など)と互換性を持たせるよう定義。
  • フォント定義ファイル(lstcmr.fd)を作成。
  • Titlo や気息記号,アクセント付き文字の記述,フォントエンコーディング設定などを行うスタイルファイル(oldslav.sty)を作成。これも Izhitsa-ltn と互換性を持たせた。ダブルアクセントを有する izhitsa は,SlavTeX オリジナルではサポートされていないが,重アクセント記号を組み合わせて出力できるようにした。

これで pTeX で利用できるようになった。組版結果サンプルはこんな感じ。

slavtex_sample.png

SlavTeX のフォントマップは,もともとキリル 8bit コードで記述するのに都合のよいものになっている。8bit コードで日本語以外を記述できない pTeX の制約から,教会スラヴ語テキストは命令かシンボルで書かなければならない。Izhitsa-ltn を作成したときは METAFONT ソースを修正してラテンアルファベットで再マッピングし,OT2 のイメージで教会スラヴ語が書けるようにしたが,SlavTeX フォントに対して同じ改造を行う体力がいまの私にはない。いちいち \OCSxxxx で文字を指定しなければならないので非常に長くなり面倒である。とはいえ,とにかく pLaTeX できちんと組めるようになった。

今後は以下を計画中である。

  1. SlavTeX のハイフネーションパターンを使えるようにする。
  2. _ や '. ` でアクセント,気息記号,Titlo が記述できる SlavTeX オリジナル機能を実装する。
  3. 教会スラヴ語数字表現形式をサポートする。
  4. Babel oldchurchslavonic をサポートする。
  5. Izhitsa-ltn と統合し,切替え利用を可能とする。
  6. Utf82TeX で,SlavTeX オリジナル記法で書いた UTF-8 原稿を今回定義したシンボルに変換する辞書をサポートする。これができれば原稿を簡潔に記述できるようになる。

ここまでできれば公開できるかもしれないが,しばらくかかりそうである。