1、基本介绍
linux系统会内置 vi 文本编辑器
Vim具有程序编辑的能力,可以看作是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译即错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
2、常用的三种模式
正常模式
以 vim 打开一个文档就可以直接进入正常模式(正常模式是默认的模式)。在此模式中,我们可以使用【上下左右】按键来移动光标,我们可以使用【删除字符】或【删除整行】来处理档案内容,也可以使用【复制、粘贴】来处理我们的文件数据。
插入模式
按下i、I、o、O、a、A、r、R等任何一个字母之后才会进入编辑/插入模式,一般来说按i
即可。
命令行模式
输入esc
,再输入: wq
在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开 vim、显示行号等的动作则是在此模式中完成的。
3、使用实例
第一步:准备工作
首先连接上我们的云服务器后,使用ls
指令,可以看到当前所在目录下的可见文件,如下图所示:
这里看到,因为我们远程连接服务器,使用的是root账号,所以进入的是/root
目录,使用ls
指令可以看到只有install.sh
文件(可见)。
我们使用cd ..
命令,进入父目录,再次使用ls
指令,可以看到linux
的所有目录。
第二步:新建Hello.java文件
在上面的目录下使用touch Hello.java
命令创建一个Hello.java文件。然后再次使用ls
指令,可以看到有Hello.java文件。
第三步:Vim具体操作
使用vim Hello.java
命令,进入Hello.java文件,此时为Vim的正常模式。如果出现了以下提示:
在光标处选择(E)dit anyway
即可。
出现上图界面,则说明我们进入了Hello.java的正常模式界面。此时这个文件还是空的。
要想编辑内容,我们需要从Vim编辑器的正常模式切入到编辑模式。我们按下i
键,即进入编辑模式。在界面的下方出现-- INSERT --
字样,即证明进入到编辑模式。
此时我们可以手动编写以下代码:
编写完毕后,如果我们想从编辑模式切换回正常模式,则使用Esc
键即可。如果我们想从正常模式切换回命令行模式,则使用: wq
命令即可。
4、模式切换图
其中,:wq
表示保存退出;:q
表示退出;:q!
表示强制退出,不保存。
5、Vim快捷键
拷贝当前行使用yy
命令,粘贴使用p
命令,实例如下:
拷贝当前行向下的n行,使用nyy
命令,并使用p
命令粘贴。比如我们当前行是第2行,我们想赋值粘贴当前行下的3行(即第2行到第4行),则使用3yy
命令,并使用p
命令粘贴。
在文件中查找某个单词,进行在命令行下输入/关键字
,回车查找,输入n
就是查找下一个,例如:我们在Hello.java文件中查找hello
这个单词。
输入/hello
,按Enter
键即可看到文件中所有的hello
单词被高亮了。
当前光标在第一个单词处,按n
键即可切换到下一个单词。
设置文件的行号,取消文件的行号,在命令行下输入:set nu
命令,即可设置文件的行号,:set nonu
则取消。
当一个文件内容过多时,使用G
命令,可以直接到达该文档的最末行,使用gg
命令可以到达文件的最首行。
撤销命令u
,比如在文件中编辑输入"hello",我们想撤销的话,使用u
命令即可。