Eu gostaria de usar oheadings
estilo de páginadelivro de memórias, mas o LaTeX reclama da falta de referências devido a algumas seções nomeadas como Proof of Theorem~\ref{theorem_label}
. Existe uma maneira de corrigir isso além de codificar o número do teorema por meio dos argumentos opcionais do \section
comando?
Atualização 1:Parece que o culpado é ohiperrefpacote. Aqui está um exemplo mínimo de trabalho; observe que \clearpage
são necessários para forçar a criação de uma página com a referência no cabeçalho, caso contrário o documento será compilado sem 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}
Ainda estou perdido, no entanto. A única coisa que encontro no manual dolivro de memóriasé esse omemhfixcpacote é necessário para corrigir incompatibilidades comhiperref, que é carregado automaticamente. No entanto, mesmo carregá-lo explicitamente não resolve o problema.
Atualização 2:O problema parece ser devido às letras maiúsculas do rótulo. De alguma formahiperrefdeturpa a \uppercaseheads
macro delivro de memórias, que é definido usando \MakeTextUppercase
decaixa de texto. Como solução alternativa, pode-se usar \nouppercaseheads
, embora pareça uma solução abaixo do ideal.
Responder1
Infelizmente, o problema é devido a um bug nohiperref. Existem pelo menos duas soluções possíveis que preservam a aparência geral do headings
estilo de página:
- Use títulos em versalete:
\nouppercaseheads % Disable automatic capitalisation
\pagestyle{headings}
\makeevenhead{headings}{\thepage}{}{\slshape\scshape\leftmark}
\makeoddhead{headings}{\slshape\scshape\rightmark}{}{\thepage}
- Conforme sugerido por @barbarabeeton nos comentários, use rótulos em letras maiúsculas onde o erro ocorre.