使用 longtable 创建自定义词汇表(命名法)时,系统仅对包含多个单词的单元格使用自动单词断词。该列是 -column p{...}
,它在包含多个单词的单元格中完美运行。当我通过手动单词连字时,\-
会创建正确的换行符。对于包含多个单词的单元格,会自动放置连字。
更新:按照建议这里使用 LuaLaTeX 进行编译解决了这个问题,尽管我对此并不满意。我也不明白为什么 @DavidCarlisle 给出的解决方案不起作用。
更新 2:问题已解决。该词是段落中的第一个词确实是问题所在。因为我正在定义词汇表样式,所以我必须将其添加\hspace*{0pt}
到列的模板中,而不是列定义中。在我的例子中,这意味着
\renewcommand*{\glossentry}[2]{% Change the displayed items
\boldmath\ensuremath{\glossentrysymbol{##1}}
& \glstarget{##1}{\hspace*{0pt}\glossentryname{##1}} %
& \glossentrydesc{##1}
& \glsentryunit{##1}\tabularnewline
}%
有效,同时
\setglossarystyle{long4col}% base this style on the list style
\renewcommand{\glsgroupskip}{}%avoids grouping the elements by alphabetical order
\renewenvironment{theglossary}{% Change the table type --> 4 columns
\renewcommand*{\arraystretch}{1.5}
\begin{longtable*}{>{\centering}p{.1\textwidth} >{\arraybackslash\hspace*{0pt}}p{.225\textwidth} p{.475\textwidth}>{\centering\arraybackslash}p{.1\textwidth}}}%
{\end{longtable*}}%
不工作。