我正在使用biblatex-chicago
选项author-date
。我喜欢biblatex
并biblatex-chicago
欣赏为此付出的努力。不过,我有一个小问题。我通常使用
\DeclareBibliographyCategory{A}
在序言中,然后
\autocite{B}
\AddToCategory{A}{B}
引用 B 之后。
现在我想知道是否可以有一个参考书目类别:
\DeclareBibliographyCategory{Before1900}
并在以下情况下自动将引用添加到该类别Before1900
:
- 它有一个 origdate 值,并且该值低于 1900;
- 它没有 origdate 值,但日期值低于 1900。
我对这样的选项很感兴趣,因为它可以让我根据资料来源的写作/出版日期自动创建分割书目。
答案1
biblatex
允许我们过滤要插入参考书目中的条目。
首先,你必须定义要使用的条件\definebibcheck
\defbibcheck{pre}{
\iffieldint{origyear}
{\ifnumless{\thefield{origyear}}{1900}
{}
{\skipentry}
}
{\iffieldint{year}
{\ifnumless{\thefield{year}}{1900}
{}
{\skipentry}
}
{\skipentry}
}
}
\defbibcheck{post}{
\iffieldint{origyear}
{\ifnumless{1899}{\thefield{origyear}}
{}
{\skipentry}
}
{\iffieldint{year}
{\ifnumless{1899}{\thefield{year}}
{}
{\skipentry}
}
{
\skipentry %comment out this line if unknown date check used as well.
}
}
}
之后你可以check
在\printbibliography
命令中使用 s
\printbibliography[check=pre,title={Before 1900}]
\printbibliography[chek=post,title={Post 1900}]
编辑
要创建第三类条目,即日期不明确的条目,检查方法如下:
\defbibcheck{dateunknown}{
\ifboolexpr{
test {\iffieldundef{year}}
and
test {\iffieldundef{origyear}}
}
{}
{\skipentry}
}