请教一个VIM折叠问题,把每个中括号为标题下面的内容折叠起来

[1024x768(8x16)]CompCharSet=134CompFontName=TahomaCompfontsize=9CompFontStyle=400Font... [1024x768 (8x16)]
CompCharSet=134
CompFontName=Tahoma
Compfontsize=9
CompFontStyle=400
FontName=Tahoma
FontNameDialog=Tahoma
FontNameWindow=Tahoma
FontSize=9
FontSizeWindow=9
FontWeight=400
FontWeightWindow=400
Iconsize32=16
maximized=1
Tabstops=249,252,311,193,688,150
[1152x864 (8x16)]
CompCharSet=134
CompFontName=Tahoma
Compfontsize=9
CompFontStyle=400
FontName=Tahoma
FontNameDialog=Tahoma
FontNameWindow=Tahoma
FontSize=9
FontSizeWindow=9
FontWeight=400
FontWeightWindow=400
Iconsize32=16
maximized=1
Tabstops=299,301,361,241,773,150

这是我TC的INI 我希望把每个中括号为标题的下面的内容折叠起来
请问VIM怎么实现?
展开
 我来答
hqxz556
2014-04-10 · TA获得超过2830个赞
知道大有可为答主
回答量:1686
采纳率:93%
帮助的人:555万
展开全部

vim 默认一般是手动折叠代码。方法是选中数行后按 zf。

它的优点是灵活(还有一个更大的优点是不知道折叠功能的,不会看不全代码),缺点是得自己定义折叠,不方便。


如果是程序代码,一般可以按缩进折叠或者按语法折叠。它们的好处是 vim 内置的,不用操什么心,但灵活性也略差(一般工作的也不错)。


还有就是按标记折叠,也灵活,但是要往文件里写一些 vim 的语法标记。程序如果可以加注释的话,就不受影响。


按表达式折叠,是一个很折衷的方法。既不用往文件里写东西,也有相当足够的灵活性。缺点是写个适用的表达式需要比较高超的正则表达式水平,和足够的耐心与时间。不过定义好了,写在 ftplugin 里可以避免每次输入命令。


楼主如果希望对所有的 ini 文件都执行这个缩进的话,可以试试这个方法。在 .vimrc 里加上:

au FileType dosini set fdm=expr fde=getline(v:lnum)[0]=='['?0:1
博思aippt
2024-07-20 广告
作为深圳市博思云创科技有限公司的工作人员,对于Word文档生成PPT的操作,我们有以下建议:1. 使用另存为功能:在Word中编辑完文档后,点击文件->另存为,选择PowerPoint演示文稿(*.pptx)格式,即可将文档内容转换为PPT... 点击进入详情页
本回答由博思aippt提供
acrofox
2014-04-09 · TA获得超过577个赞
知道小有建树答主
回答量:346
采纳率:0%
帮助的人:296万
展开全部
:set foldmethod=expr

:set foldexpr=getline(v:lnum)[0]=='['?1:(getline(v:lnum+1)[0]=='['?'<1':'=')
更多追问追答
追问
请问下 能不能不把中括号折叠 之折叠中括号之间的内容!
追答
可以,更简单些
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式