欢迎光临散文网 会员登陆 & 注册

oeasy教您玩转vim - 66 - # 比较修改模式 vimdiff

2021-11-19 11:16 作者:oeasy  | 我要投稿

vimdiff

回忆上次

  • 上次有三种批量替换,分别是

    • :windo

    • :bufdo

    • :argdo

  • 执行的{cmd}可以用按顺序增加

    • update 自动更新

    • :set autowrite 自动写入

    • :set hidden 可以隐藏未保存 buffer

  • 分别对应的windowbuffersarguments

  • 各有各自的列表、切换、删除、增加的方式

  • 多文件多窗口还有什么可玩的么?🤔

  • 下次再说 *

观察对比

  • 首先编辑一个go.java

  • 连续数字产生方法

    • ctrl-v进入块·可视化

    • 纵向选中1

    • g之后ctrl-a

    • 完成加法操作

进行修改

  • 对于这个go.java复制粘贴出一个副本

    • :saveas go2.java

    • :e go2.java

    • 新增一行

    • 修改一行

    • 删除一行

  • 然后保存并退出vim

进行比较

  • vimdiff go.java go2.java

  • vimdiff 就是专门用比较的

  • 后面两个参数是待比较的文件

  • {1..9}行被折叠了

    • 因为都是相同的

  • 16行有修改

    • 紫色的

  • 19行被删除了

    • 左蓝色右青色

    • 右边是-----------

  • 22行是增加的一行

    • 左青右蓝

    • 左边是-----------

编辑的时候比较

  • :vi go.java

  • 如果文件已经打开

  • :vertical diffsplit go2.java 可以开启比较

    • 如果vertical被省略

    • 就会横向打开文件

  • 同步滚动

    • 属性为scrollbind

    • 默认同步滚动

    • 可取消同步

  • 遍历所有的修改change

    • [] 指的是跳转

    • c 指的是 change 变化

    • ]c 下一条修改

    • [c 上一条修改

    • 其中

  • 根据当前光标位置

    • dp

    • diff put

    • do

    • diff obtain

    • 把当前的改成对比的

    • 把对比的改成当前的

总结

  • 我们可以用vimdiff快速的比较文件

  • 这很实用!!!

  • 实用的一些跳转方式

  • 遍历所有的修改change

    • ]c 下一条修改

    • [c 上一条修改

  • 遍历所有的函数method

    • ]m 下一条修改

    • [m 上一条修改

  • 面对不同点

    • 把当前的改成对比的   - do - diff obtain

    • 把对比的改成当前的 - dp - diff put

  • 关于多窗口

  • 还有什么好玩的吗?🤔

  • 下次再说 *

[Github地址] (https://github.com/overmind1980/oeasyvim)
[Gitee地址] (https://gitee.com/overmind1980/oeasyvim)
[蓝桥实验楼 邀请码FJWYIMGB] (https://www.lanqiao.cn/courses/2840)


oeasy教您玩转vim - 66 - # 比较修改模式 vimdiff的评论 (共 条)

分享到微博请遵守国家法律