![如何避免作者姓名使用连字符](https://linux22.com/image/379635/%E5%A6%82%E4%BD%95%E9%81%BF%E5%85%8D%E4%BD%9C%E8%80%85%E5%A7%93%E5%90%8D%E4%BD%BF%E7%94%A8%E8%BF%9E%E5%AD%97%E7%AC%A6.png)
在我的输出文件中,作者姓名被拆分并跨行使用连字符连接。我使用biblatex
和 biber。
我怎样才能避免这种情况?
答案1
您可以使用以下方式避免姓氏跨行连字符或断开
\renewcommand*{\mkbibnamefamily}{\mbox}
babel-french
或者按照以下示例
\renewcommand*{\mkbibnamefamily}[1]{\leavevmode\begingroup\kern0pt #1\endgroup}
如果它们仅由一个单词组成。
该命令\textnohyphenation
应该执行此操作,但目前不起作用,请参阅https://github.com/plk/biblatex/issues/772
但是,当然,禁用名称(尤其是长名称)的连字符会增加段落看起来不再正确的几率。如果没有好的连字符点,LaTeX 必须在某个时候放弃,要么留下一个过满的框,使连续的线突出到边缘,要么留下一个非常不满的框,将名称推到下一行,使单词之间的空格非常大。该包microtype
对某些换行符/段落参数进行微调也许能够改善您的情况,但总体问题仍然存在:无法用连字符连接的长单词是 TeX 换行算法的一个问题。
\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}
\usepackage[style=authoryear, backend=biber]{biblatex}
\addbibresource{biblatex-examples.bib}
\renewcommand*{\mkbibnamefamily}{\mbox}
\begin{document}
Lorem ipsum dolor sit amet consectur. Gallia est omnis divisa in part \cite{sigfridsson}
Lorem ipsum dolor sit amet consectur. Gallia est omnis divisa in pa \cite{wassenberg}
\end{document}
一般来说,我会允许作者姓名中使用连字符,但需要进行健全性检查,以避免出现错误正如 Mico 在评论中提到的。