vimdiff
回忆上次
-
上次有三种批量替换,分别是
:windo:bufdo:argdo
-
执行的
{cmd}可以用|按顺序增加update自动更新:set autowrite自动写入:set hidden可以隐藏未保存buffer
- 分别对应的
window、buffers、arguments - 各有各自的列表、切换、删除、增加的方式
- 多文件多窗口还有什么可玩的么?🤔
- 下次再说 👋
观察对比
- 首先编辑一个
go.java
-
连续数字产生方法
- ctrl-v进入块·可视化
- 纵向选中1
- g之后ctrl-a
- 完成加法操作
进行修改
-
对于这个
go.java复制粘贴出一个副本:saveas go2.java:e go2.java- 新增一行
- 修改一行
- 删除一行
- 然后保存并退出vim
进行比较
vimdiff go.java go2.javavimdiff就是专门用比较的- 后面两个参数是待比较的文件
-
{1..9}行被折叠了
- 因为都是相同的
-
16行有修改
- 紫色的
-
19行被删除了
- 左蓝色右青色
- 右边是
-----------
-
22行是增加的一行
- 左青右蓝
- 左边是
-----------
编辑的时候比较
:vi go.java- 如果文件已经打开
-
:vertical diffsplit go2.java可以开启比较- 如果
vertical被省略 - 就会横向打开文件
- 如果
-
同步滚动
- 属性为
scrollbind - 默认同步滚动
- 可取消同步
- 属性为
-
遍历所有的修改change
]c下一条修改[c上一条修改-
其中
[]指的是跳转c指的是change变化
-
根据当前光标位置
-
把当前的改成对比的
dodiff obtain
-
把对比的改成当前的
dpdiff put
-
总结
- 我们可以用vimdiff快速的比较文件
- 这很实用!!!
- 实用的一些跳转方式
-
遍历所有的修改change
]c下一条修改[c上一条修改
-
遍历所有的函数method
]m下一条修改[m上一条修改
-
面对不同点
- 把当前的改成对比的 - do - diff obtain
- 把对比的改成当前的 - dp - diff put
- 关于多窗口
- 还有什么好玩的吗?🤔
- 下次再说 👋
[Github地址] (


浙公网安备 33010602011771号