vim命令记录

折叠代码

vim中共有六种代码折叠方式,不同的折叠方式有不同的折叠命令

  • manual //手工定义折叠
  • indent //用缩进表示折叠
  • expr  //用表达式来定义折叠
  • syntax //用语法高亮来定义折叠
  • diff //对没有更改的文本进行折叠
  • marker //用标志折叠

indent

配置方法

# ~/.vimrc
set foldmethod=indent

使用indent方式,vim会利用自动缩进进行折叠代码

全局折叠

关闭折叠 打开折叠
zm关闭一层折叠 zr打开一层折叠
zM关闭多层折叠 zR打开多层折叠

单行折叠

关闭折叠 打开折叠
zc关闭一层折叠 zo打开一层折叠
zC关闭多层折叠 zO打开多层折叠

快速移动

后退 前进
[z折叠开始 ]z折叠末尾
zk上一折叠 zj下一折叠

一些其他命令

自动换行等问题

设置行宽:set textwidth=78
删除换行符gq,J
自动折行(默认):set wrap
取消自动折行:set nowrap

参考资料

[1]http://vimcdoc.sourceforge.net/doc/index.html