在定理或定义陈述中引用特定引文

在定理或定义陈述中引用特定引文

假设我想写一个我称之为 \cite{fr82} 的来源的定义 1.1。我可以\cite[Definition 1.1]{fr82}毫无困难地写,我可以写

\begin{defn}[\cite{fr82}]
blah blah
\end{defn}

没有任何麻烦。然而,当我写

\begin{defn}[\cite[Definition 1.1]{fr82}] blah blah
blah blah
\end{defn}

我收到以下错误:

Runaway argument?
Definition 1.1)
! Paragraph ended before \@citex was complete.
<to be read again> 
                   \par 
l.488 \begin{defn}[\cite[Definition 1.1]
                                        {fr82}]\label{defn:geom_fib}
I suspect you've forgotten a `}', causing me to apply this
control sequence to too much text. How can we recover?
My plan is to forget the whole thing and hope for the best

有什么办法可以修复此问题吗?

答案1

您需要将环境可选参数的内容括defn在花括号中。

在此处输入图片描述

\documentclass{article}

\usepackage{amsthm}
\theoremstyle{definition}
\newtheorem{defn}{Definition}

\usepackage[authoryear]{natbib}
\begin{document}

\begin{defn}[{\citealt[Definition 1.1]{sm82}}] 
Blah blah blah blah.
\end{defn}

\begin{thebibliography}{9}
\bibitem[Smith(1982)]{sm82} Smith, J., 1982, \dots
\end{thebibliography}
\end{document} 

相关内容