如何防止带有论点的引用出现换行?

如何防止带有论点的引用出现换行?

例如,如果我引用带有附加参数的参考书目项目,\cite[p.~6]{bib_item}则可能会在自动插入的参数之前出现换行符,例如:

文字文字文字[4,

第 6 页]

或者

文本文本文本[5,第 11 页-

13]

有没有什么办法可以防止这种情况发生?

答案1

假设您不使用任何重新定义\cite和朋友的软件包,这里有一个解决方案。(Andrey Vihrov 关于\mboxes的评论\sloppy仍然适用。)

\documentclass[11pt]{article}

\makeatletter
% \def\@cite#1#2{[{#1\if@tempswa , #2\fi}]}% OLD
\def\@cite#1#2{[{#1\if@tempswa ,~#2\fi}]}% NEW
\makeatother

\begin{document}

Some text that is just long enough to create an unwanted line break \cite[p.~99]{test}.

\begin{thebibliography}{9}
\bibitem{test} A bibitem.
\end{thebibliography}

\end{document}

编辑:在 的定义\penalty\@m\中用替换。~\@cite

相关内容