自定义 biblatex 作者年份 书目

自定义 biblatex 作者年份 书目

我正在尝试定制 biblatex authoryear 风格。

在脚注中我只需要注明姓氏、年份和页码。在参考书目中我需要用粗体重复这个简短的参考文献,然后给出完整的参考文献。

请参阅附图(上面是脚注,下面是参考书目中的完整参考文献)。

有人能解释一下如何让它工作吗?

在此处输入图片描述

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{filecontents}
\usepackage{xpatch}
\usepackage{textcomp}

\begin{filecontents}{\jobname.bib}
@book{rosati13,
 author = {E. Rosati},
  year = {2013},
  title = {Originality in EU Copyright: Full Harmonization through Case Law},
  address   = {Cheltenham},
  publisher = {Edward Elgar},
}

@article{rosati14,
  author = {E. Rosati},
  year = {2014},
  title = {Copyright in the EU: in search of (in)flexibilities},
  journal = {Journal of Intellectual Property Law \& Practice},
  number = {7},
  pages   = {585-598},
}
\end{filecontents}

\begin{document}

\cite[8]{rosati13}

\cite[585]{rosati14}

\printbibliography

\setlength{\parindent}{0pt}The references need to look like this:\\

\setlength{\parindent}{0pt}\textbf{Rosati 2013}\\
E. Rosati, \textit{Originality in EU Copyright: Full Harmonization through Case Law}, Cheltenham: Edward Elgar 2014.\\

\textbf{Rosati 2014}\\
E. Rosati, `Copyright in the EU: in search of (in)flexibilities', \textit{Journal of Intellectual Property Law \& Practice} 2014, issue 7, p. 585-598.

\end{document}

答案1

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\addbibresource{\jobname.bib}
\usepackage{filecontents}
\usepackage{xpatch}
\usepackage{textcomp}

\begin{filecontents}{\jobname.bib}
    @book{rosati13,
        author = {E. Rosati},
        year = {2013},
        title = {Originality in EU Copyright: Full Harmonization through Case Law},
        address   = {Cheltenham},
        publisher = {Edward Elgar},
    }

    @article{rosati14,
        author = {E. Rosati},
        year = {2014},
        title = {Copyright in the EU: in search of (in)flexibilities},
        journal = {Journal of Intellectual Property Law \& Practice},
        number = {7},
        pages   = {585-598},
    }
\end{filecontents}

\setlength{\bibhang}{0pt}
\setlength{\bibitemsep}{\baselineskip}

\renewbibmacro*{author}{%
    \textbf{\usebibmacro{cite}}\par%
    \printnames{author}
}


\begin{document}

    \cite[8]{rosati13}

    \cite[585]{rosati14}



    \printbibliography

    \setlength{\parindent}{0pt}The references need to look like this:\\

    \setlength{\parindent}{0pt}\textbf{Rosati 2013}\\
    E. Rosati, \textit{Originality in EU Copyright: Full Harmonization through Case Law}, Cheltenham: Edward Elgar 2014.\\

    \textbf{Rosati 2014}\\
    E. Rosati, `Copyright in the EU: in search of (in)flexibilities', \textit{Journal of Intellectual Property Law \& Practice} 2014, issue 7, p. 585-598.

\end{document}

在此处输入图片描述

答案2

我会选择一种变体步调一致的回答在参考书目条目开头添加 [AuthorYear] 块

\DeclareNameAlias{sortname}{given-family}

\newcounter{mymaxcitenames}
\AtBeginDocument{%
  \setcounter{mymaxcitenames}{\value{maxnames}}%
}

\renewbibmacro*{begentry}{%
  \printtext[bold]{%
    \begingroup
    \defcounter{maxnames}{\value{mymaxcitenames}}%
    \printnames{labelname}%
    \setunit{\printdelim{nameyeardelim}}%
    \usebibmacro{cite:labelyear+extrayear}%
    \endgroup
    }%
  \newline
}

您需要加载biblatex选项style=authoryear,bibstyle=authortitle,dashed=false,sorting=nyt,以便您的参考书目具有作者-标题格式,年份在末尾,并具有正确的顺序

\usepackage[style=authoryear,bibstyle=authortitle,dashed=false,sorting=nyt]{biblatex}

