LaTeX入門 / 最初の例 / 簡単な数式 (1) / 簡単な数式 (2) / 各種パッケージの利用 / レポート / HTML と LaTeX の比較 / 複雑な数式 / 図表 / 図表の配置 / 相互参照とリンク / 文献引用 / 索引作成 / LaTeX マクロの作成 / スライドの作り方(jsarticle 編) / 応用的な使い方 / 発展編


各種パッケージの利用

LaTeX の機能を拡張したり,新たな機能を追加したりするために用いるのが「パッケージ」です。 既に TeX 入門では,簡単な数式(1) で amsmath, amssymb という数学用パッケージや newtxtext, newtxmath という Times 系フォント用パッケージを紹介しました。 他にも多数の便利なパッケージがありますので,目的別パッケージ簡易リファレンスを覗いてみてください。

この項では,LaTeX におけるパッケージとは何か,あるいはそれらの利用法について説明します。

パッケージの使用例

例えば,多段組みを実現するために “multicol” というパッケージを利用するなら次のように記述します。

\documentclass{jsarticle}
\usepackage{multicol}
\begin{document}
ここは一段組み。
\begin{multicols}{3}
ここは三段組み。
でも三段組みにするためにはもっと長い例文が必要なので,意味も無いことをここにだらだら書き連ねています。
このくらい書けば三段に分かれて組み上げられるでしょうか?
\end{multicols}
\end{document}

このファイルのプリアンブル*1にある “\usepackage{multicol}” というのが,multicol パッケージを読み込む指示です。 multicol パッケージには multicols という環境の定義が書かれているので,本文中で “\begin{multicols}{3}” のようにして三段組みの機能を使用することができるのです。

パッケージファイルの実体(ファイルの種類)

パッケージは,具体的には以下のようなファイルから成ります。

sty ファイル
パッケージファイルの拡張子は “.sty” です。実体(の主要部分)はテキストファイルで,いろいろなコマンドの定義が書かれています。
sty ファイル以外のファイル
パッケージによっては sty ファイルのみからなるとは限らず,他のファイルを必要とするものもあります。例えば,後の図表で登場する graphicx パッケージの場合,“ドライバ指定” に応じた def ファイルも用いられます。非標準のフォントを利用するためのパッケージの場合には,タイプセット時に tfm/jfm ファイルや fd ファイルも用いられ,さらに出力時に dviware に応じた map ファイルも用いられることでしょう。

パッケージファイルの場所

LaTeX システムを一式インストールした場合は,標準的なパッケージも既に入っています。 C:\texlive\2018\texmf-dist\tex\latex のようなフォルダーや,そのサブフォルダーを探してみてください。

上記の multicol.sty であればコマンドラインから

kpsewhich multicol.sty

を実行すると

のように表示されて multicol.sty の場所がわかります。 お使いのコンピュータの中の,LaTeX が見つけることのできる場所にパッケージファイルが置いてあれば,上記の “\usepackage” コマンドによって読み込むことができます。 \usepackage は,ファイルの拡張子は省いてあっても拡張子 .sty のファイルを読み込みます。

パッケージの入手,インストール

手元にないパッケージは外部から入手してインストールすることができます。 世界中に公開されているパッケージは CTAN サーバーからダウンロードできます。 あるいは,パッケージ作成者の方が個人のウェブサイトからダウンロードできるようにしているものもあります。 とはいえ,TeX Live の場合は相当数のパッケージがデフォルトでインストールされますし,最近は W32TeX でも通常の用途には十分なほどのパッケージが含まれるようになりました。 このため,新たにパッケージを手作業でインストールする必要は以前に比べて少なくなりました。

何か使いたい機能があって Web で検索し、「hoge というパッケージを使ってください」と書かれていたら、まずは

\usepackage{hoge}

と書いてみましょう。 Web 上のあちこちで紹介されるような有名なパッケージであれば、たいていの場合は既にインストールされていますので、これで使えるようになります。 仮に

