Работа в системе LaTeX

       

Кто кому подчинен в стандарте


Нам осталось выполнить свое обещание и рассказать, какие счетчики определены в LaTeX'овском стандарте и каковы отношения подчинения между ними.

В классах article и proc счетчик section определен как

\newcounter{section}

в то время как в классах report и book, в которых существуют еще и главы, определяется никому не подчиненный счетчик chapter для глав, а счетчик section определяется как подчиненный счетчику chapter:

\newcounter{chapter} \newcounter{section}[chapter]

Остальные счетчики номеров разделов определяются во всех четырех стандартных классах одинаково:

\newcounter{part} \newcounter{subsection}[section] \newcounter{subsubsection}[subsection] \newcounter{paragraph}[subsubsection] \newcounter{subparagraph}[paragraph]

Соответствующие этим счетчикам the-команды определены в классах article и proc так:

\renewcommand{\thepart}{\Roman{part}} \renewcommand{\thesection}{\arabic{section}} \renewcommand{\thesubsection}{\thesection.\arabic{subsection}} \renewcommand{\thesubsubsection}% {\thesubsection.\arabic{subsubsection}} \renewcommand{\theparagraph}% {\thesubsubsection.\arabic{paragraph}} \renewcommand{\thesubparagraph}% {\theparagraph.\arabic{subparagraph}}

(мы пишем \renewcommand, поскольку все эти the-команды уже получили какое-то определение при создании счетчиков).

В классах report и book, кроме того, определена the-команда для счетчика chapter и по-другому определена \thesection:

\renewcommand{\thechapter}{\arabic{chapter}} \renewcommand{\thesection}% {\thechapter.\arabic{section}}

За нумерацию сносок отвечает счетчик footnote. В классах article} и proc этот счетчик определяется как никому не подчиненный:

\newcounter{footnote}

В классах же report и book этот счетчик подчинен счетчику chapter, так как в них присутствует еще и команда

\@addtoreset{footnote}{chapter}

В таком же положении, как счетчик footnote, находится и отвечающий за нумерацию формул счетчик equation: в классах article и proc он определен как никому не подчиненный, а в классах report и book он подчинен счетчику chapter.
Однако же в классах report и book переопределяется \theequation:

\renewcommand{\theequation}{\thechapter.\arabic{equation}} Наконец, счетчики figure и table, отвечающие за нумерацию плавающих иллюстраций и таблиц соответственно, устроены точно так же, как счетчик equation: в классах article и proc они никому не подчинены, а в двух других стандартных классах они подчинены счетчику chapter и соответствующие the-команды определены как

\renewcommand{\thefigure}% {\thechapter.\arabic{figure}} (аналогично для table).

Остались еще счетчики, связанные с нумерованными перечнями. Как объяснялось в лекции 7, эти счетчики, в зависимости от уровня вложенности enumerate, называются enumi, enumii, enumiii и enumiv. Все эти счетчики, естественно, последовательно подчинены друг другу, а их ссылочные префиксы определены так (это — единственный случай, когда в стандарте используются нетривиальные ссылочные префиксы):

\renewcommand{\p@enumii}{\theenumi} \renewcommand{\p@enumiii}{\theenumi(\theenumii)} \renewcommand{\p@enumiv}{\p@enumiii\theenumiii}

Содержание раздела