vimtutor

1.

1.1 移动光标

     ^
     k

< h      l >

     j
     v

1.2 文本操作

x 删除光标位置的字符 i 在光标位置处插入字符 A 在当前行末尾处插入字符

vim .md 新建 .md文件。

2.

2.1 删除类命令

dw 从光标处开始删除至一个单词的末尾 d$ 从光标处删除至行末

2.2 命令和对象

d motion 其中: d -删除操作符 motion -操作符的操作对象

操作对象(!!可单独使用,进行光标的移动) w 从当前光标位置到下一个单词的起始处 e 当前光标位置到当前单词末尾 ge 当前光标移动到前一个单词的末尾 $ 光标位置到行末

2.3 使用计数指定动作

即在动作之前输入数字,使它重复那么多次

2w 光标往后移动到第二个单词的起始处 3e 光标向后移动到第三个单词的末尾。 0 移动光标到行首

2.4 使用计数以删除更多

使用操作符时输入数字可以使它重复那么多次

d number(数字) motion d2w 删除两个单词 d3d === 3dd 删除3行内容

2.4 撤销类命令

u 撤销最后执行的命令 U 撤销对整行的修改 ctrl + R 可以重做被撤销的命令,即撤销 撤销命令。

3.

置入类命令 c p 将寄存器的内容置于光标之后。 (dd => p) 将删除的一行内容,放置到下一行。

输入r和一个字符,替换光标所在位置的字符。

ce 更改文本直到一个单词的末尾。 cw ... c$ ... ce不仅删除了一个单词,也进入了插入模式。

4.

CTRL + G 显示当前光标所在行位置以及文件状态信息。

G 跳转到文件最后一行 gg 跳转到第一行 number(行号)+ G:例如 198 G 则跳转到198行。

4.1 搜索

/ 加上字符串可以在当前文件中查找字符串 要继续往后查找该字符串,则按n。 往前查找该字符串,则按N。 逆序查找字符串,可用?替换 / 进行。

CTRL + O 可以回到之前的位置。 CTRL + I 会跳转到较新的位置。 可重复进行回退多步。

4.2 配对括号的查找 ), }, ]

在单个括号处按%,则会跳转到相匹配的另一半括号处。

4.3 替换命令

输入 :s/old/new/g 可以替换old为new

:s/thee/the 将thee变为the,只改变光标所在行第一个匹配串。 :s/thee/the/g 替换当前整行的匹配串。 :#,#s/old/new/g 其中#,#代表替换操作的首尾行号,:5,10s/old/new 将第5行到10行的old变为new

:%s/old/new/g 对整个文件匹配串进行替换 :%s/old/new/gc 找到整个文件的匹配串,并对每个匹配串提示是否进行替换。

5. 在VIM内执行外部的命令

输入:!接着一个外部命令就可以执行外部shell命令 例如: :!ls , :!dir, :rm *.txt. 命令必须以回车键结尾。

5.1 保存文件

:w TEST 将文件保存名为TEST.

5.2 选择性保存文件

v键进入可视模式进行选取

列编辑模式: ctrl + v 进入列编辑模式,通过方向键选择编辑区域,shift+i,shift+a进行输入,也可以删除.

5.3 提取和合并文件

:r TEST 读取TEST文件的内容,从光标位置开始插入。

读取外部命令的输入,放置到光标下面: :r !ls, 读取ls的内容写入光标下面。

6.

6.1 打开类命令

输入o将在光标的下方打开新的一行并进入插入模式。 输入O大写,可以在光标上方打开新的一行进入插入模式。

6.2 附加类命令

a 在光标位置 之后 开始插入。

tips:a,i,A都会进入插入模式,区别在于字符插入的位置。

6.3 连续替换多个字符

输入大写的R可连续替换多个字符,替换模式与输入模式类似,不过每个输入的字符都会删除一个已有的字符。

6.4 复制粘贴

使用操作符y复制文本,使用p粘贴文本

yy复制当前行 y2y复制两行 yw 复制一个单词

可先 v 进入可视模式,移动光标之后按y进行复制。

6.5 设置类命令

:set ic 搜索时忽略大小写 :set hls is

is: 显示部分匹配 移除高亮: :nohlsearch 仅在一次搜索中忽略大小写(\c): /ignore\c 选项前加上no可以关闭选项 :set noic

7.

7.1 获取帮助

:help

7.2 启动脚本

.vimrc

Last updated