
(ЭтонетдубликатКак использовать @author, @date и @title после maketitle?)
Я понимаю, что это \maketitle
сбрасывает кучу макросов, включая \@title
, \@author
, \@date
, и \maketitle
себя самого. Я предполагаю, что для этого есть веская причина, и я хотел бы знать, какая она.
Для небольшого контекста, я пишу свой собственный класс, который переопределяет \maketitle
печать титульного листа в формате, требуемом моим университетом для диссертаций. Этот титульный лист включает некоторую информацию, например, ожидаемую степень, которую можно обрабатывать аналогично названию и автору (т. е. предоставлять макрос, \degree
который устанавливает внутренний \@degree
макрос).
Кажется, у меня есть несколько вариантов для моего переопределения \maketitle
:
- Я могу быть ленивым и не заморачиваться с перезагрузкой.
- Я мог бы имитировать стандартное поведение и сбросить настройки
\title
,\@title
... - Я мог бы пойти дальше и сбросить свои новые (аналоговые) макросы
\degree
,\@degree
, ...
До этого момента я выбирал третий вариант, но не имею ни малейшего понятия, почему. Есть ли веская причина, почему \maketitle
макросы типа \title
?
решение1
В документации article.cls
(см. classes.pdf
) говорится:
Мы сбрасываем счетчик сносок, отключаем \thanks и \maketitle и экономим место на диске, очищая внутренние информационные макросы.
Это является результатом ограничений в более ранних системах tex, где размеры пулов и другие аспекты памяти и т. д. были ограничены. Большая часть оригинального дизайна TeX содержит элементы, выбранные для оптимального использования доступного пространства. В современных настройках это почти никогда не является проблемой. Одно интересное ограничение, которое все еще существует, касается количества математических алфавитов, которые можно загрузить.