我想将参考书目缩小到一行或一个段落,一旦我\putbib[<mybibfile>]
使用bibunit
包裹。相关帖子为全球书目环境提供了一种潜在的方法。事实上,\renewenvironment{thebibliography}
在加载之前添加该帖子中建议的natbib
,bibunit
对我来说没有任何效果。如果我在natbib
或之后执行此操作bibunit
,编译会因几个错误而停止。有什么建议吗?我指定我正在使用BibTeX
和编译PDFLateX
或“XeLateX”,因为不幸的是,这是一个我无法修改的工作应用程序的预设类。
特别是我的设置现在看起来如下:
\documentclass{<my_doc_class>} %my_doc_class is a child of 'article'
\usepackage{mathtools}
\usepackage[francais,english]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc} %% For ISO-latin1 chars (accented letters).
\usepackage{txfonts} % Use Times, Helvetica fonts
\usepackage{graphicx} % For the Inria logo and other figures
\parindent 0pt
\usepackage[cm]{fullpage} % Use the entire page (1.5 cm margins everywhere)
%-----------------------
% GENERAL SETTINGS
%-----------------------
\usepackage{paralist}
\usepackage{enumitem}
%-----------------------
% BIBLIOGRAPHY
%-----------------------
\renewenvironment{thebibliography}[1]{%
\section*{\refname}\inparaenum[{[}1{]}]}{\endinparaenum}
\renewcommand{\bibitem}[1]{\item}
\usepackage[numbers,super,sort,compress]{natbib}
\usepackage[subsectionbib]{bibunits}
\usepackage{hyperref}
\usepackage{doi}
\begin{document}
\bibliographyunit[\section]
\defaultbibliographystyle{naturemag_doi}
...
...
\section{Contribution~1}
\vspace{1em}
\subsection{\BiLingual{Description de la contribution}{ / }{Description of the contribution}}
<some text with several \citep{...} commands>
...
...
\putbib[mybib_file]
\section{Contribution~2}
<some text with several \citep{...} commands>
...
...
\putbib[mybib_file]
...
...
\end{document}
每个命令\putbib
将打印每个部分的“参考书目”,如下所示:
[1] Ref. 1
[2] Ref. 2
[3] Ref. 3
...
...
相反,由于我正在处理的文档的空间限制,我希望将每个参考书目都作为
[1] Ref. 1 [2] Ref. 2 [3] Ref. 3 ...
bst文件naturemag_doi
是我初步编写的一些自定义书目样式makebst
。这里并不重要。您可以考虑其他标准 natbib 样式,apalike
如果它更容易找到解决方案。
答案1
好吧,过了一会儿,我终于想出了biblatex
更好的处理方法。所以在序言中,我声明:
\usepackage[backend=bibtex,
maxnames = 3,
firstinits=false,
uniquename=init,
autocite=superscript,
style=nature,
articletitle=false,
natbib=true]{biblatex}
% Add BIB files
\addbibresource{my_publications.bib}
\addbibresource{my_resstat.bib}
% Define environment for single-line bibliography in the subsection
\defbibenvironment{oneline}
{}
{}
{\addspace
\printtext[labelnumberwidth]{%
\printfield{prefixnumber}%
\printfield{labelnumber}}%
\addhighpenspace}
这将自动使每个部分/小节中的参考书目集中到一行或一段中。严格地说,这不是我最初问题的答案,而是一种变通方法。尽管如此,我最终biblatex
在这种情况下改用这种方法的原因是,除了这里发布的这个之外,我还需要对我的参考书目进行一些微调,正如这里很好地解释的那样这里,并且在biblatex
手动的,定制书目所带来的优势值得花费最初的额外时间来弄清楚如何使其发挥作用biblatex
。natbib