命令模式
命令 | 功能 |
---|---|
u | 撤销 |
Ctrl+r | 重做 |
~ | 当前字符切换大小写 |
>> | 当前行向右移动一个单位 |
<< | 当前行向左移动一个单位 |
== | 自动缩进当前行 |
Ctrl+b | 向下翻页 |
Ctrl+f | 向上翻页 |
w | 跳到下一个字首标点或单词分割 |
W | 跳到下一个字首,长跳 |
e | 跳到下一个字尾 |
E | 跳到下一个字尾,长跳 |
b | 跳到上一个字 |
B | 跳到上一个字,长跳 |
0 | 跳到行首,不管有无缩进,直接跳到行首 |
^ | 跳到行首的第一个字符 |
$ | 跳到行尾 |
G | 跳到文件末尾 |
gg | 跳到文件开头 |
5gg | 移动至第5行 |
fa | 当前行中寻找a字符,找到了就移动到a |
; | 重复上一个f命令,而不用重复的输入fa |
* | 查找光标所在处的单词,向下查找 |
# | 查找光标所在处的单词,向上查找 |
dd | 删除文件 |
dw | 删除当前字符到行末,D也可实现 |
x | 删除当前的字符 |
X | 删除前一个字符 |
dG | 删除此行开始到文件末尾的所有行,包括此行 |
gg=G | 自动排版,缩进等 |
a | 在当前字符后插入 |
A | 在行尾插入 |
i | 在当前位置插入 |
I | 在行首插入 |
o | 在下一行插入 |
O | 在上一行插入 |
s | 删除当前字符并进入编辑模式 |
S | 删除光标所在的行并进入编辑模式 |
yy | 复制当前的行,Y也可实现 |
yw | 复制当前的字段 |
ggyG | 全部复制 |
ggvG | 全选(高亮显示) |
p | 粘贴复制的内容 |
/abc | 向后搜索字符串abc |
?abc | 向前搜索字符串abc |
\c | 忽略字母大小写,如/abc\c |
\C | 大小写敏感 |
n | 下一个匹配 |
N | 上一个匹配 |
多文件编辑
命令 | 功能 |
---|---|
vim file1 file2… | 同时打开多个文件 |
vim -O file1 file2 … | 垂直分屏 |
vim -o file1 file2… | 水平分屏 |
末行模式
命令 | 功能 |
---|---|
:args | 显示当前编辑的文件 |
:next | 切换到下一个文件 前面加w是保存切换,加!是不保存切换 |
:prev | 切换到上一个文件 |
:first | 定位首文件 |
:last | 定位尾文件 |
ctrl+^ | 快速在最近的两个文件切换 |
:close | 关闭当前窗口 |
:only | 只显示当前窗口,关闭所有窗口 |
:all | 打开所有窗口 |
:vertical all | 垂直打开所有窗口 |
:qall | 对所有窗口执行q操作 |
:qall! | 对所有窗口执行q!操作 w操作同理 |
ctrl+w k,j,h,l,t,b | 跳转到上、下、左、右、最上、最下的窗口 |
:%s/old/new/g | 搜索整个文件,把old换成new |