参考文献リストで著者名の前にタイトルを表示したいのですが、どうすればよいでしょうか。私は biblatex に次の設定を使用しています。
\usepackage[backend=biber,sorting=ydnt,
bibstyle=authoryear-comp,labelyear=false,defernumbers=true,maxnames=20,firstinits=true,
uniquename=init,dashed=false]{biblatex}
よろしくお願いします、スシル
答え1
異なるタイプのドライバーを自分で宣言し、standard.bbx
コピー/貼り付けによってオリジナルを取得して bibmacros を交換することができます。追跡するには、これらすべてを新しいbbx
ファイルに配置し、一意の名前を付ける必要があります。これを行うと、プリアンブルが整理されます。
理解できないのは、なぜauthoryear-comp
bibstyle だけを選択したのかということです。背後にある重要なことは、authoryear-comp
テキスト内の引用で発生します。
\documentclass{article}
\usepackage[backend=biber,sorting=ydnt,
bibstyle=authoryear-comp,labelyear=false,defernumbers=true,maxnames=20,firstinits=true,
uniquename=init,dashed=false]{biblatex}
\addbibresource{biblatex-examples.bib}
\DeclareBibliographyDriver{book}{%
\usebibmacro{bibindex}%
\usebibmacro{begentry}%
\usebibmacro{maintitle+title}%swap
\setunit{\labelnamepunct}\newblock
\usebibmacro{author/editor+others/translator+others}%swap
\newunit
\printlist{language}%
\newunit\newblock
\usebibmacro{byauthor}%
\newunit\newblock
\usebibmacro{byeditor+others}%
\newunit\newblock
\printfield{edition}%
\newunit
\iffieldundef{maintitle}
{\printfield{volume}%
\printfield{part}}
{}%
\newunit
\printfield{volumes}%
\newunit\newblock
\usebibmacro{series+number}%
\newunit\newblock
\printfield{note}%
\newunit\newblock
\usebibmacro{publisher+location+date}%
\newunit\newblock
\usebibmacro{chapter+pages}%
\newunit
\printfield{pagetotal}%
\newunit\newblock
\iftoggle{bbx:isbn}
{\printfield{isbn}}
{}%
\newunit\newblock
\usebibmacro{doi+eprint+url}%
\newunit\newblock
\usebibmacro{addendum+pubstate}%
\setunit{\bibpagerefpunct}\newblock
\usebibmacro{pageref}%
\newunit\newblock
\iftoggle{bbx:related}
{\usebibmacro{related:init}%
\usebibmacro{related}}
{}%
\usebibmacro{finentry}}
\begin{document}
\cite{westfahl:space}
\cite{companion}
\printbibliography
\end{document}