Usar programáticamente los visores de fusión y diferencia de eclipse

Cuando se produce un conflicto de text en Bazar (y en muchos otros files dvcs), se produce un file .BASE, .THIS y .OTHER. Depende del usuario hacer uso de una herramienta de fusión de 3 vías para fusionar el conflicto y luego marcarlo como resuelto.

Me gustaría get todos los visores de combinación registrados en eclipse y dar al usuario la opción de combinar el conflicto con cualquiera de estos. (con TextMergeViewer como una opción pnetworkingeterminada). Sospecho que necesitaría alguna forma de proporcionar programáticamente los 3 files a estos mergeviewers y quizás escribir algún código personalizado para envolver los files BASE, THIS y OTHER para decirle al espectador de fusión dónde están las diferencias. (Interprete los marcadores de "espina de pescado" como <<<<<<< . etc.)

No es exactamente una respuesta, pero al less algunos puntos de partida:

Podría intentar search en el código del visor de comparación actual utilizando Plug-in Spy (disponible directamente con eclipse3.5)

text alternativo http://www.eclipse.org/pde/incubator/spy/images/spy.png

( ALT + MAYÚS + F1 )

La mayoría de las fonts de eclipse también están disponibles aquí .
El org.eclipse.compare.CompareUI es un comienzo, por ejemplo.

Una vez que tenga una comprensión básica de cómo el mecanismo de comparación funciona como un complemento, puede escribir un fragment (también ilustrado aquí ) para ampliar el complemento de comparación actual.