スタイル設定のオプション \fullcite

スタイル設定のオプション \fullcite

文書内に biblatex 項目のリストがあり、このリストには参考文献セクションも含まれています。この部分では、\fullciteメインの参考文献とは異なるスタイルでいくつかの参考文献項目をリストしたいと思います。

著者の数は次のように変更できます。

\begingroup
\defcounter{minnames}{2}
\fullcite{key}
\endgroup

のスタイルをさらに変更するにはどうすればいいですか\fullcite?

ウェブ

\documentclass[en-US,de-DE]{article}

\usepackage[
  style=authoryear-ibid,
  maxnames=2,
  backend=biber,
  safeinputenc,
  isbn=false,
  doi=false,
  maxcitenames=2,
  urldate=iso8601,
  date=iso8601
]{biblatex}

\addbibresource{\jobname.bib}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{key,
  author = {Author, A.},
  year = {2001},
  title = {Title},
  publisher = {Publisher},
  pagetotal = {383},
  edition = {1},
  pages = {151--154},
  url = {http://www.google.com},
}
\end{filecontents}

\begin{document}
text1

\fullcite{key}

text2

\cite{key}

text3

\printbibliography[heading=bibintoc]

\end{document}

これらのリストされているアイテムから年、URL \fullcite、ページ番号、書籍の版を削除したいのですが。

pdf レンダリング

答え1

これを行うには 2 つの方法があります。\fullcite不要なフィールドをクリアするようにコマンドを再定義するか、コメントに記載されているように、 を使用して\AtEverycitekey同じことを行うことができます。

概念的には、\fullciteを使用すると引用文が変更されるため、 を変更する方がより良い解決策のように思えます。したがって、から通常含まれている\AtEveryCitekey情報を削除したい場合は、\fullcite\citeしなければならないこの解決策を使用してください。

URL、エディション、ページだけを削除する場合は、これらのフィールドを出力するのは引用コマンドだけなので、\fullcite使用しても悪影響はありません。ただし、年も削除したい場合 (コメントで言及されているように)、変更するしか方法はありません。このため、コードからソリューションを削除しましたが、最後に別途配置しました。\AtEveryCitekey\fullcite\fullcite\AtEveryCitekey

抑制する必要がある情報の種類に応じて、、または\clearfieldのいずれかを使用する必要がある場合があります。たとえば、、またはの場合、そのタイプはリストであるため、それらをクリアするには を使用する必要があります。ドキュメントのセクション 2.2.2 では、各フィールドとそのデータ型について説明しています。\clearlist\clearnamepublisherlocation\clearlistbiblatex

\documentclass[en-US,de-DE]{article}

\usepackage[
  style=authoryear-ibid,
  maxnames=2,
  backend=biber,
  safeinputenc,
  isbn=false,
  doi=false,
  maxcitenames=2,
  urldate=iso8601,
  date=iso8601
]{biblatex}

\addbibresource{\jobname.bib}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{key,
  author = {Author, A.},
  year = {2001},
  title = {Title},
  publisher = {Publisher},
  pagetotal = {383},
  edition = {1},
  pages = {151--154},
  url = {http://www.google.com},
}
\end{filecontents}

\DeclareCiteCommand{\fullcite}
  {\usebibmacro{prenote}}
  {\clearfield{url}%
   \clearfield{pages}%
   \clearfield{pagetotal}%
   \clearfield{edition}%
   \clearfield{labelyear}%
   \usedriver
     {\DeclareNameAlias{sortname}{default}}
     {\thefield{entrytype}}}
  {\multicitedelim}
  {\usebibmacro{postnote}}
\begin{document}
text1
\cite{key}

\fullcite{key}

text2

\cite{key}

text3

\printbibliography[heading=bibintoc]

\end{document}

コードの出力

使用\AtEveryCitekey

上で述べたように、\AtEveryCitekey通常の引用で必要な情報と で抑制する情​​報に重複がない場合には、 を使用することもできます。\fullciteこの方法を使用するコードは次のとおりです。

\AtEveryCitekey{
\clearfield{url}
   \clearfield{pages}
   \clearfield{pagetotal}
   \clearfield{edition}
   \clearfield{labelyear}
}

関連情報