vim的代码折叠:设置默认代码不折叠

有时候看代码时,代码太长看着不方便,特别是阅读源码时,需要把不关心的代码先折叠起来,看自己当前最关注的代码。vim中自带了代码折叠功能。

配置foldmethod可以定义折叠方式,有6种可选方式:
 
1. manual //手工定义折叠
2. indent //用缩进表示折叠
3. expr  //用表达式来定义折叠
4. syntax //用语法高亮来定义折叠
5. diff   //对没有更改的文本进行折叠
6. marker //用标志折叠
 
我选用syntax来定义折叠,这种方式比较简单,但是当配置完这个值后,你打开代码,就会发现vim默认把所有代码都折叠了,这显然不是我想要的,google一番后找到办法,设置foldlevelstart为99后,打开默认没有折叠。
 
配置:
 
"使用语法高亮定义代码折叠
set foldmethod=syntax
"打开文件是默认不折叠代码
set foldlevelstart=99
 

配置完后就可以在方法上,类上,if-else上,各种迭代器上,你想得到的块上敲入折叠命令,这里提供最简单的折叠命令:
zc 关闭折叠
zo 打开折叠
za 打开/关闭折叠互相切换
 
 
 
我的代码折叠的完整配置:
 
set foldenable              " 开始折叠
set foldmethod=syntax " 设置语法折叠
set foldcolumn=0 " 设置折叠区域的宽度
setlocal foldlevel=1 " 设置折叠层数为
set foldlevelstart=99 " 打开文件是默认不折叠代码

"set foldclose=all " 设置为自动关闭折叠
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
" 用空格键来开关折叠


 
posted @ 2012-04-03 01:28  赵小磊  阅读(12604)  评论(1编辑  收藏  举报
回到头部