Linux学习之旅(四)——vim使用技巧
vim使用技巧
在一般情况下,无论何种 Linux 发行版本都是包括 Vim 的,并且在默认会安装它。所以用好vim编辑器,方便我们在各种Linux操作系统下进行文本编辑,代码书写。
Vim 是一个模式编辑器,也就是 vim 会根据所处的模式对不同行为作出不同反应。
- vim在一般模式 会在屏幕的底部显示文件名或者是空白;
- 在输入模式,底部会显示 –INSERT–;
- 在可视模式,底部显示的是–VISUAL–。在打开 vim 时默认处于一般模式。
基本操作
-
输入
要输入文字,你要让编辑器进入输入模式。按下 i 键,接着你会发现屏幕左下方的文字变成了 –INSERT–(意味着编辑器进入了输入模式)。
输入完,按下 Esc 键,–INSER–消失了,编辑器又回到了命令模式。 -
移动
在一般模式中,你可以使用 h(左)、j(下)、k(上)和 i(右) 在 vim 里移动。咋看起来写 vim 的人随意地选取了这些字母,不过这个做法有它很好的理由:移动是编辑器里最常做的事情,而这些键都在你右手放在键盘上时手指正对的那一行。换句话说,它们就在你最方便按的地方。
注意:
- 也可以通过方向键来移动。只不过这样做反而会大大地地降低编辑文件的速度。因为按下方向键的时候必然要把手从字母键上移动到方向键上。如果一个小时内要重复这个动作成百上千遍的话,使用这四个键会节约数量可观的时间。因此,如果想高效地编辑的话,还是使用 h、j、k 和 l 吧。
- 同时,也有些主机上的键盘是没有方向键或者不按常规方式排列方向键的。所以,知道如何使用这四个键也能在遇到上述情况下对你编辑文件有所帮助。
-
删除
删除的方法是将光标移到想删除的文字上面然后按下 x 键
删除一整行内容使用 “dd” 命令。删除后下面的行会移上来填补空缺。
可以通过 “J” (即Shift + j)命令来删除换行符。 -
撤销和重复
假如你删除过头了,当然你可以再输入一次的。不过会有更简单的方法。命令 u 会撤销你最后一次的编辑。
如果你撤销过头了,可以按下 Ctrl + r (重复)来取消撤销过多带来的效果. -
保存退出
可以使用 “:wq” 命令来退出 vim。这个命令会将修改的文件写回硬盘然后退出。如果你输入了“:wq”,你的修改会被提交而且不可以进行撤销和重复操作,然后退出 vim。这个命令有三个部分:
1.冒号 (:),它会让编辑器进入命令模式;
2.命令 w,它告诉编辑器保存文件;
3.命令 q,它告诉编辑器退出程序。
某些时候,你可能会在你改了一大堆东西后,突然意识到你就不应该修改这个文件。不用担心,vim 有一个“退出然后放弃所有修改”的命令。它就是 “:q!”。这个命令同样有三个部分:
1.冒号 (:),它会让编辑器进入命令模式;
2.命令 q,它告诉编辑器退出程序;
3.然后是强制命令修饰符——感叹号 (!)。感叹号是必须的,它告诉 vim 无需保存文件。
进阶操作
-
设置行号
用“:set nu”命令来设置行号,设置后应如下所示,可以用“:set nonu”来取消行号设置。 -
移动
-
查找替换
-
复制粘贴
-
删除
-
撤销和重复
-
打开、保存、退出
-
同时编辑多个文件
-
可视模式
-
环境设置
-
暂时存档文件和恢复
当编辑一个文件时,在这个文件所处的目录底下就会有一个临时文件,文件名为“编辑的文件名.swp”这是一个隐藏文件, 所有修改都会暂时存在这个文件中。在编辑过程中,系统或者 vi 非正常关闭了,那么再重新用 vi 打开这个文件时时,系统就会询问要回复『Recovery』。按下 R ,就可以将数据回复到修改过程的样子,再将 swp 文件删除。
注意:Vim 用户常见的一个问题就是被编辑器的模式所困扰。这常常是因为不清楚编辑器处在哪个模式,又或者不知道按下了哪个键导致编辑器进入了另外一个模式引起的。事实上,无论编辑器当前在什么模式,按下 Esc键,它都会回到一般模式。有时需要按两次 Esc,如果Vim 以一声蜂鸣回答你,那说明你已经是在一般模式了