URLDATE 格式问题

URLDATE 格式问题

我有一个复杂的文档,使用了 bib 样式 IEEEtran.bst 的修改版本,可以在这里找到:https://github.com/ionaic/bibtex-ieeetran-urldate

我认为我正在使用 bibtex,但它可能是 biblatex,我不确定其中的区别。

我的问题是,生成参考书目时,urldate 显示为“2016-02-03”。我希望它显示为“2016 年 2 月 3 日”

这是一个 MWEB。您必须下载 IEEEtran.bst(来自上面的链接)并将其放在您的目录中,但这应该可以工作:

\documentclass[12pt, onecolumn, twoside, notitlepage, openany]{book}
%Preamble
\usepackage{cite}

\RequirePackage{filecontents}

\begin{filecontents*}{\jobname.bib}
    @misc{mr_ieee_????,
        title = {{{IEEE Citation Reference}}},
        timestamp = {2016-02-03T19:11:17Z},
        urldate = {2016-02-03},
        author = {MR, Surname and TA, Xyz},
    }
\end{filecontents*}


\begin{document}
    %Citations and text here
    \cite{mr_ieee_????}
    \bibliographystyle{IEEEtranUrldate}
    \bibliography{\jobname} 

\end{document}

我的序言不包括:\usepackage{biblatex}或类似内容。我尝试将以下内容添加到我之前对此问题的调查中的序言中,但它破坏了我的文档:

\usepackage[backend=biber,dateabbrev=false,language=australian]{biblatex}

================================================

Samcarter 在这方面帮助了我。如果您像我一样拥有一个大型自动生成库,那么唯一的自动化方法就是编辑 IEEEtranURLdate.bst 文件以包含日期格式。以下是包括我编辑的代码的确切部分:

%% URLDATE

FUNCTION {format.urldate}
{ is.use.url
  { urldate empty$
    { "" }
    { this.to.prev.status
      this.status.std
      cap.yes  'status.cap :=
      " (" name.urldate.prefix * " \DTMdate{" * urldate * "})" *
      punct.period 'this.status.punct :=
      %use this line if you want the url to have a period after it before the date accessed
      %punct.period 'prev.status.punct :=
      space.normal 'this.status.space :=
      quote.no 'this.status.quote :=
  }
  if$
  }
  {""}
  if$
}

正如 samcarter 所说,您必须将其添加到 BST 文件中:\DTMdate{“ * 网址日期 * “}当然,您需要在序言中添加 \usepackage[english]{datetime2}。

答案1

您可以使用该datetime2包并添加\DTMdate{...}到您的 .bib 文件中:

\documentclass[12pt, onecolumn, twoside, notitlepage, openany]{book}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@misc{mr_ieee_????,
  title = {{{IEEE Citation Reference}}},
  timestamp = {2016-02-03T19:11:17Z},
  urldate = {\DTMdate{2016-02-03}},
  author = {MR, Surname and TA, Xyz},
}
\end{filecontents*}

\usepackage{cite}
\usepackage[english]{datetime2}

\begin{document}

\cite{mr_ieee_????}
\bibliographystyle{IEEEtranUrldate}
\bibliography{\jobname} 

\end{document}

在此处输入图片描述

相关内容