top page > TeX > here

TeX におけるロシア語


ここは現在作成中です.

概要

内容は次のようなものです.

  1. ロシア語の OT2 encode + Wncy, LH font 各々について使用例を提示する.
  2. KOI8-R と OT2 とのコード変換のフィルターなどの自作の道具を提供する.

目次

1. encode と font
2. Wncy font のための sty file
3. LH font のための sty file
4. OT2 に関する諸注意
5. tool と配布ファイル
6. 参考資料

1. encode と font

TeX におけるロシア語の encode は,日本語との共存という観点からは OT2 とそれ以外に分類されます.

  1. OT2
    TeX のソースのロシア語の部分はラテン文字 (ASCII code) で記述する.
    日本語とロシア語を共存させるならこれを選ぶしかない.
  2. LCY,T2A,T2B,T2C,X2
    TeX のソースのロシア語の部分は KOI-8R, ISO 8859-5 etc. のコードで記述する.
    これらはすべて pLaTeX では扱えない.すなわち日本語と共存できない.[1]
    T2A,T2B,T2C,X2 は標準のロシア語のキリル文字に限定するならばどれを用いても同じである.

ややこしいですが,これらは TeX のソースを記述するための encode ((x)emacs で言えば coding-system で規定するもの) とは別体系の分類です.

FreeBSD の ports/packages として配布されている TeX には,三種類のロシア語の font が付属しています. すなわち,

  1. wncyr (Washington Computer Modern Cyrillic by AmS) (OT2)
    対応する Type1 font がある.
  2. LH (by CyrTUG) (OT2,LCY,T2A,T2B,T2C,X2)
    対応する Type1 font がない.
    → OT2 に関しては,自前で作成した.
    → その他の encode の Type1 font ならば ports/print/cm-super にて配布されるようになった.
  3. cmcyr (KOI-7, CP866, CP1251, KOI-8, ISO 8859-5)
    encode に OT2 がない,sty, fd file が用意されていないなど使える状態にない.
    → 日本では資料も乏しいし OT2 にも対応していないので,追求しないことにする.

ここで注目すべきはアクセントの付き方です. ここで言うアクセントとは,TeX で \'a と書いた場合に a に付くもので,読む際に強調する印であり,文字と一体になっておらず,文書には本来書く必要もないもののみを指します. 一方,ロシア語の文字には ё, й のようなアクセント記号も付いています. これらは文字と一体となったものであり,必ず書く必要があります. (書かないと別の文字になってしまいますし.) これらを「アクセント記号付き文字」と呼ぶことにします.

wncyr は,これらアクセント記号付き文字にアクセントを付けると,二重にアクセントを付ける扱いにされてエラーになったり,付けられたアクセントの位置が正しくありません.[2] それと,フォントの書体も少ないです. よって,参考文献や人名に限定して使うのが無難でしょう.(AmS の本来の意図もそうでしょうし.)
→ 今回,アクセントの問題にはある程度対処しましたが,使い分け方に関する結論は変わりません.

一方,語学学習にはアクセントは不可欠と言えましょう. (「ア」と「オ」の発音の違いは目立ちますから.) 従って,LH の方が良いでしょう.[3]

[1] 少なくとも数年前は,これらは LaTeX でしか扱えませんでした.(私がやり方を知らないだけという可能性もあります.)
最近新しい環境に引っ越そうとしているのですが,当面「以前の使い方が新しい環境でも踏襲できるか」という視点しかないので,状況が変わっていてもそれを把握できておりません.

これらが日本語と共存できればいろいろ楽になるので,期待はしております. (UTF-8 になるのかなあ?)

[2] そうは言いつつ,「ё が現れる単語は,必ずそこにアクセントがある」こと,「й は子音扱いなのでアクセントは付かない」ことから,問題は生じません.

[3] とはいえ,語学学習云々を言うなら,OT2 ではとてもたまりません. 私は文章が短くない場合には先ず KOI8-R で入力し,それを自前のフィルターで OT2 に変換しています.

2. Wncy font のための sty file

TeX 内部でのフォントの選択に直接間接に関連するファイルは,

/usr/local/share/texmf-dist/tex/latex/cyrillic/

にある次のものです. (fd ファイルの後には,そこで使われるファミリー名を列挙しました.)

ot2enc.def
ot2wncyr.fd  : wncyr, wncyi, wncysc, wncyb
ot2wncyss.fd : wncyss

package file (.sty) ですが,FreeBSD の ports/packages としては用意されておりません.

3. LH font のための sty file

TeX 内部でのフォントの選択に直接間接に関連するファイルは,

/usr/local/share/texmf-dist/tex/latex/cyrillic/

にある次のものです. (fd ファイルの後には,そこで使われるファミリー名を列挙しました.)

ot2enc.def
ot2cmr.fd  : wnr,  wnsl,  wnti,   wnu,   wnb, wnbx, wnbxsl, wnbxti
ot2cmss.fd : wnss, wnssi, wnssdc, wnssbx
ot2cmtt.fd : wntt, wnitt, wnsltt, wntcsc

ロシア語の LH font には OT2 の pfb font が用意されておりません. FontForge の使用例 を参照して自作して下さい.

また,次節に記したバグにも対処して下さい.

package file (.sty) ですが,FreeBSD の ports/packages としては用意されておりません.

4. OT2 に関する諸注意

OT2 を使う場合,以下の点に注意が必要です.

  1. 仕様の欠陥 (?)
    ロシア語には "тс" という文字の並びが現われることがあります. これを OT2 で素直に記述すると "ts" なのですが,それだと "ц" に変換されてしまいます. 従って,この場合には "{t}s" のように書かなければなりません.
  2. アクセント記号
    яやюにアクセント記号を付ける場合,\'ya, \'yu ではだめで,\'\cyrya, \'\cyryu のように書く必要があります. (アクセント記号を付けるのは,あくまで学習目的です. ちなみに,ёは必ずアクセントになるのでアクセント記号は不要です.)
  3. LH font の Small Caps の Cyrc (ц) が大文字になってしまうバグ
    このバグは,2014 年に teTeX が ports からなくなるまで修正されませんでした.
    (TeXLive においては,少なくとも 2014 年版では修正されています.)
/usr/local/share/texmf-dist/fonts/source/lh/lh-ot2/wnliker.mf

     を次のように修正すれば直ります.

--- wnliker.mf.org      2004-05-30 03:51:27.000000000 +0900
+++ wnliker.mf  2009-09-05 11:57:50.000000000 +0900
@@ -1163,7 +1163,7 @@

    beginligtable
       labelchar ( CYR_.t );
-            setlig([ASCII "s"],CYR_.C);
+            setlig([ASCII "s"],CYR_.c);
       labelchar (
              CYR_.g
             ,CYR_.r

5. tool と配布ファイル

ここでは,KOI8-R と OT2 との Encode 変換のフィルター (アクセント対応) と Wncy, LH font のための package file を配布する予定です.

6. 参考資料

[1]「もっと^3 AmS-TeX」野寺 隆志,共立出版 (1991)

[2]「pLaTeX2e for Windows Another Manual Vol.2」乙部 巌己 ら,ソフトバンク(1997) pp.224-231