我花了几个小时研究但未能找到可行的解决方案。
我需要 [Gadatsch, 2017] 而不是 [1]
我使用我学校的模板:
%% hgbbib.sty
%% Bibliography Setup
%% This file is part of the Hagenberg Thesis package for creating bachelors's and masters's theses
%% Author: Wilhelm Burger ([email protected])
%% GitHub: https://github.com/Digital-Media/HagenbergThesis
%% File encoding: ASCII
\ProvidesPackage{hgbbib}[2018/10/14]
\usepackage{csquotes} % recommended for biblatex
%Note: biblatex with bibtex backend is frozen at version 1.7.
\usepackage[style=numeric-comp,backend=biber,bibencoding=auto]{biblatex}
%\usepackage[backend=biber, style=authoryear, firstinits, mergedate=false, maxcitenames=3, maxbibnames=999]{biblatex}
\ExecuteBibliographyOptions{
bibwarn=true,
sortcites=true,
defernumbers=true,
isbn=false,
doi=false,
backref=false}
%% titles of reference section + 3 categories of references:
\newcommand{\@bibtitle}{Quellenverzeichnis}
\newcommand{\@bibtitleLiteratur}{Literatur}
\newcommand{\@bibtitleAvmedia}{Audiovisuelle Medien}
\newcommand{\@bibtitleOnline}{Online-Quellen}
\newcommand{\@bibtitleSoftware}{Software}
\ifthenelse{\equal{\hgb@MainLanguage}{english}}{%
\renewcommand{\@bibtitle}{References}
\renewcommand{\@bibtitleLiteratur}{Literature}
\renewcommand{\@bibtitleAvmedia}{Audio-visual media}
\renewcommand{\@bibtitleOnline}{Online sources}
\renewcommand{\@bibtitleSoftware}{Software}
}{}
%% categories for a split bibliography (order of declaration is important!)
\DeclareBibliographyCategory{literature}
\DeclareBibliographyCategory{avmedia}
\DeclareBibliographyCategory{software}
\DeclareBibliographyCategory{online}
%% headings for the bibliography categories
\defbibheading{literature}{%
\phantomsection%
\section*{\@bibtitleLiteratur}%
\addcontentsline{toc}{section}{\@bibtitleLiteratur}%
}
\defbibheading{avmedia}{%
\pagebreak[3]%
\phantomsection%
\section*{\@bibtitleAvmedia}%
\addcontentsline{toc}{section}{\@bibtitleAvmedia}%
}
\defbibheading{online}{%
\pagebreak[3]%
\phantomsection%
\section*{\@bibtitleOnline}%
\addcontentsline{toc}{section}{\@bibtitleOnline}%
}
\defbibheading{software}{%
\pagebreak[3]%
\phantomsection%
\section*{\@bibtitleSoftware}%
\addcontentsline{toc}{section}{\@bibtitleSoftware}%
}
\defbibheading{noheader}[]{} % 'none' should be defined but isn't
%Assign a given bibliography entry to one of the defined categories.
\newcommand{\@AssignToBibCategory}[1]% argument 1: entry key
{\ifthenelse{%
\ifentrytype{online}\OR
\ifentrytype{www}}
{\addtocategory{online}{#1}}%
{\ifthenelse{%
\ifentrytype{movie}\OR
\ifentrytype{video}\OR
\ifentrytype{music}\OR
\ifentrytype{audio}\OR
\ifentrytype{image}}
{\addtocategory{avmedia}{#1}}%
{\ifthenelse{%
\ifentrytype{software}\OR
\ifentrytype{electronic}}
{\addtocategory{software}{#1}}%
{\addtocategory{literature}{#1}}% else (default)
}}}
%Hook provided by biblatex.
\AtEveryCitekey{\@AssignToBibCategory{\thefield{entrykey}}}
%This is only a wrapper to \addbibresource to allow the use
%of the classic bibtex-workflow in the future.
\newcommand{\AddBibFile}[1]{
\addbibresource{#1}%
}
%See http://www.jr-x.de/publikationen/latex/tipps/zeilenumbruch.html
\newenvironment{bibhyphenation}%
{\hyphenpenalty=2% (default 50)
\tolerance=9999% (default 200)
\exhyphenpenalty=2% (default 50)
\linepenalty=1% (default 10)
\setlength{\emergencystretch}{3em}%
% allow URL hyphenation at any character (definitions in biblatex.def)
\setcounter{biburlnumpenalty}{1}%
\setcounter{biburlucpenalty}{1}%
\setcounter{biburllcpenalty}{1}%
\biburlsetup}%
{}
% Currently the only public macro:
% \MakeBibliography ... creates a reference section split subsections (default)
% \MakeBibliography[nosplit] ... creates a one-piece reference section
\newcommand{\MakeBibliography}[1][]{
% opt. arg (#1): optional argument "nosplit" to get a 1-piece bibliography
%\clearpage
\ifthenelse{\equal{#1}{nosplit}}%
{% create a single bibliography with all entries:
\printbibheading[heading=bibintoc,title={\@bibtitle}]
\begin{bibhyphenation}
\printbibliography[heading=noheader]
\end{bibhyphenation}
}
{% split the bibliography using the predefined categories:
\printbibheading[heading=bibintoc,title={\@bibtitle}]
\begin{bibhyphenation}
\bibbycategory
\end{bibhyphenation}
}%
}
% Suppress unusual "In:" within journal article references.
% see http://tex.stackexchange.com/questions/10682/suppress-in-biblatex
\renewbibmacro{in:}{%
\ifentrytype{article}{}{%
\printtext{\bibstring{in}\intitlepunct}}}
% To suppress warnings related to missing biblatex "drivers":
\DeclareBibliographyAlias{video}{misc}
\DeclareBibliographyAlias{movie}{misc}
\DeclareBibliographyAlias{audio}{misc}
\DeclareBibliographyAlias{software}{misc}
\DeclareBibliographyAlias{electronic}{misc}
\DeclareBibliographyAlias{image}{misc}
\DeclareBibliographyAlias{standard}{misc}
% Use a semicolon between multiple entries in \cites
\renewcommand*{\multicitedelim}{\addsemicolon\space}
% Macro to produce cites with no backref entries
% Modified from http://mirrors.ibiblio.org/CTAN/macros/latex/contrib/biblatex-contrib/biblatex-ieee/ieee.cbx
% See also https://tex.stackexchange.com/questions/344861/biblatex-backref-option-per-entry
\DeclareCiteCommand{\citenobr}%
{\usebibmacro{cite:init}%
\bibopenbracket
\backtrackerfalse\usebibmacro{prenote}}
{\usebibmacro{citeindex}%
\usebibmacro{cite:comp}}
{}
{\usebibmacro{cite:dump}%
\usebibmacro{postnote}%
\bibclosebracket
}
你有什么建议吗?
答案1
您可以使用biblatex-ext
并将authoryear
引文与authortitle
参考书目和结合起来introcite=label
。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[backend=biber,
citestyle=ext-authoryear, bibstyle=ext-authortitle, sorting=nyt,
introcite=label, dashed=false,
autocite=inline,
articlein=false,
isbn=false, doi=false]{biblatex}
\DeclareOuterCiteDelims{parencite}{\bibopenbracket}{\bibclosebracket}
\DeclareFieldFormat{bbx@introcite}{\mkbibbrackets{#1}}
\setlength{\bibitemsep}{\itemsep}
\DeclareDelimFormat{nameyeardelim}{\addcomma\space}
\addbibresource{biblatex-examples.bib}
\begin{document}
\autocite{sigfridsson,worman,nussbaum,geer}
\printbibliography
\end{document}