文档章节

Viming

柳初心
 柳初心
发布于 2017/06/04 21:28
字数 535
阅读 3
收藏 0
vim

折叠的方式:


vim 提供 6中折叠方式

  • manual 手工定义折叠
  • indent 更多的缩进表示更高级别的折叠
  • expr 用表达式来定义折叠
  • syntax 用语法高亮来定义折叠
  • diff 对没有更改的文本进行折叠
  • marker 对文中的标志折叠

可用选项 'foldmethod' 来设定折叠方式:set fdm=*****。 注意,每一种折叠方式不兼容,即:你不能用expr又用marker方式。 目前我一般使用的都是indent 比较多。

: set fdm=indent
命令来设置成marker折叠方式。 在.vimrc文件中添加设置,可以使得每次打开vi 都启动折叠方式。 :set fdm=syntax。

indent 对应的折叠代码有:

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

使用时在大括号中间输入以上命令。 当使用marker方式时,需要用标计来标识代码的折叠,系统默认是{{{和}}},最好不要改动之:) 可以使用下面的命令来创建和删除折叠:

  • zf

    • 创建折叠,比如在marker方式下:

      • zf32G,创建从当前行起到32行的代码折叠;
      • 10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。
      • 10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。
      • 在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],等)。
  • zd

    • 删除 (delete) 在光标下的折叠。
    • 仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。
  • zD

  • 循环删除 (Delete) 光标下的折叠,即嵌套删除折叠。

  • 仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效.

  • zE

  • 除去 (Eliminate) 窗口里“所有”的折叠。

  • 仅当 'foldmethod' 设为 "manual" 或 "marker" 时有效。

© 著作权归作者所有

柳初心
粉丝 0
博文 31
码字总数 15977
作品 0
南昌
私信 提问

暂无文章

Eureka应用注册与集群数据同步源码解析

在之前的EurekaClient自动装配及启动流程解析一文中我们提到过,在构造DiscoveryClient类时,会把自身注册到服务端,本文就来分析一下这个注册流程 客户端发起注册 boolean register() t...

Java学习录
35分钟前
10
0
Java描述设计模式(15):责任链模式

本文源码:GitHub·点这里 || GitEE·点这里 一、生活场景描述 1、请假审批流程 公司常见的请假审批流程:请假天数 当 day<=3 天,项目经理审批当 3<day<=5 天,部门经理审批当 day>5 天...

知了一笑
46分钟前
8
0
总结:数组与链表

1、内存申请:数组在内存上是连续的空间;链表,内存地址上可以是不连续的。 2、查询速度:数组可以随机访问,链表必须顺序访问,即从首个元素开始遍历,逐个查找,所以数组查询很快。 3、写入...

浮躁的码农
54分钟前
6
0
HashMap源码分析

read

V丶zxw
今天
5
0
Python字符串或JSON字符串转字典dict、列表list

有3种方法 1、使用ast模块 >>> import ast>>> s = '["test",1]'>>> ast.literal_eval(s)['test',1]>>> s = '{"test":1}'>>> ast.literal_eval(s){'test': 1} 2、eval函数,这个......

编程老陆
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部