使用多文献包时在参考书目中包含 DOI 字段

使用多文献包时在参考书目中包含 DOI 字段

我是 Latex 新手,我使用了.bib 文件。一切都很好,除了实体末尾multibib package没有。bib 文件中的所有实体都已归档,我使用和DOIDOIurlunsrtieeetr在参考书目子部分中这个帖子doi package在 Latex 中包含multibib会导致错误Option clash for package hyperref. \begin{document},我不明白为什么?我还想出了biblatex.cfg通过doi=true向该文件添加行来编辑的想法,但它也不起作用(我不知道我是否以正确的方式做了)。我使用 x64 版本的MiKTeX 2.9和。我想要一些可以在 PDF 中将 DOI 添加到我的 bib 实体末尾的东西,并自动为 bib 文件中的 doi 字段添加超链接,例如BibTex和样式。TexStudio 2.6.6\newcommand*{\doi}[1]{\href{http://dx.doi.org/#1}{doi: #1}}unsrtieeetr

正如评论中提到的那样,我提供了以下论文的最少样本:

文件:Ref.bib

@article{a1,
 author             = {Author1},
 title              = {Title1},
 journal            = {Journal1},
 issn               = {xxxx-yyyy},
 year               = {2013},
 volume             = {TR},
 number             = {3},
 pages              = {52-144},
 doi                = {10.10.1038/nphys1170},
 url                = {http://dx.doi.org/10.10.1038/nphys1170}
}

@article{a2,
 author             = {Author2},
 title              = {Title2},
 journal            = {Journal2},
 issn               = {xxxx-yyyy},
 year               = {2012},
 volume             = {k-8},
 number             = {6},
 pages              = {12-17},
 doi                = {10.1002/0470841559.ch1},
 url                = {http://dx.doi.org/10.1002/0470841559.ch1}
}

@inproceedings{c1, 
 author             = {Author3},
 title              = {Title3},
 booktitle          = {proceedings1},
 year               = {2012},
 pages              = {578-584},
 numpages           = {3},
 doi                = {10.1594/PANGAEA.726855},
 url                = {http://dx.doi.org/10.1594/PANGAEA.726855}
}

文件:test.tex

\documentclass[]{article}

\title{Title Here}
\author{Name Here}

\usepackage{multibib}
\newcites{Articles,Proceedings}{{Journal Papers},{Conference Papers}}

\begin{document}
\maketitle

\begin{abstract}
This is the minimal abstract ever.
\end{abstract}

\section{Introduction}
Introduction here.

\section{References}
\nociteArticles{a1,a2}
\bibliographystyleArticles{unsrt}
\bibliographyArticles{Ref}

\nociteProceedings{c1}
\bibliographystyleProceedings{ieeetr}
\bibliographyProceedings{Ref}

\end{document}

我希望这能有所帮助。

感谢致敬。

答案1

正如@MarcoDaniel 在评论中指出的那样,参考书目样式unsrtieeetr都相当古老。事实上,自 1986 年左右以来,这两种书目样式都没有进行过实质性的更新,即很久之前任何人都可以想到在参考文献中使用数字对象标识符 (dois) 和 URL。因此,这两种样式无法识别名为doi和 的字段,这并不令人意外url。如果 BibTeX 样式不了解某些字段,则规则是忽略它们的内容。

我建议您考虑使用unsrtnatIEEEtran书目样式。前者样式可识别doiurl字段;后者仅识别字段url,但不doi识别字段。根据您的格式需求,您可能希望将doi字段名称重命名为note并将 doi 字段的内容装入\url{...}包装器中 — 至少对于那些将使用IEEEtranbib 样式处理的条目。为了增加稳定性,我建议您使用natbib选项加载包numbers

相关内容