2.2 Vim文档编辑
2.2.1 Vim编辑模式
Vim具有多种工作模式,常用的工作模式有:普通模式、插入模式、命令模式。普通模式可以实现基本的光标移动与大量的快捷键操作,插入模式可实现文本的基本编辑功能,命令模式通过输入特定的指令实现特定的功能,如保存与退出等。
Vim编辑器会默认进入普通模式,插入模式可以通过以下按键进入(表2-1)。
表2-1
按键 | 功能描述 |
a | 后续输入的内容将插入至当前光标的后面 |
A | 后续输入的内容将插入至当前段落的段尾 |
i | 后续输入的内容将插入至当前光标的前面 |
I | 后续输入的内容将插入至当前段落的段首 |
o | 当前行的后面创建新的空白行 |
O | 当前行的前面创建新的空白行 |
通过Esc键返回到普通模式。在普通模式下输入“:”,即可进入命令模式。
2.2.2 光标的操作
常用的快捷键如表2-2所示,所有的快捷键均在普通模式下直接使用。
表2-2
快捷键 | 功能描述 |
h | 光标向左移动一位 |
j | 光标向下移动一位(以回车为换行符) |
k | 光标向上移动一位 |
l | 光标向右移动一位 |
gg | 移动光标至文件首行 |
G | 移动光标至文件末尾 |
nG | 移动光标至第n行 |
^ | 光标移至当前行的首字符 |
$ | 光标移至当前行的尾字符 |
fx | 光标移至当前行的下一个x字符处 |
Fx | 光标移至当前行的上一个x字符处 |
w | 光标向右移动一个单词 |
nw | 光标向右移动n个单词 |
b | 光标向左移动一个单词 |
nb | 光标向左移动n个单词 |
2.2.3 Vim编辑文档
在Vim编辑器中编辑文档内容主要有两种常用方式:进入编辑模式操作和快捷键操作。快捷键操作方式是在普通模式下输入相应的快捷键实现对应的功能,快捷键功能描述参见表2-3。
表2-3
快捷键 | 功能描述 |
x | 删除光标当前字符 |
dd | 删除一行 |
ndd | 删除n行 |
d$ | 删除光标至行尾的内容 |
J | 删除换行符,将两行合并为一行 |
u | 撤销上一步操作 |
U | 撤销最近所有的修改 |
rx | 将光标当前字符替换为x |
yy | 复制当前行 |
p | 粘贴至当前行之后 |
P | 粘贴至当前行之前 |
2.2.4 Vim查找与替换
在Vim中通过“/关键词”实现自上往下的查找功能,通过快捷键n跳转至下一个匹配的关键词处,快捷键N将跳转至上一个匹配的关键词处;“?关键词”实现自下往上的查找功能,n跳转至上一个匹配,N将跳转至下一个匹配。
表2-4,替换功能
指令 | 功能描述 |
:s/root/admin/ | 将光标当前行中第一个root替换为admin,没有则不替换 |
:s/root/admin/g | 将光标当前行中所有的root替换为admin |
:3,5s/sbin/bin/g | 将第三行至第五行之间的所有sbin替换为bin |
:%s/nologin/fault/g | 将所以行的nologin都替换为fault |
2.2.5 Vim保存与退出
通过命令模式输入特定的指令实现保存与退出功能,常用指令详见表2-5。
表2-5
指令 | 功能描述 |
:q! | 不保存并强制退出 |
:wq | 保存并退出 |
:x | 保存并退出 |
:w | 保存 |
:w b.txt | 另存为b.txt |
另一种保存方式为快捷键操作,在普通模式下输入ZZ,即可实现保存并退出文档。
2.2.6 Vim小技巧
1. 显示行号
在命令模式下输入:set nu即可。
2. 忽略大小写
在命令模式下输入:set ignorecase,实现忽略大小写。
3. 多窗口编辑
当需要同时编辑多个文档时,分割窗口就尤为重要,最简单的方式是在命令模式下输入:split。至于窗口的切换,可以使用如下快捷方式:
Ctrl+w+h | Ctrl+w+l |
Ctrl+w+j | Ctrl+w+k |
Ctrl+w+h快捷键表示跳转至左边一个窗口,Ctrl+w+l快捷键表示跳转至右边一个窗口,Ctrl+w+j快捷键表示跳转至上面一个窗口,Ctrl+w+k快捷键表示跳转至下面一个窗口。
在命令模式下输入:close,可以关闭当前窗口。
在命令模式下输入:split second.txt,此命令会分割窗口并打开新的文件。默认的:split为水平分割窗口,垂直分割可以使用:vsplit指令。
4. 执行Shell命令
执行一条Shell命令而不退出Vim编辑器,可以通过:!{命令}的方式实现。
5. 自动补齐
前面已经出现过的内容,再次输入其前几个字符后使用Ctrl+N,实现自动补齐功能。
原文地址:http://714921771.blog.51cto.com/9015946/1541388