我有一篇发表于“1972 年夏季”的文章。在 BibTeX 条目中包含此信息的最佳方法是什么?文字
year = {Summer 1972}
可能不推荐,因为Summer
不会被翻译成其他语言。
顺便说一句,“夏季”可能不是一个准确的时间定义。任何来自澳大利亚的人都会证实这一点。
答案1
year = {Summer 1972}
不推荐。不仅因为它不会被翻译,而且如果你碰巧按年份排序,它会严重扰乱排序。理想情况下,该year
字段应该只包含“年份范围”内的整数;这绝对是这种情况biblatex
,否则你会收到投诉。
使用 BibTeX(.bst
样式),您可以使用
month = {Summer}
这仍然不会被自动翻译,从技术上来说也不正确,而且有些样式可能需要month
数字而失败。
biblatex
例如,使用month = {Summer}
还不够好,因为biblatex
期望month
是一个数字。如果你引用的作品发表在期刊的夏季刊上,你可以使用
issue = {Summer}
甚至issue = {\bibstring{summer}}
(仅限较新版本)使用biblatex
。但issue
对于非@article
s 的条目,它基本上会被忽略,因此在这里可能不合适。
biblatex
为您提供了另一种方法来指定 1972 年夏季作为日期。使用 ISO 8601(第 2 部分,第 1 级)功能(https://www.loc.gov/standards/datetime/ISO_DIS%208601-2.pdf)您可以在日期字段中指定季节(https://www.loc.gov/standards/datetime/ISO_DIS%208601-2.pdf,第 4.7.1 节)
对于年份和月份表达式(例如 1984-04),月份部分可以采用 21 或更大的值(代替月份值 01 到 12)。[...] 值 21、22、23、24 可分别用于表示“春季”、“夏季”、“秋季”、“冬季”。
所以你可以说
date = {1972-22}
举个例子。
我让你来决定是否指定“夏季”有意义。你正确地指出夏季是一个与地点相关的术语。如果你指定“1972 年夏季”而不是“1972 年”,你的读者通常不会获得太多见解(除非确切日期很重要,或者你需要建立优先权,但“夏季”可能太模糊了)。
答案2
BibTeX 并不是真正的多语言,因此最好的近似方法是定义一个字符串:
\begin{filecontents*}{\jobname.bib}
@string{summer="Summer"}
@article{test,
author={A. Uthor},
title={Title},
journal={Journal},
month=summer,
year=2016,
}
\end{filecontents*}
\documentclass{article}
\begin{document}
\cite{test}
\bibliographystyle{plain}
\bibliography{\jobname}
\end{document}