修改 Biblatex,使引用显示为(作者,年份:pagenos)

修改 Biblatex,使引用显示为(作者,年份:pagenos)

我真的很难找到一种方法来修改 biblatex authoryear,以便它以这种修改后的 Harvard 风格出现。如果任何解决方案将来可以帮助其他人,这就是 Sage Journals 请求的风格。

我想要的是:(作者,年份:页码)。Biblatex 作者年份通常会产生类似这样的结果:(作者年份,页码)。页码指的是引用文献中包含参考资料的页码。

以下是 bibtex 参考示例以及我希望它如何出现:

    @book{Varshney:2003tn,
    author = {Varshney, Ashutosh},
    title = {{Ethnic Conflict and Civic Life}},
    publisher = {Yale University Press},
    year = {2003},
    series = {Hindus and Muslims in India},
    isbn = {9780300100136},
    language = {English},
    date-modified = {2012-12-14T03:45:28GMT}}

文内引用:

    Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua (Varshney, 2003: 83-85).

参考书目条目:

    Varshney, Ashutosh. (2003) *Ethnic Conflict and Civic Life: Hindus and Muslims in India*. Yale University Press.

任何帮助深表感谢!

编辑:包含一个例子!

答案1

一般来说,参见自定义 biblatex 样式的指南。在您的具体示例中,不要在文件中将“english”大写.bib

\documentclass{article}

\usepackage[english]{babel}

\usepackage[style=authoryear,isbn=false]{biblatex}

\renewcommand*{\nameyeardelim}{\addcomma\space}
\renewcommand*{\postnotedelim}{\addcolon\space}
\DeclareFieldFormat{postnote}{#1}
\DeclareFieldFormat{multipostnote}{#1}

\usepackage{xpatch}
\xpretobibmacro{date+extrayear}{\addperiod\space}{}{}
\xapptobibmacro{date+extrayear}{\nopunct}{}{}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
    @book{Varshney:2003tn,
    author = {Varshney, Ashutosh},
    title = {{Ethnic Conflict and Civic Life}},
    publisher = {Yale University Press},
    year = {2003},
    series = {Hindus and Muslims in India},
    isbn = {9780300100136},
    language = {english},
    date-modified = {2012-12-14T03:45:28GMT},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}

Some text \autocite[83--85]{Varshney:2003tn}.

\printbibliography

\end{document}

在此处输入图片描述

注意:我没有修改该series字段的格式;在您的“书目条目”片段中,“印度的印度教徒和穆斯林”(斜体,冒号在前面)类似于副标题,而不是系列标题。

相关内容