防止 TufteLatex 类的 \footnote 中的 \cite 换行

防止 TufteLatex 类的 \footnote 中的 \cite 换行

我正在使用 Tufte-Book 类(\documentclass{tufte-book}),它可用这里我的问题是,如果我在 \footnote{} 中使用命令 \cite,即

 \sidenote{Some text \cite{test} }

引文会自动放入新行。例如,如下所示

正如引用

Jon Fripp、Deborah Fripp 和 Michael Fripp。《论科学》。Newnes,第 1 版,2000 年 4 月。ISBN 9781878707512

有什么方法可以防止这种换行吗?具体来说,我希望脚注看起来像:

引自 Jon Fripp、Deborah Fripp 和 Michael Fripp。《论科学》。Newnes,第一版,2000 年 4 月。ISBN 9781878707512

答案1

这是 Tufte-LaTeX 的一个错误。Tufte-LaTeX 可以正确打印完整引文,但无法打印文内引文。

START COPYING HERE以下是演示该解决方案的示例文档。若要在您自己的文档中使用此解决方案,请复制和行之间的代码END COPYING HERE

\documentclass{tufte-handout}

%
% START COPYING HERE
%
\makeatletter
% Original definition of \cite from natbib package.
\DeclareRobustCommand\natcite{%
  \begingroup\let\NAT@ctype\z@\NAT@partrue\NAT@swatrue
    \@ifstar{\NAT@fulltrue\NAT@cites}{\NAT@fullfalse\NAT@cites}%
}

% Updated definition for Tufte-LaTeX
\renewcommand{\@tufte@infootnote@cite}[1]{%
  \natcite{#1}% <-- added this line
  \@tufte@add@citation{#1}%
}

% Only redefining this to get rid of a spurious space
\renewcommand\@tufte@add@citation[1]{\relax% adds a new bibkey to the list of cite keys
  \ifx\@tufte@citations\@empty\else
    \g@addto@macro\@tufte@citations{,}% separate by commas
  \fi
  \g@addto@macro\@tufte@citations{#1}% <-- stupid whitespace!
}
\makeatother
%
% STOP COPYING HERE
%

\usepackage{lipsum}% provides filler text

\begin{document}

Test.\sidenote{Some of my favorite books are~\cite{Tufte1990,Tufte1997,Tufte2001,Tufte2006}.}
\lipsum[1]

\bibliography{sample-handout}
\bibliographystyle{plainnat}

\end{document}

附注中的引用

相关内容