Me gustaría usar elheadings
estilo de páginadememoria, pero LaTeX se queja de que faltan referencias debido a algunas secciones con nombres como Proof of Theorem~\ref{theorem_label}
. ¿Hay alguna forma de solucionar este problema además de codificar el número del teorema mediante los argumentos opcionales del \section
comando?
Actualización 1:Parece que el culpable es elhiperreferenciapaquete. A continuación se muestra un ejemplo práctico mínimo; tenga en cuenta que \clearpage
son necesarios para forzar la creación de una página con la referencia en el encabezado, ya que de lo contrario el documento se compila sin problemas.
\documentclass{memoir}
\usepackage{amsthm}
\usepackage{hyperref}
\theoremstyle{plain}
\newtheorem{theorem}{Theorem}
\pagestyle{headings}
\begin{document}
\chapter{A theorem}
\begin{theorem}
\label{thm:fermat}
There are no non-trivial integer solutions to $x^n + y^n = z^n$ for $n > 2$.
\end{theorem}
\clearpage
\section{Proof of Theorem~\ref{thm:fermat}}
\clearpage
See Wiles.
\end{document}
Aunque todavía estoy perdido. Lo único que puedo encontrar en el manual dememoriaes que elmemhfixcEl paquete es necesario para solucionar incompatibilidades conhiperreferencia, que se carga automáticamente. Sin embargo, incluso cargarlo explícitamente no soluciona el problema.
Actualización 2:El problema parece deberse a las mayúsculas de la etiqueta. De alguna manerahiperreferenciadestroza la \uppercaseheads
macro dememoria, que se define usando \MakeTextUppercase
desdecaso de texto. Como solución alternativa, se puede utilizar \nouppercaseheads
, aunque parece una solución subóptima.
Respuesta1
Desafortunadamente, el problema se debe a un error enhiperreferencia. Hay al menos dos posibles soluciones que preservan la sensación general del headings
estilo de página:
- Utilice títulos en minúscula:
\nouppercaseheads % Disable automatic capitalisation
\pagestyle{headings}
\makeevenhead{headings}{\thepage}{}{\slshape\scshape\leftmark}
\makeoddhead{headings}{\slshape\scshape\rightmark}{}{\thepage}
- Como sugiere @barbarabeeton en los comentarios, utilice etiquetas en mayúsculas donde se produzca el error.