LaTeX 数式中のキリル文字

LaTeX において数式中に OT2 エンコーディングのキリル文字を記述しただけではラテンアルファベットで出力されてしまう。$a=b+\cyr{B}$ とやっても,a=b+B と印字されてしまう。

数式中にキリル文字を出力したいときは,amsmath.sty を指定して,キリル文字記述を \text{} のなかに入れる。ロシア語環境外では,さらにキリル文字は \cyr{} で囲む必要がある。

\documentclass[a4paper]{jsarticle}
\usepackage{amsmath}
\usepackage[T1, OT2]{fontenc}
\usepackage[russian, english]{babel}
\begin{document}
\selectlanguage{russian}
ロシア語環境\\
\qquad $a=b+B$\quad ラテン文字出力\\
\qquad $a=b+\text{B}$ \quad キリル文字出力
 
\selectlanguage{english}
ロシア語環境外\\
\qquad $a=b+\cyr{B}$\quad ラテン文字出力\\
\qquad $a=b+\text{\cyr{B}}$ \quad キリル文字出力
\end{document}

組版結果イメージは次のとおり。

exp_cyr.png

数式モードでキリル文字を出力するには,ほか mathtext パッケージを fontenc パッケージの前に指定し,\cyra 等のシンボル命令で記述する方法もある。amsmath.stymathtext.sty を使ったサンプルを掲載しておく。

ol.png