我正在使用该hyphenat
软件包,但似乎它并不适用于所有单词。我有一份包含大量外来阿拉伯语单词的文档,此功能非常重要。
我的 MWE,
\documentclass{article}
\usepackage{testhyphens}
\usepackage{hyphenat}
\hyphenation{
ha-kimm
sugh-ra
}
\begin{document}
\begin{checkhyphens}{}
al\-Hakimm
al\hyp{}Hakimm
\textit{al\hyp{}Hakimm}\\
al\-Sughra
al\hyp{}Sughra
\textit{al\hyp{}Sughra}\\
complication
\textit{complication}
\end{checkhyphens}
\end{document}
输出,
我期望al-Sughra
使用连字符连接,al-Sugh-ra
但实际上却没有。可能是什么问题?
我最终将使用 XeLaTeX,因此我更喜欢一种可以在那里运行的解决方案。
答案1
TeX 不会对明确包含连字符的单词应用连字符规则。
该\hyp
命令本质上会产生一个连字符,后面跟着一团胶水,从而可以对下一个单词部分应用连字符规则。
技术说明。A单词在此上下文中,是一连串具有非零的字符\lccode
,从一团胶水开始,到任何不符合标准的东西结束。
为什么不苏格拉用连字符连接al\hyp{}Sughra
? 因为默认语言是英语,所以\righthyphenmin
(隐式连字符后的最小字符数)设置为 3。
你可能设置\righthyphenmin
为 2,但这很可能会导致英文单词连字错误。
您可以排版文档并在需要\-
的地方添加。您可能不需要添加很多这样的标记。否则,请
\newcommand{\alsughra}{Al-Sugh\-ra}
\alsughra{}
并在您的文档中使用。