9

我正在使用 vim 的隐藏功能以更易读的形式显示我的乳胶文件。

此外,我正在使用 vim-latex 插件,它为数学环境创建折叠,然后显示标签和环境内容的开头。

示例:纯乳胶代码中的数学环境如下所示:

\begin{align}
   \xi = \cos \alpha
   \label{eqn:test}
\end{align}

使用 vim 的隐藏功能,它显示为

\begin{align}
   ξ = \cos α
   \label{eqn:test}
\end{align}

当 vim 现在创建折叠时,它显示为

+--  4 lines: align (eqn:test): \xi = \cos \alpha

我现在的问题是:是否有可能让 vim 将隐藏应用于折叠的描述,使其如下所示?

+--  4 lines: align (eqn:test): ξ = \cos α
4

1 回答 1

3

一般来说,折叠文本和隐藏可以结合使用。但这需要自己实现,遵循隐藏逻辑。

该选项foldtext定义了折叠关闭时要显示的文本。选项的值可以是 vim 函数或表达式。所以我们可以对原文做很多修改。

隐藏。通常是这样:当 X 模式匹配时,显示 Y 而不是 X。所以我们可以编写一个函数,读取 foldstart 行,检查隐藏语法模式,如果该行匹配任何,如果为 True,则删除那些匹配的部分,并显示cchar。我们将此函数设置为foldtext选项的值。当然仅适用于某些文件类型。

为了突出显示,这两个组可用于折叠文本。

Folded      line used for closed folds
FoldColumn  'foldcolumn'

这是我能想到的。如果有人可以有更好/更简单的方法来做到这一点,我很高兴学习。例如,一些我不知道的内置函数可以在这种情况下提供帮助。

于 2013-08-16T20:51:47.510 回答