BibLaTeX:改变引用方式并替换引文中的 URL 标签

BibLaTeX:改变引用方式并替换引文中的 URL 标签

我正在使用 \parencite 并且它正在运行,但我想知道是否可以:

1 - 在作者和年份之间添加逗号。从 (World Health Organization 1986) 到 (World Health Organization, 1986)

2 - 在引用时使用首字母缩略词(或手动替换以书写任何内容),即使参考书目中没有首字母缩略词。从(世界卫生组织,1986 年)到(WHO,1986 年)

和:

3- 如何在参考书目引用中将“URL”替换为“Disponível em”。

示例:来自

“世界卫生组织(1986 年)。《渥太华健康促进宪章》。网址:blabla(于 2015 年 3 月 31 日访问)。”

“世界卫生组织(1986 年)。《渥太华健康促进宪章》。已发布:blabla(已于 2015 年 3 月 31 日访问)。

4-显示重复的作者。

代码:

\documentclass{article}
\usepackage[portuguese]{babel}
\usepackage{csquotes}
\usepackage[backend=biber,style=authoryear]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@online{WHO1,
    author = {World{\ }Health{\ }Organization},
    title = {The Ottawa Charter for Health Promotion},
    year = {1986},
    url = {http://www.who.int/healthpromotion/conferences/previous/ottawa/en/},
    urldate = {2015-03-31},
}
@online{WHO2,
    author = {World{\ }Health{\ }Organization},
    title = {The Ottawa Charter for Health Promotion},
    year = {1987},
    url = {http://www.who.int/healthpromotion/conferences/previous/ottawa/en/},
    urldate = {2015-03-31},
}
\end{filecontents}

\begin{document}

\parencite{WHO1}
...
\parencite{WHO2}

\printbibliography

\end{document}

结果:

在此处输入图片描述

期望结果:

(世界卫生组织,1986 年)... (世卫组织,1987 年)

参考文献

世界卫生组织(1986 年)。《渥太华健康促进宪章》。Disponível em: blabla(访问日期:2015 年 3 月 31 日)。

世界卫生组织(1987 年)。《渥太华健康促进宪章》。Disponível em: blabla(访问日期:2015 年 3 月 31 日)。

(我不得不使用 blabla,因为我只能使用两个链接)

答案1

要在引用标签中的名称和年份之间添加逗号:

\renewcommand\nameyeardelim{\addcomma\addspace}

要在引文中使用不同的作者姓名,请添加

shortauthor = {WHO}

到相关的参考书目条目。

如果您希望作者姓名在参考书目中重复出现,而不是在第一次出现后被替换,请传递biblatex包选项dashed=false。[感谢乔恩对于(4)的解释。

对于标签,您应该, 我思考,能够说

\DefineBibliographyStrings{portuguese}{url={Disponível em}}

然而,这似乎不起作用,而添加urlseen={been there, done that},虽然从其他方面来看是不可取的,但确实具有看似有效的优点。

因此,似乎您必须重新定义字段格式,因为此字段不使用url bibstring,而是使用\mkbibacro{URL}。一种方法是使用

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

修改后,可以使用 ,bibstring就像 之类的类似字段格式一样urlseen。但是,我不知道bibstring url在本例中 的作用是什么,所以这似乎更像是一种黑客行为,而不是正确的解决方案。

\begin{filecontents}{\jobname.bib}
@online{WHO1,
    author = {{World Health Organization}},
    shortauthor = {WHO},
    title = {The {Ottawa} Charter for Health Promotion},
    year = {1986},
    url = {http://www.who.int/healthpromotion/conferences/previous/ottawa/en/},
    urldate = {2015-03-31},
}
@online{WHO2,
    author = {{World Health Organization}},
    shortauthor = {WHO},
    title = {The {Ottawa} Charter for Health Promotion},
    year = {1987},
    url = {http://www.who.int/healthpromotion/conferences/previous/ottawa/en/},
    urldate = {2015-03-31},
}
\end{filecontents}
\documentclass[portuguese]{article}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber,style=authoryear,dashed=false]{biblatex}
\addbibresource{\jobname.bib}
\renewcommand\nameyeardelim{\addcomma\addspace}
\DefineBibliographyStrings{portuguese}{%
  url={Disponível em},
}
\DeclareFieldFormat{url}{\bibstring{url}\addcolon\space\url{#1}}
\begin{document}
\parencite{WHO1}

\parencite{WHO2}
\printbibliography
\end{document}

所以这只是部分答案。(有人提到过‘每个问题一个问题’规则吗?有助于保持网站整洁……)

3 位和 1 个 hack 的演示

答案2

我相信您想要更改键“urlseen”,该键指出,因此您应该给出的命令是:

\DefineBibliographyStrings{portuguese}{urlseen={Disponível em}}

相关内容