**Vim 大小写区分 **
# 光标移动
# 基本移动
h j k l 对应着左,上,下,右
# 屏幕顶,屏幕底
H L
# 滚屏
ctrl + f 向下走一整个屏幕 ctrl + d 向下走半个屏幕 ctrl + b 向上走一整个屏幕 ctrl + u 向上走半个屏幕
# 上一个单词开头
b B
# 下一个单词开头
w W
# 行首,行尾
0 $
# 跳到某一行(底线模式下)
:n
# 缩进
# 当前行向前缩进(删除一个缩进)
命令模式下 <<
# 当前行增加一个缩进
命令模式下 >>
# n个缩进(底线模式)
:>>>>
n个>对应着缩进几次
# 缩进第3行(底线模式)
:3>
# 缩进3到5行(底线模式)
:3,6>
# 模式
# 进入view--mode
v
# 进入insert--mode
i
# 进入append--mode
a
# 进入replace-mode
R
# 撤销
# 撤销更改
u U
# 撤销上一个命令
[ ctrl ] + r
# 搜索
# 搜索单词
/word
# 搜索结果间跳转
n 下一个 N 上一个
# 搜索当前光标所在单词
# 替换
# 行内替换
😒/oldWord/newWord/g 将oldWord替换为newWord 😒#oldWord#newWord#g 将oldWord替换为newWord
# 文件内替换
:%s/oldWord/newWord/g :%s#oldWord#newWord#g
# 范围性替换
:20,40s/oldWord/newWord/g在20到40行之间进行
# 单词替换(删除后修改)
cw
# 剪切
# 剪切当前行
dd
# 剪切当前行下的n行(包括当前行)
ndd
# 从光标处剪切到行尾
d$
# 从光标处剪切到行首
d0
# 从光标处剪切到单词尾
dw
可以在使用该指令之前按b跳到单词首,然后执行该指令,完成删除单词
# 删除指定范围的行 (底线模式)
:3,4d // 有一个冒号
# 删除各种括号之间的内容
di + ( or { or [
注意:光标一定要在所选括号之间
# 复制
# 复制当前行
yy
# 复制到某个单词单词
y?word
# 从光标处复制到行尾
y$
# 从光标处复制到行首
y0
# 复制当前单词
yw
# 复制n行(包括当前行)
nyy
# 指定剪切板
使用 " + 名字的方式指定剪切板,默认*或者 +是系统剪切板
# 粘贴
# 基本粘贴,会自动创建新的一行并粘贴
p
# 粘贴多次
np
# 指定剪切板
使用 " + 名字的方式指定剪切板,默认*或者 +是系统剪切板