我的书目包含如下内容:
RK Sawyer,《即兴创作和创作过程:杜威、科林伍德和自发性美学》
问题在于,标题中的专有名词(例如“Collingwood”)被转换为小写,而它们不应该这样。它应该像这样:
RK Sawyer,《即兴创作和创作过程:杜威、科林伍德和自发性美学》
另一个示例也删除了必要的标点符号:
G. Deleuze,《斯宾诺莎情感概念讲座记录》,
这应该是:
G. Deleuze,《斯宾诺莎情感概念讲座记录》,
我已经检查过它们在我的 bibtex 文件中是正确的。我正在使用IEEEtranS.bst
,这就是导致这些问题的原因(我猜)。建议?
我必须进一步编辑 bib 文件以添加括号或其他内容,这似乎是一个糟糕的设计,而且至少由于 bib 文件是用 Zotero 生成的,所以这很不方便。我不想每次重新导出 bib 文件时都必须重新编辑 bib 文件。
答案1
IEEEtranS.bst
我在工作目录中保存了一份副本并将其重命名为myIEEEtrans.bst
。
我的测试文件是:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents}{mwebib.bib}
@ARTICLE{article-full,
author = {L[eslie] A. Aamport},
title = {The Gnats and Gnus Document Preparation System},
journal = {G-Animal's Journal},
year = 1986,
volume = 41,
number = 7,
pages = "73+",
month = jul,
note = "This is a full ARTICLE entry",
}
@BOOK{book-full,
author = "Donald E. Knuth",
title = "Seminumerical Algorithms",
volume = 2,
series = "The Art of Computer Programming",
publisher = "Addison-Wesley",
address = "Reading, Massachusetts",
edition = "Second",
month = "10~" # jan,
year = "1981",
note = "This is a full BOOK entry",
}
\end{filecontents}
\begin{document}
\cite{article-full} and \cite{book-full}
\bibliographystyle{myIEEEtranS}
\bibliography{mwebib}
\end{document}
我在myIEEEtrans.bst
函数内部进行了format.articles.title
如下更改(第 1442 行):
FUNCTION {format.article.title}
{ title duplicate$ empty$ 'skip$
{ this.to.prev.status
this.status.std
"t" write$
% "t" change.case$
}
if$
"title" bibinfo.check
duplicate$ empty$ 'skip$
{ quote.close 'this.status.quote :=
is.last.char.not.punct
{ punct.std 'this.status.punct := }
{ punct.no 'this.status.punct := }
if$
select.language
"``" swap$ *
cap.status.std
}
if$
}
此后我得到了以下输出: