由于自定义命令中的文本未使用连字符,导致行太长

由于自定义命令中的文本未使用连字符,导致行太长

我遇到了一些问题,有些行太长了。单词有正确的连字规则,但这些规则没有被应用。

我先给出那句太长的句子:

An isomorphism that maps a graph to itself is called an \concept{automorphism}.

命令概念定义如下

\newcommand{\concept}[1]{\index{#1}\marginpar{\raggedright\textbf{#1}}\textbf{#1}}

问题似乎是里面的单词\concept没有连字符。我该如何解决这个问题?如果我输入

An isomorphism that maps a graph to itself is called an \textbf{automorphism}.

那么该单词的连字符就完美了。因此,我现在希望命令的\concept行为方式相同,即允许根据标准规则对概念进行连字符连接。

答案1

第一个单词永远不会用连字符连接,除非它之前的某些内容让 TeX 认为它不是第一个单词

\newcommand{\concept}[1]{%
  \textbf{#1}%
  \marginpar{\raggedright\hspace{0pt}\textbf{#1}}%
  \index{#1}}

\hspace{0pt}就是诀窍。

\marginpar并且\index应将其放在所指单词后面,并与其相连,以免留下合法的断点,否则可能会导致边注错位和索引中出现差一错误。如果放在单词前面,它们会阻止单词连字。

相关内容