调整参考书目/作者和年份之间没有逗号/没有斜体字体

调整参考书目/作者和年份之间没有逗号/没有斜体字体

我其实对 APA 风格很满意,但是我需要一些帮助来实现以下两个调整:

在此处输入图片描述

我不想在作者姓名和年份之间加逗号。我根本不想要斜体字体。它出现在书名和文章期刊名称中。

这是我目前的设置

\usepackage[style=apa]{biblatex}
\addbibresource{bibliography.bib}
\DeclareDelimFormat{nameyeardelim}{\space}
\newpage
\pagenumbering{Roman}
\setcounter{page}{3}
\renewcommand*{\mkbibnamefamily}[1]{\textsc{#1}}
\renewcommand*{\newunitpunct}{\addcomma\space}
\printbibliography 

答案1

正如 Alan Munn 在评论中所说:biblatex-apa应该尽可能地实现 APA 风格biblatex。设计时并未考虑(轻松)可定制性。

举个例子:通常,你可以像说 一样轻松地去掉名称和年份之间的逗号\DeclareDelimFormat[bib]{nameyeardelim}{\addspace}。但是biblatex-apa不使用此分隔符而是使用\newunit\newblock,因此我们需要先使其使用,namyeardelim然后才能使用它来更改逗号。

您可以通过重新定义字段格式来删除斜体...title。请参阅背景信息从样式中删除引号

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[style=apa, backend=biber]{biblatex}


\renewcommand*{\newunitpunct}{\addcomma\space}

\renewcommand*{\mkbibnamefamily}[1]{\textsc{#1}}

\DeclareDelimFormat{nameyeardelim}{\addspace}
\DeclareDelimFormat[bib]{nameyeardelim}{\addspace}

\renewbibmacro*{author/editor}{%
  \ifthenelse{\ifnameundef{author}\AND\ifnameundef{groupauthor}}
    {\ifnameundef{editor}
      {\usebibmacro{title}%
        % need to clear all title fields so we don't get them again later
        \clearfield{title}%
       \clearfield{subtitle}%
       \clearfield{titleaddon}}
      {\usebibmacro{editorinauthpos}}}
    {\usebibmacro{author}}%
  \setunit{\printdelim{nameyeardelim}}%
  \usebibmacro{labelyear+extradate}}

\DeclareFieldFormat{title}{#1\isdot}
\makeatletter
\DeclareFieldFormat{origtitle}{\bbx@colon@search\MakeSentenceCase*{#1}\isdot}
\makeatother
\DeclareFieldFormat{journaltitle}{#1\isdot}
\DeclareFieldFormat{issuetitle}{#1}
\DeclareFieldFormat{maintitle}{#1}
\DeclareFieldFormat{booktitle}{#1}

\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson,cicero,worman,westfahl:space,gaonkar:in}
\printbibliography
\end{document}

相关内容