2010-09-07 218 views
5

如何从文件中导出vim褶皱,以便将其转移到其他机器上?导出Vim折叠?

例如说,我在文件中创建折叠并将其保存在本地计算机上 - “折叠”元数据的位置在哪里?我可以将它复制到另一台机器,还是必须手动重新创建折叠?

编辑:嗯,我已经注意到这可能是一个重复的问题,但仍然没有答案如何保存折叠信息而不修改源文件。

谢谢

回答

5

使用:mksession命令保存会话,然后使用vim -S Session.vim进行恢复。会话文件将恢复几乎所有内容,包括折叠(尽管对文件的更改会将其搞乱)。

这工作,如果你必须使用手动折叠,但它确实有很多更易于使用的自动折叠方法之一 - 调查indentsyntaxexpr,并查找语法文件都完全支持折叠。

+0

所以你的意思是它存储一个Session.vim文件的地方?哪里? – drozzy 2010-09-07 18:38:59

+0

当前目录或您想要的任何地方。所有在手册中。 – 2010-09-07 19:01:47

+0

因为我通常从桌面图标启动gvim,所以加载会话文件的另一种方法是在编辑器中使用':source Session.vim'。 (我的用法通常是在晚上使用':mks〜/ properties.vim',如果我正在处理属性系统,则使用':so〜/ properties.vim';一个方便的名字来记住我在做什么......) – 2010-09-07 21:34:18

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 
/* **/ 

这会产生褶皱,就像我期望的那样,并且比“动态”或视觉折叠更容易处理。