2010-09-08 22 views
52

Uso Beyond Compare (versión 3.1.10) para comparar diferentes versiones de Delphi Form Files, pero no quiero ver diferencias con respecto a ExplicitTop, ExplicitLeft, ExplicitHeight y ExplicitWidth.¿Cómo hago que Beyond Compare ignore ciertas diferencias al comparar versiones de Delphi Form Files

Detalles: Estas líneas siempre comenzarán con un número de caracteres en blanco, luego "ExplicitXXX =" y un número. Las versiones anteriores de Delphi no tenían estas líneas, por lo que quiero ignorar las diferencias en las que estas líneas se agregan a la versión más nueva, y también quiero ignorar las diferencias donde el número ha cambiado.

¿Alguien sabe cómo hacer esto?

Editar: duplicado (más o menos) de:

How do I configure BeyondCompare to ignore SCM replaced text in comments?

+0

posible duplicado de [¿Cómo se configura para ignorar BeyondCompare SMC reemplazado texto en los comentarios?] (Http://stackoverflow.com/questions/3652301/how-do-i-configure-beyondcompare-to-ignore- scm-replaced-text-in-comments) –

+0

Pero con una mejor respuesta aquí IMO .... –

+0

La otra pregunta es preguntar acerca de la coincidencia de texto dentro de otros elementos de gramática (comentarios, cadenas), y BC no admite elementos de gramática de anidamiento aún así, la solución aquí no funcionará allí. –

Respuesta

77
  1. Cargue un par de archivos DFM que muestran la diferencia.
  2. Haga clic en las Configuración de la sesión botón (aka Reglas w/árbitro de icono) o utilizar el Sesión - Configuración>de sesiones Tema menú.
  3. Cambie a la pestaña Importancia y luego haga clic en Editar gramática ... para abrir un segundo cuadro de diálogo.
  4. Haga clic en Nuevo ... botón debajo del cuadro de lista superior para abrir un tercer cuadro de diálogo.
  5. Cambiar el nombre del elemento opción a algo así como Explicit*, cambie la texto coincidente a Explicit(Left|Top|Width|Height) = \d+ y comprobar el carácter caso Partido y regular la expresión casillas de verificación, a continuación, haga clic en Ok, a continuación, haga clic en Ok nuevo en el segundo diálogo
  6. Explicit* ahora debería aparecer en la lista del cuadro de diálogoGrammar Elements. Desmárquelo, luego cambie el cuadro combinado en la parte inferior del cuadro de diálogo desde Utilice esta vista solo a Actualice los valores predeterminados de la sesión.
+3

Respuesta fabólica, justo lo que estaba esperando. No se puede superar un buen recorrido :-) –

+5

Especialmente cuando proviene de la boca del caballo. – LachlanG

+2

Tenga en cuenta que estas instrucciones describen cómo definir el texto dado como "Poco importante", que (de forma predeterminada) seguirá siendo visible (y de color azul). Puede ignorar/ocultar texto azul con la opción "Ignorar diferencias no importantes". – kmote

9

No consumo que no tiene comparación, pero si usted quiere tener las nuevas versiones de Delphi parada añadiendo el (OMI inútil) Explicit* propiedades, puede utilizar Andreas Hausladen's DDevExtensions

+1

+1. Instalé DDevExtensions hace un tiempo para deshacerme de estas propiedades y no me arrepentí hasta ahora. –

+1

Eso es parte del problema. Algunos de los desarrolladores de mi equipo usan esta extensión, otros no. –

+0

@Svein: ¿No puedes convencerlos de que lo explícito * es más que superfluo? –

3

En mi caso (C#), quería ignorar toda la línea que contenía espacios de nombres (y por lo tanto, usando) que cambié. (Referenced Walkthrough - Ignore entire line if text exist in line

es decir.

namespace INSERT.NAMESPACE.HERE 
     changed to 
namespace INSERT.NAMESPACE.HERE.NEW 

para hacer eso

En el paso 5.de la solución de Craig, cambiar el texto coincidente a

" .\*INSERT.NAMESPACE.HERE.\* " 

(incluya las comillas)

Eso es todo.

2

La respuesta de Craig Peterson es correcta. N.B. ¡Sin embargo! La pestaña 'importancia' no siempre es visible desde la sesión/configuración de sesión. Siempre, desde el interior de una vista de lista de carpetas, no estará allí. Parece que hay ciertos tipos de archivos que tampoco lo tienen, aunque no estoy tan claro al respecto. BC tiene tantas opciones y complementos que apuesto a que hay una solución alternativa, pero para mí he estado bien hasta ahora. http://www.scootersoftware.com/vbulletin/showthread.php?t=8457

Cuestiones relacionadas