Vim 替换模式详解

回忆上节课内容🤔

动手练习

图片描述

  • 当前光标在e上面,如上图
    • 如果我们dfo,会如何?
      • esc撤回来
    • 如果我们dto,会如何?
      • esc撤回来
    • 如果我们di{,会如何?
      • esc撤回来
    • 如果我们dFo,会如何?
      • esc撤回来
    • 如果我们d2fo,会如何?
      • 这些都可以试一下,玩一下?
    • 还有什么可以很神奇的操作吗?
    • 各种试试,把结果告诉我!
  • 这次我们要研究更快速的模式,替换模式

找到手册📕

  • 还是在change.txt里面上下翻,找到了r
  • 可以用:h r

图片描述

  • 看起来是什么不对,就直接放到那个位置
  • 然后 r 成想要的

来试一下

  • 可以用r来进行修改

图片描述

再试试

  • 把光标放在oeasy中的a上,模式处于普通模式
  • r1
  • 就会把原来的a替换为1
  • 如果要把1替换为一个回车换行
  • 就要r回车
  • 支持[count],比如4r2,替换4个字符,都变成2
  • 就像下面这样

图片描述

替换模式

  • 这次我们来看看大写R
  • :h R

图片描述

  • 在正常模式下,用R进入改写模式
  • 可以在左下角状态栏观察到
  • 然后光标在oeasya上面
  • 写入1234
  • 我们看到原来的文字被替换掉了

大小写的改写

  • 我们常用的其实还有个人物
  • 就是改大小写
  • 这个是 ~
  • 可以 :h ~ 查询手册

图片描述

tilde

  • 这个符号叫做~波浪号(tilde)
  • 把光标放在某个字符上
  • 摁下~
  • 大写变小写,小写变大写
  • 这个~还支持 [count]
    • 比如2
    • 把两个字符都设置~
  • g ~ 就支持motion
    • 这个很实用
  • 如果设置:set tildeop
    • 就支持motion
    • 比如e
    • 但是单个字母的大小写修改就不管用了
    • 需要l
    • 其实我们平时还是控制字母大写的情况多
  • 所以:se notildeop

总结

  • 这次我们学到了各种的替换模式
    • r,替换当前光标的字符
    • R,进入替换模式
    • ~,改变大小写
  • 这个东西很多,我们需要巩固一下
  • 下次来个综合练习吧!
  • 啥综合练习?🤔
  • 下次再说 👋

教程来源于Github,感谢overmind1980大佬的无私奉献,致敬!

技术教程推荐

深入浅出区块链 -〔陈浩〕

微服务架构实战160讲 -〔杨波〕

从0开始学微服务 -〔胡忠想〕

玩转webpack -〔程柳锋〕

Linux实战技能100讲 -〔尹会生〕

Java业务开发常见错误100例 -〔朱晔〕

Flink核心技术与实战 -〔张利兵〕

反爬虫兵法演绎20讲 -〔DS Hunter〕

Dubbo源码剖析与实战 -〔何辉〕