Linux的Vim编辑器

Linux的Vim编辑器

基本介绍

Vi

Vi编辑器是所有Unix及Linux系统下标准的编辑器,它就相当于windows系统中的记事本一样,它的强大不逊色于任何最新的文本编辑器。它是我们使用Linux系统不能缺少的工具。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,学会它后,您将在Linux的世界里畅行无阻。

Vim

Vim是从 Vi 发展出来的一个文本编辑器,它可以当作Vi的升级版本,是程序开发者的一个很好用的程序开发工具。

Vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,代码补完、编译及错误跳转等方便编程的功能特别丰富,方便程序设计,在程序员中被广泛使用。

Vim 会依据文件扩展名或者是文件内的开头信息, 判断该文件的内容而自动的执行该程序的语法判断式,再以颜色来显示程序代码与一般信息。它里面加入了很多额外的功能,例如支持正则表达式的搜索、多文件编辑、块复制等等。 这对于我们在Linux上进行一些配置文件的修改工作时是很棒的功能。

三种模式

一般模式/正常模式

用户刚刚启动 vi/vim,便进入了一般模式/正常模式[打开文件后默认进入的模式],在该模式下是不能对文件直接编辑,可以输入快捷键进行一些操作(删除行,复制行,移动光标,粘贴等等)

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。

以下是常用的几个命令:

  • i 切换到编辑模式,以输入字符。
  • x 删除当前光标所在处的字符。
  • : 切换到命令行模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了一般模式,按下i,切换到编辑模式

一般模式只有一些最基本的命令,因此仍要依靠命令行模式输入更多命令。

编辑模式/插入模式

在一般模式中可以进行删除、复制、粘贴等的操作,但是却无法编辑文件的内容,只有当到你按下i之后才会进入编辑模式。这时屏幕的左下方会出现【INSERT或 REPLACE】的字样提示,而如果要回到一般模式时, 则必须要按下Esc才可退出编辑模式

编辑模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DELETE,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页

命令行模式

在这个模式中可以在末行输入命令来对文件进行操作(搜索、替换、保存、退出、撤销、高亮等等)。输入:就可以将光标移动到最底下那一行进入命令行模式,可以提供查找、读取、存盘、替换字符、离开Vi/Vim、显示行号等操作。

命令行模式中,基本的命令有(已经省略了冒号):

  • wq 保存文件内容并退出程序
  • q 没有修改文件内容时退出程序
  • q! 修改文件内容却不保存强制退出程序

Esc键可随时退出命令行模式,返回到一般模式

三种模式切换

Linux的Vim编辑器

常用快捷键

  • 拷贝当前行yy , 拷贝当前行向下的 5 行5yy,并粘贴p
  • 删除当前行dd, 删除当前行向下的 5 行5dd
  • 在文件中查找某个单词,在命令行模式下,输入:/关键字, 回车进行查找 ,输入 n查找下一个
  • 设置文件的行号,取消文件的行号,在命令行模式下输入**: set nu** 和**:set nonu**
  • 到文档的最末行G和最首行gg
  • 撤销上一步操作u
  • 将光标快速定位到第几行上,如将光标定位到文档20行上:
    1. 显示行号,在命令行模式输入 :set nu
    2. 一般模式输入 20
    3. 一般模式输入 shift+g