鱼C论坛

 找回密码
 立即注册
查看: 23890|回复: 24

[基础课程] 第四节:粘贴命令、替换命令、替换模式和修改命令

[复制链接]
发表于 2015-10-28 04:44:36 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
第四节:粘贴命令、替换命令、替换模式和修改命令


前方高能:今天会举很多个栗子!

0.GIF


粘贴命令

尽管上节课最后有写重大备注,但我知道肯定有些鱼油还是没看到,就只看到这个:

1.gif

这里再次强调下:在 VIM 下使用删除命令,并不会直接将你的东西删掉,而是放到 VIM 的寄存器中。这样做有一个好处,就是可以让我们简单的实现类似于 Windows 的剪切功能。 1-2.gif

使用 p 命令可以将最后一次删除的内容粘贴到光标之后。(大写的 P 则是粘贴到光标之前)

2.gif

上边的栗子本来是:
Line One
Line Three
Line Two
Line Four

我只需将光标放在 Line Three 处,然后按下 dd 命令,再按 p 命令,即可将 Line Three 和 Line Two 的顺序调换过来。是不是很方便呢? 5.gif

这里需要注意的是:如果你需要粘贴的是整行为单位,那么 p 命令将在光标的下一行开始粘贴;如果你拷贝的是非整行的局部字符串,那么 p 命令将在光标后开始粘贴。


拷贝命令

其实我们用的最多的还是拷贝粘贴,VIM 用 y 命令实现拷贝。语法跟删除的 d 命令一样:y motion

其中的 motion 同样是用来表示操作范围的指令,即 yy 表示拷贝当前行,3yy 则表示拷贝 3 行;y$ 表示从光标所在的位置拷贝到行尾的所有字符;yG 则表示从光标所在行拷贝到文件末尾行的所有字符。

拷贝完成之后同样使用 p 命令进行粘贴,没什么好说的。


替换命令

VIM 还提供了一个简单的替换命令:r 命令。

r 用于替换光标所在的字符,做法是先将光标移动到需要替换的字符处,按一下 r 键,然后输入新的字符。注意,全程无需进入插入模式,也不会进入插入模式。 6.gif

然后你可能猜到了,数字 + r 可能会产生一些物理反应。先输入【数字】再输入 r,最后输入新字符,说明从当前光标的位置开始,替换【数字】个新字符。

再举个栗子:

第一行,先将光标移动到字符 A 处,按下 r 键,再按下 C;
第二行,先将光标移动到第一个字符 B 出,按下 3r 键,再按下 C。

4.gif


替换模式

对于需要替换多个字符,更好的方案是直接进入替换模式。按下大写的 R 键,屏幕左下角出现 -- REPLACE -- 字样,说明你已经处于替换模式。此时输入字符可以连续替换光标及其后边的内容。注意:退格键(Backspace)在替换模式中被解释为如果左边内容被替换过,则恢复到原来的样子;如果没有被替换过,则简单的向左移动。修改完毕后,按下 Esc 回到普通模式。

哎,怕你不懂,还是举个栗子做示范吧 7.gif

8.gif


修改命令

修改跟替换是不一样的!
修改跟替换是不一样的!
修改跟替换是不一样的!

重要的事情要说三遍……

修改会进入插入模式,替换不会进入插入模式!
修改会进入插入模式,替换不会进入插入模式!
修改会进入插入模式,替换不会进入插入模式!

9.gif

修改命令我们使用 c 键来启动,格式是:c [number] motion

没错,motion 依然表示范围,[数字]依然拥有奥义,同样是可选的,加上数字表示重复执行多次 motion 范围……

比如 cw 是修改光标指定单词的内容(VIM 的做法就是删除当前光标位置到下个单词前的所有字符,并进入插入模式);而 c2w 便是修改当前光标指定的单词以及下一个单词共计两个单词的内容……

