LaTeX でヘッダーやフッターに柱やページノンブルを配置する。

一般的な書籍では、各ページの上部や下部にそのページが属する章や節の情報(節番号+節題など)が記載されることがよくあります。この部分をヘッダーやフッターと呼びます。上部がヘッダー(header)で下部が(footer)となります。この部分にはまた、ページ番号も記載されます。日本の印刷業界では、ページ番号のことをノンブル(nombre フランス語で数のこと)ということが多いです。これらについては次のような慣習があります。
・ノンブルは、見開き2ページのうち前のページが偶数で後のページが奇数。
(横書きの書籍で右に読み進めるものでは見開き左が偶数ページで右が奇数ページ、縦書き書籍で左に読み進めるものでは見開き右が偶数ページで左が奇数ページ)
・両ページに柱を出す場合は、偶数ページに大構造、奇数ページに小構造を記載する。
(章題と節題としたり、書名と章題としたり)
・分量が短い節や章があるために、ひとつのページに複数の章見出しや節見出しがあるとき、大構造の柱はページ最後のものを拾い、小構造の柱はページ内最初のものを拾って記載する。

この、「ページ内に複数存在する節見出しから最初のものを拾う」という動作は、次のように TeX の「マーク」と呼ばれる機構を利用して実現されます。TeX には、組版する文章の任意の場所に印刷されない文字列を埋め込む機能があり、埋め込まれた文字列はマークと呼ばれます。各ページに埋め込まれたマークは、ページが組み上げられる毎に呼び出されるページ出力ルーチン中で参照できるので、例えば章見出しの場所で \mark{第1章 はじめに} のように指定してマークとして章題を埋め込んでおき、ページ出力ルーチン中でその章題を読みだして柱に配置したりできるわけです。ただし、ページに複数のマークがあっても参照できるのはそのページ中で最初に埋め込まれたマークと最後に埋め込まれたマークおよび前のページの最後のマークだけです。それぞれ、\firstmark,\botmark,\topmark によって参照できます。LaTeX では、マークとして \mark{{題1章 はじめに}{第1節 はじめにのはじめ}} のように章と節の情報をそれぞれブレイスで括ったものをふたつまとめて一つのマークとして埋め込んでおき、ページ出力ルーチンで章柱を記載するときは \botmark のふたつのブレイスのひとつ目を取り出し、節柱を記載するときは \firstmark のひとつのブレイスのふたつ目を取り出すようになっています。これらに関係するユーザーマクロは次の通りです。

\markboth{A}{B}  「{A}{B}」という文字列をマークとして埋め込む。多くの文書クラスでは、章見出しのところで \markboth{章題}{} として実行される。
\markright{C} それまでに埋め込まれた最新のマークが「{A}{B}」だとすると{A}を引き継いで「{A}{C}」というマークを埋め込む。多くの文書クラスでは、節見出しのところで \markright{節題} として実行される。
\leftmark ページに「{A}{B}」「{C}{D}」「{E}{F}」の三つのマークが順に埋め込まれているとすると、ページ出力ルーチン中で \leftmark が E に置き換えられる。多くの文書クラスでは、偶数ページのヘッダ内で呼び出される。
\rightmark ページに「{A}{B}」「{C}{D}」「{E}{F}」の三つのマークが順に埋め込まれているとすると、ページ出力ルーチン中で \rightmark が B に置き換えられる。多くの文書クラスでは、奇数ページのヘッダ内で呼び出される。

このマクロの名称に含まれる left および right は、上に挙げた横書き書籍の慣習に固定化された用法と思われます。見開き左ページに章柱、右ページに節柱を置く場合に、節柱の内容を埋め込むことは右ページの柱を指定することになるので \markright、右ページの柱に記載するのは小構造の見出しなので \rightmark にはページ内最初のマークから取り出すことも織り込み済みです。「慣習通りの横書き書籍」でない場合には、これらのマクロの名称と見開きページの左右との関係が直感的ではなくなりますので、注意が必要です。

ヘッダーとフッター

ヘッダーやフッターはマクロとして定義されたものが使われます。

奇数ページのヘッダー \@oddhead
奇数ページのフッター \@oddfoot
偶数ページのヘッダー \@evenhead
偶数ページのフッター \@evenfoot

プリアンブルで直接定義し直すこともできるし、
\pagestyle 命令で間接的に定義することもできます。

例えば、\pagestyle{empty} とするとヘッダーやフッターは4つともマクロとして {} と同じように定義し直されるので、ヘッダーやフッターに何も表示されなくなります。また、例えば、
\def\@oddhead{\rightmark\hfil\thepage}
とすると、奇数ページのヘッダーがの左端(横書きの場合ノド側)に節題が記載され、右端にノンブルが記載されます(一般的な文書クラスを使っている場合)。
ヘッダーやフッターは板面幅一杯に組まれます。その中の配置の調整にはいくらでも広がる空白として \hfil が使えます。また、ノンブルを表す \thepage もよく使われます。これら以外の通常の文字列なども使えます。
定義例
\def\@oddfoot{\hfil- \thepage\ -\hfil}% 中央にハイフンで挟んだノンブルを表示
\def\@evenhead{\thepage\qquad\leftmark\hfil}% 偶数ページにノンブル+クワタ2つ分の空白+章柱の全体を左に寄せて記載