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

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


Первый из приемов, о которых пойдет речь, связан с отношением подчинения между счетчиками. Мы знаем, что при создании счетчика с помощью команды \newcounter можно задать и счетчик, которому он будет "подчинен". Но как быть, если уже существует никому не подчиненный счетчик, а мы хотим его кому-то подчинить? Например, за нумерацию сносок отвечает счетчик footnote; в стиле article этот счетчик определяется как никому не подчиненный, благодаря чему нумерация сносок выходит сплошной в пределах всего документа. Если мы хотим, чтоб нумерация сносок начиналась заново в каждом разделе, то можно в стилевом пакете написать так:

\@addtoreset{footnote}{section}

Первый аргумент команды \@addtoreset — имя подчиняемого счетчика, второй — имя подчиняющего.

Разумеется, для того чтобы осмысленно применять описанную команду, надо знать, какие счетчики определены в стандартных стилях и кому они подчинены (или не подчинены). Эта информация содержится в конце раздела.

При ознакомлении с командой \@addtoreset может возникнуть искушение написать

\@addtoreset{footnote}{page}

чтобы сноски нумеровались заново на каждой странице. К сожалению, по TeXническим причинам это может не дать желаемого результата: если сноски оказываются на нескольких страницах подряд, то может случиться так, что на второй из этих страниц нумерация сносок начнется не с

.

Типичный случай использования команды \@addtoreset возникает, если класс документа — article. В этом случае часто пишут

\@addtoreset{equation}{section}

чтобы нумерация уравнений была не сплошной, как предусмотрено стандартом, а начиналась заново в каждом разделе. Разумеется, в этом случае надо будет переопределить команду \theequation.

Если вы подключили пакет {amsmath}, то эту операцию можно осуществить и попросту в преамбуле документа: команда \numberwithin, принимающая в точности те же аргументы, что и \@addtoreset, осуществляет подчинение счетчика и к тому же переопределяет соответствующим образом the-команду.



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