정리 노트의 각주에 관한 ntheorem의 제한 제거

정리 노트의 각주에 관한 ntheorem의 제한 제거

다음 MWE에서 볼 수 있듯이 정리 노트의 각주는 amsthm'정리'에 잘 작동합니다.

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

그러나 다음 M에서 볼 수 있듯이N우리에 따르면이 답변ntheorem, 각주 텍스트가 손실되고 \footnotemark/ \footnotetext트릭이 필요한 의 정리에는 적용되지 않습니다 .

\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}

정리 선택적 인수에 각주를 넣는 것은 그다지 좋은 습관이 아닐 수 있지만, 다음 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}

어떤 이유로 인해 나는 계속해서 ntheorem이를 변경할 수 없습니다 amsthm. 이 제한 사항에 대한 해결 방법이 있습니까 ntheorem?

답변1

footnote패키지를 로드하고 해당 명령 덕분에 각주를 올바르게 처리하기 위한 \makesavenoteenv( 's) 정리를 요청하는 것으로 충분합니다 .ntheorem

\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}

관련 정보