站长百科 | 数字化技能提升教程 数字化时代生存宝典
首页
数字化百科
电子书
建站程序
开发
服务器
办公软件
开发教程
服务器教程
软件使用教程
运营教程
热门电子书
WordPress教程
宝塔面板教程
CSS教程
Shopify教程
导航
程序频道
推广频道
网赚频道
人物频道
网站程序
网页制作
云计算
服务器
CMS
论坛
网店
虚拟主机
cPanel
网址导航
WIKI使用导航
WIKI首页
最新资讯
网站程序
站长人物
页面分类
使用帮助
编辑测试
创建条目
网站地图
站长百科导航
站长百科
主机侦探
IDCtalk云说
跨境电商导航
WordPress啦
站长专题
网站推广
网站程序
网站赚钱
虚拟主机
cPanel
网址导航专题
云计算
微博营销
虚拟主机管理系统
开放平台
WIKI程序与应用
美国十大主机
编辑“
Emacs/EDIFF
”
人物百科
|
营销百科
|
网赚百科
|
站长工具
|
网站程序
|
域名主机
|
互联网公司
|
分类索引
跳转至:
导航
、
搜索
警告:
您没有登录。如果您做出任意编辑,您的IP地址将会公开可见。如果您
登录
或
创建
一个账户,您的编辑将归属于您的用户名,且将享受其他好处。
反垃圾检查。
不要
加入这个!
{{Emacs top}} '''粗体文字''''''Ediff'''是[[Emacs]]集成的比较与合并(merge)文本文件内容的工具。有了它,你可以方便地比较两个(或三个)不同文件、文件夹。 ==软件概况== 授权协议:免费软件 运行环境:Emacs 官方网站:http://www.dirfile.com/freeware/ediff.htm 软件下载:[http://www.dirfile.com/freeware/ediff.htm 官方下载] ==简介== Ediff是Emacs提供的一种实时浏览文件间不同(diff)的工具,它可以比较两个或三个文件间的不同,分别表示为 file-A, file-B 或 file-C, 也可以比较两个或三个emacs-buffer间的不同。Ediff的另一个强有力特性则是可以把正的比较的文件合并成第三个文件。 另外, Ediff还可以对目录进行操作。 Ediff浏览文件的差异是在Emacs的两个Buffer上进行,分别使用不同的颜色表示所存在的差异,而且Ediff对差异区域的差异进行了“细化”,diff程序只进行到“行”级别比较,而Ediff则是基于diff程序的输出上,对差异区域进行更细致的比较,从而得到区域内“单词”级别上的差异比较。从而使比较文件间的细致不同更加容易。 Ediff的更强功能:Ediff可以“忽略”某些细微的差别,例如有两个程序几乎相同,但是其中都些变量的命名却不一样,如bar变量在另一个程序中却都foo,这对程序而言是“相同”,如果用一般的diff程序来查看该两程序的差别,则这种没有意义的变量名不同将充满了整个差异输出,从而不易找到真正的“程序不同”,而使用Ediff则可以忽略这类不同,很容易就定位我们真正想要的差异。 Ediff的特点是它与[[编辑器]](即Emacs本身)集成在一起,所以在比较的过程可以方便的编辑被比较的文件。例如语法高亮仍然有效。它还提供了对版本控制工具的支持,例如用ediff-revision命令可以方便的比较不同版本之间的区别。 ==Ediff命令== *比较两文件: ‘M-x ediff-files’‘M-x ediff’(以后略去M-x) *比较两个Buffer: ‘ediff-buffers’ *比较三个文件: ediff-file3 ediff3 *比较三个Buffer: ediff-buffer3 *交互式使用一个patch: ediff-patch-file epatch 以上是一些主要的命令,这些命令在运行时可能会提示输入一些参数,如文件名等,同时都能很智能地提供一些合适的默认值。 Ediff命令被执行后,进行所谓的‘Ediff Session’它接受一些Ediff命令以决定Ediff的行为。具体的表现是Ediff另外建立一个窗口(称为“Quick Help window”),当聚焦在该窗口输入则被认为是Ediff命令,否则仍是一般的Emacs编辑行为,即还可以实时的编辑你正在比较的文件或Buffer。 在“Quick Help window”上输入“?”使该窗口变大或是缩小,输入q并确认则完成比较退出Ediff Session。 常用的Session Command: ===移动命令=== *v ( V ) 把文件-A,文件-B,文件-C(如果有),同步向下(向上)滚动, *< ( > ) 把文件-A,文件-B,文件-C(如果有),同步向左(向右)滚动, *j 跳到差异区域,可以先加数值参数,如 ‘3j’则跳到第三个差异区域,‘j’则 跳到第一个差异区域, 则‘-2j’跳到倒数第二个差异区域。跳到某区域后,再输入的编辑命令就是针对该区域执行,即有一个“当前区域”的概念,而‘j’命令则就是用于使用绝对参数设置当前活动区域。 *n (或 SPC 空格) 跳到下一个差异区域,并设其为当前区域, *p (或 DEL) 跳到前一个差异区域,并设其为当前区域, *ga ( gb gc ) 根据光标在Buffer-A(或Buffer-B, Buffer-C)中的位置,设置一个离它们最近的差异区域为当前活动区域 ===编辑命令=== *a 比较模式: 把Buffer-A的内容复制到Buffer-B,可以使用‘rb’恢复Buffer-B的内容, 合并模式: 把Buffer-A的内容复制到合并Buffer. 可以使用‘r’恢复旧内容, *b 比较模式: 把Buffer-B的内容复制到Buffer-A,可以使用‘ra’恢复Buffer-A的内容, 合并模式: 把Buffer-B的内容复制到合并Buffer. 可以使用‘r’恢复旧内容, *ra ( rb rc ) 分别用于恢复 Buffer-A Buffer-B Buffer-C 差异区域中的被修改的内容。 ===三方比较的编辑命令=== *ab 把Buffer-A的内容复制到Buffer-B,可以使用‘rb’恢复Buffer-B的内容, *ac 把Buffer-A的内容复制到Buffer-C,可以使用‘rc’恢复Buffer-C的内容, *ba *bc *ca *cb 分别把Buffer-B(C)的内容复制到相应的Buffer-ABC,同时仍可以使用‘ra(bc)'恢复相应的被修改的内容。 ===Buffer属性设置命令=== *A ( B C ) 改变Buffer-A, buffer-B, buffer-C的只读属性,是Toggle命令。 ==参考来源== *[http://www.dirfile.com/freeware/ediff.htm 参考来源1] *[http://dev.firnow.com/course/6_system/linux/Linuxjs/20100525/204436.html 参考来源2] *[http://caobeixingqiu.is-programmer.com/posts/6783.html 参考来源3] {{Emacs}} [[category:Emacs|E]] [[category:插件|E]]
摘要:
请注意,您对站长百科的所有贡献都可能被其他贡献者编辑,修改或删除。如果您不希望您的文字被任意修改和再散布,请不要提交。
您同时也要向我们保证您所提交的内容是您自己所作,或得自一个不受版权保护或相似自由的来源(参阅
Wordpress-mediawiki:版权
的细节)。
未经许可,请勿提交受版权保护的作品!
取消
编辑帮助
(在新窗口中打开)
本页使用的模板:
模板:Emacs
(
编辑
)
模板:Emacs top
(
编辑
)