oeasy教您玩转vim - 45 - # 按行编辑

【oeasy教您玩转vim - 45 - # 按行编辑】少年意气强不羁,虎胁插翼白日飞。这篇文章主要讲述oeasy教您玩转vim - 45 - # 按行编辑相关的知识,希望能为你提供帮助。
按行编辑 回忆上节课内容????

  • 上次我们主要就是综合运用
  • 很好玩的,更快速的解决问题
  • 进行计算
    • < kbd> ctrl< /kbd> +< kbd> a< /kbd> ,将具体的数字加1
    • < kbd> ctrl< /kbd> +< kbd> x< /kbd> ,将具体的数字减1
    • < kbd> 5< /kbd> < kbd> ctrl< /kbd> +< kbd> a< /kbd> ,将具体的数字加5
    • 一次命令模式
    • < kbd> ctrl< /kbd> +< kbd> o< /kbd>
    • 可以进入执行一次命令
    • 然后回到插入模式
  • 这次我们进入新的领域
    • 命令行编辑~
光标的运动
  • 命令行是什么?
    • 命令行就是我们熟悉的冒号:
    • 比如:h :
      • 可以查询命令行的帮助
  • 在命令行上如何控制光标运动呢?
  • 比如已经打出了 :oeasy o2z o3z
    • 左右方向键 < kbd> ??< /kbd> 、< kbd> ???< /kbd
    • < kbd> ctrl< /kbd> +< kbd> ??< /kbd> 、< kbd> ctrl< /kbd> +< kbd> ???< /kbd> 按单词左右运动
    • < kbd> shift< /kbd> +< kbd> ??< /kbd> 、< kbd> shift< /kbd> +< kbd> ???< /kbd> 按单词左右运动
    • < kbd> ctrl< /kbd> +< kbd> b< /kbd> 回到开头begin
    • < kbd> ctrl< /kbd> +< kbd> e?< /kbd> 回到结尾end
    • < kbd> ctrl< /kbd> +< kbd> w< /kbd> 删除光标之前的单词word
  • 编辑好命令之后
    • 命令行模式是通过最后的回车< CR>
    • 完成命令的输入的
命令行的操作
  • dnormal 模式下的删除命令
  • :d命令行 模式下的删除命令
  • 关于命令行命令
    • 我们可以使用:h :d
    • 来观察一下< kbd> d< /kbd> 命令是如何按行进行 删除
oeasy教您玩转vim - 45 - # 按行编辑

文章图片

  • 我们来试试
  • :d 可以删除当前行
  • 帮助中这个[range] 是干什么用的呢?????
    • 什么不会就 h 什么呀!
    • 可以 :h range
[range]范围
oeasy教您玩转vim - 45 - # 按行编辑

文章图片

  • 最常见的就是 范围
  • 比如 1,4 就是从第 1-4
  • 然后再后面加上 d 操作
  • :1,4d 就是 1 - 4 行都删除
  • 可以把行号列出来:se nu
  • range 可以复制 yank 吗?
  • 查一下帮助啊
[range]yank 范围复制
  • :h :y
oeasy教您玩转vim - 45 - # 按行编辑

文章图片

  • 2,5y2-5 行都 yank 下来
  • yank到了什么?
    • 可以用 :reg 看一下
  • 如果想用制定寄存器"a呢?
    • 那就:"a2,5y
    • 粘贴的时候
    • 就需要指定寄存器 "ap
  • 这样我们就可以快速的完成行的复制和删除
  • 其实还有效率更好的方法!!!
直接复制
oeasy教您玩转vim - 45 - # 按行编辑

文章图片

  • :h :copy可以看到相关的帮助,如上图
    • 更快速的写法是:t
    • :5,8t20可以把5-8行拷贝到第20行
  • 试一下
  • 这很爽
直接剪切
  • :h m可以查询:move的用法
    • :5,8m2可以把5-8行移动到第2行
oeasy教您玩转vim - 45 - # 按行编辑

文章图片

  • 这也很爽????
总结
  • 这次我们主要就是看看行编辑命令
    • d 是删除
    • y 是复制
  • 可以选择一个[range]范围
  • 然后进行相应的操作
    • :11,30d
    • :2,7y
    • :"a3,40y
    • :"aP
  • 甚至可以用一行就复制或者剪切内容
    • :12,30t50,12-30行复制到50行
    • :3,6m30,3-6行移动到30行
  • 这个 [range] 还有什么说法吗?????
  • 下次再说 ????
[Github地址] (https://github.com/overmind1980/oeasyvim)
[Gitee地址] (https://gitee.com/overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)

    推荐阅读