我正在结合英国的日期表示法撰写一篇荷兰语文章。
\documentclass{article}
\usepackage[dutch]{babel}
\usepackage[british]{isodate}
\begin{document}
\printdate{5/9/2017}
\end{document}
结果与预期一致:“2017 年 9 月 5 日”。但是,日志包含警告Language dutch unknown to isodate.
This message appeared for every \printdate
,这真的很烦人。更改软件包的顺序没有效果。
这是一个已知问题吗?我可以放心地忽略这些警告吗?
答案1
当 isodate 检测到 babel 时,它会重新定义内部语言名称,以便\languagename
日期适应周围的语言。如果您确实想强制它始终使用英国格式(如果您的主要语言是荷兰语,这听起来有点奇怪),您可以再次重新定义语言名称:
\documentclass{article}
\usepackage[dutch]{babel}
\usepackage[british]{isodate}
\makeatletter
\AtBeginDocument{\def\iso@languagename{english}}
\makeatother
\begin{document}
\printdate{5/9/2017}
\end{document}
如果您确实想要荷兰日期格式,您应该编写一个 dutch.idf,例如 danish.idf。
答案2
完整的警告是
软件包 isodate 警告:isodate 未知语言荷兰语。 (isodate)在输入第 6 行使用默认格式。
如果您收到的输出符合您的预期,那么“默认格式”就是您所需要的,您可以放心地忽略该警告。
如果您希望关闭此警告,可以使用silence
包裹,类似于我如何摆脱特定的 pdftex 警告信息?
这文档提到它仅支持有限数量的语言,但您可以添加自己的语言支持,或者只是(重新)定义输出以满足您的需要。