日本語 TeX 利用ガイド
Munehiro
Yamamoto
日本語 TeX 環境の構築
この章では、Vine Linux の日本語 TeX 環境を構成している主要なパッケージについて解説しています。
基本的な日本語 TeX 環境の構築
日本語 TeX 環境の構築は,
task-tetex パッケージをインストールすると一通り整います。
# apt-get install task-tetex
task-tetex パッケージでインストールされるパッケージリスト
パッケージ名
概要
jvf
日本語仮想フォント
tetex
tetex TeX 文書整形システム
tetex-extra
tetex 関連の追加バイナリ・フォント
tetex-macros
tetex で使うマクロパッケージ集
texmacro-otf
tetex で使うマクロパッケージ(齋藤修三郎氏による「OpenType Font用VF」)
dvipdfmx
DVI から PDF へ変換
xdvik
DVI ファイルのプレビューアー
xdvik-search
TeX src-special を Emacsen上で使用するための elisp
tetex パッケージ
Vine Linux 5 の日本語 TeX 環境の根幹である tetex パッケージは、
土村展之氏による日本語 TeX ディストリビューション
ptetex3 をベースにして、
Vine Linux 独自の調整を施しています。
tetex ディストリビューションに含まれている xkeyval, pgf, beamer, pict2e マクロパッケージついて
tetex パッケージを構成している
tetex ディストリビューションのアーカイブに含まれていた
xkeyval, pgf, beamer, pict2e マクロパッケージはすでに古いので、
により、最新版を提供しています。
標準の明朝体とゴシック体
標準の明朝体 (rml) とゴシック体 (gbb) は、
それぞれ IPA 明朝、VL ゴシック に設定しています。
他の TrueType フォントや モリサワやヒラギノ、小塚などの OpenType フォントへの変更や利用をしたい場合は、 を参照して下さい。
ptexenc による文字コード自動認識
Vine Linux 5 では、標準ロケールが utf-8 になったので、
日本語 TeX 環境もそれに合わせて、
標準の文字コードを utf-8 になっています。
Vine Linux 5 では、
過去に書いた非 utf-8 エンコーディングな TeX ソースコードがそのままコンパイルできるように、
ptexenc による文字コード自動認識を標準で有効にしました。
これは /usr/share/texmf/web2c/texmf.cnf に以下のように設定しています。
PTEX_IN_FILTER = /usr/bin/nkf -w
texmacro-otf パッケージ
texmacro-otf パッケージは、
齋藤修三郎氏による「OpenType Font 用 VF」がインストールされます。
モリサワやヒラギノ、小塚などの OpenType フォントを所持していなくても、
デフォルトで otf マクロパッケージが使えるように調整しています。
また、モリサワやヒラギノ、小塚の
OpenType フォントをインストールするためのパッケージを用意しています。
詳細は、 を参照して下さい。
tetex-macros パッケージ
tetex-macros パッケージは、
日本語 TeX を使う上で便利な TeX のマクロパッケージを収録しています。
新日本語ドキュメントクラスの jsclasses や
listings 環境にて日本語を通す jlisting、
3 つのメジャーなプレゼンテーションクラス
Prosper, Powerdot, Beamer をサポートしています。
過去に作成した Prosper や Powerdot のデータを
そのまま最新の TeX 環境で生かすことも可能です。
task-tetex パッケージに収録されている主なマクロパッケージ
マクロパッケージ名
公式サイト
概要
jsclasses
pLaTeX2e 新ドキュメントクラス
奥村晴彦氏による pLaTeX2e 新ドキュメントクラス
jlisting
Listings - MyTeXpert
吉永徹美氏のマクロをベースにして渡辺 徹氏がまとめた、
listings で日本語を通すためのマクロパッケージ
pict2e
CTAN: directory: /tex-archive/macros/latex/contrib/pict2e
完全に PostScript に対応した新しい picture 環境
Prosper
Prosper: high quality slides in LaTeX
プレゼンテーションクラス(公式 Web サイトはすでに閉鎖しています)
Powerdot
powerdot class
Prosper の使い勝手を改善したプレゼンテーションクラス
Beamer
The LaTeX Beamer Class Homepage
最近流行っているプレゼンテーションクラス
xdvik パッケージと xdvik-motif パッケージ
xdvik は日本語対応 dvi プレビュアーです。
Vine Linux 5 では、xdvik のツールキットが異なった
2 種類の xdvik パッケージ、xdvik-motif パッケージを用意しています。
ツールキットとして、
ぞれぞれ Xaw3d, openMotif を用います(、)。
xdvik パッケージと xdvik-motif パッケージの両方をインストールしていたら…
xdvi を実行すると、Motif 版 xdvik が起動します。
実際に /usr/bin/xdvi は
/usr/bin/xdvi.bin のラッパーになっています。
$ ls -l /usr/bin/xdvi.bin
lrwxrwxrwx 1 root root 22 7月19日 04:32 /usr/bin/xdvi.bin -> /etc/alternatives/xdvi*
/usr/bin/xdvi.bin は、
update-alternatives により
Xaw3d 版、Motif 版を切り替えていて、
Motif 版の xdvi の優先度を Xaw3d 版のそれよりも高くしています。
$ /sbin/update-alternatives --display xdvi
xdvi - status is auto.
link currently points to /usr/bin/xdvi-motif
/usr/bin/xdvi-xaw3d - priority 30
/usr/bin/xdvi-motif - priority 50
Current `best' version is /usr/bin/xdvi-motif.
tetex-tt2001-fmex789 パッケージと tetex-bakoma-cmex789 パッケージ
通常、cmex の 7, 8, 9 pt にマッピングされている
fmex{7,8,9}.pfb のグリフ /space (0x0020) には、
大きめな左パーレンが割り当てられています。
例えば、以下の tex ソースにより得られる
\left( の左パーレンがちょうど fmex9.pfb のそれに該当します。
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\small
$$
\left(
\sum_{i=0}^D
\right)
$$
\end{document}
一部の出力環境によっては、
この左パーレンが pdf プレビュー時および印刷時に欠落してしまう問題があります。
安全な出力のために Vine Linux 5 では、
この問題への対処として、
tetex-tt2001-fmex789 と tetex-bakoma-cmex789 (non-free)
という 2 つのパッケージを用意しました。
前者はグリフ /space を /visiblespace へ置換することで、
後者は Bakoma フォントを利用することで、この問題へ対応しています。
この問題の詳細は、奥村晴彦氏が運営する
TeX Wiki
の
[qa:52241] tetex3とWin32TeXのcmex7/8/9の違い
を先頭とするスレッドを参照してください。
カスタマイズ
この章では、texmf のディレクトリ構成および
フォントマップ一元管理機構 updmap について、
特に和文書体の設定を中心に解説しています。
なお、updmap に関するドキュメントを書くにあたり、
土村展之氏の ptetex3 のフォントの集中管理 - ptetex Wiki を大いに参考に致しました。
texmf のディレクトリ構成
tetex3/ptetex3 における texmf のディレクトリ構成は、
標準で /usr/share/texmf/web2c/texmf.cnf により設定されています()。
texmf の優先順は、
の一番下の
$HOME/.texmf-config がもっとも高く、
次に $HOME/.texmf-var の順に、
/usr/share/texmf-dist がもっとも低くなっています。
updmap-sys, texconfig-sys コマンドは、
/usr/share 以下の texmf ツリーを利用し、
updmap, texconfig コマンドは、
ホームディレクトリ以下の texmf ツリーを利用します。
標準の texmf.cnf で設定されている texmf のディレクトリ構成一覧
ディレクトリ
標準の texmf.cnf における環境変数名
TeX 関連パッケージによる影響の有無
updmap/texconfig による影響の有無
概要
/usr/share/texmf-dist
TEXMFDIST
○(tetex パッケージのみ)
×
tetex3 ディストリビューションのツリー。
/usr/share/texmf
TEXMFMAIN
○(tetex パッケージ以外)
×
ptetex3 ディストリビューションのツリー。
TeX 関連パッケージは、このツリーに必要なファイルを展開しています。
/usr/share/texmf-local
TEXMFLOCAL
×
×
システムワイドなツリー。
このツリーは、texconfig-sys や updmap-sys により使われません。
/usr/share/texmf-var
TEXMFSYSVAR
○(updmap-sys)
○
texconfig-sys は必要なファイルを格納するツリー。
updmap-sys により生成されたマップファイルもこのツリーに格納されます。
/usr/share/texmf-config
TEXMFSYSCONFIG
○(updmap-sys)
○
texconfig-sys が設定ファイルを格納するツリー。
updmap.cfg もこのツリーに格納されます。
$HOME/texmf
TEXMFHOME
×
×
ユーザの texmf ツリー。
$HOME/.texmf-var
TEXMFVAR
×
○
ユーザの texmf-var ツリー。
$HOME/.texmf-config
TEXMFCONFIG
×
○
ユーザの texmf-config ツリー。
フォントマップ一元管理機構 updmap
ptetex3 では、tetex3 の欧文フォント管理機構 updmap を、和文フォントに対して拡張した updmap が採用されています。
updmap の機能〔ptetex3 のフォントの集中管理 - ptetex Wiki を改変〕
欧文和文
実装
teTeX-3.0
井上浩一氏の拡張
登録する map の書式
dvips 用
dvipdfmx 用
登録する map の置場
$TEXMF/fonts/map/dvips/
$TEXMF/fonts/map/dvipdfm/(x なし)
登録方法
updmap-sys --enable Map=hoge.map
updmap-sys --enable MixedMap=hoge.map
updmap-sys --enable KanjiMap=hoge.map
生成される map
dvips: $TEXMFSYSVAR/fonts/map/dvips/updmap/psfonts_t1.map
dvipdfm: $TEXMFSYSVAR/fonts/map/dvipdfm/updmap/dvipdfm_dl14.map
pdftex: $TEXMFSYSVAR/fonts/map/pdftex/updmap/pdftex_dl14.map
dvips: $TEXMFSYSVAR/fonts/map/dvips/updmap/psfonts_t1.map
dvipdfmx, xdvik: $TEXMFSYSVAR/fonts/map/dvipdfm/updmap/kanjix.map
その他
xdvi, dvipng 等は dvips の map を利用
xdvik 用のデフォルト和文フォントの指定も
updmap の設定ファイル
distribution-wide, system-wide な updmap の設定ファイルは、それぞれ
/usr/share/texmf/web2c/updmap.cfg,
/usr/share/texmf-config/web2c/updmap.cfg
に格納されています。
updmap-sys コマンドを用いることで
既存の updmap.cfg への変更があれば、
/usr/share/texmf-config/web2c/updmap.cfg
へ設定されます。
必要であれば、直接
/usr/share/texmf-config/web2c/updmap.cfg
を編集するとよいです。
同時に、ローカルで必要なファイルは、
/usr/share/texmf-var,
/usr/share/texmf-local
に置けます。
ps-morisawa-map
事実上,出版・印刷業界で標準であるモリサワフォント(OpenType 版)を
updmap で利用するには、フォントマップの作成に一工夫が必要です。
Vine Linux 5 ではその一工夫に対する一つの解として、
tetex パッケージに ps-morisawa.map
(非フォント埋め込み用は ps-morisawa-noEmbed.map)を同梱しました。
%% ps-morisawa.map
%% modified from /usr/share/texmf/fonts/map/dvipdfm/morisawa.map
%%
%% Morisawa
%%
ryumin-l H RyuminPro-Light.otf
ryumin-l-v V RyuminPro-Light.otf
gtbbb-m H GothicBBBPro-Medium.otf
gtbbb-m-v V GothicBBBPro-Medium.otf
futomin-b H FutoMinA101Pro-Bold.otf
futomin-b-v V FutoMinA101Pro-Bold.otf
futogo-b H FutoGoB101Pro-Bold.otf
futogo-b-v V FutoGoB101Pro-Bold.otf
jun101-l H Jun101Pro-Light.otf
jun101-l-v V Jun101Pro-Light.otf
ps-morisawa.map と合わせて、
OTF-Morisawa-basic7 パッケージでは、同時に
PS 漢字名(CID Font 名)の名前解決も図っています。
モリサワ、ヒラギノ、小塚 の OpenType フォント用パッケージ
モリサワ、ヒラギノ、小塚 の OpenType フォントを、
TeX 環境で比較的すぐに利用できるように、
あらかじめパッケージを用意しています。
OTF-Hiragino: 日本語 ヒラギノ OpenType フォント(基本6書体)
OTF-Kozuka: 小塚 OpenType フォント
OTF-Morisawa-basic7: 日本語 モリサワ OpenType フォント(基本7書体)
OTF-Morisawa-RmSgSmg: 日本語 モリサワ OpenType フォント
OTF-Morisawa-extras: 追加 日本語 モリサワ OpenType フォント
OTF-* パッケージのディレクトリ構成
ディレクトリ
概要
/usr/share/fonts/OpenType-*
OpenType フォントを格納します。
/usr/share/ghostscript/8.64/Resource/CIDFont
/usr/share/fonts/OpenType-* からシンボリックリンクを CIDFont 名で張ります。
/usr/share/ghostscript/8.64/Resource/Font
各 CIDFont に対するフォントスペックを格納します。
/usr/share/texmf/fonts/opentype
/usr/share/fonts/OpenType-* からシンボリックリンクを張ります。
TeX 関連パッケージの紹介
学術学会誌関連のクラスファイル
Vine Linux では、
いくつかの学術学会誌関連のクラスファイルをパッケージしています。
学術学会誌関連のクラスファイルのパッケージリスト
texmacro-his
ヒューマンインタフェース学会論文原稿作成用
texmacro-ieej
電気学会論文誌 原稿作成用
texmacro-ieice
電子情報通信学会論文原稿、技術研究報告作成用
texmacro-ipsj
情報処理学会論文原稿作成用
texmacro-jasj
日本音響学会誌(和文誌)原稿作成用
texmacro-jps
日本物理学会論文原稿作成用
Emacs と YaTeX(やてふ)
やてふは Emacs 用の TeX 入力支援ツールです。
Vine Linux 5 では、vine-default と呼ばれる
Emacs の Vine Linux デフォルト設定が導入されており、
やてふも vine-default であらかじめ設定されています。
やてふの詳細な設定は、
/usr/share/emacs-23.1/site-lisp/yatex/vine-default-yatex.el
を参照して下さい。
LyX
LyX は、文書の単純な外見による(WYSIWYG)のではなく、
文書の「構造」(WYSIWYM)に基づいた執筆手法を支援する文書プロセッサです。
グラフィカルユーザインタフェースの備わっており、
バックエンドにTeXを使っているので、
TeX に不慣れなユーザでも数式を多く含んだ文章を簡単に作成できます。
ここでは、日本語で文字組みを行うための初期設定を説明します。
[文章] -> [設定] では、「文章クラス」として
"article (Japanese New)" を選択します。
これは実際には jsarticle.cls を使う設定です。
「言語」として、"日本語" を選択する。
以上の設定をデフォルトの設定して保存しておくには、
「文章の既定値として保存」ボタンをおせばよい。
以後、新規で作成するときは、この設定が適応されます。
Asymptote
Asymptote は MetaPost を発展させたベクトルグラフィック記述言語である。
Vine Linux の asymptote パッケージは、
日本語が使えるようにあらかじめ調整されているので、
別途ユーザ側で日本語の設定を行う必要はありません。