http://www.wklken.me/posts/2016/02/03/some-vim-configs.html

一般把 设置成 逗号, 是比较好的, 因为逗号比默认的leader  要方便键入!

有必要使用vim中的折叠! 因为很多时候只需要关注当前的代码, 其他代码的展开会严重 影响当前代码的查看和滚动, 所以折叠是很重要, 很实际的操作需求. 只有你经常被某个东西 所折磨的时候 你才会发现它的解决方案有多重要! 例如:折叠!!

彻底掌握vim 的展开和折叠!

  1. vim的折叠必要性! 非常必要, 在简化页面, 关注目标代码的时候非常有用!
  2. vim折叠的方式, 有几种: manual, indent , marker,...最常用的就是前面这三种! 每一种不同的折叠方式中的 折叠效果是不同的! 所以要根据你的语言来进行 选择折叠方式
  3. 通常对于web前端的开发, 主要是层级 标签的缩进显示, 所以对于html, php等语言页面, 主要使用 indent的方式进行折叠! 而对于像thinkphp等 后端主要进行代码的时候, 主要是对函数 类 等进行操作, 这时, 选择 marker 方式进行折叠! 这里的marker 系统默认的就是 大括号{}, 所以使用marker就很适合
  4. vim的默认 折叠方式 是manual! 所以你要 在 (.)vimrc中, 进行设置: set fdm=indent. 但是注意, 如果设置了非manual的折叠方式时, 如indent, 则手动方式的折叠方式将失效.

  5. 要恢复vim默认的 手动折叠方式, 使用命令: set fdm& (这个&表示去掉配置的 "按位与", 即恢复为默认设置!)
  6. 要折叠时, 首先要创建 折叠: 使用命令: zm, 或zM , 然后后面的所有对 折叠的 操作才会生效!
  7. 主要有这样一些命令操作: zm/zM, zM表示关闭有递归/嵌套的折叠! zr /zR(跟zi的功能类似!) , 表示打开..... 而zi则是在 关闭/打开"所有"所有, 包括有嵌套的折叠在内 折叠之间进行转换. 而zo 和zc 只是在当前元素的 直接子元素 的展开/折叠.

  8. 设置可视化的 折叠标志: set foldcolumn =4, 或 8. 则会出现 加号或减 号和竖线等符号, 可以使用鼠标进行可视化的 折叠和展开! 要去掉 折叠标识栏: 使用命令: set foldcolumn&

  9. 折叠的含义: 就是只有当前元素 具有 "子元素" 具有层次关系的时候, 才可以折叠, 折叠的时候, 只有 "子元素" 会被 折叠~ 而父元素 是不会被折叠的, 折叠的时候, 显示的是: +--- 折叠的行数 +折叠开始处的内容: ....


关于折叠的跳转

  1. [z, ]z命令, 是在一个打开的折叠 的开始处和 结尾处 两者来回 跳转. (注意是, 同一个折叠内)
  2. 而zj, zk 则是如果 现在有多个 折叠, 则在这些 "多个" 折叠之间 进行移动!

折叠, 到底是折叠的哪些内容?

当然是折叠当前行所在的内容. 如果当前行同级的有多个, 则都会被折叠. 如果当前行 是包含子内容的标签, 则整个标签都会被 折叠.
折叠时, 当前行/及其子内容, 都将被折叠隐藏 , 显示为绿色和 虚线的样式.

vim的个性化配置- 再谈vim的折叠和展开 -- 彻底掌握vim 的展开和折叠!的更多相关文章

  1. vim的个性化配置(方便编程)

    在用户主目录下新建vimrc即可.例如: vim ~/.vimrc 然后复制进去即可.   配置如下: "关闭vim一致性原则 set nocompatible "显示行号 set ...

  2. Linux : Vim 使用与配置 (附 GitHub 自动化配置脚本)

    由于经常使用 vim 编辑配置文件,有时候也会进行使用vim 编写一些脚本和c/c++ 程序,所以配置一个常用的 vim 是很是必要的.这篇博文主要是记录vim使用和配置相关的一些知识点. 关于vim ...

  3. vim安装及个性化配置

    1.安装vim,并且vim命令的别名设置为vi yum install vim -y (如果不能识别vim命令,需要先安装vim) vi /etc/bashrc 或者 vi ~/.bashrc 在最后 ...

  4. vim + ctags + taglist配置和使用

    vim +ctags + taglist ,ctags+cscope 安装配置和使用 内容:VIM下ctags和taglist的安装配置方法:一键安装 ctags和cscope的方法 :vim语法高亮 ...

  5. vim插件和配置

    vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...

  6. Mac 下升级 vim 并自己配置 vim 的过程

    1.升级 vim 我自己 MacBook Pro 的系统还是 10.11 ,其自带的 vim 版本为 7.3 ,我们将其升至最新版: 使用 homebrew : brew install vim -- ...

  7. vim的简单配置

    本文大部分内容转载自:https://blog.csdn.net/lhy2932226314/article/details/69668891 vim是从 vi 发展出来的一个文本编辑器.功能丰富,在 ...

  8. 通过Vim+少量插件配置一个高效简洁的IDE

    最近本人在看<TCP/IP Illustrated Volume2:The Implementation>这本书,自然要下载4.4BSD-Lite的源代码配合书本一起研读.以前学习Vim的 ...

  9. Vim YouCompleteMe 安装配置

    YouCompleteMe是很强大的vim插件,可以提供强大的补齐功能,曾经多次尝试安装,都没有配置成功,最近在一个契机下,看到有同事的配置,自己在边尝试和边咨询后,终于也搞定了,遂记录下. 官网有最 ...

随机推荐

  1. Windows下搭建Git服务器各种问题汇总(一)

    **************************************************************************************************** ...

  2. mysql 权限管理 针对某个库 某张表 授权 tables_priv表

    精确到表级别 针对db1的t3表 授予select权限 mysql> grant select on db1.t3 to 'mike'@'localhost'; Query OK, rows a ...

  3. 前端 HTML文档 详解

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. Ubuntu 下Apache安装和配置

    在Ubuntu上安装Apache,有两种方式:1 使用开发包的打包服务,例如使用apt-get命令:2 从源码构建Apache.本文章将详细描述这两种不同的安装方式. 方法一:使用开发包的打包服务—— ...

  5. vue学习之webpack

    本质上,Webpack是一个现代 JavaScript应用程序的静态模块打包器(module bundler).当 Webpack处理应用程序时,它会递归地构建一个依赖关系图(dependency g ...

  6. 如何修改WordPress网站默认登录地址wp-admin

    使用过WordPress程序建网站的学员都知道,我们使用Wordpress建好的网站,它的网站登录后台就是“网站域名/wp-admin”.如下图: 为了网站安全,如何修改Wordpress网站默认登录 ...

  7. [py]flask实现用户cmdb

    人最难做到的就是跟自己学习, 总是学习别人的, 沉淀, 过一段时间忘了刚学到的, 在向别人学习, 而非看看自己的沉淀, 殊不知, 世界上最亲近,最默契的人是自己. 用户cmdb功能概述 之前学flas ...

  8. 深度学习Momentum(动量方法)

    转自:http://blog.csdn.net/bvl10101111/article/details/72615621 先上结论: 1.动量方法主要是为了解决Hessian矩阵病态条件问题(直观上讲 ...

  9. GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.1.2/gradle-3

    Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.1.2/gradle-3 ...

  10. window.open和window.showModalDialog

    window.open window.open是打开一个新窗口 在window.open打开的窗口中刷新父页面 opener.location.reload(); 打开一个窗口格式:属性可以任意设置 ...