使用 parskip 时,如何纠正没有注释符号的环境周围的间距?

使用 parskip 时,如何纠正没有注释符号的环境周围的间距?

我更喜欢在段落之间插入空行,并且不缩进。我知道 parskip 包可以提供此功能,但它有一个问题。在编写时

\documentclass{article}
\usepackage{parskip}

\begin{document}
  This is a block of text of paragraph 1.

  \begin{equation}
    a + b = c
  \end{equation}

  This is a continuation of paragraph 1.

\end{document}

在段落之间使用环境会被解释为其自己的段落,因此它会在环境周围添加额外的空行。要使其成为一个段落块,可以应用注释符号:

\documentclass{article}
\usepackage{parskip}
\begin{document}

  This is a block of text of paragraph 1.
  %
  \begin{equation}
    a + b = c
  \end{equation}
  %
  This is a continuation of paragraph 1.

\end{document}

这解决了我的排版问题,但也给我带来了另一个问题。我使用 Vim 编辑 .tex 文件。通过使用注释符号,Vim 会将整个块(公式前、公式、公式后)视为一个段落(Vim 文本对象)。文本对象可用于移动和编辑。例如,当环境之前的文本、环境本身和环境之后的文本被白线分隔时,我可以轻松跳转到它们。只需按几个键,就可以轻松地注释、删除或更改整个(Vim)段落。当我必须包含注释符号时,我失去了这些编辑功能,因为这样 Vim 会将环境之前的文本、环境本身和环境之后的文本视为一个段落。

简而言之:我希望 LaTeX 将三部分块视为一个段落,以防止它添加额外的空白行,但是为了便于编辑,我实际上希望在 .tex 文件中的三个部分之间保留空白行。

因此,我的问题是:我是否可以获得第二段代码的排版结果,而不必包含注释符号,从而允许我使用 vim 的段落文本对象轻松浏览我的文件?

答案1

这是正确的行为,很难改变。这是正确的,因为有时等式开始或结束一个段落,有时则不是,你需要很容易区分它们。

如果您关心代码是否组织良好,我建议用制表符或至少 4 个空格缩进所有显示的数学运算,以便区分,如下所示。这显然不会解决您的 VIm 问题,请参阅我对该问题的评论。

\documentclass{article}
\usepackage{parskip}
\begin{document}

Pellentesque elementum tincidunt viverra. Quisque nec eros sed
lorem tempor convallis sed non nisl. Suspendisse mattis, nisl
eget iaculis ullamcorper, tortor purus cursus ante, non sagittis
erat leo nec ante. Aliquam ac leo sem, vel iaculis lacus.
Phasellus feugiat vehicula nibh, in iaculis mauris mattis id.
Integer diam arcu, cursus ut rutrum quis, laoreet et quam. Cum
sociis natoque penatibus et magnis dis parturient montes,
nascetur ridiculus mus.
    \begin{equation}
        a + b = c
    \end{equation}
Integer metus lectus, volutpat vitae blandit in, ornare eu
nulla. Suspendisse potenti. Vestibulum ante ipsum primis in
faucibus orci luctus et ultrices posuere cubilia Curae;
Phasellus et malesuada arcu. Maecenas ornare porta sagittis.
Quisque vel ipsum velit, id vehicula ante. Aliquam eget risus
lorem, a sollicitudin nulla. Sed quis eros ac ante dapibus
luctus. In hac habitasse platea dictumst. Nam nec tempor nibh.
Quisque porttitor velit vel tortor semper eleifend.

\end{document}

答案2

控制显示数学上方和下方空间量的参数是\abovedisplayskip\belowdisplayskip。要设置它们,您可以添加

\AtBeginDocument{
  \setlength{\abovedisplayskip}{0pt plus 6pt minus 0pt}
  \setlength{\belowdisplayskip}{0pt plus 6pt minus 0pt}
}

你的序言。

在我看来,当使用该parskip样式时,上述值应该可以提供一些合理的间距。但是,当上下没有空行时,它会产生非常拥挤的结果。

在我看来,这个问题应该在编辑器级别(vim)而不是排版级别(TeX 和朋友)解决

相关内容