¿Hay alguna herramienta de comparación y combinación de lenguajes de programación, que trabaja en una sintaxis consciente de la forma (como XML, Herramienta de comparación), haciendo más que comparar la línea-por-línea (y, opcionalmente, ignorando los espacios en blanco).
Estoy interesado en un programa siguiendo la sintaxis del lenguaje y delimeters, lo que sugiere cambios sin romper la corrección sintáctica, o de agrupación de instrucciones separadas a través de varias líneas. Ejemplo de comportamiento sería:
*en caso de encontrar a un if(){
que presenta un extra de nivel de anidamiento automáticamente el paquete de la llave de cierre, }
varias líneas de abajo con ella.)
*mantener la coincidencia de los elementos de la sintaxis juntos, evitar la estupidez como la eliminación de un bloque tiende a crear:
int function_A()
{
int ret;
ret = something;
ret += something_else;
return ret;
}
int function_B()
{
if(valid)
{
int ret;
ret = something;
ret += something_else;
return ret;
}
else return -1;
}
Personalmente, me encantaría encontrar un software capaz de manejar sintaxis de C++, pero saber acerca de las soluciones para otros idiomas sería interesante también.