导出 Vim 折叠?

5
如何从文件中导出vim折叠,以便我可以将其传输到另一台机器?例如,假设我在本地机器上创建了折叠-“折叠”元数据存储在哪里?我可以只将其复制到另一台机器上,还是必须手动重新创建折叠?编辑:嗯,我注意到这可能是一个重复的问题,但仍然没有答案可以保存折叠信息而不修改源文件。谢谢
2个回答

5
使用:mksession命令保存您的会话,并使用vim -S Session.vim恢复它。该会话文件将还原几乎所有内容,包括折叠(尽管对文件进行更改将使其失效)。
如果您必须使用手动折叠,则可以使用其中一种自动折叠方法来简化操作:请尝试了解indentsyntaxexpr,并查找完全支持折叠的语法文件。

那么你的意思是它会在某个地方存储Session.vim文件?在哪里? - Andriy Drozdyuk
当前目录,或者您想要的任何地方。所有信息都在手册中。 - Josh Lee
由于我通常从桌面图标启动gvim,加载会话文件的另一种方法是在编辑器中执行“:source Session.vim”。(我的用法通常是晚上执行“:mks〜/ properties.vim”,如果我正在处理属性系统,则执行“:so〜/ properties.vim”;一个方便的名称来记住我正在做什么...) - dash-tom-bang

2

好的,我已经想出了一种相对无痛的方法来完成它。但这确实需要对源文件进行一些更改。

首先,将折叠标记设置为Java风格的/** 注释 **/标记:

:set foldmethod=marker
:set foldmarker=/\*\*,\*\*/

那么在我的源代码中,每当我需要一个折叠时,我只需输入:

/** This is the title of the section */
Some stuff goes here blah
...
//the line below "ends" the fold by double star
/* **/

这样做产生的折叠效果正如我所期望的,并且比“动态”或视觉折叠更容易处理。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接