TeX

多言語の記述

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

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

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

プリアンブルの指定

エンコーディング

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

¥usepackage[T1]{fontenc}

と書いておきます。

Babel の設定

まず、Babel パッケージの指定が必要です。オプションに使用する言語を指定します。その際、最後に書かれた言語が基底言語(デフォルトの言語)となります。

¥usepackage[polutonikogreek,french,german,english]{babel}

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

ギリシア語のオプションは2つあります。

  1. greek
  2. polutonikogreek

polutonikogreek とは「『複式』アクセントのギリシア語」のことで、つまり古典ギリシア語のことです。ただの greek の方は「単式(monotoniko)アクセントのギリシア語」です。ただし、teubner パッケージを使った場合は、greek を指定するだけで、polutonikogreek を選んだことになります。

ここでは、イギリス英語と古典ギリシア語のみを用い、teubner パッケージを用いることにします。次のようなプリアンブルにすればいいでしょう。

¥documentclass[a4]{jarticle}
¥usepackage[T1]{fontenc}
¥usepackage[greek,english]{babel}
¥usepackage{teubner}

¥begin{document}

%%%%% TEXT START %%%%%


%%%%% TEXT END %%%%%

¥end{document}

本文の書き方

処理言語の選択

上の設定では、標準では英語が出力されます。ギリシア語にしたいときは

¥selectlanguage{greek}

と書きます。元に戻す時は

¥selectlanguage{english}

ですね。このコマンドは長いので不便です。短縮コマンドを作っておくといいでしょう。プリアンブルに

¥newcommand{¥SG}{¥selectlanguage{greek}}
¥newcommand{¥SE}{¥selectlanguage{english}}

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

他言語の挿入

¥selectlanguage を用いると、それ以降の言語が全て変更されてしまいます*1。他の言語を少しだけ挿入する場合は、

¥foreignlanguage{greek}{}

と書きます。これもまた長いコマンドなので、短縮コマンドを作っておくと便利でしょう。

ギリシア語の挿入

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

¥textgreek{to}

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

Lipsiakos フォント

Lipsiakos フォントを用いる場合は、その部分を

¥textLipsias{}

で囲みます。あるいは

¥Lipsiakostext

と書いておくと、

¥NoLipsiakostext

が現れるまで Lipsiakos フォントを用います。なお以上の場合は、言語の選択(¥selectlanguage{xxxx}) は必要ありません。

Didot フォント

Didot フォントを使用する場合は、その部分を

¥textDidot{}

で囲みます。

文字の入力

上段が出力、下段が入力です。

文字αβγδεζηθικλμνξοπρστυφχψω
表記abgdezhjiklmnxoprs, ctufqyw

大文字を出力するには、入力するアルファベットを大文字にします。「語中の sigma」と「語末の sigma」は自動的に処理されます。lunate sigma(c の形をした sigma)は現在のところ使えません。

アクセント記号がある文字は、おおよそ次のような原則で、1から順番に記したコマンドで表します。以下の記法が適用されるのは小文字だけです。大文字については後で述べる方法を用います。

  1. 初めに ¥ を書く
  2. アクセントを除いた部分の文字(をアルファベットに転記したもの)を書く(αなら a)
  3. 無気息なら s(smooth)、有気息なら r(rough)、分離記号なら d(dieresis)を書く
  4. 鋭アクセントなら a(acute)、重アクセントなら g(grave)、曲アクセントなら c(circumflex)を書く
  5. イオタサブスクリプトなら i を書く
  6. 最後に半角スペースを挿入する

ただし、¥or というコマンドは他で使われているので、¥oR と記します。

最後の半角スペースは、コマンドの終了を表すためのものです。例えば次のような例を考えて下さい。(αγαθοσです。)

¥as gaj¥oa s

これを

¥asgaj¥oas

と書いてしまうと、¥asgaj がひとかたまりでコマンドを表すことになってしまいます*2。ところが、¥asgaj というコマンドは存在しないので、エラーになります。半角スペースがあれば、そこでコマンドが終了していると判断されますので、正しく処理されます。

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

ka¥ig  t¥oa

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

ka¥ig{} t¥oa

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

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

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

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

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

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

ギリシア語と日本語の間のスペース

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

参考


*1 「環境」の中で用いた場合にはこの限りではありません。その環境の中だけ変更されます。
*2 ¥ がコマンド開始の合図です。

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