另一个书目风格的问题

另一个书目风格的问题

(我希望我的问题没有重复)

我有这个示例文件:

\documentclass[a4paper]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}


\usepackage{polyglossia}

\setdefaultlanguage{italian}
\usepackage[backend=biber]{biblatex}

\addbibresource{bibliografia.bib}
\begin{document}
\section{Sezione}
Questo è un test.\nocite{Zarlino1558}   

\printbibliography

\end{document}

我的 bibliografia.bib 包含:

@Book{Zarlino1558,
  Title                    = {L'istitutioni harmoniche},
  Author                   = {Zarlino, Gioseffo},
  Publisher                = {Francesco de' Franceschi},
  Year                     = {1558},
  Address                  = {Venezia},
}

我明白了:

[1] 吉奥塞福·扎利诺.和声制度。威尼斯:Francesco de' Franceschi,1558 年。

我需要这个:

\textsc{Gioseffo Zarlino},\textit{L'istitutioni harmoniche},威尼斯,Francesco de' Franceschi,1558 年。

我的序言中应该写些什么?

非常感谢你的帮助。

答案1

这是一个简单的解决方案,带有以下xpatch软件包:

\documentclass[a4paper]{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{ebgaramond}
\usepackage{filecontents}
\begin{filecontents}{bibliografia.bib}
@Book{Zarlino1558,
Title = {L'istitutioni harmoniche},
Author = {Zarlino, Gioseffo},
Publisher = {Francesco de' Franceschi},
Year = {1558},
Address = {Venezia},
}
\end{filecontents}


\usepackage{polyglossia}

\setdefaultlanguage{italian}
\usepackage[backend=biber, style=authortitle, sorting=nyt]{biblatex}
\usepackage{xpatch}
\let\mkbibnamelast\textsc%
\let\mkbibnamefirst\textsc%
\let\mkbibnameprefix\textsc%
\let\mkbibnameaffix\textsc
\renewcommand*{\newunitpunct}{\addcomma\space}
\xpatchbibmacro{publisher+location+date}{\setunit*{\addcolon\space}}%
{\setunit*{\addcomma\space}}{}{}
\DeclareNameAlias{sortname}{first-last}

\addbibresource{bibliografia.bib}

\begin{document}
\section{Sezione}
Questo è un test.\nocite{Zarlino1558}

\printbibliography

\end{document} 

在此处输入图片描述

答案2

  • 您需要设置\DeclareFieldFormat*{title}{\textit{#1}}使标题变为斜体。

如果您只是想改变的外观book,您可以使用 \DeclareFieldFormat[book]{title}{\textit{#1}}

  • 对于键之间的逗号,您需要添加\renewcommand*{\newunitpunct}{\addcomma\space}

  • 对于使用小写字母的作者,请更新 bibcommandsmkbibnamelastmkbibnamefirst \renewcommand*{\mkbibnamelast}[1]{\textsc{#1}} \renewcommand*{\mkbibnamefirst}[1]{\textsc{#1}}

完整代码:

\documentclass[a4paper]{scrartcl}


\begin{filecontents*}{bibliografia.bib}
@Book{Zarlino1558,
  Title                    = {L'istitutioni harmoniche},
  Author                   = {Zarlino, Gioseffo},
  Publisher                = {Francesco de' Franceschi},
  Year                     = {1558},
  Address                  = {Venezia},
}
\end{filecontents*}

\usepackage{polyglossia}
\setmainlanguage{italian}

\usepackage[backend=biber]{biblatex}
\DeclareFieldFormat*{title}{\textit{#1}}
\renewcommand*{\newunitpunct}{\addcomma\space}

\renewcommand*{\mkbibnamelast}[1]{\textsc{#1}}
\renewcommand*{\mkbibnamefirst}[1]{\textsc{#1}}

\addbibresource{bibliografia.bib}
\begin{document}
\section{Sezione}
Questo è un test.\nocite{Zarlino1558}   

\printbibliography

\end{document}

相关内容