amsxport
自动将所有非首字母大写。如何让它不这样做?
这是我的代码:
\documentclass{article}
\usepackage{amsrefs}
\begin{document}
\nocite{*}
\bibliographystyle{amsxport}
\bibliography{references.bib}
\end{document}
答案1
样式文件不amsxport.bst
存在。据我所知,它几年前就被删除了(TeX Live 2012 中没有它的踪迹)。取而代之的是五种样式,分别称为amsrn
、、和。amsru
amsra
amsry
amsrs
所有五种风格都有
FUNCTION {format.title}{
duplicate$
missing.or.empty
{ pop$ "" }
{ "t" change.case$ }
if$
}
意思是将标题改为小写。这是 AMS 的内部风格。
顺便说一句,\bibliographystyle
文档加载中的声明amsrefs
什么也不做。这些样式的选择是通过包选项完成的。
你能做什么?
在你的 TeX 发行版中找到它
amsrn.bst
;将它复制到与测试 TeX 文件相同的目录中,并以新名称命名修改上面报告的函数
format.title
,使其变为FUNCTION {format.title}{ duplicate$ missing.or.empty { pop$ "" } % { "t" change.case$ }% removed!!!! { }% added!!!! if$ }
修改测试文件为
\documentclass{article} \usepackage{amsrefs} % override amsrefs style selection \makeatletter \def\bibtex@style{amsrn-mod} \makeatother \begin{document} \nocite{*} \bibliography{references} \end{document}
现在像往常一样运行 LaTeX 和 BibTeX。
我使用的风格references.bib
是
@book{a,
author={A. Uthor},
title={A Capitalized Title},
publisher={Pub. Lisher},
year={2000},
}
@book{b,
author={A. Uthor},
title={An uncapitalized title},
publisher={Pub. Lisher},
year={2001},
}
@article{c,
author={A. Uthor},
title={A Capitalized Title},
journal={Journal},
year={2002},
}
@article{d,
author={A. Uthor},
title={An uncapitalized title},
journal={Journal},
year={2003},
}
生成的.bbl
文件是
% \bib, bibdiv, biblist are defined by the amsrefs package.
\begin{bibdiv}
\begin{biblist}
\bib{a}{book}{
author={Uthor, A.},
title={A Capitalized Title},
publisher={Pub. Lisher},
date={2000},
}
\bib{b}{book}{
author={Uthor, A.},
title={An uncapitalized title},
publisher={Pub. Lisher},
date={2001},
}
\bib{c}{article}{
author={Uthor, A.},
title={A Capitalized Title},
date={2002},
journal={Journal},
}
\bib{d}{article}{
author={Uthor, A.},
title={An uncapitalized title},
date={2003},
journal={Journal},
}
\end{biblist}
\end{bibdiv}
您可以看到标题是.bib
文件中的输入。