2010-09-07 235 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 
/* **/ 

這會產生褶皺,就像我期望的那樣,並且比「動態」或視覺摺疊更容易處理。