vim进阶

2015-11-30 20:48:39 9167

之前我们大体上学习了vi的基本命令:https://www.landui.com/Help/Show-1303.html,先在我们在来看下下面的vim命令.vim命令在vi的基础上有所突破

1动词

动词代表了我们打算对文本进行什么样的操作。例如:

d 表示删除delete

r 表示替换replace

c 表示修改change

y 表示复制yank

v 表示选取visual select

2名词

名词代表了我们即将处理的文本。Vim 中有一个专门的术语叫做文本对象text object,下面是一些文本对象的示例:

w 表示一个单词word

s 表示一个句子sentence

p 表示一个段落paragraph

t 表示一个 HTML标签tag

引号或者各种括号所包含的文本称作一个文本块。

3介词

介词界定了待编辑文本的范围或者位置。例如:

i 表示“在...之内”inside

a 表示“环绕...around

t 表示“到...位置前”to

f 表示“到...位置上”forward

4下面是几个有关范围的示意图,你们感受一下:

动词 介词 名词

dip  # 删除一个段落: delete inside paragraph

vis    # 选取一个句子: visual select inside sentence

ciw   # 修改一个单词: change inside word

caw  # 修改一个单词: change around word

dtx   # 删除文本直到字符“x”(不包括字符“x”): delete to x

dfx # 删除文本直到字符“x”(包括字符“x”): delete forward x

5.数词

数词指定了待编辑文本对象的数量,从这个角度而言,数词也可以看作是一种介词。引入数词之后,文本编辑命令的语法就升级成了下面这样:

动词 介词/数词 名词

c3w     #修改三个单词:change three words

d2w           #删除两个单词:delete two words

6另外,数词也可以修饰动词,表示将操作执行 n 次。于是,我们又有了下面的语法:

数词 动词 名词

请看示例:

2dw   # 两次删除单词(等价于删除两个单词): twice delete word

3x     # 三次删除字符(等价于删除三个字符):three times delete character

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: