将参考书目缩减为一行

将参考书目缩减为一行

问题简单,希望可以快速回答。我正在写一篇论文,篇幅有限(2 页),需要参考文献,但不必太好看。我希望 LaTeX 压缩我的参考书目,使其尽可能少地包含在几行中。

我有这个(除了,你知道的,更长的实际书籍和文章):

[1] Book 1
[2] Article 1
[3] Book 2
[4] Book 3
[5] Article 2

我想要这个:

[1] Book 1 [2] Article 1 [3] Book 2 [4] Book 3 [5] Article 2

编辑:我没有使用任何特殊的书目包,我的文档类是文章。

编辑2:这是我的 bbl 文件:

\begin{thebibliography}{1}

\bibitem{kutsenok}
A.~Kutsenok.
\newblock Swarm {AI}: {A} {G}eneral-{P}urpose {S}warm {I}ntelligence
  {T}echnique.
\newblock
  \small{\url{http://mysite.ncnetwork.net/resqlap4/sitebuildercontent/sitebuil%
derfiles/SwarmAI-Short05.pdf}}.

\bibitem{shoham}
Y.~Shoham and K.~Leyton-Brown.
\newblock {\em Multiagent Systems: Algorithmic, Game-Theoretic, and Logical
  Foundations}.
\newblock Cambridge University Press, 2008.

\bibitem{wooldridge}
M.~Wooldridge.
\newblock {\em An Introduction to MultiAgent Systems}.
\newblock John Wiley \& Sons Ltd, 2002.

\end{thebibliography}

答案1

由于您没有说明您正在使用哪个文档类别或参考书目包,因此我将给您一个一般性的答案。

此类参考书目使用编号列表。paralist包提供了这样的段落内列表:您可以使用inparaenum环境来paralist获取段落内没有换行符的编号项目。

例如,通过文章这两个重新定义可以实现这一点:

\renewenvironment{thebibliography}[1]{%
  \section*{\refname}\inparaenum[{[}1{]}]}{\endinparaenum}
\renewcommand{\bibitem}[1]{\item}

那么参考书目将如下所示:

替代文本

的更多功能paralist可用于定制。

编辑:这是一个使用您的示例 bbl 文件展示它的最小示例。请注意,我还\par暂时禁用了它,因为 bbl 文件包含空行。

\documentclass{article}
\usepackage{paralist}
\renewenvironment{thebibliography}[1]{%
  \section*{\refname}%
  \let\par\relax\let\newblock\relax%
  \inparaenum[{[}1{]}]}{\endinparaenum}
\renewcommand{\bibitem}[1]{\item}
\usepackage{url}
\begin{document}
\nocite{*}
\bibliography{testbib}
\end{document}

输出:

替代文本

答案2

原始海报没有使用“特殊书目包”,但为了完整起见,这里有一个使用的解决方案比布拉特克斯. (请注意, 的重新定义\defbibenvironment旨在用于数字书目样式。对于字母样式,请参见 alphabetic.bbx 中的原始定义并进行相应更改;对于没有标签的样式,将\defbibenvironment我的代码示例中的 的第三个参数替换为\addspace。)

\documentclass{article}

\usepackage{biblatex}

\defbibenvironment{bibliography}
  {}
  {}
  {\addspace
   \printtext[labelnumberwidth]{%
     \printfield{prefixnumber}%
     \printfield{labelnumber}}%
   \addhighpenspace}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@misc{A01,
  author = {Author, A.},
  year = {2001},
  title = {Alpha},
}

@misc{B02,
  author = {Buthor, B.},
  year = {2002},
  title = {Bravo},
}

@misc{C03,
  author = {Cuthor, C.},
  year = {2003},
  title = {Charlie},
}
\end{filecontents}

\bibliography{\jobname}

\begin{document}

\nocite{*}

\printbibliography

\end{document}

(filecontents 环境仅用于将一些外部文件直接包含到示例中,以便进行编译。对于解决方案来说,它不是必需的。)

编辑:由于不鼓励标签后的换行符,我将第二个\addspace换行符替换为\addhighpenspace

相关内容