vim的个性化配置- 再谈vim的折叠和展开 -- 彻底掌握vim 的展开和折叠!
http://www.wklken.me/posts/2016/02/03/some-vim-configs.html
一般把 设置成 逗号, 是比较好的, 因为逗号比默认的leader 要方便键入!
有必要使用vim中的折叠! 因为很多时候只需要关注当前的代码, 其他代码的展开会严重 影响当前代码的查看和滚动, 所以折叠是很重要, 很实际的操作需求. 只有你经常被某个东西 所折磨的时候 你才会发现它的解决方案有多重要! 例如:折叠!!
彻底掌握vim 的展开和折叠!
- vim的折叠必要性! 非常必要, 在简化页面, 关注目标代码的时候非常有用!
- vim折叠的方式, 有几种: manual, indent , marker,...最常用的就是前面这三种! 每一种不同的折叠方式中的 折叠效果是不同的! 所以要根据你的语言来进行 选择折叠方式
- 通常对于web前端的开发, 主要是层级 标签的缩进显示, 所以对于html, php等语言页面, 主要使用 indent的方式进行折叠! 而对于像thinkphp等 后端主要进行代码的时候, 主要是对函数 类 等进行操作, 这时, 选择 marker 方式进行折叠! 这里的marker 系统默认的就是 大括号{}, 所以使用marker就很适合
vim的默认 折叠方式 是manual! 所以你要 在 (.)vimrc中, 进行设置: set fdm=indent. 但是注意, 如果设置了非manual的折叠方式时, 如indent, 则手动方式的折叠方式将失效.
- 要恢复vim默认的 手动折叠方式, 使用命令: set fdm& (这个&表示去掉配置的 "按位与", 即恢复为默认设置!)
- 要折叠时, 首先要创建 折叠: 使用命令: zm, 或zM , 然后后面的所有对 折叠的 操作才会生效!
主要有这样一些命令操作: zm/zM, zM表示关闭有递归/嵌套的折叠! zr /zR(跟zi的功能类似!) , 表示打开..... 而zi则是在 关闭/打开"所有"
所有, 包括有嵌套的折叠在内折叠之间进行转换. 而zo 和zc 只是在当前元素的 直接子元素 的展开/折叠.设置可视化的 折叠标志: set foldcolumn =4, 或 8. 则会出现 加号或减 号和竖线等符号, 可以使用鼠标进行可视化的 折叠和展开! 要去掉 折叠标识栏: 使用命令: set foldcolumn&
折叠的含义: 就是只有当前元素 具有 "子元素" 具有层次关系的时候, 才可以折叠, 折叠的时候, 只有 "子元素" 会被 折叠~ 而父元素 是不会被折叠的, 折叠的时候, 显示的是: +--- 折叠的行数 +折叠开始处的内容: ....
关于折叠的跳转
- [z, ]z命令, 是在一个打开的折叠 的开始处和 结尾处 两者来回 跳转. (注意是, 同一个折叠内)
- 而zj, zk 则是如果 现在有多个 折叠, 则在这些 "多个" 折叠之间 进行移动!
折叠, 到底是折叠的哪些内容?
当然是折叠当前行所在的内容. 如果当前行同级的有多个, 则都会被折叠. 如果当前行 是包含子内容的标签, 则整个标签都会被 折叠.
折叠时, 当前行/及其子内容, 都将被折叠隐藏 , 显示为绿色和 虚线的样式.
vim的个性化配置- 再谈vim的折叠和展开 -- 彻底掌握vim 的展开和折叠!的更多相关文章
- vim的个性化配置(方便编程)
在用户主目录下新建vimrc即可.例如: vim ~/.vimrc 然后复制进去即可. 配置如下: "关闭vim一致性原则 set nocompatible "显示行号 set ...
- Linux : Vim 使用与配置 (附 GitHub 自动化配置脚本)
由于经常使用 vim 编辑配置文件,有时候也会进行使用vim 编写一些脚本和c/c++ 程序,所以配置一个常用的 vim 是很是必要的.这篇博文主要是记录vim使用和配置相关的一些知识点. 关于vim ...
- vim安装及个性化配置
1.安装vim,并且vim命令的别名设置为vi yum install vim -y (如果不能识别vim命令,需要先安装vim) vi /etc/bashrc 或者 vi ~/.bashrc 在最后 ...
- vim + ctags + taglist配置和使用
vim +ctags + taglist ,ctags+cscope 安装配置和使用 内容:VIM下ctags和taglist的安装配置方法:一键安装 ctags和cscope的方法 :vim语法高亮 ...
- vim插件和配置
vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...
- Mac 下升级 vim 并自己配置 vim 的过程
1.升级 vim 我自己 MacBook Pro 的系统还是 10.11 ,其自带的 vim 版本为 7.3 ,我们将其升至最新版: 使用 homebrew : brew install vim -- ...
- vim的简单配置
本文大部分内容转载自:https://blog.csdn.net/lhy2932226314/article/details/69668891 vim是从 vi 发展出来的一个文本编辑器.功能丰富,在 ...
- 通过Vim+少量插件配置一个高效简洁的IDE
最近本人在看<TCP/IP Illustrated Volume2:The Implementation>这本书,自然要下载4.4BSD-Lite的源代码配合书本一起研读.以前学习Vim的 ...
- Vim YouCompleteMe 安装配置
YouCompleteMe是很强大的vim插件,可以提供强大的补齐功能,曾经多次尝试安装,都没有配置成功,最近在一个契机下,看到有同事的配置,自己在边尝试和边咨询后,终于也搞定了,遂记录下. 官网有最 ...
随机推荐
- Jmeter(五)_函数
JMeter提供了很多函数,如果能够熟练使用,可以为脚本带来很多方便. JMeter函数是一种特殊值,可用于除测试计划外的任何组件. 函数调用的格式如下所示:${__functionName(var1 ...
- centos7.2 源码编译安装php7.2.4 apache2.4.37 https证书安装
一.php7.2.11源码安装 1.下载php7.2.11 wget http://cn2.php.net/downloads.php/php-7.2.11.tar.gz#### 2.安装依赖 yum ...
- 推荐两个国外网站-帮你优化网站SEO和预测下期的PR值
第一个:http://www.domaintools.com/ (谷歌SEO网站优化伴侣)可以测试你优化网站的分数. 这里使用说明,简单说一下吧: 打开网站后输入自己的域名,点击搜索按钮 第二个查看分 ...
- java执行Shell命令
java程序中要执行linux命令主要依赖2个类:Process和Runtime首先看一下Process类:ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机 ...
- Service 的 onStartCommand(Intent, int, int) 返回值
(1)START_NOT_STICKY If the system kills the service after onStartCommand() returns, do not recreate ...
- java-信息安全(八)-迪菲-赫尔曼(DH)密钥交换【不推荐,推荐Oakley】
概述 信息安全基本概念: DH(Diffie–Hellman key exchange,迪菲-赫尔曼密钥交换) DH 是一种安全协议,,一种确保共享KEY安全穿越不安全网络的方法,它是OAKLEY的一 ...
- Python 列表 extend() 方法
描述 Python 列表 extend() 方法通过在列表末尾追加可迭代对象中的元素来扩展列表. 语法 extend() 方法语法: L.extend(iterable) 参数 iterable -- ...
- openstack 部署笔记--keystone
控制节点 安装keystone包 # yum install openstack-keystone httpd mod_wsgi keystone配置文件 # vim /etc/keystone/ke ...
- [LeetCode] 851. Loud and Rich_ Medium tag: DFS
In a group of N people (labelled 0, 1, 2, ..., N-1), each person has different amounts of money, and ...
- iOS UI基础-4.1应用程序管理 字典转Model
用模型取代字典 使用字典的坏处 一般情况下,设置数据和取出数据都使用“字符串类型的key”,编写这些key时,编辑器没有智能提示,需要手敲 dict[@"name"] = @&qu ...