换行经过调整,但没有连字符

换行经过调整,但没有连字符

我有以下情况:非常长的函数名称,用宏放入文本中\fun{this-is-a-very-long-fuction-name}。此宏包括索引,但最后将函数名称作为超链接加粗。我想让 LaTeX 进行换行以进行调整,但只在连字符处断开加粗的名称而不添加连字符;超链接必须有效。我该怎么做?具体来说,我的宏\fun

\def\fun#1{\funbb{#1}{#1}\indexfun{#1}}
\def\funbb#1#2{\hyperlink{#1}{\textbf{#2}}}
\def\indexfun#1{\index{#1@\textbf{#1}}}

文档的其余部分应具有正常的换行符以及调整和连字符。


编辑:这是一个例子:

\documentclass{book}
\usepackage{geometry}
\usepackage{txfonts}
\usepackage[breaklinks]{hyperref}
\geometry{total={115.84mm,195mm}}
\def\fun#1{\hyperlink{#1}{\textbf{#1}}}
\begin{document}
we need to include the lengths of all months from Tishri until \fun{last-month-of-hebrew-year}
\end{document}

当使用 进行编译时latex,它会在 DVI 中生成以下内容:

DVI 输出

请注意,它在“hebrew”中的“he”后面打断了函数名称。另外,它不是一个超链接,而它应该是。

相关内容