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
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论