一、什么是 Vim
Vim 是一个相似于 Vi 的驰名的功能强大、高度可定制的文本编辑器,在 Vi 的根底上改良和减少了很多个性。代码补全、编译及谬误跳转等不便编程的性能特地丰盛,在程序员中被宽泛应用。和 Emacs 并列成为类 Unix 零碎用户最喜爱的文本编辑器。
二、Vim 键位图
三、Vim 的三种模式
Vim 有三种模式,别离是 命令模式 , 输出模式 和编辑模式,这 3 种工作模式可随便切换。
1、命令模式
当咱们用 Vim 编辑文件时,默认处于命令模式。此模式下,敲击键盘动作会被辨认为命令,而非输出字符,可应用方向键(↑、↓、←、→)或 k、j、h、i 挪动光标的地位。
命令模式下罕用的几个命令:
命令 | 性能形容 |
---|---|
i | 切换到输出模式,能够输出字符 |
x | 删除以后光标所在处的字符 |
: | 切换到编辑模式,能够底部光标闪动处输出命令 |
2、输出模式
在命令模式下按 i 键进入输出模式,按 Esc 键即可返回命令模式。
在输出模式下,Vim 能够对文件执行写操作,按键及性能形容见下表。
按键 | 性能形容 |
---|---|
i | 在以后光标所在位置插入随后输出的文本 |
I | 相当于光标挪动到行首,再执行 i 命令 |
o | 在光标所在行的上面插入新的一行 |
O | 在光标所在行的下面插入新的一行 |
a | 在以后光标所在位置之后插入随后输出的文本 |
A | 相当于光标挪动到行尾,再执行 a 命令 |
Enter | 回车键,换行 |
Backspace | 删除光标前一个字符 |
Delete | 删除光标后一个字符 |
Home/End | 挪动光标到行首 / 行尾 |
Page Up/Page Down | 上 / 下翻页 |
Esc | 退出输出模式,切换到命令模式 |
3、编辑模式
在命令模式下按下:(英文冒号),进入编辑模式。
编辑模式能够输出单个或多个字符的命令,可用的命令十分多。在前面应用实例中会做介绍。
按 ESC 键可随时退出编辑模式。
四、Vim 应用实例
1、关上文件
关上一个本人编写的文件,默认进入命令模式:
[root@wayne:~]# vim myvim.txt
文件的下方会显示文件的一些信息,包含文件的总行数和字符数,以及以后光标所在的地位等。
2、编辑文件
在命令模式之中,按下 i, o, a 中的任意一个字符进入输出模式,此时左下角状态栏中会呈现 –INSERT- 的字样。
Vim 插入文本
在输出模式中,除了 Esc 键之外,其余的按键都能够视作为个别的输出按键。
Vim 查找文本
快捷键 | 性能形容 |
---|---|
/abc | 从光标所在位置向前查找字符串 abc |
/^abc | 查找以 abc 为行首的行 |
/abc$ | 查找以 abc 为行尾的行 |
?abc | 从光标所在为主向后查找字符串 abc |
n | 向同一方向反复上次的查找指令 |
N | 向相同方向反复上次的查找指定 |
如查找字符串 “new”
Vim 替换文本
快捷键 | 性能形容 |
---|---|
:s/old/new | 用 new 替换以后行第一个 old |
:s/a1/a2/g | 将以后光标所在行中的所有 a1 用 a2 替换 |
:n1,n2s/a1/a2/g | 将文件中 n1 到 n2 行中所有 a1 都用 a2 替换 |
:%s/a1/a2/g | 将文件中所有的 a1 都用 a2 替换 |
:%s/^/xxx/g | 在每一行的行首插入 xxx,^ 示意行首 |
:%s//xxx/g | −在每一行的行尾插入 xxx,/xxx/g 在每一行的行尾插入 xxx,示意行尾 |
如替换”new”为”old”
Vim 删除文本
快捷键 | 性能形容 |
---|---|
x | 删除光标所在位置的字符 |
dd | 删除光标所在行 |
ndd | 删除以后行(包含此行)后 n 行文本 |
dG | 删除光标所在行始终到文件开端的所有内容 |
D | 删除光标地位到行尾的内容 |
:a1,a2d | 函数从 a1 行到 a2 行的文本内容 |
如按 dd 删除第 3 行
Vim 复制粘贴文本
快捷键 | 性能形容 |
---|---|
p | 将剪贴板中的内容粘贴到光标后 |
P(大写) | 将剪贴板中的内容粘贴到光标前 |
y | 复制已选中的文本到剪贴板 |
yy | 将光标所在行复制到剪贴板,此命令前能够加数字 n,可复制多行 |
yw | 将光标地位的单词复制到剪贴板 |
如先按 yy,复制第 3 行,再按 p 粘贴
3、保留退出
输出模式是不能够间接切换到编辑模式的,须要先按下 Esc 键回到命令模式,此时左下角的 – INSERT – 会隐没。再按下:(英文冒号),进入编辑模式。
命令 | 性能形容 |
---|---|
:wq | 保留并退出 Vim 编辑器 |
:wq! | 保留并强制退出 Vim 编辑器 |
:q | 不保留就退出 Vim 编辑器 |
:q! | 不保留,且强制退出 Vim 编辑器 |
:w | 保留然而不退出 Vim 编辑器 |
:w! | 强制保留文本 |
:w filename | 另存到 filename 文件 |
x! | 保留文本,并退出 Vim 编辑器 |
ZZ | 间接退出 Vim 编辑器 |
五、Vim 其余按键阐明
快捷键 | 性能形容 |
---|---|
:set nu | 显示行号,设定之后,会在每一行的前缀显示该行的行号 |
:set nonu | 与 set nu 相同,为勾销行号! |
[Ctrl] + [f] | 屏幕『向下』挪动一页,相当于 [Page Down]按键 (罕用) |
[Ctrl] + [b] | 屏幕『向上』挪动一页,相当于 [Page Up] 按键 (罕用) |
[Ctrl] + [d] | 屏幕『向下』挪动半页 |
[Ctrl] + [u] | 屏幕『向上』挪动半页 |
+ | 光标挪动到非空格符的下一行 |
– | 光标挪动到非空格符的上一行 |
0 或功能键[Home] | 这是数字『0』:挪动到这一行的最后面字符处 (罕用) |
$ 或功能键[End] | 挪动到这一行的最初面字符处(罕用) |
H | 光标挪动到这个屏幕的最上方那一行的第一个字符 |
M | 光标挪动到这个屏幕的地方那一行的第一个字符 |
L | 光标挪动到这个屏幕的最下方那一行的第一个字符 |
G | 挪动到这个档案的最初一行 |
nG | n 为数字。挪动到这个档案的第 n 行 |
gg | 挪动到这个档案的第一行,相当于 1G 命令 |
u | 撤销前一个动作(罕用) |
[Ctrl]+[r] | 复原上一个动作(罕用) |
. | 反复前一个动作 (罕用) |
以上,如果感觉对你有帮忙,点个赞再走吧,这样 @知微之见也有更新上来的能源!
也欢送私信我,一起交换!