在使用 时,结果中给出的页面范围@inbook
为“Pp.”(大写),而使用 时则为“pp.”(小写)。要怎么做才能将其也变为小写?@article
block=npar
\documentclass{article}
\usepackage[block=nbpar]{biblatex}
\usepackage{filecontents}
\begin{filecontents*}{refs.bib}
@article{foo,
author = "Foo Bar",
title = "Baz",
journal = "A. B. C.",
volume = "1",
issue = "2",
pages = "100-200",
}
@inbook{bar,
author = "Foo Bar",
booktitle = "Qux",
title = "Baz",
pages = "100-200",
}
\end{filecontents*}
\addbibresource{refs.bib}
\begin{document}
\nocite{*}
\printbibliography
\end{document}
答案1
本地化字符串在 指定的终端或句末标点符号后大写\DeclareCapitalPunctuation
。默认情况下:
\DeclareCapitalPunctuation{.!?}
手册中对此命令的描述还提到,段落开头的字符串(例如 之后\par
)也大写。为了避免在段落结尾块中出现这种情况,您可以修改命令\newblockpunct
。例如以下
\newtoggle{blockterm}
\preto{\newblockpunct}{\ifterm{\toggletrue{blockterm}}{\togglefalse{blockterm}}}
\appto{\newblockpunct}{\iftoggle{blockterm}{}{\midsentence}}
将抑制新块开头的大写字母,除非前面有 中指定的字符之一\DeclareCapitalPunctuation
。