[[TeX]]
[[TeX/Manual]]

*多言語の記述 [#c4674b46]
*Babel [#b4605fc6]

LaTeX には、多言語を扱う強力な ''Babel'' というパッケージがあります。欧米系の人文学で LaTeX を使う場合には必須といってよいパッケージです。

以下では ''Babel'' パッケージの使い方について解説します。最近の TeX のディストリビューションならば ''Babel'' は既に導入されているはずです。''Babel'' の導入は非常に面倒なので、導入されていない場合は TeX のシステム自体を入れ直した方が早いかもしれません。
以下では ''Babel'' パッケージの使い方について解説します。最近の TeX のディストリビューションならば ''Babel'' は既に導入されているはずです。''Babel'' の導入は非常に面倒なので、導入されていない場合は TeX のシステム自体を入れ直した方が早いかもしれません。TeX のインストールについては [[TeX/Install]] を参照してください。

現在解説を拡充中です。(元にしたページの関係で)完成するまではギリシア語に関する部分が主になってしまうことをご了承ください。

*プリアンブルの指定 [#b1f1b466]
**参考 [#z2aff1c7]

**エンコーディング [#dc775645]
-[[ハイフネーションと Babel>TeX/Manual/Babel/hyphenation]]
-$CTAN/macros/latex/required/babel/user.pdf
-$CTAN/macros/latex/required/babel/babel.pdf

LaTeX では、D. Knuth 作成の CM(Computer Modern)というフォントが標準で使われますが、ギリシア語などの表示のためには、アクセントなどを含めた EC(European Computer modern)フォントを使用するとよいでしょう。EC フォントを使用するには T1 エンコーディングというものを使う必要があります。プリアンブルに
user.pdf が簡便です。

 ¥usepackage[T1]{fontenc}
*プリアンブルの指定 [#w86c37bd]

と書いておきます。
''Babel'' パッケージを使用するために、プリアンブルの指定が必要です。「プリアンブル」とは、簡単にいえば \begin{document} より前の部分です。

**Babel の設定 [#p1b46a1c]
**エンコーディング [#u651d05d]

まず、Babel パッケージの指定が必要です。オプションに使用する言語を指定します。その際、最後に書かれた言語が基底言語(デフォルトの言語)となります。
LaTeX では、D. Knuth 作成の CM(Computer Modern)というフォントが標準で使われますが、このフォントに含まれる文字は 128 種のみです。アクセントつきの文字はこの中に収まり切らないため、それらの文字はアクセント記号との合成で作ります。合成で作られた文字はハイフネーションができないなど、いろいろ不都合があります。

 ¥usepackage[polutonikogreek,french,german,english]{babel}
''Babel'' パッケージを使用するときは、アクセントつきの文字が初めから含まれている EC(European Computer modern)フォントの使用が必須です。EC フォントを使用するには T1 エンコーディングというものを使う必要があります。プリアンブルに

上のように書くと、古典ギリシア語、フランス語、ドイツ語、イギリス英語が扱え、イギリス英語が基底言語になります。
 \usepackage[T1]{fontenc}

ギリシア語のオプションは2つあります。
と書いておきます。

+''greek''
+''polutonikogreek''
**言語の指定 [#u05a3498]

''polutonikogreek'' とは「『複式』アクセントのギリシア語」のことで、つまり古典ギリシア語のことです。ただの ''greek'' の方は「単式(monotoniko)アクセントのギリシア語」です。ただし、[[teubner>TeX/PackageFile/teubner]] パッケージを使った場合は、''greek'' を指定するだけで、''polutonikogreek'' を選んだことになります。
まず、\usepackage コマンドで ''Babel'' パッケージを読み込みます。その際、オプション([   ] 内)に使用する言語を指定します。最後に書かれた言語が基底言語(デフォルトの言語)となります。

ここでは、イギリス英語と古典ギリシア語のみを用い、[[teubner>TeX/PackageFile/teubner]] パッケージを用いることにします。次のようなプリアンブルにすればいいでしょう。
 \usepackage[greek,latin,german,english]{babel}

 ¥documentclass[a4]{jarticle}
 ¥usepackage[T1]{fontenc}
 ¥usepackage[greek,english]{babel}
 ¥usepackage{teubner}
 
 ¥begin{document}
 
 %%%%% TEXT START %%%%%
 
 
 %%%%% TEXT END %%%%%
 
 ¥end{document}
上のように書くと、ギリシア語、ラテン語、ドイツ語、イギリス英語が扱え、イギリス英語が基底言語になります。

*本文の書き方 [#u97e28c1]
***言語の属性の指定 [#xb0365b2]

**処理言語の選択 [#g96271d8]
一口にギリシア語といっても「現代」ギリシア語と「古典」ギリシア語があります。主な違いはアクセントの方式でしょう。現代ギリシア語は `monotoniko'(単式アクセント)ですが、古典ギリシア語は `polutoniko'(複式アクセント((気息記号などを含めてこういいます。)))です。''Babel'' ではこれらを区別します。属性(attribute)を指定するには、

上の設定では、標準では英語が出力されます。ギリシア語にしたいときは
 \languageattribute{<language>}{<attribute>}

 ¥selectlanguage{greek}
のように指定します。例えば古典ギリシア語ならば

と書きます。元に戻す時は
 \usepackage[greek,latin,german,english]{babel}
 \languageattribute{greek}{polutoniko}

 ¥selectlanguage{english}
のように指定します。現代ギリシア語ならば属性(attribute)を指定する必要はありません。

ですね。このコマンドは長いので不便です。短縮コマンドを作っておくといいでしょう。プリアンブルに
***言語、属性の指定の例 [#b0aafc3f]

 ¥newcommand{¥SG}{¥selectlanguage{greek}}
 ¥newcommand{¥SE}{¥selectlanguage{english}}
詳しくはそれぞれの言語のページを参照してください。

などと書いておけば、¥SG や ¥SE と書くだけでギリシア語や英語に切替えられます。
|~言語|~属性|~言語の指定|~属性の指定|
|~イギリス英語|~ |english||
|~ドイツ語|~ |german||
|~オーストリアドイツ語|~ |austrian||
|~フランス語|~ |french||
|~イタリア語|~ |italian||
|~ラテン語|~古典|latin||
|~|~中世|latin|medieval|
|~|~長短記号つき|latin|withprosodicmarks|
|~ギリシア語|~現代|greek||
|~|~古典|greek|polutoniko|

**他言語の挿入 [#b298256c]
*Type 1 フォントの指定 [#xb3d7bba]

¥selectlanguage を用いると、それ以降の言語が全て変更されてしまいます((「環境」の中で用いた場合にはこの限りではありません。その環境の中だけ変更されます。))。他の言語を少しだけ挿入する場合は、
ラテン文字の Type 1 フォントを使用するには、次のように書きます。

 ¥foreignlanguage{greek}{}
 \usepackage{lmodern}

と書きます。これもまた長いコマンドなので、短縮コマンドを作っておくと便利でしょう。
これで Latin Modern(LM)フォントを使うようになります。[[cm-super>TeX/Font/Packages/cm-super]] をインストールしている場合、この代わりに

**ギリシア語の挿入 [#fd901db1]
 \usepackage[10pt]{type1cm}

ひとつの単語でいいんだけど… というような場合は、
と書きます。

 ¥textgreek{to}
[[cbfont>TeX/Font/Packages/cbgreek]] の Type 1 フォントをインストールしている場合は

と書きます。{ }の中身がギリシア語になります。ただしこの場合、プリアンブルで ''polutonikogreek'' を指定してあっても([[teubner>TeX/PackageFile/teubner]] パッケージを用いて ''greek'' を指定したときも含みます)気息記号などがずれてしまう場合があるようです。
 \usepackage[10pt]{type1ec}

**Lipsiakos フォント [#fd5974eb]
と書いておきます。

Lipsiakos フォントを用いる場合は、その部分を
*japanese パッケージ [#ac446cc5]

 ¥textLipsias{}
''Babel'' パッケージを使うと、見出しなどが基底言語用のものに変えられてしまいます。''japanese'' パッケージを使用すると日本語に変えることができます。''japanese'' パッケージを読み込むには、''Babel'' とは独立に

で囲みます。あるいは
 \usepackage{japanese}

 ¥Lipsiakostext
と書いて ''japanese'' パッケージを読み込みます。''japanese'' パッケージを読み込むと次のエラーが出るようになりますが、問題ありません。

と書いておくと、
 Package babel Warning: No hyphenation patterns were loaded for
 (babel)                the language `Japanese'
 (babel)                I will use the patterns loaded for \language=0 instead.

 ¥NoLipsiakostext
*teubner パッケージ [#kcbdf96e]

が現れるまで Lipsiakos フォントを用います。なお以上の場合は、言語の選択(¥selectlanguage{xxxx}) は必要ありません。
古典学で使われる記号などを用いる場合は、''teubner'' パッケージを用います。''teubner'' パッケージを用いるには、プリアンブルに次のように書いておきます。

**Didot フォント [#fcb8a244]
 \usepackage{teubner}

Didot フォントを使用する場合は、その部分を
なお、''teubner'' パッケージを読み込むと自動的に

 ¥textDidot{}
 \languageattribute{greek}{polutoniko}

で囲みます。
が設定されますので、この記述は省略します。

**文字の入力 [#abdf880e]
詳しい使い方については [[TeX/Manual/Babel/greek]] と [[TeX/PackageFile/teubner]] をご覧ください。

上段が出力、下段が入力です。
*本文中の記述 [#jf86aca1]

|~文字|α|β|γ|δ|ε|ζ|η|θ|ι|κ|λ|μ|ν|ξ|ο|π|ρ|σ|τ|υ|φ|χ|ψ|ω|
|~表記|a|b|g|d|e|z|h|j|i|k|l|m|n|x|o|p|r|s, c|t|u|f|q|y|w|
本文中でそれぞれの言語を使用するためのコマンドには次のようなものがあります。

大文字を出力するには、入力するアルファベットを大文字にします。「語中の sigma」と「語末の sigma」は自動的に処理されます。lunate sigma(c の形をした sigma)は現在のところ使えません。
|~コマンド|~はたらき|
|~\selectlanguage{<'''lang'''>}|以後、異なる言語を \selectlanguage で指定するまで '''lang''' の言語で組版する|
|~\begin{otherlanguage}{<'''lang'''>}|\end{otherlanguage} が出てくるまで '''lang''' の言語で組版する|
|~\foreinlanguage{<'''lang'''>}{'''text'''}|'''text''' の部分を '''lang''' で指定された言語で組版する|
|~\textlatin{'''text'''}|ラテン文字以外で記述されているテキストの中にラテン文字で記述されている '''text''' を挿入する|
|~\textgreek{'''text'''}|ギリシア文字以外で記述されているテキストの中にギリシア文字で記述されている '''text''' を挿入する|

アクセント記号がある文字は、おおよそ次のような原則で、1から順番に記したコマンドで表します。以下の記法が適用されるのは小文字だけです。大文字については後で述べる方法を用います。
通常は \selectlanguage を用い、他の言語の引用には \begin{otherlauguage} を、単語レベルでの引用には \foreignlanguage を用いるとよいでしょう。

+初めに ¥ を書く
+アクセントを除いた部分の文字(をアルファベットに転記したもの)を書く(αなら a)
+無気息なら s(smooth)、有気息なら r(rough)、分離記号なら d(dieresis)を書く
+鋭アクセントなら a(acute)、重アクセントなら g(grave)、曲アクセントなら c(circumflex)を書く
+イオタサブスクリプトなら i を書く
+最後に半角スペースを挿入する
\textgreek を使うと、気息記号などがうまく出力されないことがあるようです。

ただし、¥or というコマンドは他で使われているので、¥oR と記します。
**省略 [#f97321bb]

最後の半角スペースは、コマンドの終了を表すためのものです。例えば次のような例を考えて下さい。(αγαθοσです。)
上のコマンドは長いので不便です。省略用のコマンドを作っておくといいでしょう。プリアンブルに

 ¥as gaj¥oa s
 \newcommand{\SG}{\selectlanguage{greek}}
 \newcommand{\SE}{\selectlanguage{english}}

これを
などと書いておけば、\SG や \SE と書くだけでギリシア語や英語に切替えられます。

 ¥asgaj¥oas
*言語ごとの入力方法 [#n0a1efd7]

と書いてしまうと、¥asgaj がひとかたまりでコマンドを表すことになってしまいます((¥ がコマンド開始の合図です。))。ところが、¥asgaj というコマンドは存在しないので、エラーになります。半角スペースがあれば、そこでコマンドが終了していると判断されますので、正しく処理されます。
-[[ギリシア語>TeX/Manual/Babel/greek]]

しかし、LaTeX では「複数の半角スペースは1つのものと数える」という規則があるため、και το(アクセントは想像して下さい)を次のように書いてしまうと、二つの単語がくっついてしまいます。

 ka¥ig  t¥oa

この場合、¥ig のあとに、見えない区切り記号 {} を挿入します。

 ka¥ig{} t¥oa

すると t の前の半角スペースがスペースとして認識されます。

では、¥ig などのコマンドの後には必ず {} を入れるようにすればいいのでしょうか? 残念ながら厳密にいうとこの方法は正しくありません。{} を入れてしまうと、文字のカーニングがうまくいかなくなります。{} は上のような限られた場合にのみ使って下さい。	  

なお、コマンドのあとが記号の場合、半角スペースなどの区切り記号は省略します。例えば ¥oR¥aa、¥ig, など。

|~句読点|~記法|
|ピリオド|.|
|セミコロン|;|
|エクスクラメーションマーク|!|
|コロン|:|
|クエスチョンマーク|?|
|左アポストロフィ|``|
|右アポストロフィ|''|
|左引用符|((|
|右引用符|))|
|エリジョン|''|

アクセントと気息記号は、以下の記号を付けたい文字の前に置くことによっても表すことができます(ただしイオタサブスクリプトと分離記号は後に置く)。特に大文字の場合は ¥As のような記号は使えないので、必ず以下の記法を用います。ただし小文字については、以下の記法を用いるとカーニングの処理がうまくいかず、文字がパラつく(文字の間隔があきすぎてしまう)ことがあります。

|~アクセントと気息記号|~記法|
|鋭アクセント|'|
|重アクセント|`|
|曲アクセント|&tilde;|
|有気息記号|<|
|無気息記号|&gt;|
|イオタサブスクリプト|&brvbar;|
|分離記号|"|

**ギリシア語と日本語の間のスペース [#j166ed6e]

アクセントなどのつかないギリシア語アルファベットと日本語の間のスペースは正しく処理されますが、アクセントなどのついた(=コマンドとして表す)ギリシア語アルファベットと日本語の間のスペースは正しく処理されず、くっついてしまいます。これを防ぐためには、そのコマンドと日本語の間に半角スペースを挿入します。コマンドと日本語の間で入力ファイルの行が折り返されるときは、行末に ¥ を挿入するか、行末に半角スペースに続けて %(半角で)を入力します。この現象と似た現象については『美文書作成入門』(改訂第3版)p.77 を参照して下さい。

*参考 [#wcdc5e62]

-[[ハイフネーションと Babel>TeX/Manual/Babel/hyphenation]]


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS