如何删除 urldate 中的空格(同时使用 ngerman 和 biblatex)?

如何删除 urldate 中的空格(同时使用 ngerman 和 biblatex)?

我想要像其他日期一样的 urldate。\DeclareFieldFormat{urldate}似乎显然没有帮助。也许有人有一个想法,这是一个 MWE

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[natbib=true,backend=biber,style=authoryear]{biblatex}


\addbibresource{biblatex-examples.bib}
    
    \begin{document}
    
   My Birthday: 01.01.1900    
   
    \autocite{ctan}

\printbibliography    
    
    \end{document} 

在此处输入图片描述

答案1

\thinspace您可以通过从相关本地化宏中删除 s 来删除空格\mkbibdateshort。其原始定义可以在german.lbx(第 28-41 行)在 v3.16 中

\documentclass[10pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\usepackage[natbib=true,backend=biber,style=authoryear]{biblatex}

\makeatletter
\DefineBibliographyExtras{german}{%
  \protected\def\mkbibdateshort#1#2#3{%
    \iffieldundef{#3}
      {}
      {\mkdayzeros{\thefield{#3}}\adddot}%
    \iffieldundef{#2}
      {}
      {\mkmonthzeros{\thefield{#2}}%
       \iffieldundef{#1}
         {}
         {\iffieldundef{#3}{/}{\adddot}}}%
    \iffieldbibstring{#1}
      {\bibstring{\thefield{#1}}}
      {\dateeraprintpre{#1}\mkyearzeros{\thefield{#1}}}}%
}
\makeatother

\addbibresource{biblatex-examples.bib}
    
\begin{document}
  My Birthday: 01.01.1900

  \autocite{ctan}

\printbibliography
\end{document}

(2006 年 10 月 1 日发现)

也可以看看https://github.com/plk/biblatex/issues/891

相关内容