参考书目中的行太长,不是 URL,需要换行

参考书目中的行太长,不是 URL,需要换行

我正在尝试解决这个问题。第一个参考文献有一个奇怪的“页码”。不幸的是,它超出了页面的边缘。我宁愿在那之前发生分页。我能找到的所有提示都只与 URL 相关地讨论了这个问题。不幸的是,我没有任何解决方法。

问题。

这是我的 MWE。我添加了包showframe来强调这个问题:

\documentclass{scrartcl} 

\RequirePackage{filecontents}
\begin{filecontents}{ref.bib}
    @article{Lehmann.2018,
        author = {Lehmann, Diana and McFarland, Robert},
        year = {2018},
        pages = {232640981775296},
        pagination = {page},
        volume = {6},
        number = {1},
        doi = {10.1177/2326409817752960},
        journal = {J. Inborn Errors Metab. Screening}
    }
    @article{Kunze.2004,
        author = {Kunze, Brigitte and Jansen, Rolf and Höfle, Gerhard and Reichenbach, Hans},
        year = {2004},
        pages = {151--155},
        pagination = {page},
        volume = {57},
        number = {2},
        doi = {10.7164/antibiotics.57.151},
        journal = {J. Antibiot.}
    }
\end{filecontents}

\usepackage[backend=biber, style=chem-angew]{biblatex}
\addbibresource{ref.bib}

\usepackage{showframe}

\begin{document}
    \cite{*}
    \printbibliography[heading=bibnumbered]
\end{document}

附言:我已向 SAGE 出版社核实:

[...]
我如何引用你们《先天性代谢错误与筛查》杂志上的一篇论文?
这是关于https://doi.org/10.1177/2326409817752960并且没有页码范围。
我的参考书目工具会创建类似“D. Lehmann, R. McFarland,J. 先天性代谢缺陷筛查 20186,232640981775296。”坦白说,这看起来很糟糕。
[...]

我得到的答案是

感谢您联系 SAGE 出版社。
我已向 SAGE 出版社的编辑部进行了核实。先天性代谢缺陷与筛查杂志。SAGE
出版编辑回复说,您列出的引文是正确的。

答案1

尽管 SAGE 出版社坚持认为,我还是怀疑

D. Lehmann、R. McFarland、J. 先天性代谢缺陷筛查 2018,6,232640981775296。

在这里是一个特别有用的引用。

232640981775296在 DOI 重定向到的文章登录页面上,神秘数字并未出现在任何地方(https://doi.org/10.1177/2326409817752960),但 DOI 本身除外。可下载的 PDF 版本的文章也是如此。它甚至不在volume概述/目录页面上https://journals.sagepub.com/toc/iema/6因此,除非知道它是 DOI 的一部分(10.1177/2326409817752960),否则该编号对于识别文章几乎没有用处。

在我看来,将裸露的数字 232640981775296 包含在参考书目中是不明智的。提供完整的 DOI 会更有用。事实上,如果你点击引用文章页面上的按钮均不建议使用 APA、芝加哥、MLA 或“哈佛”风格的现成引用打印裸编号,而是全部包含 DOI。

仅当以机器可读格式(RIS,BibTeX等)下载引用数据时,神秘数字才会发挥作用:据推测开发人员认为页码是这些数据格式的要求,并试图在此处包含一些有用的东西。

评估他们对建议引用的反应会很有趣

D. Lehmann、R. McFarland、J. 先天性代谢缺陷筛查 2018,6,DOI: 10.1177/2326409817752960

或者

D. Lehmann、R. McFarland、J. 先天性代谢缺陷筛查 2018,6.

与带有神秘号码的那个相比。后者可能比较棘手,因为没有提到标题。


page因此,我的建议是,在这种特定情况下,根本不要包含字段,而只提供有用的 DOI。在这种情况下,Indeedbiblatex-chemchem-angew样式将打印 DOI,而不像给出字段的情况pages。(我不确定这是否 100% 符合应用化学风格,但无论如何,这是一种非常非常明智的行为。

\documentclass{scrartcl}

\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Lehmann.2018,
  author  = {Lehmann, Diana and McFarland, Robert},
  year    = {2018},
  volume  = {6},
  doi     = {10.1177/2326409817752960},
  journal = {J. Inborn Errors Metab. Screening},
}
@article{Kunze.2004,
  author  = {Kunze, Brigitte and Jansen, Rolf and Höfle, Gerhard and Reichenbach, Hans},
  year    = {2004},
  pages   = {151--155},
  volume  = {57},
  number  = {2},
  doi     = {10.7164/antibiotics.57.151},
  journal = {J. Antibiot.}
}
\end{filecontents}

\usepackage[backend=biber, style=chem-angew]{biblatex}
\addbibresource{\jobname.bib}

\usepackage{showframe}

\begin{document}
\nocite{*}
\printbibliography[heading=bibnumbered]
\end{document}

pagination = {page},是默认的,因此可以删除。)

