结合vim的折叠和隐藏功能

时间:2013-08-16 14:20:28

标签: vim

我正在使用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 α

1 个答案:

答案 0 :(得分:2)

通常,foldtext和隐藏可以组合在一起。但这需要自己实施,遵循隐藏逻辑。

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

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

对于突出显示,这两个组可用于foldtext。

Folded      line used for closed folds
FoldColumn  'foldcolumn'

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

相关问题