vim折叠

来源:互联网 发布:wd移动硬盘格式化mac 编辑:程序博客网 时间:2024/04/28 00:23

za  
打开/关闭当前折叠 
——指的是包含当前行的最近一个折叠
zA  
循环地打开/关闭当前折叠 

——指的是所有包含当前行的折叠

zo  
打开当前折叠 

zc  
关闭当前折叠 

——以上两个都是鸡肋

zm

由最内一层折叠向上关闭这一层折叠

zr

由最外一层折叠向下打开这一层折叠

zM  
循环地关闭所有折叠 

——/*...*/和{...}

zR  
循环地打开所有折叠 

避免极端。。。够用就行。。。

总结:z+arm[ARM]

PS:估计vim的作者的风格是

void main()
{
}

的,也就是说{另起一行,但是有的人是这样的:

void main(){

}

这样折叠将会受到我认为的影响,例如函数的调用也被隐藏了,我用了一个办法:

:g/[^TAB]{$/

将搜索所有的前面不是TAB键的并且是结尾的{,通常就是上面提到的情况。

这样可以:

:g/[^TAB]{$/;|+1t+1

首先复制下面的一行

:g/[^TAB]{$/;|+1s/TAB[a-z].*/{/

将复制了的行替换成{,使用替换的方法有助于维持对齐格式。

:%s/[^TAB]{$//

将之前被选中的{去掉

试过了,这个方法是有效的。(有时候情况比较复杂,源程序使用了空格来对齐,而不是TAB,你可以根据具体情况改变一下)

原创粉丝点击