
Muitos livros têm cabeçalhos nos quais você pode encontrar convenientemente as notas finais e as páginas às quais elas se referem. Eles podem estar no final de cada capítulo ou no final do livro. Os cabeçalhos correntes têm o formato “Notas para pp. xx – yy” para as notas finais. Oterminaispacote permite executar cabeçalhos deste formulário para opadrão,komascript, elivro de memóriasAulas. Funcionou para mim há algum tempo com o livro de memórias, mas agora está quebrado e dá uma mensagem de erro,Estilo de página indefinido. Este mwe é interrompido quando o pacote endheads (e seus comandos de suporte) é ativado. Alguém pode sugerir o que pode ser feito ao usarlivro de memóriase aterminaispacote para fazê-lo funcionar?
\documentclass[openany,oldfontcommands]{memoir}
\usepackage{endnotes}
\usepackage{ifthen}
\usepackage{endheads} % requires oldfontcommands option for memoir class
\setupendnoteheaders
\titleinnotestrue
\setstyleforchapternotebegin{\begin{flushleft}\begin{bf}\normalsize}
\setstyleforchapternoteend{\end{bf}\end{flushleft}}
\begin{document}
\chapter{One}
\resetendnotes
\setcounter{secnumdepth}{0}
Text for chapter one with an endnote. \endnote{chp 1 fn 1}
\chapter{Two}
\resetendnotes
\setcounter{secnumdepth}{0}
This is a second endnote. It is the first endnote of chp. 2.
\endnote{chp 2 fn 1 or second fn of the book}. Here is a second endnote of chp. 2. \endnote{chp2 fn 2}
\newpage
\addcontentsline{toc}{chapter}{\protect\numberline{} \the\notescontentsname}
\theendnotes
\end{document}
Responder1
Há um bug no arquivo de estilo endheads
. Ele contém estas linhas:
\@ifclassloaded{memoir}{
\makepagestyle{endnotesstyle}
\makeevenhead{endnotesstyle}{{\small\textrm{\thepage}}}{{\small{\em \the\notesheadername~\mymarks}}}{}
\makeoddhead{endnotesstyle}{}{{\small{\em \the\notesheadername~\mymarks}}}{{\small\textrm{\thepage}}}
\makeevenfoot{}{}{}
\makeoddfoot{}{}{}
Isso está claramente errado, pois \makeevenfoot
e \makeoddfoot
usa quatro argumentos como \makeevenhead
e \makeoddhead
, sendo o primeiro o nome do estilo de página.
Não consigo entender por que isso funciona com uma versão mais antiga do livro de memórias ;-)
Para ser honesto, presumo que o bug sempre existiu, endheads
mas memoir
recentemente verifiquei se o estilo de página existe. Como o vazio é o padrão, não há muito problema se os comandos não forem executados corretamente.
De qualquer forma, você deve reportar ao mantenedor do endheads
.
Como uma solução rápida, você pode desabilitar as chamadas erradas antes \makeevenfoot
e \makeoddfoot
depois de carregar endheads
e depois chamar as corretas assim:
\let\origmakeevenfoot\makeevenfoot
\def\makeevenfoot#1#2#3{}
\let\origmakeoddfoot\makeoddfoot
\def\makeoddfoot#1#2#3{}
\usepackage{endheads} % requires oldfontcommands option for memoir class
\let\makeevenfoot\origmakeevenfoot
\let\makeoddfoot\origmakeoddfoot
\makeevenfoot{endnotesstyle}{}{}{}
\makeoddfoot{endnotesstyle}{}{}{}
Infelizmente não existe um patch mais limpo, pois as declarações são chamadas diretamente no pacote, não como parte de um comando que poderia ser corrigido.
Certifique-se de remover esta correção rápida assim que uma versão correta do pacote for lançada.
Alternativamente, você pode fazer uma cópia local do arquivo de estilo e substituir imediatamente as declarações erradas. Novamente, lembre-se de excluir a cópia local assim que uma versão fixa do estilo for lançada.
Responder2
Corrigi o bug e uma nova versão dos endheads foi enviada ao CTAN. Deve estar pronto em um ou dois dias. Obrigado a todos pela ajuda!