如何在空行处禁用新段落?

如何在空行处禁用新段落?

为了使乳胶源更易于解析,我想知道是否可以(本地或全局)禁用乳胶遇到空行时创建新段落的默认行为。

显然,当我不想要某个段落时,我总是可以在空行上放置一个 %。不过,我想知道是否有其他解决方案。

最后,我还想知道这样的替代解决方案是否被认为是好的形式。

答案1

空行产生新段落的机制比 LaTeX 的级别要低;它是 TeX。你可能需要阅读TeX 按主题分类基本上有两种可能性,这两种可能性当然都应该局限于一个群体。

  1. 重新定义\par,例如\let\par\relax
  2. 重新定义\endlinechar为 32,这样实际的(平台相关的)行尾标记将被空格标记替换。您还可以将其设置为 0-255 范围之外的某个值,这意味着不会在输入流中插入任何内容。

在这两种情况下,请注意,如果一行以控制序列结尾,则必须注意输出中的空格。您也可以使用 catcode,但我不确定与 1. 和 2 相比,这样做有什么好处(除了空格问题可能更容易解决)。

话虽如此,但还是要回答你的最后一个问题:不,我当然不认为这是个好主意。在只有你才能看到的代码中,你当然可以做任何事情,但是一旦你需要在某些项目上进行协作,这样的技巧就会引起很多混乱。提高可读性同时防止插入\par标记的标准方法就是你所描述的方法。%实际上,不必作为第一个字符出现;它之前的空格会被自动忽略。如果你在环境中使用缩进,这会很有用:

\begin{align}
  something &= some complicated expression \\
  %
  other &= more complicated stuff
\end{align}

相关内容