**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

# 指定剪切板

使用 " + 名字的方式指定剪切板,默认*或者 +是系统剪切板