ignorar las diferencias en la syntax en beyondcompare

En una twig de código he cambiado todo el código de obj.varname a obj("varname") y cuando comparo el código me gustaría ignorar estas diferencias ya que varname es el mismo.

Tengo una expresión regular que creo que necesito pero desafortunadamente no puedo hacer que la comparación sea ignorada usando Beyond Compare from Scooter

^obj\("\w*"\)|obj\.\w*$

Estoy siguiendo este tutorial http://www.scootersoftware.com/support.php?zz=kb_unimportantv3

Entonces mi pregunta: ¿esto es posible incluso sin comparación? En caso afirmativo, comparta una solución que incluya instrucciones o publique sus capturas de pantalla.

La edición Beyond Compare's Professional admite esto a través de su function de Reemploops de text . Si ya compró una licencia de edición estándar, debe volver al modo de testing para probarla: http://www.scootersoftware.com/suppo…?zz=kb_evalpro

  1. Cargue sus dos files en la comparación de text.
  2. Abra el dialog Configuración de la session desde el menu Sesión , y en la pestaña Reemploops, click Nuevo para crear un nuevo reemploop.
  3. En el text para search editar, use (\w+)\.(\w+)
  4. En Reemplazar con editar, use $1("$2")
  5. Marque la checkbox Expresión regular .

La alternativa sería marcar cualquier instancia de obj.varname y obj("varname") como sin importancia. Los pasos básicos serían los siguientes:

  1. Cargue sus dos files en la comparación de text.
  2. Abra el cuadro de dialog Configuración de la session en el menu Sesión , y en la pestaña Importancia, click el button Editar gramática …
  3. En el siguiente cuadro de dialog, click el button Nuevo … debajo del listbox superior.
  4. Cambie el campo Nombre del elemento a algo útil (por ejemplo, "Acceso a la propiedad").
  5. Cambie la Categoría * a la Lista .
  6. En la list Texto en list *, agregue estas dos líneas:

    obj.varname
    obj("varname")

  7. Haga clic en Aceptar para cerrar el cuadro de dialog Elemento gtwigtical y luego haga clic en Aceptar nuevamente para cerrar el elemento de gramática * Formato de text .

  8. Quita la marca de "PropertyAccess" (o lo que sea que hayas llamado) en el listbox de elementos de gramática en el cuadro de dialog Configuración de session , luego haz clic en Aceptar para cerrarlo.

Este enfoque no es tan flexible o limpio. En los pasos anteriores, está haciendo coincidir nombres de object y variable específicos, codificados, por lo que obj.varname no es importante, pero obj.othervar no lo es, incluso si está alineado contra obj("othervar") . Si el text en ambos lados no es importante, la diferencia no será importante; si un lado es importante, será una diferencia importante. Por lo tanto, con los pasos anteriores, obj.varname y obj("varname") no tendrán importancia en todas partes, pero funcionarán correctamente ya que se correlacionarán con otros casos que también coincidan con esas definiciones (y por lo tanto sin importancia) o serán emparejado con otra cosa que no coincide con esa definición, que será importante y hará la diferencia importante.

Puede usar expresiones regulares para que coincidan con categorías de text más generales, pero probablemente no desee. Por ejemplo, si desea hacer coincidir todo el text que siguió a ese patrón, puede usar estas dos líneas:

 \w+\.\w+ \w+\("\w+"\) 

Y luego marque la checkbox de expresiones regulares en el cuadro de dialog de elementos gtwigticales para que coincidan de esa manera.

El lado positivo / negativo es que cualquier text que coincida con esos patrones no tiene importancia. abc.newvar vs. def.varname se consideraría una diferencia sin importancia porque ambos lados coinciden con la definición sin importancia. Eso es bueno para cosas como comentarios o cambios en el espacio en blanco, pero probablemente no es lo que quieres hacer aquí.