以编程方式利用 Eclipse 的合并和差异查看器
Posted
技术标签:
【中文标题】以编程方式利用 Eclipse 的合并和差异查看器【英文标题】:Programmatically make use of eclipse's merge and diff viewers 【发布时间】:2010-12-18 23:59:10 【问题描述】:当 Bazaar(和许多其他 dvcs)中发生文本冲突时,会生成 .BASE、.THIS 和 .OTHER 文件。然后由用户使用 3 路合并工具来合并冲突,然后将其标记为已解决。
我想在 Eclipse 中获取所有已注册的合并查看器,并为用户提供一个选项以将冲突与其中任何一个合并。 (TextMergeViewer 是默认选项)。我怀疑我需要一些如何以编程方式向这些合并查看器提供 3 个文件,并且可能编写一些自定义代码来包装 BASE、THIS 和其他文件,以告诉合并查看器差异在哪里。 (解释“人字形”标记,如<<<<<<<
.等)
【问题讨论】:
【参考方案1】:不完全是答案,但至少有一些起点:
您可以尝试使用Plug-in Spy(eclipse3.5 直接提供)查看当前比较查看器的代码
(来源:eclipse.org)
(ALT+SHIFT+F1)
大部分的eclipse源也是available here。
例如,org.eclipse.compare.CompareUI
是一个开始。
一旦您对比较机制作为插件的工作原理有了基本的了解,您就可以编写一个fragment(也称为illustrated here)来扩展当前的比较插件。
【讨论】:
谢谢,向我指出 CompareUI 类的帮助。还有外挂spy以后一定会帮到我的。以上是关于以编程方式利用 Eclipse 的合并和差异查看器的主要内容,如果未能解决你的问题,请参考以下文章