文档章节

vim折叠

mskk
 mskk
发布于 2017/05/04 21:21
字数 585
阅读 4
收藏 0
点赞 0
评论 0
vim

转自<http://hahaxiao.techweb.com.cn/archives/769.html>

VIM 代码折叠
VIM代码折叠方式可以用”foldmethod”选项来设置,如: set foldmethod=indent

 

有6种方式来折叠代码

 

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

 

 

vim 配置文件分为全局配置文件用户配置文件

 

1. 全局配置文件查找,在.vim 中输入:echo $VIM,一般为:/usr/share/vim/vimrc
2. 用户配置文件在用户主目录下,如:/home/abeen/.vimrc

 

在vimrc文件中设置折叠方式:如set foldmethod=indent

 

选定折叠方式后,就可以使用折叠命令进行折叠操作了.常用的折叠方式为indent和marker.

 

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

 

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

 

 

marker折叠命令
marker折叠方式时,我们需要用标计来标识代码的折叠,系统默认是{{{和}}}
折叠命令

zf 创建折叠,比如在marker方式下:
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” 时有效

本文转载自:http://gaylord.iteye.com/blog/2094122

共有 人打赏支持
mskk
粉丝 2
博文 145
码字总数 2246
作品 0
宝山
程序员
VIM设置代码折叠

VIM设置代码折叠 今天看了一下别人写的程序的源代码,发现是用vim写的,代码中有趣是用vim来折叠代码,一开始我以为是用插件的,后来上网查了查,得出以下使用方面的技巧。 1. 折叠方式 可用...

又右耳刀 ⋅ 2014/10/17 ⋅ 0

将vim打造成IDE开发环境

