\printbibliography 仅与 \citetitle 一起出现

\printbibliography 仅与 \citetitle 一起出现

我想打印两个书目:

  • 首先,我通常会使用经典的书目,其中包含我在文章中引用的文献\footcite{}
  • 第二个只引用事件\citetitle{}

实际上,我在文本中用 标记了图片、艺术品、音乐作品、表演、艺术展览、博物馆展览或建筑作品的引用\citetitle{}。我不需要这样做\footcite{}。我保留了文字作品:书籍、文章、播客等。但我希望它们在另一个最终参考部分中被引用,此处命名为“Œuvres & monuments”,可能按文档类型分类。

按文档类型分类,有一个名为“电影”的部分,其中引用了我所有的电影,另一个名为“绘画”的部分,其中引用了我所有的绘画,“摄影”等。类型出现在我的“.bib”中,例如“@misc”。(当然,另一个问题是我的参考管理软件的翻译:@film变成@electronic或在这里@painting-> @misc…)

因此,这是在参考书目和索引之间:我有很多引用条目(作者、标题、日期……),就像在参考书目中一样,但我想像在索引中一样方便索引。我的解决方案是使用[backref=true]……嗯,附带问题:是否可以backref在参考书目中使用而不在另一个中使用?

我继续我的问题:

  • \printbibliography\citetitle提供参考?
  • 按 对我的第一份参考书目进行分类sorting=nyvt,按 对我的第二份参考书目进行分类(@image@movie...)?
  • 在一个参考书目中使用backref而不在另一个参考书目中使用?

有什么想法吗?谢谢。

\documentclass{scrbook}
\usepackage[style=authortitle-ticomp,sorting=nyvt,isbn=false,doi=false,backref=true]{biblatex}
\usepackage[english,frenchb]{babel}
\addbibresource{Biblio.bib}

\begin{document}
… some \footnote{MerleauPonty:1985wh}, some \citetitle{Burton:1982td,Leradeaudelamedu:1819wn,Persepolis:2007wt} & some words indexed.

\printbibheading
\printbibliography[heading=subbibliography,title={Bibliographie},backref=false]
\printbibliography[heading=subbibliography,title={Œuvres & monuments},backref=true]
\printindex[nam]
\printindex[loc]

\end{document}

我的biblio.bib

@electronic{Burton:1982td,
author = {Burton, Tim},
title = {{Vincent}},
year = {1982},
language = {anglais}}

@book{MerleauPonty:1985wh,
author = {Merleau-Ponty, Maurice and Lefort, Claude},
title = {{L'{\OE}il et l'Esprit}},
publisher = {Gallimard},
year = {1985},
series = {Folio. Essais},
address = {Paris},
language = {fran{\c c}ais}}

@electronic{Persepolis:2007wt,
author = {Satrapi, Marjane and Paronnaud, Vincent},
title = {{Persepolis}},
year = {2007},
language = {fran{\c c}ais}}

@misc{Leradeaudelamedu:1819wn,
title = {{Le radeau de la m{\'e}duse}},
author = {G{\'e}ricault, Th{\'e}odore},
year = {1819},
read = {Yes}}

答案1

我们可以重新定义\citetitle将通过引用的所有条目添加\citetitle到参考书目类别中oeuvres

\DeclareBibliographyCategory{oeuvres}
\DeclareCiteCommand{\citetitle}
  {\boolfalse{citetracker}%
   \boolfalse{pagetracker}%
   \usebibmacro{prenote}}
  {\addtocategory{oeuvres}{\thefield{entrykey}}%
   \ifciteindex
     {\indexfield{indextitle}}%
     {}%
   \printfield[citetitle]{labeltitle}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

第一个参考书目可以忽略oeuvres,而第二个参考书目仅包括oeuvres

\printbibliography[heading=subbibliography,title={Bibliographie},notcategory=oeuvres]
\printbibliography[heading=subbibliography,title={Œuvres \& monuments},category=oeuvres]

为了删除第一个参考书目中的页码引用,我们使用

\AtNextBibliography{\renewbibmacro*{pageref}{}}

就在第一个 之前\printbibliography。全局backref启用,但打印反向引用的宏在第一个参考书目中暂时被禁用。

我不确定您的排序要求,但在命令中指定排序没有问题\printbibliography

\printbibliography[sorting=nyt, heading=subbibliography, title={Bibliographie}, notcategory=oeuvres]
\printbibliography[sorting=ynt, heading=subbibliography, title={Œuvres \& monuments}, category=oeuvres]

平均能量损失

\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english,frenchb]{babel}
\usepackage{csquotes}
\usepackage[style=authortitle-ticomp,isbn=false,doi=false,backref=true,backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}

\DeclareBibliographyCategory{oeuvres}
\DeclareCiteCommand{\citetitle}
  {\boolfalse{citetracker}%
   \boolfalse{pagetracker}%
   \usebibmacro{prenote}}
  {\addtocategory{oeuvres}{\thefield{entrykey}}%
   \ifciteindex
     {\indexfield{indextitle}}%
     {}%
   \printfield[citetitle]{labeltitle}}
  {\multicitedelim}
  {\usebibmacro{postnote}}

\begin{document}
some \footcite{cicero,gillies}, some \citetitle{wilde,coleridge} \& some words indexed.

\printbibheading
\AtNextBibliography{\renewbibmacro*{pageref}{}}
\printbibliography[heading=subbibliography,title={Bibliographie},notcategory=oeuvres,sorting=nyt]
\printbibliography[heading=subbibliography,title={Œuvres \& monuments},category=oeuvres,sorting=ynt]
\end{document}

在此处输入图片描述


要按类型对书目进行排序,我们需要定义一个新的排序方案:tnyvt。不幸的是,

\sort{
  \field{entrytype}
}

对我来说不起作用,所以我们使用一种解决方法:entrytype 停放在usera用于排序的临时字段中。

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map{
      \step[fieldset=usera, origentrytype]
    }
  }
}

\DeclareSortingScheme{tnyvt}{
  \sort{
    \field{presort}
  }
  \sort[final]{
    \field{sortkey}
  }
  \sort{
    \field{usera}
  }
  \sort{
    \field{sortname}
    \field{author}
    \field{editor}
    \field{translator}
    \field{sorttitle}
    \field{title}
  }
  \sort{
    \field{sortyear}
    \field{year}
  }
  \sort{
    \field[padside=left,padwidth=4,padchar=0]{volume}
    \literal{0000}
  }
  \sort{
    \field{sorttitle}
    \field{title}
  }
}

相关内容