如何防止 LaTeX 连字符包含破折号的单词?
Posted
技术标签:
【中文标题】如何防止 LaTeX 连字符包含破折号的单词?【英文标题】:How to prevent LaTeX from hyphenating words containing a dash? 【发布时间】:2011-06-03 10:44:58 【问题描述】:我想在全局范围内阻止 LaTeX 连字符“Objective-C”。我知道 \hyphenation 命令,但我不知道如何使用它。如果我将“Objective-C”传递给该命令,破折号将被视为在此处连字的提示。
我发现的一个解决方案是每次使用 Objective-C 时都将其包装到一个 mbox 中。但是,我正在编写的文档中包含很多此名称,并且每次都将其包装到 mbox 中是很难看的(就像定义一个命令并在源代码中一遍又一遍地使用它一样)。
我很乐意收到任何建议!
最好, JP
【问题讨论】:
建议在tex.stackexchange.com提问 【参考方案1】:为什么定义一个新命令很难看?这就是 \LaTeX\ 定义自己的方式。
\def\ObjectiveC\mboxObjective-C
【讨论】:
谢谢!不幸的是,我想真的没有其他办法了。【参考方案2】:按照here 的建议,您可以定义如下命令:
\newcommand\dash\nobreakdash-\hspace0pt
并像这样使用它
Consider the $n$\dash dimensional manifold ...
另外,您可以使用babel
包并将"~
用作受保护的连字符。不过,我不确定在用英文写作时是否建议使用babel
。
【讨论】:
感谢您的建议!所有这些都有效,但不能像 \mbox 解决方案一样全局定义:(【参考方案3】:使用\nobreakdash
。这就是我插入不间断破折号并将其转换为 tex 时 LyX 产生的结果。
【讨论】:
以上是关于如何防止 LaTeX 连字符包含破折号的单词?的主要内容,如果未能解决你的问题,请参考以下文章