Windows版LaTeX(pTeX)の細道・けもの道
"Babel"で使用できる言語
LaTeX(pTeX)でヨーロッパの言語を中心に多くの言語を扱えるようにしたのが、"Babel"パッケージですが、その"Babel"パッケージで使用できる言語は以下の通りです(注)。
下記の言語の中で"Tex Live"をインストールした場合に、そのままでは使用できないのは、ウクライナ語・ブルガリア語・アイスランド語・ヘブライ語の4つです。
また、"W32Tex"をインストールした場合に、"Babel"パッケージ本体だけでは使用できないのは、フランス語・ギリシア語(古典、近代ともに)・ロシア語を初めとするキリル文字を使用する言語(ウクライナ語やブルガリア語など)・アイスランド語・ヘブライ語です。
フランス語はフランス語特有の文字を表示するためのパッケージが必要になります。また、ギリシア語はギリシア語特有のフォント、ロシア語やウクライナ語・ブルガリア語等はキリル文字のフォントなどが必要になります。アイスランド語は"Babel"のファイルを修正しないと組版ができません。
また、エスペラントで小文字の"j"のドットを取ったものに"^"のつけた文字がありますが、"New Century"などのフォントでは正しく表示されません。その場合は"dotless.sty"が必要になりますので、こちらも"Babel"とは別にインストールする必要があります。
"W32TeX"をインストールした場合の"Babel"パッケージ本体やギリシア語のフォント・ロシア語をはじめとするキリル文字のフォントのインストールについては[W32TEXでの"Babel"本体やギリシア語・ロシア語フォントのインストール]を参照してください。
LaTeX2e 美文書作成入門の【改訂第5版】の付録I「LaTeX2e による多言語処理」サポートページはこちらを参照してください。"LaTeX2e 美文書作成入門の【改訂第6版】では、Babelに関するページがなくなり、上記のサポートページも[Tex Wiki]からたどれないようですが、ご覧いただければわかるように"W32TEX"と異なり、"TeX Live"では、多くのパッケージがインストール済になっています。
言語名 | Bebel での指定 |
各言語の pdfサンプル |
各言語の texサンプル |
備 考 |
アイスランド語 | icelandic | pdfサンプル | texサンプル | 2012/7/29作成 |
アイルランド語 | irish | pdfサンプル | texサンプル | 2012/7/18作成 |
イタリア語 | italian | pdfサンプル | texサンプル | 2012/7/13作成 |
インドネシア語 | bahasa | pdfサンプル | texサンプル | 2012/7/25作成 |
インターリングア | interlingua | |||
ウェールズ語 | welsh | pdfサンプル | texサンプル | 2013/6/5作成 |
ウクライナ語 | ukrainian | pdfサンプル | texサンプル | 2012/7/31作成 |
英語 | english | pdfサンプル | texサンプル | 2012/7/18作成 |
エストニア語 | estonian | pdfサンプル | texサンプル | 2012/7/25作成 |
エスペラント | esperanto | pdfサンプル | texサンプル | 2012/7/14作成 |
オランダ語 | dutch | pdfサンプル | texサンプル | 2012/7/14作成 |
カタルーニャ語 | catalan | pdfサンプル | texサンプル | 2012/7/25作成 |
(現代)ギリシア語 | greek | pdfサンプル | texサンプル | 2012/7/31作成 |
(古代・古典)ギリシア語 | greek | pdfサンプル | texサンプル | 2013/5/4更新(「戦史」冒頭部でLipsias体の追加) |
クロアチア語 | croatian | pdfサンプル | texサンプル | 2012/7/24作成 |
ガリシア語 | galician | |||
高地ソルブ語(上ソルブ語) | usorbian | |||
スウェーデン語 | swedish | pdfサンプル | texサンプル | 2012/7/14作成 |
スコットランド・ゲール語 | scottish | pdfサンプル | texサンプル | 2013/6/5作成 |
スペイン語 | spanish | pdfサンプル | texサンプル | 2012/7/14作成 |
スロバキア語 | slovak | pdfサンプル | texサンプル | 2012/7/16作成 |
スロベニア語 | slovene | pdfサンプル | texサンプル | 2012/7/25作成 |
セルビア語(キリル文字) | serbian | pdfサンプル | texサンプル | 2012/7/25作成 |
セルビア語(ラテン文字) | serbian | pdfサンプル | texサンプル | 2012/7/25作成 |
チェコ語 | czech | pdfサンプル | texサンプル | 2012/7/15作成 |
低地ソルブ語(下ソルブ語) | lsorbian | |||
デンマーク語 | danish | pdfサンプル | texサンプル | 2012/7/14作成 |
ドイツ語(旧正書法) | german | pdfサンプル | texサンプル | 2013/6/6更新(隔字体) |
ドイツ語(新正書法) | ngerman | pdfサンプル | texサンプル | 2013/6/6更新(隔字体) |
トルコ語 | turkish | pdfサンプル | texサンプル | 2012/7/19作成 |
ノルウェー語 | norsk | pdfサンプル | texサンプル | 2012/7/14作成 |
バスク語 | basque | |||
ハンガリー語 | magyar | pdfサンプル | texサンプル | 2012/7/16作成 |
フィンランド語 | finnish | pdfサンプル | texサンプル | 2012/7/14作成 |
フランス語 | french | pdfサンプル | texサンプル | 2012/7/14作成 |
ブルガリア語 | bulgarian | pdfサンプル | texサンプル | 2012/7/31作成 |
ブルトン語 | breton | |||
ヘブライ語 | hebrew | |||
北部サーミ語(北サーミ語) | samin | |||
ポーランド語 | polish | pdfサンプル | texサンプル | 2012/7/14作成 |
ポルトガル語 | portuges | pdfサンプル | texサンプル | 2012/7/15作成 |
ラテン語 | latin | pdfサンプル | texサンプル | 2012/8/2作成 |
ルーマニア語 | romanian | pdfサンプル | texサンプル | 2012/7/15作成 |
ロシア語 | russia | pdfサンプル | texサンプル | 2013/6/8更新(アルファベット) |
(注)上記のうち、サンプルがない言語は、私がBabelを使って文書を作成できていないものです。作成できていない理由は、アルファベット自体や引用符に何を使用するか確認できない、該当言語の使用者数が少ない、インターリングアのようにほとんど英語と同じのため、改めて作成していないものなどさまざまな理由があります。
"Babel"の使用方法
"Babel"で欧文などを使用する場合には、\documentclass[a4paper]{jsarticle}などの後に、以下のように続けます。
ラテン文字を使用した言語
英語やフランス語、ドイツ語などラテン文字を使用した言語の場合は、以下の4つのパッケージを使用するようにします。下記の例ではフランス語と日本語を使用することを指定していますので、必要に応じて上記の表を参照し、"Babel"で使用できる言語を変更します。
- \usepackage{type1ec}
- \usepackage[T1]{fontenc}
- \usepackage{textcomp}
- \usepackage[french,japanese]{babel}
まず、最初の\usepackage{type1ec}は、EC(European Computer Modern)フォントを使用する場合に指定します。EC(European Computer modern)フォントは、英語で使用するアルファベット以外にアクセントなどの符号のついたアルファベットや"ff","fi","fl"などをリガチャ(合字)するときに使用します。リガチャ(合字)とはLaTeXの標準フォントであるComputer ModernやTimesフォント系のtxfontで"f"と"f"や"i"、"l"をくっつけて、あたかも1文字であるかのように表示することです。他のフォントではリガチャ(合字)を行わないものもあります。
文書の文字の大きさを10ptにする場合は\usepackage[10pt]{type1ec}としてもいいのですが、それ以外の場合にはここに文字の大きさを指定することはできません。したがって、一般的に文字の大きさは\documentclass[a4paper,12pt]{jsarticle}のように\documentclassで指定します。
Latin Modernフォントを使う場合には、\usepackage{type1ec}ではなく、\usepackage{lmodern}と指定します。両方指定すると正しく表示されない場合がありますので、ご注意ください。
次にある\usepackage[T1]{fontenc}は、標準のエンコーディング(フォント自体のコード。入力ファイルの文字コードとは別物)をT1エンコーディングとする場合に指定します。T1エンコーディングは、8ビットで256文字を表示できるようにしたフォントのコードです。英語で使用するアルファベット以外にアクセントなどの符号のついたアルファベットや"ff","fi","fl"などをリガチャ(合字)が指定されている文字コードのセットです(詳細は『改訂第5版LaTeX2ε美文書作成入門』の188ページの表をご覧ください)。
3番目の\usepackage{textcomp}は、T1エンコーディングに含まれない各種記号を使用するためのTS1エンコーディングが指定されている文字コードのセットです。
最後に\usepackage[french,japanese]{babel}のように[]の中に使用する言語を指定します。最後に指定した言語によって、キャプションや日付の表示が変わります。
フォントをTimes系にしたい場合は、さらに\usepackage{txfonts}等を追加します。"Tex Live"では\usepackage{newtxtext}などとします。
ドイツ語で隔字体(Sperrschrift)を使用する場合
ドイツ語では、強調する場合などにイタリック体ではなく、隔字体(Sperrschrift)を使用することがよくあります。こうした表記をするには"soul.sty"が必要になります。"soul.sty"は隔字体(Sperrschrift)だけでなく、アンダーラインなども含まれています。
実際に使用する場合には、\usepackage[soul]を追加し、隔字体(Sperrschrift)で表記したい箇所を\so{}のかっこの中に入れます。なお、"Tex Live"ではインストール不要ですが、"W32Tex"ではインストールが必要になります。インストール方法は[W32TEXでの"Babel"本体やギリシア語・ロシア語フォントのインストール]のsoul.styパッケージのインストールを参照してください。
エスペラント(Esperanto)を使用する場合
エスペラントでは、"j"の上にあるドット部分を取って"^"をつけることがあります。こうした表記をする場合には、"dotlessj.sty"が必要になります。
実際に使用する場合には、\usepackage[dotlessj]追加します。なお、"Tex Live"ではインストール不要ですが、"W32Tex"ではインストールが必要になります。インストール方法は[W32TEXでの"Babel"本体やギリシア語・ロシア語フォントのインストール]のフランス語特有のフォント用パッケージのダウンロードと解凍を参照してください。
現代ギリシア語を使用する場合
現代ギリシア語を使用する場合は以下のようにします。
- \usepackage[greek,japanese]{babel}
上記の例では、現代ギリシア語を使用し、キャプションや日付は日本語にする設定にしています。
古代ギリシア語を使用する場合
古代ギリシア語を使用する場合は以下のようにします。
- \usepackage[greek,japanese]{babel}
- \usepackage{teubner}
まず、最初に\usepackage[greek,japanese]{babel}のように[]の中に使用する言語を指定します。最後に指定した言語によって、キャプションや日付の表示が変わります。このままの指定だけでは、現代ギリシア語用の指定になりますので、古代ギリシア語(古典ギリシア語)の場合は\usepackage[polutonikogreek]{babel}とします。
また、古代(古典)ギリシア語を使用する場合は、\usepackage[greek]{babel}という指定をした後に、さらに\usepackage{teubner}等を追加しても同じです。この場合、"Tex Live"ではインストール不要ですが、"W32Tex"では"teubner.sty"をインストールする必要があります。"teubner.sty"のインストールは[W32TEXでの"Babel"本体やギリシア語・ロシア語フォントのインストール]の古代ギリシャ語用拡張パッケージ(teuber)のインストールを参照してください。
\usepackage{teubner}の代わりに\languageattribute{greek}{polutoniko}等と指定しても同じです。
以上、古代ギリシア語の指定についてまとめると、以下のようになります。
- 方法 その1
- \usepackage[greek,japanese]{babel}
- \usepackage{teubner}
- 方法 その2
- \usepackage[polutonikogreek,japanese]{babel}
- 方法 その3
- \usepackage[greek,japanese]{babel}
- \languageattribute{greek}{polutoniko}
ロシア語を使用する場合(ブルガリア語も同様です)
ロシア語を使用する場合は以下のようにします。
- \usepackage[OT2]{fontenc}
- \usepackage[russian,japanese]{babel}
まず、最初にある\usepackage[OT2]{fontenc}は、ロシア語のエンコーディング(フォント自体のコード。入力ファイルの文字コードとは別物)にする場合に指定します。
次に\usepackage[russian,japanese]{babel}のように[]の中に使用する言語を指定します。最後に指定した言語によって、キャプションや日付の表示が変わります(ブルガリア語の場合は、\usepackage[bulgarian,japanese]{babel}とします)。
ウクライナ語を使用する場合
ウクライナ語を使用する場合は以下のようにします。
- \usepackage[T2A,OT2]{fontenc}
- \usepackage[ukrainian]{babel}
- \usepackage{myt2aenc}
まず、最初にある\usepackage[T2A,OT2]{fontenc}は、ウクライナ語とロシア語のエンコーディング(フォント自体のコード。入力ファイルの文字コードとは別物)にする場合に指定します。ウクライナ語特有の文字以外はロシア語のエンコーディングを使用しますので、[T2A]のみを指定したり、[OT2,T2A]のように指定すると正しく表示されません。
次に\usepackage[ukrainian]{babel}のように[]の中に使用する言語を指定します。最後に指定した言語によって、キャプションや日付の表示が変わります。
3番目は\usepackage{myt2aenc}を指定します。http://www2.tba.t-com.ne.jp/ing/ctan/cmlgc.htmlにある"myt2aenc.sty"というファイルを以下のフォルダに保存することで、"T2A"で指定したフォントが表示できるようになります。なお、"myt2aenc.sty"はこちらからダウンロードすることもできます。
- "Tex Live"をWindowsにインストールした場合にはC:\texlive\2013\texmf-dist\tex\generic\babel-ukrainebに保存します。
- "W32Tex"をWindowsにインストールした場合にはC:\w32tex\share\texmf-local\tex\latex\x2などに保存します。
「"myt2aenc.sty"が見つからない」など、インストールしたパッケージやマクロが見つからないというエラーが出る場合は、コマンドプロンプトからmktexlsrと入力して、[Enter]キーを押して実行してください(コマンドプロンプトでどのフォルダを表示していても実行できます)。実行すると、以下のフォルダにls-Rというファイルができているのを確認してください。pTeXを実行する場合、このファイルを参照して実行しますので、新たにインストールしたパッケージやマクロを自動的に探してくれます。
- "Tex Live"をWindowsにインストールした場合にはC:\texlive\2013\texmf-configとC:\texlive\2013\texmf-dist、C:\texlive\2013\texmf-var、C:\texlive\texmf-localの配下にあります。
- "W32Tex"をWindowsにインストールした場合にはC:\w32tex\share\texmfとC:\w32tex\share\texmf-localの配下にあります。
キリル文字でセルビア語を使用する場合
キリル文字でセルビア語を使用する場合は以下のようにします。
- \usepackage[X2,OT2]{fontenc}
- \usepackage[serbian]{babel}
- \usepackage{myx2enc}
まず、最初にある\usepackage[X2,OT2]{fontenc}は、セルビア語とロシア語のエンコーディング(フォント自体のコード。入力ファイルの文字コードとは別物)にする場合に指定します。セルビア語特有の文字以外はロシア語のエンコーディングを使用しますので、[X2]のみを指定したり、[OT2,X2]のように指定すると正しく表示されません。
次に\usepackage[serbian]{babel}のように[]の中に使用する言語を指定します。最後に指定した言語によって、キャプションや日付の表示が変わります。
3番目は\usepackage{myx2enc}を指定します。http://www2.tba.t-com.ne.jp/ing/ctan/myx2enc.styにある"myx2enc.sty"というファイルを以下のフォルダに保存することで、"X2"で指定したフォントが表示できるようになります。なお、"myx2enc.sty"はこちらからダウンロードすることもできます。
- "Tex Live"をWindowsにインストールした場合にはC:\texlive\2013\texmf-dist\tex\generic\babel-serbianに保存します。
- "W32Tex"をWindowsにインストールした場合にはC:\w32tex\share\texmf-local\tex\latex\x2などに保存します。
「"myx2enc.sty"が見つからない」など、インストールしたパッケージやマクロが見つからないというエラーが出る場合は、コマンドプロンプトからmktexlsrと入力して、[Enter]キーを押して実行してください(コマンドプロンプトでどのフォルダを表示していても実行できます)。実行すると、実行すると、以下のフォルダにls-Rというファイルができているのを確認してください。pTeXを実行する場合、このファイルを参照して実行しますので、新たにインストールしたパッケージやマクロを自動的に探してくれます。
- "Tex Live"をWindowsにインストールした場合にはC:\texlive\2013\texmf-configとC:\texlive\2013\texmf-dist、C:\texlive\2013\texmf-var、C:\texlive\texmf-localの配下にあります。
- "W32Tex"をWindowsにインストールした場合にはC:\w32tex\share\texmfとC:\w32tex\share\texmf-localの配下にあります。
アイスランド語を使用する場合
アイスランド語は"Babel"をインストールした初期状態のままでは使用できませんので、以下のファイルを変更します。
- "Tex Live"をWindowsにインストールした場合にはC:\texlive\2013\texmf-dist\tex\generic\babel-icelandic\icelandic.ldfを変更します。
- "W32Tex"をWindowsにインストールした場合にはC:\w32tex\share\texmf\tex\generic\babel\icelandic.ldfを変更します。
まず、上記ファイルの142行目から157行目までが以下のようになっていることを確認します。
142:\DeclareTextCommand{\oob}{T1}{\sob {o}{.85}{0}{.04}{0}} 143:\DeclareTextCommand{\Oob}{T1}{\sob {O}{.7}{0}{0}{0}} 144:\DeclareTextCommand{\ooob}{T1}{\sob {{.85}{0}{.04}{0}} 145:\DeclareTextCommand{\OOob}{T1}{\sob {モ}{.7}{0}{0}{0}} 146:\DeclareTextCommand{\eob}{T1}{\sob {e}{1}{0}{.04}{0}} 147:\DeclareTextCommand{\Eob}{T1}{\sob {E}{1}{0}{.04}{0}} 148:\DeclareTextCommand{\eeob}{T1}{\sob {驀{1}{0}{.04}{0}} 149:\DeclareTextCommand{\EEob}{T1}{\sob {ノ}{1}{0}{.04}{0}} 150:\declare@shorthand{icelandic}{"o}{\oob} 151:\declare@shorthand{icelandic}{"O}{\Oob} 152:\declare@shorthand{icelandic}{"{\ooob} 153:\declare@shorthand{icelandic}{"モ}{\OOob} 154:\declare@shorthand{icelandic}{"e}{\eob} 155:\declare@shorthand{icelandic}{"E}{\Eob} 156:\declare@shorthand{icelandic}{"驀{\eeob} 157:\declare@shorthand{icelandic}{"ノ}{\EEob}
上記の部分をすべて、下記に変更します(コピー&ペーストすればOKです)。
%%\DeclareTextCommand{\oob}{T1}{\sob {o}{.85}{0}{.04}{0}} %%\DeclareTextCommand{\Oob}{T1}{\sob {O}{.7}{0}{0}{0}} \DeclareTextCommand{\ooob}{T1}{\sob {\'o}{.85}{0}{.04}{0}} \DeclareTextCommand{\OOob}{T1}{\sob {\'O}{.7}{0}{0}{0}} %%\DeclareTextCommand{\ooob}{T1}{\sob {{.85}{0}{.04}{0}} %%\DeclareTextCommand{\OOob}{T1}{\sob {モ}{.7}{0}{0}{0}} \DeclareTextCommand{\eob}{T1}{\sob {e}{1}{0}{.04}{0}} \DeclareTextCommand{\Eob}{T1}{\sob {E}{1}{0}{.04}{0}} %%\DeclareTextCommand{\eeob}{T1}{\sob {驀{1}{0}{.04}{0}} %%\DeclareTextCommand{\EEob}{T1}{\sob {ノ}{1}{0}{.04}{0}} \DeclareTextCommand{\eeob}{T1}{\sob {\'e}{1}{0}{.04}{0}} \DeclareTextCommand{\EEob}{T1}{\sob {\'E}{1}{0}{.04}{0}} \declare@shorthand{icelandic}{"o}{\oob} \declare@shorthand{icelandic}{"O}{\Oob} %%\declare@shorthand{icelandic}{"{\ooob} %%\declare@shorthand{icelandic}{"モ}{\OOob} \declare@shorthand{icelandic}{"e}{\eob} \declare@shorthand{icelandic}{"E}{\Eob} %%\declare@shorthand{icelandic}{"驀{\eeob} %%\declare@shorthand{icelandic}{"ノ}{\EEob}