babel+biber+biblatex を使用して、参考文献の英国英語のデフォルトの日付形式から「st」、「nd」、および「th」を削除するにはどうすればよいでしょうか?

babel+biber+biblatex を使用して、参考文献の英国英語のデフォルトの日付形式から「st」、「nd」、および「th」を削除するにはどうすればよいでしょうか?

によるとケンブリッジ文法日付を書く最も一般的な方法は次のとおりです。

1993年1月20日

そしてそうではない

1993年1月20日

ただし、biber+biblatex ではデフォルトで「th」が生成されます。

\documentclass[british]{article}
\usepackage{babel}
\usepackage[backend=biber]{biblatex}
\begin{filecontents}{\jobname.bib}
  @book{mybook,
    author      =   {Author},
    date        =   {1993-01-20},
    title       =   {Wonderful Tiny Fact (WTF)}
  }
\end{filecontents}
\addbibresource{\jobname.bib}
\begin{document}
\cite{mybook}
\printbibliography
\end{document}

結果は以下の通りです。 pdflatex-biber-pdflatex ループを実行した結果

私は「Jan」の後に句読点を置くことに賛成でも反対でもないが、「th」を使うことは最も普及しているスタイルに反すると主張している。上記の文法リンクに加えて、バース大学の編集スタイルは、それを明確に禁止しています。私のイギリス人の英語の先生も、それを明確に間違っていると考えています。

もちろん、「th」を省略するという技術的な解決策もあるかもしれない(LaTeX での日付形式本文についてはこちらをご覧ください。

  1. 参考文献の日付の接尾辞(「st」、「nd」、「th」)を省略するにはどうすればよいですか?

  2. 現在のデフォルト「th」を印刷する設定は実際にはバグとして分類されるのでしょうか?

答え1

Jan の代わりに January を使用するオプションを設定しますdateabbrev=false。オーストラリア スタイルでは序数は使用されません。したがって、次のように、australian.lbx から日付定義をコピーするだけです。

\documentclass[british]{article}
\usepackage{babel}
% dateabbrev=false will stop abbreviation of months
\usepackage[backend=biber,dateabbrev=false]{biblatex}
\begin{filecontents}{\jobname.bib}
  @book{mybook,
    author      =   {Author},
    date        =   {1993-01-20},
    title       =   {Wonderful Tiny Fact (WTF)}
  }
\end{filecontents}
\addbibresource{\jobname.bib}
% Taken from australian.lbx which does not use ordinal numbers
\DefineBibliographyExtras{british}{%
  \protected\def\mkbibdatelong#1#2#3{%
    \iffieldundef{#3}
      {}
      {\stripzeros{\thefield{#3}}%
       \iffieldundef{#2}{}{\nobreakspace}}%
    \iffieldundef{#2}
      {}
      {\mkbibmonth{\thefield{#2}}%
       \iffieldundef{#1}{}{\space}}%
    \iffieldbibstring{#1}{\bibstring{\thefield{#1}}}{\stripzeros{\thefield{#1}}}}%
  \protected\def\mkbibseasondateshort#1#2{%
    \mkbibseason{\thefield{#2}}%
    \iffieldundef{#1}{}{\space}%
    \mkyearzeros{\thefield{#1}}}%
  \protected\def\mkbibseasondatelong#1#2{%
    \mkbibseason{\thefield{#2}}%
    \iffieldundef{#1}{}{\space}%
    \mkyearzeros{\thefield{#1}}}%
}
\pagestyle{empty}
\begin{document}
\cite{mybook}
\printbibliography
\end{document}

ここに画像の説明を入力してください

関連情報