一、简介

世界上只有三种编辑器,EMACS、VIM和其它.

 

我们所处的时代是非常幸运的,有越来越多的编辑器,相对于古老的VIM和EMACS,它们被称为现代编辑器。我们来看看这两个古董有多大年纪了:

**EMACS** : 1975 ~ 2013 = 38岁
**VI** : 1976 ~ 2013 = 37岁
**VIM** : 1991 ~ 2013 = 22岁

简单列举一下程序员期望使用的编辑拥有的功能:

轻量级,迅速启动(相对于IDE)
语法高亮
自动对齐
代码折叠
自动补全
显示行号
重定义Tab
十六进制编辑
列编辑模式
快速注释
高级搜索,替代
错误恢复
迅速跳转
Mark
美观

Vim包含了上面列的所有现代编辑器的优点,并且远远多于此,比如:

无止尽的扩展:现在VIM的官方网站上已经有了4704个扩展,并且在不断增加…
完美的跨平台:
开源
用起来很酷
最关键的,$

 

二、配置

1)查看配置

2)终极配置

 

三、使用教程

 1、基础用法

VIM自带的vimtutor是最好的Vim入门教程,只需半个小时左右的时间,就可以掌握Vim的绝大部分用法

 

2、高级用法

1)代码折叠

2)多文本搜索

3)多文本比较

4)多窗口使用

5)quickfix使用

6)复制粘贴

7)全选

8)批量缩进

9)删除空行

:g/^\s*$/d

10)在vim中使用make

 

四、其他

1)源码下载

Vim完全教程的更多相关文章

  1. 做中学之Vim实践教程

    做中学之Vim实践教程 Vim VIM是一个非常好的文本编辑器,很多专业程序员使用VIM编辑代码,即使以后你不编写程序,只要跟文本打交道,都应该学学VIM,可以浏览参考一下普通人的编辑利器--Vim这 ...

  2. Vim入门教程

    尽管网上有成打的Vim在线教程,但是要么艰深晦涩,要么太过肤浅.本教程的目标让每个阶段都有斩获,从理解它的哲学(将和你终身相伴)到超越现在编辑技巧,成为其中的牛人. 简单来说,本教程的学习方式将使你终 ...

  3. Vim基础教程

    一.简介 世界上只有三种编辑器,EMACS.VIM和其它. 我们所处的时代是非常幸运的,有越来越多的编辑器,相对于古老的VIM和EMACS,它们被称为现代编辑器.我们来看看这两个古董有多大年纪了: * ...

  4. Vim 入门教程

    Vim 入门教程 转载请保留以上信息 Vim 的教程相对比较零散,系统的教程比较少,我也阅读过不少教程,走过很 多弯路.借着 Vim-china 组织组建这一契机,整理下自己学习过的内容, 分享给大家 ...

  5. vi, vim 使用教程

    vim 使用教程 ```shcd lscd ../cd -pwdcprmmkdirtarmvmbtar -zcfchmodsshtopqfree ``` 数字0含空字符到行首,^不含空字符到行首.G移 ...

  6. VIM 官方教程

    VIM 官方教程 zh-hans vim official documents https://www.vim.org/docs.php https://vimhelp.org/ translatio ...

  7. linux下的vim使用教程

    命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim ...

  8. Vim简明教程【CoolShell】

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...

  9. Vim简明教程【CoolShell】(转)

    vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的.下面的文章翻译自<Learn Vim Progress ...

随机推荐

  1. windows和linux下如何远程获取操作系统版本和主机名

    远程获取windows和linux操作系统版本和主机名需要具备以下条件: 假设 主机A(windows 7),ip:192.168.12.2 主机B(centos 6.3),ip:192.168.12 ...

  2. mongodb从入门到精通

    1.mongodb官网下载文件2.安装mongodb 3.配置安装成服务 4.记得连接的时候修改连接的ip地址 5.显示当前使用的数据库名——dbs 6.查找所有数据库——show dbs 7.查找所 ...

  3. Java8给出一个时间段,计算该时间范围由哪些日期(天)和月份组成

    1. 判断时间段是否合法: 2. 循环判断记录数是否大于0 3. 根据起始时间算出该月的第一天.最后一天和这个月有多少天: 4. 判断起始时间是否是该月第一天,如果是,再判断结束时间与该月最后一天的大 ...

  4. HTML css 样式表

    CSS样式表 2.1.样式表的基本概念 2.1.1.样式表分类 1.内联样式表 和html联合显示,控制精确,但是可重用性差,冗余多. 例:<p style="font-size:14 ...

  5. git---远程仓库版本回滚

    开发中,发现有错误版本提交带远程分支master,怎么处理? 1 简介 最近在使用git时遇到了远程分支需要版本回滚的情况,于是做了一下研究,写下这篇博客. 2 问题 如果提交了一个错误的版本,怎么回 ...

  6. 如何自学web安全(详细路径)

    看到学习路径,收藏一下https://blog.csdn.net/q251500/article/details/79441316

  7. Java:类加载机制及反射

    一.Java类加载机制 1.概述 Class文件由类装载器装载后,在JVM中将形成一份描述Class结构的元信息对象,通过该元信息对象可以获知Class的结构信息:如构造函数,属性和方法等,Java允 ...

  8. zabbix 利用python脚本实现钉钉告警

    Zabbix 利用python脚本实现钉钉告警 1.安装python3.6环境 2.创建python脚本 cd local/zabbix-4.0.3/share/zabbix/alertscripts ...

  9. ES5新增数组方法every()、some()、filter()、map()

    JavaScript ES5标准中新增了一些Array方法,如every().some().filter().map().它们的出现使我们能够更加便利地操作数组,但对IE9以下浏览器的兼容性比较差.下 ...

  10. Android学习路-activity活动

    activity即活动,是一种包含用户界面的组件,用于与用户进行交换   创建activity类 1.类继承Activity, activity传递一个bundle对象,可以获得onSaveInsta ...