史上最简约的vi教程,10分钟包教会

从第一次接触vi/vim到如今已经十几年了,在这个过程当中,来来回回,反反复复,学习vi不少次了。linux

虽然关于vi的使用,我还远未达到“专家”的水平,但对于vi的使用,我有话说。vim

1.缘起

vi是一个编辑器,起源于unix,在linux中很是经常使用。关于vi的使用,网上有大量的教程,但质量参差不齐,很容易误导“新手”。本文的价值在于,我走了十几年的弯路,你能够少走弯路。windows

每一个人学习vi的目的不同,学习过程和学习方法也好比不一样。通常学习者分以下3种状况:编辑器

  • 新手级学习

    新手要求不高,会用基本操做便可。本文经过10分钟的学习,就能够达到这个目标。spa

  • 进阶级命令行

    大部分人目前处于这个阶段,在本文的最后,将介绍如何从进阶级步入专家级。3d

  • 专家级unix

    到这个阶段,基本上能够作到“信手拈来”,出神入化了。code

2.新手学习vi

对于新手入门vi,只要掌握打开文件,编辑,保存。

  • 打开文件

    在命令行中 vi filename,就能够打开文件进行查看和编辑。

  • 编辑

    打开文件后进行编辑的操做,主要包括“增、删、改、查”。

    和其余编辑器不一样,vi 有Normal模式Insert模式

    在Normal模式下输入i进入Insert模式,输入Esc返回Normal模式。(固然有很是多的方法进入编辑模式,如输入ao等,此处不过多说明)。

    1)增

    确保是在Insert模式下,经过键盘输入内容便可。

    [注意] 如何识别当前是在什么模式下?状态栏能够看的,或者键盘输入看。

    2)删

    删除,跟其余编辑器的操做不一样(其余编辑器是先选定,而后Delete、或者Backspace)。

    在vi中的删除是在Normal模式下,经过 x 删除一个字符,经过 dd 删除光标所在行。

    3)改

    所谓“改”,无外乎先删除,再输入。咱们经过1)和2)组合实现。

    好吧,这里仍是学一点吧: 在Normal模式下输入cw,能够替换一个“单词”。

    4)查

    vi打开的文件,若是内容很是多,须要查询,替换的时候,须要用到“查”。

    在Normal模式下,输入/,后跟须要查询的内容,而后回车便可。

  • 保存

    保存是在命令模式下输入 :w 便可,退出时命令模式下输入 :q

3.进阶学习vi

新手经过步骤2,初步掌握了vi的使用。进阶学习,须要掌握(切记下面全部的都是在Normal模式):

  • 初级光标的移动

    你可能会有疑问,新手不须要移动光标?固然须要了,只不过默认经过“上、下、左、右”箭头移动便可。其实vi中,为了更加高效,是经过 h j k l来移动光标的。

  • 高级光标的移动

    好比数字0移动到行的开头,$移动到当前行的行尾,^移动到本行第一个非空字符,

  • 各类进入Insert模式的方法

    好比在光标后插入a,在当前行下面新增一行的o,在当前行上面新增一行的shift + o,或者输入cw替换一个word

  • 查找和替换

  • 复制、粘贴

    复制经过yy,粘贴是p

    灵活掌握,好比咱们知道dd是删除当前行,光标定位到目标位置后,接着按键p是能够粘贴的。

    好比3dd是重复执行dd三次,不一而足。

  • 光标的定位

    :N,好比:100,表示光标定位到第100行。在此,须要思考,总共只有10行,会怎么样?

    gg至关因而:1

    G定位到最后一行

  • 区域选择、块操做、可视化选择

    ......

4.总结

对于新手来讲10分钟入门vi不吃亏,对于已经入门须要进阶,请自行学习:

  • Learn Vim Progressively 我的认为这个是有史以来最好的vi教程,没有之一。

  • 对于新手,也能够经过vimtutor来学习

方法就是,“用”起来就会了。虽然我用的是windows 10系统,我开发中,vs code和IntelliJ IDEA、visual studio都启用了vi的。

有图有真相:

加油,我相信你也能够入门,并成为vi专家的!

相关文章
相关标签/搜索