欧米系の人文学研究では様々な言語を扱うことになり、さらにはフォントにもこだわりたいときがあります。LaTeX2e に標準で添付されているフォントの使い方については様々な解説書に載っていますから、ここでは省略します。ここで扱うのは、ギリシア語フォントなどの非ローマ字フォント、標準配布に含まれていない(欧文)フォントのインストール方法です。和文フォントについては割愛します。
以下では LaTeX のシステムは、teTeX 3.0 の例で説明します。特に Unix(Linux や Mac OS X を含む)に 土村さん の ptetex3 でインストールされたシステムを標準とします(後のシェルスクリプトもこれに基づいています)。他の場合は適宜読みかえてください。なお、
という表記を使っています。( ) 内は ptetex3 のデフォルトです。
TeX 用語集 をご覧ください。
以前は dvips, dvipdfm 用の .map ファイルを追加した場合、config.ps や dvipdfmx.cfg に記述を手動で追加する必要があり、面倒臭く、間違いの多く発生する作業でした。teTeX 3.0 では自動化されました。
まず、必要な .map ファイルをしかるべき場所に置いた後、mktexlsr を実行して .map ファイルがある場所を教えます。そのあとで updmap-sys コマンドを実行して .map ファイルを登録します*1。
# mktexlsr # updmap-sys --enable Map=hoge.map
なお、updmap(-sys) を実行すると、.map ファイルを再生成するので、時間がかかります。複数の .map ファイルを登録する場合は、--nomkmap オプションをつけて .map ファイルを生成しないようにしておくと時間が節約できます。
# updmap-sys --nomkmap --enable Map=hoge1.map # updmap-sys --nomkmap --enable Map=hoge2.map
最終的には生成しなければなりませんので、最後の .map には --nomkmap をつけないで実行するか、別に updmap-sys コマンドを実行します。
# updmap-sys --enable Map=hoge3.map
または
# updmap-sys --nomkmap --enable Map=hoge3.map # updmap-sys
フォントの集中管理については次の URL を参考にしてください。
Knuth 教授が開発した METAFONT 形式で配布されていれば TeX との親和性は抜群ですが、PostScript で書かれた Type 1 フォント(.pfb)や TrueType フォント(.ttf)、Open Type フォント(.otf)も(必要な変換作業などを施せば)使用可能になります。フォントの変換だけで膨大な解説が必要ですから、ここでは TeX 用に一式揃えて配布されているフォントだけを扱うことにします。
フォント関連のファイルには次のようなものがあります。なお、「…以下にインストールする」とはいってもその直下にインストールしてしまうと混乱してしまいますので、それぞれ「cbgreek」などのディレクトリを作った上でインストールしましょう。なお、コピーの際には root 権限が必要なことが多いでしょう。
書体見本を取り出したいときには
$ tex testfont
を実行して、指示にしたがってフォント名を入力します。そのあと
¥table ¥end
を入力すれば testfont.dvi というフォントテーブルが取り出せます。これをそのまま見るか、dvipdfmx で PDF にして見るとよいでしょう。なお、途中でエラーを出すことがあります。2回ほど試してみるとうまくいくことがあります。
TeX で標準的な METAFONT だけでなく、PostScript(Type 1)フォントでも使えます。詳しくは
を参照してください。
フォント関連のファイルは一つのパッケージだけでも大量になってしまうので、作業を自動化するシェルスクリプトを作ってみました(下のそれぞれのページにリンクがあります)。wget, unzip, gunzip くらいが使えれば大丈夫です。なお、手抜きのシェルスクリプトですので、それぞれの環境に合わせて書き直してお使いください。なお、これらのシェルスクリプトは完全に無保証です。使ったことによって損害を被っても保証できませんのでご注意ください。
「必要なファイルをインターネット上から取得して展開、パーミッションを直してしかるべき場所にコピー、最後に .map ファイルを更新する」という作業を記述しただけの手抜きスクリプトです。以下の点に注意してください。
# mktexlsr # updmap-sys
# cd /var/tmp # rm -rf texfontsworkなお、それぞれのスクリプトの終わりに
#rm -rf $WORKDIRという記述があるので、その行頭の # を消した上でスクリプトを実行すると、作業終了時に自動的にディレクトリが消されます。
稲垣さんによる Babel の使い方(p314babel.pdf)に詳細な解説があります。このページも p314babel.pdf を参考にさせて頂きました。