如何防止 \cite 在句子末尾以点开始新行

如何防止 \cite 在句子末尾以点开始新行

当我这样结束一句话时:

Here is something you should read \cite{name}.

有时句子的结尾与行的结尾重合。在这种情况下,下一行从句子末尾的点开始。

点睛之笔\cite

Here is something you should read.\cite{name}

解决了问题,但我查了一些科学文章,它们都把点并且\cite不会受到这种不利影响。

我怎样才能阻止点跳转到下一行?

编辑:最低限度的工作示例:

\documentclass[a4paper,11pt,twocolumn]{jarticle}
\usepackage{evocomp}

\begin{document}
----------------Here is something you should read\cite{lal}.
\end{document}

看来问题出在evocomp我使用的包上。

答案1

您粘贴的代码粘贴箱定义的内容\cite如下:

\def\@cite#1#2{{$^{\mbox{\scriptsize $#1$}}$%
    \if@tempswa , #2\fi}$^{\mbox{\scriptsize $)$}}$ }

最后一个空格,紧接着最后一个结束括号之前,得到是一个错误。它会分隔后面的标点符号,因此 LaTeX 会在那里断行。

要解决此问题,不要就地编辑样式。如果你这样做,并将你的 LaTeX 源提交给期刊,他们会使用有缺陷的样式,你的工作将化为乌有。(但一定要告诉样式的创建者有关这个错误)。你应该要做的就是将修复后的版本放在文档的序言中, \usepackage{evocomp}, 像这样:

\makeatletter
\def\@cite#1#2{{$^{\mbox{\scriptsize $#1$}}$%
    \if@tempswa , #2\fi}$^{\mbox{\scriptsize $)$}}$}
\makeatother

这样做之后,您就不再需要摆弄\hbox您的引文了——它们会按预期发挥作用。

答案2

如果您在段落中使用内联引用,则只需在文本中添加波浪符号 (~)。例如,

[YOUR TEXT]~\cite{[CITATION]}.

如果是图片或表格,你可以简单地在标题标签中放置句号。例如,

\caption{[TEXT FOR YOUR FIGURE]~\cite{[CITATION]}.}

这将使引用与文本保持一致。

相关内容