我使用 biblatex、biber 风格biblatex 哲学。不幸的是,参考书目中的页码范围是用普通破折号而不是短破折号表示的。
以下是 MWE:
\documentclass{article}
\usepackage[backend=biber,style=philosophy-classic]{biblatex}
\addbibresource{biblatex-examples.bib}
\begin{document}
As described by \textcite{lewis1979a}, blabla.
\printbibliography
\end{document}
这是使用的 bib 资源:
@article{lewis1979a,
Author = {David Lewis},
Journal = {Philosophical Review},
Number = {4},
Pages = {513--543},
Title = {Attitudes \emph{{D}e {D}icto} and \emph{{D}e {S}e}},
Volume = {88},
Year = {1979}}
输出:
问题:有没有办法在参考书目中全局用短破折号替换破折号?
答案1
样式philosophy-classic
将变为\bibrangedash
连字符。您可以通过发出适当的\DefineBibliographyExtras
命令将其恢复:
\begin{filecontents*}{\jobname.bib}
@article{lewis1979a,
Author = {David Lewis},
Journal = {Philosophical Review},
Number = {4},
Pages = {513--543},
Title = {Attitudes \emph{De Dicto} and \emph{De Se}},
Volume = {88},
Year = {1979},
}
\end{filecontents*}
\documentclass{article}
\usepackage[backend=biber,style=philosophy-classic]{biblatex}
\addbibresource{\jobname.bib}
\DefineBibliographyExtras{english}{\protected\def\bibrangedash{\textendash}}
\begin{document}
As described by \textcite{lewis1979a}, blabla.
\printbibliography
\end{document}
请注意,filecontents*
环境只是为了使示例自成一体。
答案2
第 20 页提供了更完整的方法软件包文档是
\DefineBibliographyExtras{english}{%
\protected\def\bibrangedash{%
\textendash\penalty\hyphenpenalty}%
\protected\def\bibdaterangesep{\bibrangedash}}%
\DefineBibliographyExtras{italian}{%
\protected\def\bibrangedash{%
\textendash\penalty\hyphenpenalty}%
\protected\def\bibdaterangesep{\bibrangedash}}%
\DefineBibliographyExtras{french}{%
\protected\def\bibrangedash{%
\textendash\penalty\hyphenpenalty}%
\protected\def\bibdaterangesep{\bibrangedash}}%
\DefineBibliographyExtras{spanish}{%
\protected\def\bibrangedash{%
\textendash\penalty\hyphenpenalty}%
\protected\def\bibdaterangesep{\bibrangedash}}%