LaTeX内部では,章立てコマンドによって振られる章番号やenumerate環境で振られるラベルの番号などのために,いくつものカウンタが存在しています.ここではそれらのカウンタに関するコマンドについて説明します.
LaTeX内部で使用され,ユーザが参照,設定することが可能なカウンタの一覧を表に示します.これらのカウンタは半角文字列で表されます.
表:
カウンタ一覧
| 1-24-5カウンタ |
対象 | | カウンタ |
対象 |
| page |
ページ番号 | | equation |
数式番号 |
| part |
部の番号 | | footnote |
脚注番号 |
| chapter |
章番号 | | mpfootnote |
minipage環境内の脚注番号 |
| section |
節番号 | | secnumdepth |
小節番号の付番レベル |
| subsection |
小節番号 | | tocdepth |
目次の出力レベル |
| subsubsection |
小々節番号 | | figure |
図の番号 |
| paragraph |
段落番号 | | table |
表の番号 |
| subparagraph |
小段落番号 | | topnumber |
フロートのページ上端への出 |
| enumi |
enumerate環境のネスト | | |
力数の上限 |
| |
レベル1の番号 | | bottomnumber |
フロートのページ下端への出 |
| enumii |
enumerate環境のネスト | | |
力数の上限 |
| |
レベル2の番号 | | totalnumber |
1ページ中のフロートの総数 |
| enumiii |
enumerate環境のネスト | | |
の上限 |
| |
レベル3の番号 | | dbltopnumber |
2段組でのfigure*,table* |
| enumiv |
enumerate環境のネスト | | |
環境に対するページ上端へ |
| |
レベル4の番号 | | |
のフロートの出力数の上限 |
| |
| | |
|
|
カウンタには,番号を数えあげるものと一定値を保持するものの2種類があります.表で``番号''とあるものは数えあげるためのカウンタ,それ以外のものは値を保持するためのカウンタです.
カウンタには親子関係を持つものがあります.これは親カウンタが1つ増えると子カウンタがクリアされる関係にあるもので,章立てコマンドによって振られる番号やネストしたenumerate環境のラベル番号などがこれにあたります.例えばsubsectionカウンタは,それよりも1つ上のレベルのsection
カウンタを親カウンタに持つカウンタです.このため,\sectionコマンドを用いるとsubsection以下のカウンタがすべてクリアされます.章立てコマンドのとる階層構造は,このような親子関係にあるカウンタによって制御されています.\subsectionコマンドはsubsectionカウンタの番号を,\sectionコマンドはsectionカウンタの番号を出力するコマンドであるとみることもできます.
ここではカウンタを設定するためのコマンドについて説明します.
すでに用意されているカウンタの値を設定します.カウンタを設定すると,その後にそのカウンタの値を参照するときには設定値に1を加えた値が用いられます.記述方法を次に示します.
記述例を次に示します.
このように設定すると,次に\sectionコマンドを用いたときの節番号は4になります.つまり希望の値にするには1小さい値を設定します.
カウンタの出力形式は,出力形式指定コマンドによって制御できます.これを表に示します.これらのコマンドの引数のカウンタには用意されているものを指定します.
表:
カウンタの出力形式指定コマンド
|
コマンド |
出力形式 |
出力例 |
\arabic{カウンタ} |
アラビア数字 |
...,-2,-1,0,1,2,3,... |
\roman{カウンタ} |
小文字ローマ数字 |
i,ii,iii,iv,... |
\Roman{カウンタ} |
大文字ローマ数字 |
I,II,III,IV,... |
\alph{カウンタ} |
小文字アルファベット |
a,b,c,... |
\Alph{カウンタ} |
大文字アルファベット |
A,B,C,... |
\fnsymbol{カウンタ} |
脚注記号 |
 |
|
カウンタによっては使用できる数に限界がある.アルファベットを用いた場合はアルファベットの上限である26個までであり,また,脚注記号は9個までである.これらを越えるとエラーとなるので注意すること.なおアラビア数字ではマイナスの値を扱うこともできる.
カウンタの値を出力するには,カウンタの先頭に``\the''をつけたコマンドを用います.例えば出力上現在のページ番号を出力したい場合は,
\thepageのようにページカウンタを指すpageに\theをつけたコマンドを使います.\theカウンタコマンドは出力形式指定コマンドによって設定された形式(表)で数字を出力します.
\theカウンタコマンドでは,出力する文字列を変更することもできます.例えば,各ページ番号を``-- i --''のように横線をつけて出力したい場合は,次の例の1行目のように指定します.また,``I-a''のように先頭に節番号をともなった形式で出力したい場合は2行目のように指定します.このように,\theカウンタコマンドでは他のカウンタを参照できます.
\renewcommand{\thepage}{--- \roman{page} ---}
\renewcommand{\thesubsection}{\Roman{section}--\alph{subsection}}
\theカウンタコマンドは出力されるカウンタ文字列を保持しているコマンドであるとみなすことができます.
\theカウンタコマンドとは異なり,カウンタの値を長さに使ったりする場合など,ソースファイル中にその値を展開したいときには,\valueコマンドを用います.\valueコマンドは引数にカウンタを1つとります.
\setcounter{footnote}{\value{section}}
このように\valueコマンドを使うことでソースファイル内で数値を必要とする部分にカウンタの値を用いることができます.