如何配置 Latex 参考书目以完全符合开放大学引用 @online 参考文献的正确标准

问题描述 投票:0回答:1

我正在使用 Overleaf 用 LaTeX 为开放大学写一份报告。 OU 坚持在线参考的具体布局如下:

姓氏,首字母。 (年份)网页标题。可在:URL(访问:日期)。

URL 的完整块换行,并且第二行和后续换行上没有缩进,例如:

enter image description here

迄今为止我做得最好的是

姓氏,首字母。 (年份)网页标题。URL:URL(访问:日期)。

打印“URL:”而不是“可用于:”时,URL 本身采用等宽字体,第二行及后续行缩进。例如

enter image description here

这是生成该输出的可编译测试文档代码。

\documentclass{article}
\usepackage[english]{babel}
\usepackage{csquotes} 
\usepackage[style=authoryear, natbib]{biblatex} % 'backend=biber' is the default
\addbibresource{TestReferences.bib}
\usepackage{xurl}
\DefineBibliographyStrings{english}{urlseen = {Accessed:}}
\ExecuteBibliographyOptions{alldates=long}

\begin{document}

\subsection{Citation}
\citep{Hampton}
\printbibliography[heading=bibintoc,title={References}]
\end{document}

这是上面汉普顿参考示例的 TestReferences.bib 条目:

@Online{Hampton,
  author  = {{Hampton, D.L et al.}},
  year    = "2006",
  title   = {{‘An overview of the instrument suite for the deep impact mission'}},
  url     = {https://www.researchgate.net/publication/226736423_An_Overview_of_the_Instrument_Suite_for_the_Deep_Impact_Mission.},
  urldate = {2024-04-23},
}

所以我的问题是:如何进一步配置参考书目以删除缩进,将“URL:”提示更改为“可用于:”,并获取用于以与其余部分相同的字体样式打印 URL 的字体目标示例中的参考。

请注意:x-post tex.stackexchange.com/q/718641/36296

configuration latex bibliography overleaf
1个回答
0
投票

[也发布在 TeX SE 上,因为我不确定回答交叉发布问题的协议。]

请注意,您当前几乎可以肯定使用美国排版约定,包括美国英语连字符模式。我怀疑这就是 OU 想要的,所以我更改了代码以使用英国英语。如果由于某种原因 OU 想要使用美国语言 --- 或者如果您来自美国并且 OU 允许使用美式英语 --- 将

british
更改为
american
(或返回到
english
)。

这三个变化中有两个很简单。第三个并不是 Biblatex 中的错误所致。

要删除压痕,请将相关长度设置为

0pt
。如果您知道要在文档中搜索哪些术语,那么就更容易弄清楚;)。

\setlength \bibhang {0pt}

url
包用于格式化 URL。这是由
xurl
加载的。可以通过重新定义
\UrlFont
来更改字体,但我们并不真正想要这样。我们不想指定它,所以将其定义为空。

\def\UrlFont{}

请注意,文档建议使用

\def
而不是
\renewcommand
,这就是我在这里使用它的原因。

不太直接的更改是 URL 的标签。理论上,Biblatex 为 URL 之前的标签排版提供了两个字符串:

url
urlfrom

\DefineBibliographyStrings{british}{urlseen = {Accessed:},urlfrom = {Available at}}

但是,这没有任何效果。定义

url
也没有。将文档语言更改为荷兰语以尝试让 Biblatex 使用其自己的语言定义文件中的值也不起作用。

文档确认该字符串应该根据十多年前的更改进行本地化。因此,这可能是一种倒退,或者可能从未正确实施更改。无论如何,我认为你必须使用暴力来解决这个问题,并在这里覆盖 Biblatex。

\DeclareFieldFormat{url}{\bibstring{urlfrom}\addcolon\space\url{#1}}

docs, brute force and ignorance -> 3 个请求的模组

完整代码:

\begin{filecontents*}[overwrite]{\jobname.bib}
@Online{Hampton,
  author  = {{Hampton, D.L et al.}},
  year    = "2006",
  title   = {{‘An overview of the instrument suite for the deep impact mission'}},
  url     = {https://www.researchgate.net/publication/226736423_An_Overview_of_the_Instrument_Suite_for_the_Deep_Impact_Mission.},
  urldate = {2024-04-23},
}
\end{filecontents*}
\documentclass[british]{article}% seriously doubt the OU wants US hyphenation etc.
\usepackage{babel}
\usepackage{csquotes} 
\usepackage[style=authoryear,natbib]{biblatex} % 'backend=biber' is the default
\addbibresource{\jobname.bib}
\usepackage{xurl}
\DefineBibliographyStrings{british}{urlseen = {Accessed:},urlfrom = {Available at}}
\ExecuteBibliographyOptions{alldates=long}
\setlength \bibhang {0pt}
\def\UrlFont{}
\DeclareFieldFormat{url}{\bibstring{urlfrom}\addcolon\space\url{#1}}
\begin{document}

\subsection{Citation}
\citep{Hampton}
\printbibliography[heading=bibintoc,title={References}]
\end{document}

您确定 OU 需要引号和斜体吗?

© www.soinside.com 2019 - 2024. All rights reserved.