如何在 biblatex 中以数字形式打印月份?

如何在 biblatex 中以数字形式打印月份?

我尝试使用\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格式,十月之前的月份将打印为一位数字。

相关内容