vim代码折叠indent折叠,maker折叠

来源:互联网 发布:数据分析模型及产出 编辑:程序博客网 时间:2024/04/27 18:18

indent折叠方法

在.vimrc文件中添加设置

: set foldmethod=indent

这个就是以缩进进行折叠

indent折叠命令
indent方式,vim会自动利用缩进进行折叠,我们可以使用现成的折叠成果.以大括号进行折叠
我们可以在折叠处输入以下命令:

zc 折叠
zC 对所在范围内所有嵌套的折叠点进行折叠
zo 展开折叠
zO 对所在范围内所有嵌套的折叠点展开
[z 到当前打开的折叠的开始处。
]z 到当前打开的折叠的末尾处。
zj 向下移动。到达下一个折叠的开始处。关闭的折叠也被计入。
zk 向上移动到前一折叠的结束处。关闭的折叠也被计入。



折叠前:

for(my $i=0; $i<(length($dna)-2);$i+=3)  {      $codon=substr($dna,$i,3);      $protein.=codon2aa($codon);  }  print "I translated the DNA\n\n$dna\n\n into the protein\n\n$protein\n\n";  exit;    

折叠后,你复制的结果还是一样的,所以截个图吧:



从图上我们看到大括号中间的内容已经被折叠了,这样有时候让我们从更高的角度上来看我们的代码。


maker折叠:

在.vimrc文件中添加设置

: set foldmethod=maker

然后进行标记折叠

zf56G,创建从当前行起到56行的代码折叠;
10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。
10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。
在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],<>等)。
zd      删除 (delete) 在光标下的折叠。仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。
zD     循环删除 (Delete) 光标下的折叠,即嵌套删除折叠。
仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。
zE     除去 (Eliminate) 窗口里“所有”的折叠。
仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。