D. Lehmann、R. McFarland、J. Inborn Errors Metab. Screening 2018, 6, DOI 10.1177/2326409817752960。//B. Kunze、R. Jansen、G. Höfle、H. Reichenbach、J. Antibiot。2004, 57, 151–155。


但现在要回答提出的问题。

以下解决方案适用\seqsplit于从seqsplit包中断开长数字(参见将非常大的数字拆分成多行换行不包含空格的长行) 如果@article条目设置了条目选项splitpages

通常我会使用eid像这样的“页码”字段,但chem-angew不支持eid,所以我回到了pages.可以对(在我看来更可取的)字段进行类似的操作eid

\documentclass{scrartcl}

\usepackage[backend=biber, style=chem-angew]{biblatex}

\usepackage{seqsplit}

\newtoggle{bbx:splitpages}
\DeclareEntryOption[boolean]{splitpages}[true]{%
  \settoggle{bbx:splitpages}{#1}}
\DeclareFieldFormat[article]{pages}{%
  \iftoggle{bbx:splitpages}
    {\seqsplit{#1}}
    {\iftoggle{bbx:pageranges}
       {#1}
       {\mkfirstpage{#1}}}}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{Lehmann.2018,
  author  = {Lehmann, Diana and McFarland, Robert},
  year    = {2018},
  volume  = {6},
  pages   = {232640981775296},
  journal = {J. Inborn Errors Metab. Screening},
  options = {splitpages}
}
@article{Kunze.2004,
  author  = {Kunze, Brigitte and Jansen, Rolf and Höfle, Gerhard and Reichenbach, Hans},
  year    = {2004},
  pages   = {151--155},
  volume  = {57},
  number  = {2},
  doi     = {10.7164/antibiotics.57.151},
  journal = {J. Antibiot.}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\usepackage{showframe}

\begin{document}
\nocite{*}
\printbibliography[heading=bibnumbered]
\end{document}

D. Lehmann、R. McFarland、J. Inborn Errors Metab. Screening 2018, 6, 23264098//1775296.////B. Kunze、R. Jansen、G. Höfle、H. Reichenbach、J. Antibiot. 2004, 57, 151–155。

答案2

我有个主意。有点儿老套,但我认为是合理的。打破这种字符串通常是 的工作url,但是,我们没有 吗\nolinkurl?除此之外,我还添加了一个execute字段来处理那里的字体,还必须设置biburlnumpenalty

\documentclass{scrartcl}

\RequirePackage{filecontents}
\begin{filecontents}{ref.bib}
  @article{Lehmann.2018,
    author = {Lehmann, Diana and McFarland, Robert},
    year = {2018},
    pages = {\nolinkurl{232640981775296}},
    pagination = {page},
    volume = {6},
    number = {1},
    doi = {10.1177/2326409817752960},
    journal = {J. Inborn Errors Metab. Screening},
    execute = {\urlstyle{same}}
  }
  @article{Kunze.2004,
    author = {Kunze, Brigitte and Jansen, Rolf and Höfle, Gerhard and Reichenbach, Hans},
    year = {2004},
    pages = {151--155},
    pagination = {page},
    volume = {57},
    number = {2},
    doi = {10.7164/antibiotics.57.151},
    journal = {J. Antibiot.}
  }
\end{filecontents}

\usepackage[backend=biber, style=chem-angew]{biblatex}
\addbibresource{ref.bib}

\setcounter{biburlnumpenalty}{9000}

\usepackage{showframe}

\begin{document}
\nocite{*}
\printbibliography[heading=bibnumbered]
\end{document}

在此处输入图片描述

我不会自己这样做,我宁愿省略这个数字,并在必要时提供正确的 DOI。但如果你想坚持编辑们所说的,这似乎是一个合理的方法。

答案3

据我访问该期刊后所见,一期中的所有文章都有独立的页码,并且都从第 1 页开始。

因此页码信息无关紧要(而 DOI 则重要)。导出的 BibTeX 代码中的条目错误地将 DOI 报告为页码,但这是完全错误的,可能是用于导出数据的软件中的错误。

如果我选择以 BibTeX 样式导出,

@article{doi:10.1177/2326409817752960,
author = {Diana Lehmann and Robert McFarland},
title ={Overview of Approaches to Mitochondrial Disease Therapy},
journal = {Journal of Inborn Errors of Metabolism and Screening},
volume = {6},
number = {},
pages = {2326409817752960},
year = {2018},
doi = {10.1177/2326409817752960},

URL = { 
        https://doi.org/10.1177/2326409817752960

},
eprint = { 
        https://doi.org/10.1177/2326409817752960

}
,
    abstract = { Mitochondrial respiratory chain diseases [...] }
}

(完整报告,除了与当前问题无关的摘要字段)。相反,建议使用哈佛风格的引用方式是

Lehmann, D. 和 McFarland, R. (2018)《线粒体疾病治疗方法概述》,先天性代谢缺陷与筛查杂志.doi: 10.1177/2326409817752960。

在此处输入图片描述

并且没有页码信息。

相关内容