biblatex backref – 如何在破折号周围添加空格?

biblatex backref – 如何在破折号周围添加空格?

我正在使用biblatexwith backref=true,它生成范围如34–37。我怎样才能使它成为34 – 37?空格应该是不可破坏的。

我曾尝试重新定义\bibrangedash,但没有成功。

答案1

尽管 OP 的问题是关于添加不可破坏的空间,但我建议的解决方案在两个方面有所不同:

  • 由于由(完整)空格包围的短划线表示插入的开始/结束而不是范围,因此我会使用细空格。

  • 因为“参考书目的换行通常比正文更难,而且 [...] 你不能改写一个句子”biblatex手册,第 3.8.4 节),短划线后面的空格应该与高但有限(对于 TeX,即 <10,000)的惩罚相关联,而不是牢不可破的。

对应的biblatex命令为\addnbthinspace\addhpthinspace,详情见手册4.7.4节。

\DefineBibliographyExtras{english}{
  \renewcommand*{\bibrangedash}{\addnbthinspace\textendash\addhpthinspace}
}

答案2

我粗心大意,误解了一些文档。如果有人需要,可以使用以下方法:

\DefineBibliographyExtras{english}{
\renewcommand*{\bibrangedash}{~\textendash~}
}

相关内容