Vim常用命令和快捷键

移动光标

gg 跳至文首
G 调至文尾
行号G 跳转到指定行
w 移动到后一个单词第一个字符
b 移动到前一个词的第一个字符

up、down、left、right、PageDown、PageUp、Home、End 都是可用的,没必要用vi重定义的按键

删除

dd 删除光标所在行
d+移动光标 从当前光标位置删除到光标移动后的位置
例如删除全文时,可以使用 gg dG

查找/替换

/ pattern 从光标处向后查找
? pattern 从光标处向前查找
n 查找下一个
. 执行前次的命令操作,结合/和n可以实现逐一确认替换
:%s/src_str/dst_str/g 替换全部的src_str为dst_str
:‘<,’>s/src_str/dst_str/g 替换选中区域的src_str为dst_str,在可视模式选中后直接按:会自动出现:‘<,’>
u Undo
Ctrl+r Redo
p 粘贴到光标的后面或当前行的下面(取决于复制时是逐字模式还是逐行模式)
P 粘贴到光标的前面或当前行的上面(取决于复制时是逐字模式还是逐行模式)

可视模式(选择/剪切/复制)
v 进入逐字可视模式
V 进入逐行可视模式
Ctrl+v 进入块(列)选择模式
移动光标 从当前光标位置选择到光标移动后的位置
选中后的操作
U 将选中的目标全部替换为大写
u 将选中的目标全部替换为小写
c 剪切
y 复制
d 删除

输入模式

i 从当前光标处进入输入模式
o 在当前行之下新加一行,并进入输入模式
ESC 退出插入模式

编辑模式

:q 退出
:wq 保存并退出
:q! 退出放弃保存
:wq! 强制保存并退出
:wq! sudo tee % 提权并保存退出
:set number 显示行号
:set ruler 显示光标位置在右下角