我尝试使用\printfield{month}.\printfield{year}
,不幸的是,尽管我指定了 ,但它打印的是月份名称,而不是数字\usepackage[date=terse]{biblatex}
。我想知道我是否在 中使用了错误的字段\printfield
。是否有标准样式中可以使用的所有字段的列表?
梅威瑟:
\documentclass{scrartcl}
\begin{filecontents}[overwrite]{bib.bib}
@article{article,
author={Luke, Saint},
date={2022-12-24},
title={Nativity of Christ},
journal={Journal of Christian Stories}
}
\end{filecontents}
\usepackage[date=short]{biblatex}
\addbibresource{bib.bib}
\renewbibmacro*{date}{}
\renewbibmacro*{issue+date}{}
\defbibenvironment{bibliography}{
\list
{\printfield{month}.\printfield{year}}%
{}%
\sloppy\clubpenalty4000\widowpenalty4000
}{\endlist}{\item}
\begin{document}
\notecite{*}
\printbibliography
\end{document}
答案1
定义\DeclareFieldFormat{twodigits}{\ifnum#1<10 0#1\else #1\fi}
然后使用\printfield[twodigits]{month}
即可。我不确定这是否是此处使用的理想格式,但它确实有效。使用此default
格式,十月之前的月份将打印为一位数字。