(本文转载自 http://www.cnblogs.com/coolworld/p/5602610.html) 将vim打造成IDE开发环境 本文主要介绍将vim打造成IDE开发环境,如代码补全,高亮显示,函数跳转,函数自动注释等 首先介绍2...

shangluyi ⋅ 2017/07/22 ⋅ 0

vim折叠代码

转自:http://blog.csdn.net/atupal/article/details/8288857 VIM 代码折叠 VIM代码折叠方式可以用"foldmethod"选项来设置,如: set foldmethod=indent 有6种方式来折叠代码 1. manual //手工...

长平狐 ⋅ 2013/01/11 ⋅ 0

VIM使用系列:缩进调整、自动补全、折叠、跳转

缩进调整、自动补全、折叠、跳转这些vim操作都是一开始我也不会,在项目开发过程中熟悉掌握的,本文主要记录一下这些操作的命令,以及查找帮助,为分享也为备忘。 缩进调整 缩进调整的帮助查...

水海云 ⋅ 2013/02/21 ⋅ 2

vim快捷键与插件

vim快捷键与插件 代码补全 使用vim内置补全,快捷键或。 自动补全插件。 注释 插件 在可视模式下,对选中进行注释,可配置,默认为反斜杠(``)。 取消选中区域的注释。 查看帮助 缩进 插入模式...

LeeRockstone ⋅ 2014/09/27 ⋅ 0

一步步将vim改造成C/C++开发环境(IDE)

vim IDE界面: 1、安装Vim和Vim基本插件 首先安装好Vim和Vim的基本插件。这些使用apt-get安装即可: lingd@ubuntu:~/arm$sudo apt-get install vim vim-scripts vim-doc 其中vim-scripts是v...

元禛慎独 ⋅ 2016/10/31 ⋅ 0

vim中的代码折叠

vim支持多种代码折叠方式,最常用的是marker的方式,即在注释代码中加入标志性的字符来让vim自动识别,效果如下: 设置参数如下 " 允许折叠set foldenable" 标志折叠set foldmethod=marker" ...

lonewolf ⋅ 2014/03/10 ⋅ 0

将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager

1、安装Vim和Vim基本插件 首先安装好Vim和Vim的基本插件。这些使用apt-get安装即可: lingd@ubuntu :~/arm$sudo apt-get install vim vim-scripts vim-doc 其中vim-scripts是vim的一些基本插...

henry-zhang ⋅ 2015/06/01 ⋅ 5

get到的vim技巧,vim真是神器啊

主要是寄存器操作,简直神器, 首先,说用寄存器的命令要知道,C-R (ctrl+r) 比如说用a寄存器,就要说按Ctrl+r a 这样子. 0-9 a-z (只有小写) 都是vim的寄存器, 其中,1-9 是删除寄存器,分别记录上...

首席执行官机器人 ⋅ 2017/09/20 ⋅ 0

如果处理vim产生的swp文件 以及diff功能的使用

vi下删除swp文件 使用vi编辑器编辑文件时,经常会由于非正常退出而产生一个swp文件,以后每次进入时都会提示,非常麻烦。现将网上搜集的解决方法陈列于此: swp文件产生原因分为:1.当你用多...

AlphaJay ⋅ 2012/05/05 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

005. 深入JVM学习—Java堆内存参数调整

1. JVM整体内存调整图解(调优关键) 实际上每一块子内存区域都会存在一部分可变伸缩区域,其基本流程:如果内存空间不足,则在可变的范围之内扩大内存空间,当一段时间之后,内存空间不紧张...

影狼 ⋅ 17分钟前 ⋅ 0

内存障碍: 软件黑客的硬件视图

此文为笔者近日有幸看到的一则关于计算机底层内存障碍的学术论文,并翻译(机译)而来[自认为翻译的还行],若读者想要英文原版的论文话,给我留言,我发给你。 内存障碍: 软件黑客的硬件视图...

Romane ⋅ 50分钟前 ⋅ 0

SpringCloud 微服务 (七) 服务通信 Feign

壹 继续第(六)篇RestTemplate篇 做到现在,本机上已经有注册中心: eureka, 服务:client、order、product 继续在order中实现通信向product服务,使用Feign方式 下面记录学习和遇到的问题 贰 or...

___大侠 ⋅ 今天 ⋅ 0

gitee、github上issue标签方案

目录 [TOC] issue生命周期 st=>start: 开始e=>end: 结束op0=>operation: 新建issueop1=>operation: 评审issueop2=>operation: 任务负责人执行任务cond1=>condition: 是否通过?op3=>o......

lovewinner ⋅ 今天 ⋅ 0

浅谈mysql的索引设计原则以及常见索引的区别

索引定义:是一个单独的,存储在磁盘上的数据库结构,其包含着对数据表里所有记录的引用指针. 数据库索引的设计原则: 为了使索引的使用效率更高,在创建索引时,必须考虑在哪些字段上创建索...

屌丝男神 ⋅ 今天 ⋅ 0

String,StringBuilder,StringBuffer三者的区别

这三个类之间的区别主要是在两个方面,即运行速度和线程安全这两方面。 首先说运行速度,或者说是, 1.执行速度 在这方面运行速度快慢为:StringBuilder(线程不安全,可变) > StringBuffer...

时刻在奔跑 ⋅ 今天 ⋅ 0

java以太坊开发 - web3j使用钱包进行转账

首先载入钱包,然后利用账户凭证操作受控交易Transfer进行转账: Web3j web3 = Web3j.build(new HttpService()); // defaults to http://localhost:8545/Credentials credentials = Wallet......

以太坊教程 ⋅ 今天 ⋅ 0

Oracle全文检索配置与实践

Oracle全文检索配置与实践

微小宝 ⋅ 今天 ⋅ 0

mysql的分区和分表

1,什么是mysql分表,分区 什么是分表,从表面意思上看呢,就是把一张表分成N多个小表,具体请看mysql分表的3种方法 什么是分区,分区呢就是把一张表的数据分成N多个区块,这些区块可以在同一...

梦梦阁 ⋅ 今天 ⋅ 0

exception.ZuulException: Forwarding error

错误日志 com.netflix.zuul.exception.ZuulException: Forwarding error Caused by: com.netflix.hystrix.exception.HystrixRuntimeException: xxx timed-out and no fallback available. Ca......

jack_peng ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部