- 返回上一次保存的文件版本
:e!
- 检查磁盘剩余空间
:!df // unix下直接输入df
-
上下左右 ( k、j、h、l ),行首行尾(0、$)
-
vim中设置行号
:set nu
- 设置换行边界为10个字符
:set wm=10
-
w 按单词、标点向后移动;W 不计标点,只按单词往后移动;2w 向后移动两个单词或标点
-
b 按单词、标点向前移动;B 不计标点,只按单词往前移动;5B 向前移动五个单词
-
i 插入命令;I 在行首插入
-
o 光标下一行新建一行等待输入;O光标上一行插入等待输入
-
a 追加命令,光标后一个字母追加;ea在光标所在单词的结尾追加;A在当前行的尾部插入
-
c 修改命令。cw修改一个单词,删除当前光标到该单词结尾,并进入插入模式(如果是空格,那么只删除一个空格);cc无论光标在何处,删除整行并进入插入模式;C删除光标到行尾(同 c$)并插入。
-
r 替换命令,替换光标之后的一个字母;R 进入替换模式
-
~大小写切换
-
s 修改字符。2s 删除光标之后的两个字符,并进入插入模式进行修改;S相当与C
-
d 删除文本
dw 删除单词,且删除该单词之后的空格
de 只删除到单词尾部
dE 删除到单词尾部,包括标点符号
db 向前删除
d$ 删除到行尾,效果同D
d0 删除行首到光标处
dd 删除整行,互补命令cc(删除并插入),还有2dd、3dd等
-
x 删除当前光标所在字符,2x 、3x等;X删除光标前的字符,2X、3X等
-
u 撤销最近的一次操作;U撤销到当前行的上一次保存状态。
-
p 粘贴命令。将位于缓冲区的文本粘贴到光标之后;P粘贴在光标之前
xp 调换两个字母的顺序(先删除再粘贴,删除后的会暂时存放在缓冲区)
jp 光标移动到下一行并粘贴。2jp、3jp等
- y 复制文本
yw 复制一个单词
y$ 复制到该行尾
yy 复制整行,效果同Y
-
除了o/O外,其他插入命令都可以带数字前缀
-
命令可以结合使用: 50i#Esc 用来插入50个#号
-
J 合并两行 2J(和J等效)、3J、4J 等