Livrar-se da limitação do nteorema em relação às notas de rodapé nas notas do teorema

Livrar-se da limitação do nteorema em relação às notas de rodapé nas notas do teorema

Conforme mostrado pelo MWE a seguir, as notas de rodapé nas notas dos teoremas funcionam bem para amsthmos teoremas de ':

\documentclass{article}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem}[Foo\footnote{Bar.}]
Baz.
\end{theorem}
\end{document}

mas, como mostrado pelo seguinte MNNÓS e de acordo comesta resposta, não para ntheoremos teoremas de onde os textos das notas de rodapé são perdidos e o truque \footnotemark/ \footnotetexté necessário:

\documentclass{article}
\usepackage{ntheorem}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem}[Foo\footnote{Bar.}]
Baz.
\end{theorem}
\begin{theorem}[Foo\footnotemark]
  \footnotetext{Bar.}
Baz.
\end{theorem}
\end{document}

Embora possa não ser uma prática muito boa colocar notas de rodapé nos argumentos opcionais do teorema, pode ser útil em alguns casos, por exemplo, para citações em notas de rodapé como no seguinte MWE:

\documentclass{article}
\usepackage{amsthm}
% \usepackage{ntheorem}
\usepackage[backend=biber,style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}
\newtheorem{theorem}{Theorem}
\begin{document}
\begin{theorem}[\citeauthor{knuth:ct}\footcite{knuth:ct}]
Baz.
\end{theorem}
\printbibliography
\end{document}

Por alguns motivos, continuo ntheoreme não posso alterá-lo para amsthm. Alguma esperança de uma solução alternativa para esta ntheoremlimitação?

Responder1

Basta carregar o footnotepacote e, graças ao seu \makesavenoteenvcomando, solicitar os ntheoremteoremas ( 's) para tratar corretamente as notas de rodapé:

\documentclass{article}
\usepackage{ntheorem}
\usepackage{footnote}
\usepackage[backend=biber,style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}
\newtheorem{theorem}{Theorem}
\newtheorem{lemma}{Lemma}
\makesavenoteenv{theorem}
\makesavenoteenv{lemma}
\begin{document}
\begin{theorem}[\citeauthor{knuth:ct}\footcite{knuth:ct}]
Baz.
\end{theorem}
\begin{lemma}[\citeauthor{knuth:ct}\footcite{knuth:ct}]
Baz.
\end{lemma}
\printbibliography
\end{document}

informação relacionada