一、简介

世界上只有三种编辑器,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. ABAP 字符串函数

    CONCATENATE:合并字符串. CONCATENATE f1 … fn INTO g [SEPARATED BY h]. 1 * CONCATENATE合并字符串 2 DATA: c1(10) ...

  2. maintenance

    Maintenance Primitives Operator经常需要在包含Mesos集群的机器上执行维护任务. 大多数Mesos升级可以在不影响运行的任务的情况下完成,但是有些情况下维护可能会影响正 ...

  3. js循环对象,(多层数组)

    javaScript遍历对象.数组总结   在日常工作过程中,我们对于javaScript遍历对象.数组的操作是十分的频繁的,今天抽空把经常用到的方法小结一下,方便今后参考使用!     javaSc ...

  4. linux下面设置密码失效参考

    chage -E 2005-12-31 user1 设置用户口令的失效期限

  5. jstl-随机数-借用jsp嵌入的代码

    ) %></c:set> ${rand }

  6. mongodb 副本集部署

    1.安装三节点linux环境:196.168.1.111,196.168.1.112,192.168.1.113(三节点可彼此ping通) 2.三节点安装mongodb,参考https://blog. ...

  7. PR回写 所有物料规划PR时对净需求+最小采购批量+安全库存+舍入值的先后考虑逻辑

    所有物料规划PR时对净需求+最小采购批量+安全库存+舍入值的先后考虑逻辑20171207-1228.docx PR回写案例一: '; --SAFE_QTY:安全库存 ' ; -- MIN_LOT_SI ...

  8. streaming窗口操作

    之前一直对窗口操作不太理解.认为spark streaming本身已经是分片计算,还需要窗口操作干啥. 窗口操作最为简单易懂的场景就是,在M时间间隔计算一次N时间内的热搜.当M=N的时候,就像上述所说 ...

  9. php递归获取目录下所有文件

    <?php function getFileList($dir){ $dir=iconv("utf-8","gb2312",$dir); if ($hea ...

  10. java面试技巧

    简历 1.HR看简历,都是看技术关键词.可以多看招聘要求,简历上要多写些关键词.比如io,集合,多线程,并发,spring,mysql,分布式等等. 2.可以准备多份简历,根据不同的jd发送不同的简历 ...