按键
含义
c0
删除光标从当前位置(不包含)到该行行首的所有字符,并进入插入模式
c^
同上
c$
删除从光标当前位置(包含)到该行行尾的所有字符,并进入插入模式
cb
删除从光标当前位置(不包含)到单词起始处的所有字符,并进入插入模式
ce
删除从光标当前位置(包含)到单词结尾处的所有字符,并进入插入模式
cw
删除从光标当前位置(包含)到下个单词起始处的所有字符,并进入插入模式
ch
删除光标前边一个字符,并进入插入模式
cl
删除光标指定的字符,并进入插入模式
cj
删除光标所在行以及下一行的所有字符,并在光标下一行进入插入模式
ck
删除光标所在行以及上一行的所有字符,并在光标下一行进入插入模式
cc
删除光标所在行的字符,并进入插入模式


所以,事实上,修改 == 删除 + 进入插入模式

好吧,我发现我发现了一个惊人的事实!

10.gif

嘿嘿,也不完全是这样的哦,因为两者在定位光标上是不完全一样的!但你完全可以认为它们是想通的,因为在实际操作上,并不会影响影响影响你的……

11.gif

关于魔鬼训练小程序的众多问题,请移步:VIM魔鬼训练须知

  

评分

参与人数 6荣誉 +23 鱼币 +23 贡献 +15 收起 理由
ArmandXiao + 5 + 5 + 3
paleyellow + 5 + 5 + 3
fanzongsao + 5 + 5 + 3 热爱鱼C^_^
和vvv + 1 + 1 热爱鱼C^_^
Ruide + 2 + 2 + 1 Coming soon again !
~风介~ + 5 + 5 + 5 热爱鱼C^_^

查看全部评分

本帖被以下淘专辑推荐:

  • · VIM|主题: 7, 订阅: 4
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-10-28 08:48:26 | 显示全部楼层
学习了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-10-29 11:10:29 | 显示全部楼层
学习了。。。VIM高大上啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2015-11-29 20:38:56 From FishC Mobile | 显示全部楼层
光看不练 一看就忘唉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-1-19 04:33:28 | 显示全部楼层
感觉就是在丢鼠标的节奏……

估计玩久了linux回来,鼠标都不会用了吧…………
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-1 22:00:28 | 显示全部楼层
替换命令举例子,第二行B和C写反了,感觉
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-8-1 22:01:20 | 显示全部楼层
baibaitjy 发表于 2017-8-1 22:00
替换命令举例子,第二行B和C写反了,感觉

展示GIF上面那一行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-1-31 23:17:12 | 显示全部楼层
我发现了一个小问题。。就是替换中对于退格键的说法,通过测试,退格键只能一定程度上恢复内容,如果手动使光标后移,却发现之前替换的内容不对,这时使用退格键回去,就不能恢复了。。所以,我感觉不应该有,退格键的后半句说法,若没修改过,就只当是普通的左移,因为这么一说,就感觉退格键如果在这种没修改的内容存在的情况下,没修改之前的内容也因为没修改的这部分内容的存在,不能通过退格键被恢复。。。好像,,,有点绕了。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-4-21 07:04:22 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-5-17 14:32:40 | 显示全部楼层
多练,多练,多练
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-19 15:29:24 | 显示全部楼层
小程序找不到啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-7-5 11:00:07 | 显示全部楼层
本节课附带练习小程序:<……即将推出……>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-10-1 20:38:27 | 显示全部楼层
1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-1-14 20:58:01 | 显示全部楼层
Cardist 发表于 2020-7-5 11:00
本节课附带练习小程序:

2021年了,还是没有
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2021-2-22 19:23:09 | 显示全部楼层
guhusf 发表于 2021-1-14 20:58
2021年了,还是没有

哈哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-18 20:01:12 | 显示全部楼层
说好的附带小练习呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-30 14:30:29 | 显示全部楼层
苦等小练习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-12 01:15:59 | 显示全部楼层
跟。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-7-9 00:10:27 | 显示全部楼层
难上加难
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-9-1 09:21:52 | 显示全部楼层
怎么才能记住
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-21 22:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表