![如何在没有空格的情况下在 TeX 中分隔单词?我可以标记没有空格的单词边界吗?](https://linux22.com/image/475698/%E5%A6%82%E4%BD%95%E5%9C%A8%E6%B2%A1%E6%9C%89%E7%A9%BA%E6%A0%BC%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E5%9C%A8%20TeX%20%E4%B8%AD%E5%88%86%E9%9A%94%E5%8D%95%E8%AF%8D%EF%BC%9F%E6%88%91%E5%8F%AF%E4%BB%A5%E6%A0%87%E8%AE%B0%E6%B2%A1%E6%9C%89%E7%A9%BA%E6%A0%BC%E7%9A%84%E5%8D%95%E8%AF%8D%E8%BE%B9%E7%95%8C%E5%90%97%EF%BC%9F.png)
我希望能够告诉 TeX 这里是单词边界,但不需要使用空格。并且我希望 TeX 能够决定是否在指定的单词边界处添加空格。
例如:我想从这个 TeX 字符串中删除空格:``Look \emph{Mummy! no} Spaces!''
最后得到类似这样的结果``\wb{}Look\wb{}\emph{Mummy\wb{}!\wb{}no\wb{}}\wb{}\wb{}\wb{}Spaces\wb{}!''
,其中一个或多个\wb{}
表示单词边界。
我希望 TeX 在看到我的单词边界时,根据内部规则决定是否需要插入空格。
例如No\wb{}Spaces
需要一个空格,以便 TeX 创建No Spaces
。但Spaces\wb{}!
不需要空格(在 之前!
),因此 TeX 创建Spaces!
。
背景是我通过使用状态机的计算机程序从 HTML 动态创建 TeX 文档。并且我根据遇到的 HTML 标记不断将 TeX 内容附加到整个文档中。(请注意,这个问题不是关于如何高效地进行 HTML2TeX 转换。)我不想决定在哪里放空格(例如,如果我在某个单词后附加一个标点符号,那么我应该决定不在中间添加空格,但如果我附加另一个单词,那么我应该添加一个空格),因为这对我来说变得非常复杂。我希望 TeX 在内部做出这些决定,例如为不同的语言使用连字符。因此,我认为如果我添加单词边界而不是空格,然后 TeX 决定是否需要用空格替换这些单词边界或根本不用替换这些单词边界,这将是一个解决方案。
我需要这个解决方案来配合使用latex, pdflatex and xelatex
。
我问过类似的问题,但它过于简单化,让人感到困惑:我希望 LaTeX 自动处理单词的前后空格,而无需我添加空格
更新:添加此示例:
\documentclass{article}
\usepackage{xspace}
\begin{document}
He said: ``\xspace Look\xspace \emph{Mummy\xspace !\xspace no}\xspace Spaces\xspace!\xspace ''
blah\xspace (\xspace see\xspace here\xspace)\xspace .
\end{document}
上面的代码运行正常,除非前面是引号/括号,后面加了一个空格。我不希望那里有空格。我不想做这个决定,而是让 TeX 来决定。