答案1
这应该可以让你入门,但你可能需要更多自定义内容。请参阅代码中的注释以获取解释。
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{doi+etal:1978,
author = {Doi, Yutaka and Sano, Tetsufi and Tanaka, Itsua},
date = {1978},
maintitle = {Senkyo seido},
maintitleaddon = {Das Wahlsystem},
volume = {10},
title = {Gendai chihô jichi zenshû},
location = {Tôkyô},
publisher = {Gyôsei}
}
\end{filecontents}
% set main language to German
\usepackage[ngerman]{babel}
% use German quotes
\usepackage{csquotes}
% use biblatex authoryear style
\usepackage[style=authoryear]{biblatex}
\addbibresource{\jobname.bib}
% new titleaddonpunct to use between maintitle and maintitleaddon
\newcommand*{\titleaddonpunct}{\addspace}
% don't emphasise title
\DeclareFieldFormat{title}{#1}
% place maintitleaddon in square brackets
\DeclareFieldFormat{maintitleaddon}{\mkbibbrackets{#1}}
% use a colon between sortname and title
\DeclareDelimFormat[bib,biblist]{nametitledelim}{\addcolon\space}
% use small caps for family names
\renewcommand*{\mkbibnamefamily}[1]{\textsc{#1}}
% redefine family-given/given-family so only last name is printed as
% given-family (this format is used by default for the sortname in authoryear
% style
\DeclareNameFormat{family-given/given-family}{%
\ifnumequal{\value{listcount}}{\value{listtotal}}
{\ifgiveninits
{\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiveni}
{\namepartprefix}
{\namepartsuffix}}
{\usebibmacro{name:given-family}
{\namepartfamily}
{\namepartgiven}
{\namepartprefix}
{\namepartsuffix}}}
{\ifgiveninits
{\usebibmacro{name:family-given}
{\namepartfamily}
{\namepartgiveni}
{\namepartprefix}
{\namepartsuffix}}
{\usebibmacro{name:family-given}
{\namepartfamily}
{\namepartgiven}
{\namepartprefix}
{\namepartsuffix}}%
\ifboolexpe{%
test {\ifdefvoid\namepartgiven}
and
test {\ifdefvoid\namepartprefix}}
{}
{\usebibmacro{name:revsdelim}}}%
\usebibmacro{name:andothers}}
% redefine maintitle bibmacro to use \titleaddonpunct between maintitle and
% maintitleaddon
\renewbibmacro*{maintitle}{%
\ifboolexpr{
test {\iffieldundef{maintitle}}
and
test {\iffieldundef{mainsubtitle}}
}
{}
{\printtext[maintitle]{%
\printfield[titlecase]{maintitle}%
\setunit{\subtitlepunct}%
\printfield[titlecase]{mainsubtitle}}%
\setunit{\titleaddonpunct}}% replace \newunit
\printfield{maintitleaddon}}
\begin{document}
\nocite{*}
\printbibliography
\end{document}