1、Vi编辑器在使用中有三种形式:一般模式,编辑模式,命令行模式。
一般来说,进入VI之后就进入了一般模式,这个时候你可以删除,粘贴,复制文件的内容。
编辑模式指的是除了可以进行一般模式的许多操作之外,还可以进行插入,修改文件内容的功能。
命令行模式,在这个模式下,你可以用一些命令来完成你对数据的操作。
无论是哪个模式,如果想退回到一般模式下,按退出键即可。
PS:关于三个模式,我们要注意的是,一般模式和编辑模式可以相互转化,一般模式可以和命令行模式相互转化,但是编辑模式和命令行模式不能转化,也就是说,当我们处理好文件的时候,需要退回到一般模式之后才可以转化到命令行模式再执行相关的操作。
2、Vim的恢复机制
在编译文件不正常结束的情况下,VIM编辑器会提供一个恢复机制,来拯救我们来不及保存的修改。每一次当我们编辑一个文件的时候,都会在该文件夹下创建一个.swap的文件,这个文件的文件名和我们编辑的文件名相同。如果我们上一次没有正常关闭这个文件的时候,那么当我们再次打开这个文件的时候,我们就会看见一些信息。
这就是VIM编辑器的恢复机制,你可以选择一些操作来完成你的目的。
如果我们不想恢复,那么直接 D删掉swp文件,之后系统会自动建立一个这一次的新的swp文件,因为swp文件就是暂存每一次对文件的更改。如果想恢复那么直接R即可。记得,如果我们完成了此次的修改,务必要把swp文件删除 ,不然你每次进入这个文件的时候都会出现这样的界面。
3、多文件编辑
想在编辑一个文件的时候引入另一个文件的内容可以用r filename这个命令,但是当我们只想引入一个文件的部分内容的时候,就需要多文件编辑。
我们可以通过vim 文件名1 文件名2来同时打开两个文件
之后利用files可以看到现在的VIM正在同时编辑几个文件
通过:n/:N这个命令即可来切换编辑两个文件,并且在编辑这两个文件的时候,复制粘贴等操作都会被共享。
4、多窗口编辑
当我们编辑的文件过长的时候,我们编辑文件的尾部,但是却需要文件头部的一些信息数据,这样的话如果我们不想用翻页功能,就自然的想到能不能把一个编辑器窗口一分为二,显示不同的内容呢。
就是用到了SP这个命令
:sp{filename}
如果你想让多窗口打开另一个文件的时候,可以加上文件名,如果只是想分两个窗口显示这个文件,可以直接用SP这个命令即可。
可以通过CTRL + W来切换到不同的窗口
5、Vim编辑器的设置与记录
在使用Vim编辑器的时候,他会将你所做过的行为统统记录下来保存在你的主文件加下的.viminfo这个文件里面,你所做的一切操作都会记录在这里。
当我们长时间用Vim的时候,我们肯定会有自己的一些习惯和VIM编辑器的默认设置冲突的地方,但是我们完全可以改变这些设置,好让我们使用的更加轻松一点。
我们可以通过set all来查看当前vim编辑器的设置
如果我们想改编的话,只是对于我们当前的用户,可以更改当前用户文件夹下的.vimrc这个设置文件
6、VIm中的中文编码问题
一般来说中文的编码和以下几个因素有关:
1、系统默认支持的语系数据
2、终端shell的语系
3、文件本身的编码
4、打开终端shell的软件
一般来说主要取决于34两点,如果这两个的编码相同,那么显示的文字就应该没问题。
在linux中有一个非常方便的工具,用来转化文件的语系编码,就是iconv这个命令,具体的用法就不多少了,这东西背下来也没用,Man一下就行了。