如何防止LaTeX在连字符中的单词上断字?

7
我希望全局禁止LaTeX对“Objective-C”进行连字处理。我知道\hyphenation命令,但我不知道如何使用它。如果我将“Objective-C”传递给此命令,则破折号将被视为提示在该处连字。
我找到的一个解决方案是每次使用时将Objective-C包装到mbox中。然而,我正在撰写的文档中经常出现这个名称,每次都将其包装到mbox中很丑陋(定义一个命令并在源代码中反复使用也是如此)。

2
建议在 http://tex.stackexchange.com/ 上提问。 - Matthew Rankin
3个回答

9

为什么定义新命令很丑?这是因为\LaTeX\定义自身的方式。

\def\ObjectiveC{\mbox{Objective-C}}

谢谢!我想确实没有其他办法,很不幸。 - BVC

3

使用\nobreakdash。当我在LyX中插入一个不间断破折号并将其转换为tex时,LyX就会产生这个。


2

这里所建议的,您可以定义一个类似于以下命令:

 \newcommand\dash{\nobreakdash-\hspace{0pt}}

并且像这样使用它

Consider the $n$\dash dimensional manifold ... 

此外,您可以使用babel软件包,并使用"~作为受保护的连接符。虽然我不确定在使用英语写作时使用babel是否可取。

谢谢您的建议!这些都可以工作,但不能像 \mbox 解决方案一样定义为全局变量 :( - BVC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接