Vi 、Vim与Emacs 文本编译器

在这里插入图片描述

Vi 、Vim与Emacs 文本编译器

1、vi、vim
vi是一种文本编辑器,是Visual interface的简称;
而vim则是vi的强化版vi plus,专业全称Vi improved。

为什么要学习vi ?
1)所有的Unix like系统都会内建vi文本编辑器,而其他的文本编辑器则不一定存在
2)许多个别软件的编辑接口都会主动呼叫vi 3)vim具有程序编辑的能力,可以主动的以字体颜色来辨别语法的正确性,方便设计程序
4)因为程序简单,编辑速度相当快速。

2、vi拥有5种编辑模式

  • 命令模式(其他模式进入命令模式—其他模式下按ESC)
  • 输入模式(命令模式下进入输入模式—按a、 i、 o、 A、 I、 O (注意输入模式下左下角会出现INSERT))
  • 末行模式(命令模式进入末行模式下按----shift+: 此时左下角会出现:)
  • 可视化模式(命令模式进出可视化模式按—v)
  • 查询模式(在命令模式下查询时按—?(从后往前) /(从前往后))

3、模式之间的切换

  • 命令模式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 输入模式
    1、新增
    a:从光标所在位置后面开始新增资料,光标后的资料随新增资料向后移动
    A:从光标所在列最后面的地方开始新增资料
    2、插入
    i :从光标所在位置前面开始插入资料,光标后的资料随着新增资料向后移动
    I:从光标所造列的第一个非空白字元前面开始插入资料
    3、开始
    o:在光标所在列下新增一列并进入输入模式
    O:在光标所在列上方新增一列并进入输入模式
  • 末行模式

这里是引用
在编辑模式下退出(ZZ保存并退出)在这里插入图片描述
在这里插入图片描述

4、在编辑模式下移动光标

  • 逐字符移动
    h:左
    l:右
    j:下
    k:上
    #h:移动#个字符
    在这里插入图片描述
    按下4h 就会向左移动4个字符
    在这里插入图片描述
  • 以单词为单位移动
    w:移至下一个单词的词首
    e:跳至当前或下一个单词的词尾
    b:跳至当前或下一个单词的词首
  • 行内跳转
    0:绝对行首
    ^:行首的第一个非空白字符
    $:绝对行尾
  • 行间跳转
    #G:跳至第#行
    G:最后一行

注意:在末行模式下,直接给出行号即可
:5 直接跳到第5行

5、删除

  • x:删除光标所在处的单个字符
  • #x:删除光标所在处及向后的共#个字符
  • dd删除光标所在行在
  • #dd:删除包括当前光标所在行内的#行
  • dw删除光标所在字节内之后的内容(包括光标位置)
  • de剪切删除光标所在字节内之后的内容(包括光标位置),可配合p命令使用

6、复制命令y
yy:复制一行
#yy:复制包括当前行往下的#行
7、粘贴命令p

  • p:如果删除或复制为整行内容,则粘贴在光标所在行的下面,若为非整行,则粘贴在光标所在字符的后面
  • P:如果删除或复制为整行内容,则粘贴在光标所在行的上面,若为非整行,则粘贴在光标所在字符的前面

8、撤销

  • u:撤销前一次的编辑操作,按几次u就撤销几次操作
  • #u:撤销此前的#次操作
  • Ctrl+r 撤销最近一次的撤销操作

9、查找并替换

  • s:末行模式的命令
  • 使用格式:s/要查找的内容/修饰符
  • 修饰符:
    i:忽略大小写
    g:全局替换,一行中若匹配到多次,则都替换
    在这里插入图片描述
    练习:
    在这里插入图片描述
    在这里插入图片描述
    10、使用vim编辑多个文件
    vim file1 file2 file3
    :next 切换至下一个文件
    :prev 切换至前一个文件
    :last 切换至最后一个文件
    :first 切换至第一个文件
    退出:qa 全部退出
    总结:vi 的命令都是一些需要记的,要多练习 ,需要理解的不多,所以要多练。

猜你喜欢

转载自blog.csdn.net/yr137157/article/details/83019661