Vim Tip - 折叠(Folding)
·67 字·1 分钟
Vim
vim
folding
基本命令 #
zo 打开当前光标下的折叠
zO 打开当前光标下的所有折叠
zc 关闭当前光标下的折叠
zC 关闭当前光标下的所有折叠
za zo/zc
zA zO/zC
zm 关闭一级折叠层(foldlevel)
zM 关闭所有的折叠层
zr 打开一级折叠层
zR 打开所有折叠层
zj 移到当前光标的下一个折叠
zk 移到当前光标的上一个折叠
[z 移到当前打开折叠的起始位置
]z 移到当前打开折叠的结束位置
" 折叠方式为 manual 或 marker时,下面命令可用
zf{motion}/{Visual}zf 创建一个折叠
{n}ZF 创建当前光标下的n行的折叠
:{range}fo[ld] 创建范围行内的
zd 删除当前坐标折叠
zD 删除当前坐标中的所有折叠
zE 删除全部的折叠
折叠规则 #
" 手动折叠,使用 zf/zF/zd/zD/zE 自定义折叠规则
:set foldmethod=manual
" 语法折叠,根据相应编程语言的语法自动折叠
:set foldmethod=syntax
" 缩进折叠,根据缩进层次(shiftwidth)自动锁进
:set foldmethod=indent
" 特定标记折叠,所有文本将按照特定标记(默认为\{\{\{和\}\}\})自动折叠。
:set foldmethod=marker