我使用 Biblatex 软件包和 biblatex-phys 引用样式,他们正在将我参考书目中一些随机条目的标题更改为小写。我似乎无法确定他们是如何决定的:有些标题保持原样,有些则被弄乱了。
我该如何禁用此功能?我已经尝试使用命令\DeclareCaseLangs{}
,但没有成功。我不会在我的参考书目文件中添加括号,这是一个巨大的文件,并且所有条目都有正确的大写字母,我只希望 Biblatex 不改变它们。可以吗?
答案1
biblatex-phys
因此将句子大小写应用于所有title
-like 字段(但不应用于journal
/ journaltitle
)。因此,如果您只在某些引用中看到大小写变化,那么您这边肯定有其他问题。也许您的一些标题已经用双括号保护了。请注意title
和subtitle
是分开处理的,因此字段的首字母subtitle
也是大写的,尽管title
和subtitle
仅用逗号隔开。
我建议你不要包装title
用双括号括住字段以保护所有大小写更改,而是遵循以下建议BibTeX 在创建 .bbl 文件时丢失大写字母相反,只有必须始终用大写字母书写的单词才受到保护。
例如(全部取自
biblatex-examples.bib
)subtitle = {Style in {Greek} Literature}, subtitle = {The {Orkney Earldom} of the Twelfth Century. {A} Musicological Study}, title = {Higher-Dimensional Algebra {V}: 2-Groups},
但
title = {Contemporary Literary Criticism}, title = {Partial Symmetries of Weak Interactions},
标题中的首字母即使是一个专有名词,也不需要受到保护
title = {Herder and the Preparation of {Goethe's} Idea of World Literature},
宏也需要保护即使它们是标题中的第一个词(以下示例略作修改
biblatex-examples.bib
,请参阅此请求请求和这次提交)title = {The {\TeX book}}, title = {{\TeX}: The Program},
您可以使用以下方式关闭句子大小写
\DeclareFieldFormat{titlecase}{#1}
请注意,这仍然假定并要求您以标题大小写输入标题,如在参考书目数据库中存储标题时,应使用什么大小写?.biblatex
无法将句子大小写的输入转换为标题大小写。
数学家协会
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=phys, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}
%\DeclareFieldFormat{titlecase}{#1}% <- uncomment to turn off sentence case
\begin{document}
\cite{knuth:ct:a,worman,geer,loh,westfahl:space,westfahl:frontier,baez/article}
\printbibliography
\end{document}
产量
左:未修改的输出,右:带有\DeclareFieldFormat{titlecase}{#1}
。
的下一个版本biblatex-phys
将使用语言感知的\MakeSentenceCase*
而不是\MakeSentenceCase
,这样只有启用了句子大小写的语言才能得到处理\MakeSentenceCase*
。目前所有语言都会受到影响,无论\DeclareCaseLangs
。请参阅https://github.com/josephwright/biblatex-phys/pull/20。