dp (diff "put")
假如希望把另一个文档的内容复制到当前行中,能够使用命令
do (diff "get",之所以不用dg,是因为dg已被另一个命令占用了)
|
假如希望手工修改某一行,能够使用通常的vim操作。假如希望在两个文档之间来回跳转,能够用下列命令序列:
Ctrl-w, w
|
在修改一个或两个文档之后,vimdiff会试图自动来重新比较文档,来实时反映比较结果。但是也会有处理失败的情况,这个时候需要手工来刷新比较结果:
:diffupdate
|
假如希望撤销修改,能够和平常用vim编辑相同,直接
<ESC>, u
|
但是要注意一定要将光标移动到需要撤销修改的文档窗口中。
同时操作两个文档
在比较和合并告一段落之后,能够用下列命令对两个文档同时进行操作。比如同时退出:
:qa (quit all)
|
假如希望保存全部文档:
:wa (write all)
|
或是两者的合并命令,保存全部文档,然后退出:
:wqa (write, then quit all)
|
假如在退出的时候不希望保存任何操作的结果:
:qa! (force to quit all)
|
上下文的展开和查看
比较和合并文档的时候经常需要结合上下文来确定最终要采取的操作。Vimdiff 缺省是会把不同之处上下各 6 行的文本都显示出来以供参考。其他的相同的文本行被自动折叠。假如希望修改缺省的上下文行数,能够这样配置:
:set diffopt=context:3
|
能够用简单的折叠命令来临时展开被折叠的相同的文本行:
zo (folding open,之所以用z这个字母,是因为他看上去比较像折叠着的纸)
|
然后能够用下列命令来重新折叠:
zc (folding close)
|
下图是配置上下文为3行,并展开了部分相同文本的vimdiff屏幕:
结论
在无法使用图像化的比较工具的时候,或在需要快速比较和合并少量文档的时候,Vimdiff是最好的选择。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




