vim

文件管理

重新加载文件:

:e

退出:

:q
:q! (without saving changes)

保存:

:w
:w <file>
:x (保存后退出)

光标移动

  k
h   l         basic motion
  j

移动到下一个单词开始位置:

w
W (以空格为分隔符的单词)

移动到下一个单词结束位置:

e
E (以空格为分隔符的单词)

移动到上一个单词开始位置:

b
B (以空格为分隔符的单词)

移动到行首:

0

移动到行尾:

$

移动到文件第一行开始位置:

gg

移动到文件结束行开始位置:

G

向上移动一行显示的行:

gk

向下移动一行显示的行:

gj

插入

退出插入模式:

Esc
或
t-c

在光标前插入:

i

在光标后插入:

a

在行尾插入:

A

在行首插入:

I

光标下创建一个新行:

o

光标上创建一个新行:

O

插入替换光标后的内容:

R

插入文件内容:

:r <file>

编辑

撤销:

u

回撤:

ctrl-r

复制当前行:

yy

复制从光标开始的一个单词:

yw

粘贴:

p (光标后)
P (光标前)

删除字符:

<Del> or x

删除当前行:

dd

复制从光标开始的一个单词:

dw

搜索和替换

bar 替换当前行首次匹配的 foo:

:s/foo/bar/

bar 替换当前行所有匹配的 foo:

:s/foo/bar/g

bar 替换当前文件所有匹配的 foo:

:%s/foo/bar/g	

询问是否用 bar 替换当前文件所有匹配的 foo:

:%s/foo/bar/gc