其他细节可以通过

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

\renewbibmacro{in:}{%
  \ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}

\DeclareFieldFormat[article,periodical]{number}{\bibstring{number}~#1}

\renewbibmacro*{journal+issuetitle}{%
  \usebibmacro{journal}%
  \setunit*{\addspace}%
  \iffieldundef{series}
    {}
    {\newunit
     \printfield{series}%
     \setunit{\addspace}}%
  \usebibmacro{issue+date}%
  \setunit{\addcolon\space}%
  \usebibmacro{issue}%
  \setunit{\addcomma\space}%
  \usebibmacro{volume+number+eid}%
  \setunit{\addspace}%
  \newunit}

\renewbibmacro*{volume+number+eid}{%
  \printfield{volume}%
  \setunit*{\addcomma\space}%
  \printfield{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}}

\renewbibmacro*{issue+date}{%
  \iffieldundef{issue}
    {\usebibmacro{date}}
    {\printfield{issue}%
     \setunit*{\addspace}%
     \usebibmacro{date}}%
  \newunit}

\DefineBibliographyStrings{english}{number = {issue}}

in:代码来自哪里抑制“In:” biblatex

平均能量损失

\documentclass{article}
\usepackage[british]{babel}
\usepackage{csquotes}
\usepackage[style=authoryear,bibstyle=authortitle,dashed=false,sorting=nyt]{biblatex}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{rosati13,
 author = {E. Rosati},
  year = {2013},
  title = {Originality in EU Copyright: Full Harmonization through Case Law},
  address   = {Cheltenham},
  publisher = {Edward Elgar},
}

@article{rosati14,
  author = {E. Rosati},
  year = {2014},
  title = {Copyright in the EU: in search of (in)flexibilities},
  journal = {Journal of Intellectual Property Law \& Practice},
  number = {7},
  pages   = {585-598},
}
\end{filecontents}
\addbibresource{\jobname.bib}

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

\renewbibmacro{in:}{%
  \ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}

\DeclareFieldFormat[article,periodical]{number}{\bibstring{number}~#1}

\renewbibmacro*{journal+issuetitle}{%
  \usebibmacro{journal}%
  \setunit*{\addspace}%
  \iffieldundef{series}
    {}
    {\newunit
     \printfield{series}%
     \setunit{\addspace}}%
  \usebibmacro{issue+date}%
  \setunit{\addcolon\space}%
  \usebibmacro{issue}%
  \setunit{\addcomma\space}%
  \usebibmacro{volume+number+eid}%
  \setunit{\addspace}%
  \newunit}

\renewbibmacro*{volume+number+eid}{%
  \printfield{volume}%
  \setunit*{\addcomma\space}%
  \printfield{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}}

\renewbibmacro*{issue+date}{%
  \iffieldundef{issue}
    {\usebibmacro{date}}
    {\printfield{issue}%
     \setunit*{\addspace}%
     \usebibmacro{date}}%
  \newunit}

\DefineBibliographyStrings{english}{number = {issue}}

\DeclareNameAlias{sortname}{given-family}

\newcounter{mymaxcitenames}
\AtBeginDocument{%
  \setcounter{mymaxcitenames}{\value{maxnames}}%
}

\renewbibmacro*{begentry}{%
  \printtext[bold]{%
    \begingroup
    \defcounter{maxnames}{\value{mymaxcitenames}}%
    \printnames{labelname}%
    \setunit{\printdelim{nameyeardelim}}%
    \usebibmacro{cite:labelyear+extrayear}%
    \endgroup
    }%
  \newline
}

\begin{document}
\cite{rosati13,rosati14}

\printbibliography

\setlength{\parindent}{0pt}The references need to look like this:\\

\setlength{\parindent}{0pt}\textbf{Rosati 2013}\\
E. Rosati, \textit{Originality in EU Copyright: Full Harmonization through Case Law}, Cheltenham: Edward Elgar 2014.\\

\textbf{Rosati 2014}\\
E. Rosati, `Copyright in the EU: in search of (in)flexibilities', \textit{Journal of Intellectual Property Law \& Practice} 2014, issue 7, p. 585-598.
\end{document}

示例输出

相关内容