折叠
手动折叠(默认折叠方式)
折叠操作符z
。
普通模式下的折叠操作
折叠也是一个操作符,所以它也遵循语法规则,即动词 + 名词
。
- 启动折叠操作符
zf
,后面可以接动作(motion)或文本对象(text-object)确定折叠的范围。zf
里的f
盲猜为fold。- 举例
zfi{ # 折叠光标当前所在的大括号{里面的文本 zfa{ # 折叠光标当前所在的大括号{里面的文本和大括号本身 zfG # 从当前光标所在行开始,折叠到文件尾 zf10j # 从当前光标所在行开始,继续向下折叠10行 zfip # 折叠内部段落
- 举例
- 展开光标当前所在折叠
zo
,o
估计是open。 - 收缩光标当前所在折叠
zc
,c
估计是close。 - 其他常用命令,可查看帮助文档
:h fold-commands
za # 切换(alternative)折叠状态,只能用在已折叠/未折叠的行 zR # 展开所有折叠 zM # 收缩所有折叠
可视模式下的折叠操作
可视模式选中文本,之后按zf
即可实现折叠。
命令模式下的折叠操作
语法:{range}fold
- 折叠范围(range)常见设置
,$ # 当前行到最后一行 m,n # 第m行与第n行之间 m, # 第m行与当前行之间 ,n # 当前行与第n行之间 ,+n # 当前行及其之后的n行
- 举例
:2,8fold # 折叠2到8行 :,$fold # 折叠到末尾