! LaTeX Error: File `hoge.sty' not found.

というエラーが発生したら、残念ながらパッケージがまだインストールされていないことを表します。 以下は追加でパッケージをインストールする必要が生じた場合に読めば結構ですので,いま必要ない場合はページ最上部の見出しから次の項目へお進みください。

ここでは,「sty ファイルと説明文書のみ」などの簡単なパッケージ例を挙げてそのインストール法を説明します。 フォント関連のパッケージなどはいろいろなファイルを適切に配置する必要がありますので,その場合は TeX のディレクトリ構成 を参照してください。

パッケージのインストール(sty ファイルが用意されている場合)

パッケージ本体(sty ファイル)が用意されていれば,LaTeX が見つけられる場所*2に sty ファイルを配置すれば完了です(説明文書が付属している場合は,これも配置するとよいでしょう)。

% 編集途中。TeX Live にも W32TeX にも含まれていない,sty と説明の pdf を配布している実例を挙げると良さそう。なにかあるでしょうか。

パッケージのインストール(sty ファイルが用意されていない場合)

パッケージ本体である sty ファイルが用意されておらず,代わりに dtx や ins といったファイルが用意されていることがあります。 この場合,dtx ファイルと ins ファイルによって本体を生成するというもう一手間が必要になります。

あとは sty ファイルが用意されている場合と同様に,一連の配置作業を行いましょう。

% 編集途中。TeX Live にも W32TeX にも含まれていない,dtx と ins はあって sty がないという実例を挙げると良さそう。なにかあるでしょうか。

% 以下に,従来書かれていた内容をそのまま残します。

ダウンロードするファイル

パッケージ本体のファイル(“.sty”)だけでなく関連する他のファイルも一式あった方が良いでしょう。 それぞれ用意されていたり用意されていなかったりします。

readme.txt など
ダウンロードする前に読むべき説明書。ファイル名は “Read me.(=私を読んで)” ということ
.sty
パッケージ本体
.dtx
パッケージ本体と説明文書を合わせたもの
.ins
dtx ファイルから,パッケージ本体である sty ファイルを生成するためのもの
.pdf
説明文書(PDF 形式)
.doc
説明文書(txt 形式。“doc”という拡張子であっても Microsoft Word の文書であることは稀で,単なるテキストファイル)

関連のあるパッケージ群をひとまとめにして配布している場合などは,一つの dtx ファイルから複数のそれぞれ異なる名前の sty ファイルを生成することもあります。 目当ての sty ファイルが無い場合には,他の名前の dtx ファイルや ins ファイルを LaTeX で処理する必要があるかもしれません。 例えば,multicol.sty を生成するためには multicol.dtx および tools.ins が必要となります。

インストール

パッケージ本体である sty ファイルがあれば,それを LaTeX が見つけることのできる場所に保存すればインストールは完了です(注:下記「一覧表の更新 (mktexlsr) について」を参照)。

パッケージ本体である sty ファイルが無い場合には,他のファイルから生成します。 dtx ファイルと ins ファイルを同じフォルダーに保存した上で,LaTeX に ins ファイルを処理させます。 例えば multicol.sty を生成するにはコマンドラインから

latex tools.ins

を実行します。 tools.ins には,multicol.dtx を読み込んで multicol.sty を生成するような指示が書いてあるので,そのとおりに sty ファイルが生成されます。 このときに,説明文書や使用方法を示すサンプル文書が一緒に生成されることもあります。 無事に sty ファイルが生成されたら,それを LaTeX が見つけることのできる場所に保存すればインストールは完了です(注:下記「mktexlsr について」を参照)。

ファイル群は TDS (TeX Directory Structure) に従って各ディレクトリに入れないと,本体が使用不可だったり,texdoc コマンドで説明文書が読めなかったりします。 慣れないと,これが一番やっかいなところです。 LaTeX パッケージの場合,以下のように配置します:

詳細は TeX のディレクトリ構成 を参照してください。

dtx ファイルから説明文書を生成することもできます。 そのためには単に dtx ファイルを LaTeX で処理すればよいのです。 例えば multicol パッケージの説明文書が欲しければ

latex multicol.dtx

を実行します。 すると,通常の TeX 文書を処理したときと同様に multicol.dvi という dvi ファイルが生成されます。 これが説明文書です。

一覧表の更新 (mktexlsr) について

LaTeX がファイルを読み込むときは TeX のディレクトリの中から目当てのファイルを探しますが,ファイルを探すのはそれなりの時間がかかります。 そこで考え出されたのが「あらかじめファイルの一覧表を作っておき,ファイルを探すときにはそれを参照する」という仕組みで,この一覧表 (ls-R) を作るコマンドが mktexlsr です。 手元のシステムでこの一覧表を利用しているかどうかは,ls-R というファイルが存在するかどうかを調べるとわかります。

もっとパッケージを知りたい方へ

このようなパッケージファイルは自分で作ることもできますし,他人が作ったものをダウンロードすることもできます。 自分で作った場合は世界中に配布してもよいでしょう。 パッケージという項目に,パッケージの作り方・カスタマイズ法をまとめてあります。


*1 \documentclass と \begin{document} に挟まれた部分のことを「プリアンブル」といいます。この用語は覚えておきましょう。
*2 配置場所は “厳密にここでなければならない” という規則はなく,LaTeX が見つけられさえすればよいです。ただ,管理のしやすさや将来的に TeX をアップデートする可能性などを考えると,ある程度の規則に従って配置したほうが(長期的に見て)わかりやすくなります。

Last-modified: 2018-03-25 (日) 01:09:48 (260d)