vim 折叠技巧

转自:http://www.2cto.com/os/201203/122133.html

主要命令:

zf-创建折叠

zf20G--创建折叠,从当前行折叠到第20行

zfgg--创建折叠,从当前位置折叠到文件头,非常适合编程的时候隐藏文件顶部的头文件包含,源文件注释

写程序时都是以函数为单位,可以很方便的折叠一个函数,而保留函数头部。如下函数,我们将光标停留在{处,输入zf%(%在vim中表示括号匹配,此处指匹配到另一个对应的大括号)
#include <stdio.h>
int main(int argc, char* argv[])
{
return 0;
}

效果就出来了:
#include <stdio.h>
int main(int argc, char* argv[])
+:-- 3行  {-------------------------------------------------}

若要再阅读那些文本,则可以键入以下命令打开该折叠:
zo
 
你还可以用一下命令再关闭该折叠:
zc
 
所有的折叠命令都以‘z‘ 开头。展开你的想像力,这个字母看起来就像一张折叠起来的
纸的侧面。而"z" 后面可用的字母,由于采用了帮助记忆方法选择,很容易记得住:
 
        zf      F-old creation (创建折叠)
        zo      O-pen a fold (打开折叠)
        zc      C-lose a fold (关闭折叠)
 
 
一次打开所有折叠:
zr  zR(用于有递归折叠的时候,功能与zr类似)
一次关闭所有折叠:
zm  zM(用于有递归折叠的时候,功能与zm类似)

更常用的命令:
zi (当我们创建了折叠以后,可以使用zi关闭所有折叠,将光标移到想浏览的文本处,再按zi,打开所有折叠)
 
 
折叠控制:
有时候,查看或记住一个折叠在哪儿,挺不容易的。更别说用|zo| 命令来打开了。要查
看那些已定义的折叠:
 
        :set foldcolumn=4
 
这个命令将在窗口左边显示一小栏来标识各个折叠。一个"+" 表示某个关闭的折叠。一
个"-" 表示每个打开的折叠的开头,而"|" 则表示该折叠内其余的行。
取消左边的小栏:
        :set foldcolumn&
 
你可以在折叠栏内用鼠标点击"+",以打开一个折叠。点击"-" ,或在它之下的某个
"|" ,将关闭一个打开的折叠。
 
存储和恢复一个折叠:
当你关闭一个文件,去做其他事情,或编辑其他文件,回来以后编辑同一个文件,如果折叠是手动方式创建的,则所有的折叠都消失了!为了保存折叠,可以使用:
:mkview
这将存储那些影响文件视图的设定及其他内容。
稍后回到同一个文件时,可以重新载入这个视图:
:loadview
 
你可以为一个文件储存多至十个视图。例如,把当前设置储存为第三个视图,并载入第
二个视图:
 
        :mkview 3
        :loadview 2
 
 
依赖缩进折叠:
如果希望依赖缩进折叠,则首先需要设置
:set foldmethod=indent
 
如果你写的代码比较规范,不规范也没事,先全部选中,然后按“=”,代码就规范一些了。完整的命令是ggvG=
然后试试zm,zr有什么效果,这个功能对于程序员还是挺有用的。当我们设置了foldmethod后就不能再手动创建折叠了,对于我这样喜欢不喜欢被约束的这个功能其实很不咋滴。
我们只需要重新设置foldmethod就可以了。
:set foldmethod& (后面加个&就是恢复默认设置,反正我是这么理解的)
 
其他折叠方式:
依赖标识折叠
依赖语法折叠
依赖表达式折叠

参见:http://vimcdoc.sourceforge.net/doc/usr_28.html#28.6
参考资料:http://vimcdoc.sourceforge.net/doc/usr_28.html

时间: 2024-10-25 12:08:32

vim 折叠技巧的相关文章

vim 折叠代码技巧汇总

以下命令输入的方式: 如zo命令,先按z键,松开后按o键即可展开折叠. 一.打开.关闭折叠 zo 展开折叠,只展开最外层的折叠. zO 对所在范围内所有嵌套的折叠点展开,包括嵌套折叠. zc 折叠,只折叠最外层的折叠 zC 对所在范围内所有嵌套的折叠点进行折叠,包括嵌套的所有折叠. zm 这将折叠更多 (M-ore).你可以重复 “zr” 和 “zm” 来打开和关闭若干层嵌套的折叠,不然得一个一个的用zc来折叠. 如果你有一个嵌套了好几层深的折叠,你可以用这个命令把它们全部打开: zM 这将增加

(转载)两篇很牛的vim使用技巧

读本文之前请注意: 1. 本文的目标是提供一些vim的使用技巧,利用这些技巧可以提高vim的操作效率.部分技巧在vi上也可以使用,但是现在基本上都是用vim了. 2. 本文是整理和总结使用技巧,而非讲解vim入门,因此不会涉及最基本的使用,例如如何上移或下移光标,对此类操作请参阅任何一本vim或者vi教程. 3. 本文阅读对象是了解了vim的基本操作,而希望高效地利用vim进行工作的人.熟练使用vim的人自然不必细读,如果能留下您的宝贵意见,本人将感激不尽. 4. 本文由本人搜集整理,转载请注明

转载: vim使用技巧

两篇很牛的vim使用技巧   来源: ChinaUnix博客 日期: 2009.07.06 10:18 (共有条评论) 我要评论   读本文之前请注意:1. 本文的目标是提供一些vim的使用技巧,利用这些技巧可以提高vim的操作效率.部分技巧在vi上也可以使用,但是现在基本上都是用vim了.2. 本文是整理和总结使用技巧,而非讲解vim入门,因此不会涉及最基本的使用,例如如何上移或下移光标,对此类操作请参阅任何一本vim或者vi教程.3. 本文阅读对象是了解了vim的基本操作,而希望高效地利用v

vim 使用技巧

vi vim 使用技巧 本文由网络资源收集整理而成. 说明:以下的例子中 xxx 表示在命令模式下输入 xxx 并回车以下的例子中 :xxx 表示在扩展模式下输入 xxx 并回车小括号中的命令表示相关命令.在编辑模式或可视模式下输入的命令会另外注明. 1. 查找 /xxx(?xxx)       表示在整篇文档中搜索匹配xxx的字符串, / 表示向下查找, ? 表示                   向上查找.其中xxx可以是正规表达式,关于正规式就不多说了.                 

Vim 折叠

set foldmethod=indent "set default foldmethod "zi 打开关闭折叠 "zv 查看此行 zm 关闭折叠 zM 关闭所有 zr 打开 zR 打开所有 zc 折叠当前行 zo 打开当前折叠 zd 删除折叠 zD 删除所有折叠 1. 折叠方式 可用选项 'foldmethod' 来设定折叠方式:set fdm=*****. 有 6 种方法来选定折叠: manual           手工定义折叠 indent             更

《Vim实用技巧》笔记

Vim实用技巧 Table of Contents 1. Vim决问题的方式 2. 普通模式 3. 插入模式 4. 可视模式 5. 命令行模式 5.1. 操作文本的Ex命令 5.2. range服务说明 5.3. 补全 5.4. 命令行窗口–使用vim的编辑能力编辑Ex命令 5.5. 执行外部命令 6. 管理多个文件 6.1. 缓冲区列表管理 6.2. 参数列表 6.3. 窗口操作 6.4. 标签页操作 7. 打开及保存文件 7.1. 打开文件 7.2. 使用find查找文件 7.3. 使用ne

Vim实用技巧读书笔记

第一章 首先提出了vim一个理念:如何提高复用--很方便的重复之前做过的操作. 另外,作者将vim的操作分为两个步骤: 一是移动,二是操作. 针对这两个方面,通过命令:":".","."n"."N"."."."u"来达到复用. 修改操作 命令模式的dd等都是修改操作,但是容易被人遗忘的是:从进入插入模式到按回到命令模式为止.这也算是一次修改操作. 组合命令 vim将一些命令组合成一个单独

vim实用技巧1

cw会删除从光标位置到当前词结尾处的文本,并切换到插入模式. dw会删除从光标位置到当前词结尾处的文本,并移动到下一个单词的首字母. 可重复的操作及如何回退 目的                                                        操作                                    重复                 回退 做出一个修改                                    {edit}    

值得一看的书之《VIM实用技巧》

 值得一看的书之<VIM实用技巧> 我在2014年接触的linux,在使用linux vim编辑器过程中,碰到了一些vim编辑器的技巧,感觉好神奇,好强大.linux基础书籍上也有介绍vim,但是不全面,于是在2015年底,决定找一本关于详细介绍Vim的书籍,自己要系统的,完完全全的学习vim.于是便购买了<VIM实用技巧>这本书.自己断断续续的花6个月的时间,终于完完整整的看完了这本书,这本书很适合初学linux者学习,推荐给大家.看完后必受益匪浅. <VIM实用技巧>