LATEXには目次を作成する機能がある.本文中に,\tableofcontents
コマンドを記述すると,記述した位置に目次が作成される.目次を作成するには最低2回のLATEX処理が必要である.
\documentclass{jarticle}
\begin{document}
\tableofcontents
\part{\LaTeX の高度な使い方}
\section{文書処理システム}
\subsection{相互参照}
\subsection{目次}
\end{document}
\part
,\section
,\subsection
の章節番号と表題がtocファイルに書き込まれる.目次に登録されるのはカウンタtocdepthに設定されている値よりも小さなレベルを持つ章立てコマンドである.
jarticleドキュメントクラスでのカウンタtocdepthの標準の設定値は3である.
\tableofcontents
コマンドがソースファイル中に記述されていると,1回目のLATEX処理の際に目次情報がtocファイルに格納される.このtocファイルは\end{document}
まで処理が進んだ段階で作られる.したがって,1回目のLATEX処理の際には,読み込むべきtocファイルは存在していないので,空の目次が作成されることになる.そして2回目のLATEX処理で文書中の\tableofcontents
コマンドでtocファイルが読み込まれ,目次情報が出力される.
目次が何もない場合とある場合とでは,目次の分量によって目次自体のページ数が異なることがある.このような場合,目次ページより後ろのページ番号がずれることになり,1回目の処理で作成された各章節のページ番号も正しいものではなくなってしまうことがある.これを正しいページ番号にするためには,さらにもう1度,3回目のLATEX処理を行い,ページ番号の正しいtocファイルを読み込んでやればよい.
このようなページ番号のずれを避けるためにpagenumberingコマンド で目次でのページ出力と本文のページ出力を変えるという方法もある.
\listoffigures
コマンドで作られる図目次や\list
oftables
コマンドで作られる表目次がある.それぞれ\tableofcontents
コマンドと同じように用いればよい.
また文書中で\addcontentsline
コマンドや\addtocontents
コマンドを用いて細かい項目の追加ができる.さらに目次出力が希望に沿っていない場合は直接tocファイルを変更することも可能である.ただしtocファイルを書き換えるのは文書がすべて完成してからにし,変更したtocファイルが変更されないように,プリアンブルに\nofiles
コマンドを記述する必要がある.