Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1121436
  • 博文数量: 82
  • 博客积分: 3362
  • 博客等级: 中校
  • 技术积分: 500
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-05 16:27
文章分类

全部博文(82)

文章存档

2011年(1)

2010年(19)

2009年(62)

我的朋友

分类:

2009-11-11 09:29:29



最近需要折叠, 于是。 其实手册里面有, 不过手册做的太好太详细的后果往往就是让人懒得看了。 写的东西超过五六屏以后, 感觉翻来翻去就不怎么方便了, 看起来也很混乱。 这个时候最好就能折叠起来。 VIM里面也有VS里面那样的折叠功能, 而且不需要用鼠标去点那个减号和加号。
 
建立折叠
z 的意思就是他的形状, 像一个折叠的东西, 折叠相关的命令都是z开头的, 新版本的拼写检查命令也有以z开头的。 f的意思是fold。 所以zf就是折叠。 你可以在visual模式下选定, 再按zf, 可以将选定的全部折叠。 也可以zf9j, 这样可以将下面9行的内容折起来。 也可以用marker, 还可以用行号:20,50, 就可以把20行到五十行折叠起来 。 总之可以用一般的定位的方法来告诉VIM你要折叠那些地方。
 
我觉得比较有用的是匹配括号的折叠, 移动到一个花括号{上, 用zfa}, 就可以将下面的匹配的花括号之间的内容折起来, 这样可以很方便的折起函数。 其他的折叠方法还有zf/string, 可以折叠到下一个匹配的string, 不过好像不太实用。
 
使用折叠
移 动的时候在前面加一个z就可以在折叠的地方移动, 比如zj,就会跳到下一个折叠, zk就是上一个。  要打开的话可以zo,o是open的意思, zO打开所有的折叠。 关上用zc, c是close。 在zO之后用zc会关上所有打开的折叠。 折叠可以嵌套, zr可以打开第一层的折叠,zR可以打开所有层的折叠, 与之对应的是zm和zM, 是按层关上折叠。 比如说按zm, 会从最里层的层叠关起, 连续zm就会一直关到最上层的折叠。
 
查找到了折叠里面会将折叠打开, 处理完了之后要自己将折叠关上。
 
折叠选项
可以让VIM根据语法, 缩进,标记自动折叠。 用set foldmethod=foldoption 来设定。 可以查看一下。
 
保留折叠
要下一次打开的时候还保留折叠可以在离开的时候:mkview,再进来的时候:loadview就可以了。 当然也可以将这两句加到vimrc里面让其自动完成。
au BufWinLeave * mkview
au BufWinEnter * silent loadview
这样每次就可以看到上次的折叠了。

阅读(319) | 评论(0) | 转发(0) |
0

上一篇:debian的u盘安装法

下一篇:linux下软件推荐

给主人留下些什么吧!~~