Следующий MWE демонстрирует плохое взаимодействие между endfloat
и titleps
. На второй странице слово FIGURES написано заглавными буквами как в верхнем, так и в нижнем колонтитуле, что противоречит спецификации стиля страницы.
\documentclass[12pt]{article}
\usepackage[heads,nolists]{endfloat}
\usepackage[pagestyles]{titlesec}
\newpagestyle{main}{
\sethead{}{}{\thepage}
\setfoot{}{}{}
}
\begin{document}
\pagestyle{main}
\section{Foo}
\section*{Bar}
\begin{figure}
Blurf
\end{figure}
\end{document}
biblatex
также затрагивается: в этом случае REFERENCES появляется как в нижнем, так и в верхнем колонтитуле.
\begin{filecontents*}{\jobname.bib}
@book{Saussure1995,
Title = {Cours de Linguistique Générale},
Publisher = {Payot},
Year = {1995},
Author = {Ferdinand de Saussure},
}
\end{filecontents*}
\documentclass{article}
\usepackage{kantlipsum}
\usepackage[style=authoryear]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{titleps}
\newpagestyle{main}{
\setfoot{My footer}{}{\thepage}
}
\pagestyle{main}
\begin{document}
\cite{Saussure1995}
\kant[1-2]
\printbibliography
\end{document}
Я отследил это endfloat
и biblatex
внутренне использовал \mark
команды. В частности, проблема исчезает, если я переопределяю, \markboth
чтобы ничего не делать (все еще потребляя два аргумента). Хотя я не чувствую себя в особой безопасности, делая это. По крайней мере, я хотел бы знать, нужно ли что-то еще обрабатывать так же, и что может сломаться.
В документации titleps предупреждается, что «использование \markboth
может привести к непредсказуемым результатам», но это досадная отговорка, когда речь идет о документированном интерфейсе, который пакеты считают возможным использовать.
Предложения?
решение1
Добавьте следующие строки в преамбулу.
\makeatletter
\let\ttl@titlemarks\relax
\makeatother
Тогда два примера будут работать. Это также помогло вНастройка заголовка titleps в индексе для включения текущей записи индекса.
решение2
Не ответ, но слишком длинно для комментария.
Если и как \markboth
команды обрабатываются, это одна часть вопроса. Но в примере pagestyle, кроме номера страницы, пуст и поэтому не должен показывать содержимое команд маркировки. Это явно ошибка, и о ней следует сообщить автору titleps. Простой пример для демонстрации проблемы:
\documentclass[12pt]{article}
\usepackage{titleps}
\newpagestyle{main}{
\sethead{}{}{}
\setfoot{}{}{}
}
\begin{document}
\pagestyle{main}
\mark{abc}
blub
\end{document}
В верхнем и нижнем колонтитулах печатается «bc».